Segmentation of 4D sequence volumes using Sequence Registration

I am trying to segment the CT Cardio Volume Sequence (from the Slicer sample data). I have followed all the steps as mentioned in Load multiple cardiac phases for segmentation/virtual reality question that was posted earlier on the forum, but I can’t get the required results.

  • My input volume sequence is the CTCardioSeq

  • I have created a new output volume sequence (OutputVolumes)

  • For output transform sequence I have chosen the Segmentation.

I had segmented frame 4 of the volume sequence and wanted to modify that segmentation to fit all other frames. Instead of modifying the segmentation to fit all the frames, Slicer is modifying the rest of the frames to fit the segmentation. I am not able to figure out where I am going wrong and how should I go about this issue. I am using Slicer 4.11.20210226.

Thanks in advance.

For output transform sequence you need to choose a transform sequence (not segmentation).
Transform direction should be “fixed frame to moving frames”.

If you segment the fixed frame and then apply the transform sequence’s proxy node (the transform that is changing in time as you replay the sequence) then you’ll see the segmentation is warped to each image frame.

If you want to edit the automatically warped transform then you need to create a segmentation sequence, enable “Save changes” for the segmentation sequence in “Synchronized nodes” section in Sequences module, and replay it once so that the segmentation is saved for each time point. You can then apply the warping transform manually for each time point and fix up the segmentation if you have found inaccuracies in the automatic warping.

Hi Lasso,
I tried to use this method on a (2D+time) dataset and it through me an error:
“Error: Command ‘elastix’ returned non-zero exit status 1.”

Could this function work with 2D cine data?

Thanks for the help!

Probably you need to adjust the settings to register 2D+t data. You can ask help from the Elastix forum.