CT / MRI Registration on pelvis


I am seeking some help on the available features for automatic image registration involving CT + MRI images. I am searching a way on 3D Slicer to align 2 stacks of images, one being a CT, the other a T2-weighted MRI. I tried BRAINS Registration and Elastix, but I always end up having errors or incoherent results. I am able to do the alignement by hand, but that is not my goal, so I wondered if anyone has any experience with the automatic registration methods in 3D Slicer working on CT + MRI data of the pelvic area.

Thanks a lot !

BRAINS usually requires parameter tuning for any other registration tasks than brain MRI.

Elastix usually gives reasonable result without parameter tuning, as long as the images are cropped to the same anatomical region.

You can also try SlicerANTs extension. It seems t have similar performance as Elastix and it is a bit easier to modify registration parameters using the GUI.

I understand for BRAINS.

I retried with Elastix, I centered both volume to get them close, then did a manual transform to do a quick pre-alignement. I cropped around the area I am interested in (using the same ROI for both volumes), and applied Elastix on the cropped volumes. I tried different combination (CT fixed, MRI moving and vice versa, general rigid mode, CT/MR-based pseudo-CT (pelvis(prostate)) mode, etc…) but none of it worked, I get weird offsets on the result everytime and didn’t come even close to a good alignement (the result is always worse than my manual pre-alignement…). So I don’t really know how I should use Elastix to make it work.

For SlicerANTs, I didn’t find it in the Extension Manager…

Thank you for your help as always !

Please attach a few example images. If you can share anonymized data sets then it is even better.

You need to harden the initial transform on the images.

SlicerANTs is relatively new, so you may need to use a recent Slicer Preview Release.

So, I am trying to aligne the MRI (B) on the CT (A) :


First I Center the volumes (in the Volumes module, center volume) :


From there, I do a manual transform that I then harden, and crop the result using a single ROI for both volumes, so that I’m sure it’s the same :

Once it’s cropped, I go into Elastix, and generally use “general rigid (all)” with the CT (A) as fixed and the MRI (B) as moving :

Here’s the result : the new volume, which should be aligned with the CT, is instead offsetted by a lot… And I don’t really know why :


Thank you, the images were useful. You need to harden the transform on the volume after you apply centering or other manual transformation.

Indeed ! I didn’t see the fact that centering doesn’t harden automatically (since there is no button directly on the GUI allowing to harden, maybe that would be something to add) so I hardened directly in the “data” window and proceeded as mentionned before. The registration worked just fine ! Thank you very much !

1 Like