Image Registration of volumetric CT scans with different patients


I know that image registration can be done when we have two images (MR/CT or image/segmentation) on the same patient.

  1. Could someone please tell me if it is possible to perform image registration on different datasets/patients?
  2. If yes, could you please direct me to a code example?

Hello @DushiFdo,

Yes it is possible, it just requires a transformation with more degrees of freedom, i.e. using affine instead of rigid or if there are local deformation using BSpline.

The SimpleITK Jupyter notebooks repository contains notebooks illustrating registration with various transformation types.

As a side note, before embarking on an implementation you really do need to have a solid understanding of how registration works. Possibly skim through the ITK book.

1 Like

You can also play with registration using Slicer. It has BRAINS, elastix, and ANTs registration modules.

1 Like

Thank you @zivy and @dzenanz . In this case, how should I choose the fixed image and the moving image?

Should I select randomly a scan from one patient as the fixed_image and the scans from other patients (same/different dataset) as the moving_image? So that I have one randomly selected scan from a patient as the reference image and do co-registration with all the other patients (regardless of the dataset they belong to)?

1 Like

That is one approach. Another is called groupwise registration, see MABMIS as an example.