[Insight-users] MI Registration example translation parameters

Luis Ibanez luis.ibanez@kitware.com
Thu, 13 Mar 2003 09:31:45 -0500


Hi David,

Thanks a lot for providing such a detailed
description of your problem.


Please find some comments below:


1) Registation in ITK is fully performed in
    physical space. That is: millimeters.

    In order to interpret the transform resulting
    from the registration process you have to
    imagine the volumes as mapped in physical
    space, not in their grid of pixels.

    So, units in the translation are not MRI
    voxels but millimeters. It is extremely
    important to make sure that both images
    have valid spacing values.

    The physical extent of your images is about


    128 pixels x 2.57 mm/pixel =~ 329 mm
    128 pixels x 2.57 mm/pixel =~ 329 mm
     63 pixels x 2.40 mm/pixel =~ 151 mm


    The resulting translations are

    34.2316  mm in X
    26.2821  mm in Y
    -2.60786 mm in Z

    They are relatively large but considering
    the size of the image, they do not look
    completly wrong. From what you can see in
    both images,  does this tranlation distance
    seem plausible to you ?

    If the translation is not reasonable, what
    may be happening is that the full registration
    process is stopping before converging.
    This may be the result of a too small step
    size in the optimizer or a too small number
    of iterations. It is common to want to reduce
    the optimizer step size in order to gain
    stability, but when this is done, you have to
    increase the number of iterations in an inverse
    proportion.

2) In your numeral (3), I'm not sure to be following
    correctly. Did you reflected the images on the XY plane ?
    Did you reflected both of them, or only one ?

    For the second registration, the translation values
    in X, Y are not that extreme but the one in Z is
    quite suspicious.

3) In your numeral (4), you said that the resampled output
    images are well registered. This is the ultimate test.
    If by using the transform resulting from the registration
    you can resample the images and get them into alignment,
    this means that the registration is working succesfully,
    and the problem is simply an interpretation of the results.

    There is a detailed treatement of the itk::ResampleImageFilter
    in the software guide. You may want to read it throughtly
    in order to get a feeling of how to interpret transforms in
    ITK. This is not always intuitive. This is Section 5.7 in
    pages 139 to 155.

         http://www.itk.org/ItkSoftwareGuide.pdf

4) As you could see in the software guide, a good practice is to
    draw a diagram in physical coordinates of the mapping of your
    images. Note that you have to take into account the origin,
    size in pixels and pixel spacing in order to get a consistent
    mapping to space.

    Once you get the geometric diagram of the images in physical
    space, you can use the transform in order to interpret the
    mappings of points from one physical coordinate system to the
    other.

    Trying to do this in the grid image space is often misleading.


----


Regards


     Luis



--------------------------

David Wikler wrote:
> Dear ITK users,
> 
> I have been using MultiResMIRegistration example 
> with success to register PET to MR datasets but 
> I have difficulties to interpret the resulting
> transformation as it is written on standard 
> output.
> I used the algorithm on a dataset where I knew
> I would only have translation, so rotation matrix
> will similar to 
> [1 0 0
>  0 1 0
>  0 0 1]
> 
> My PET data is 
> 128x128x63 volume with
> 2.57x2.57x2.4 voxel size
> My MR data is
> 256x256x50 volume with
> 1.05x1.05x1.3 voxel size
> 
> 1. Expected results
> 
> With standard visualization tools, I can evaluate the
> Z translation to 17 PET slices towards patient feet,
> meaning 40.8 mm
>  
> 2. The registration result I get with datasets oriented
> Feet to Head along the z axis is
> 
> 0.999897 0.00950767 -0.0107511 
> -0.00960494 0.999913 -0.00903231 
> 0.0106643 0.00913464 0.999901 
> 
> [as expected]
> 
> Overall transform offset: 
> 34.2316  26.2821  -2.60786  
> 
> [where I think units are MRI voxels as I used MRI
> as fixed and PET as moving image. yhat would mean 
> 3 mm z translation which is not what I expected,
> even if I am wrong about units and we are in PET
> voxels units, it is still far from the reality]
> 
> 3. The registration result I get with datasets oriented
> Head to Feet along the z axis is
> 
> Overall transform matrix: 
> 0.999868 -0.0144369 0.00750628 
> 0.0144862 0.999874 -0.00655476 
> -0.0074107 0.00666263 0.99995 
> 
> Overall transform offset: 
> 36.6828  31.1387  86.6143 
> 
> [which is not better]
> 
> 4 Question:
> 
> I am apparently confused by spatial references and units
> of the output matrix because resamples output images are 
> well registered.
> I feel it is probably related to the preconditioning of
> the images, resampling, centering and to the fact that both
> volumes have different heights but I was unable to find the
> solution. 
> Could somebody help me with that problem ?
> 
> Thanks you very much
> 
> David
> 
> 
> ---------------------------------------------- 
> David Wikler, Ir
> ULB - Erasme Hospital - PET Scan
> 808 route de Lennik - B1070 Brussels - Belgium
> Phone: 32 2 5556603 - Fax: 32 25556631
> Email: dwikler@ulb.ac.be
> _______________________________________________
> Insight-users mailing list
> Insight-users@public.kitware.com
> http://public.kitware.com/mailman/listinfo/insight-users
>