[Insight-users] Multi modality multiresolution registration

Luis Ibanez luis.ibanez at kitware.com
Tue, 10 Feb 2004 14:43:08 -0500


Hi Rahim,

When you are doing multi-resolution,
registration you must progressively
check the success of every intermediate
level of the pyramid.

As a general rule, if a level uses
all the number of iteration you have
allotted for it, this indicates that
the registration is not converging
yet at that level. If this is happening,
it is pointless to move to the next
level.

Please check that the coarsest level
of the pyramid is converging. You should
spend some time fine tunning the parameters
of the learning rate, the translation scales
and the initialization of the affine transform.

For the CenteredAffineTransform you can take
advantage of the CenteredTransformInitializer
http://www.itk.org/Insight/Doxygen/html/classitk_1_1CenteredTransformInitializer.html
That will compute geometrical centers of your
images, or center of mass of your images and
provide the initial translation that will
overlap the two centers *in physical space*.


Are you setting the scale parameters for
the optimizer ?


Only when you succeed to make the coarsest
level to converge (not use all the iterations),
would you be in position of proceeding to the
next resolution level.



Are you connecting observers to the optimizer ?

Are you plotting the path of the optimizer in
the parametric space of the transform ?



Those two are probably the most helpful
mechanism for monitoring and driving the
registration process.



Regards,


     Luis




------------
CSPL wrote:

> Hi !
>  
>  
>  We are trying to Fuse a SPECT[brain] on MRI[skull]. We have gone thru 
> the following steps
>  
> 1. We Extracted the brain from the MRI[skull]
> 2. Register SPECT with this one.
> 3. And then fuse the REGISTERED SPECT with the MRI[skull]
>  
>  
>  Everything is going fine, but the REGISTERED SPECT is not aligining 
> properly with the MRI[skull].
> Details:
> EXTRACTED BRAIN:-
>  Image dimension: 256/256/120
>  Voxel Spacing: 0.859373/0.859375/1.600000
> SPECT:-
>  Image 128/128/48 changes to  128/128/95 after force cubic
>  Voxel Spacing: 1.802125/1.802125/3.60425
> MRI:-
>  Image: 256/256/120
>  Voxel Spacing: 0.859373/0.859375/1.600000
>  
> We are using Multi Modality and Multi Resolution Image Registration classes:
>  CenteredAffineTransform
>  RegularStepGradientDescentOptimizer
>  MattesMutualInformationImageToImageMetric
>  LinearInterpolateImageFunction
>  MultiResolutionImageRegistrationMethod
>  RecursiveMultiResolutionPyramidImageFilter
>  CastImageFilter
>  ResampleImageFilter
>  
> For all these classes we are passing the same parameters as you 
> explained in the documentation [probably b'kas we dont know what are 
> they exactly]. We are using them as described in the documentation. We 
> have gone thru your examples and all worked fine for us. But going to 
> 3D, it seems problems started.
>  
>  We dont know where we were lost. Please help us in finding a way. And 
> my another request, please include examples on 3D images in the forth 
> coming documentation[Thanks for this too]
>  
> Thanks in Advance
> Rahim