[Insight-users] Re: no more seg fault ::: Image Registration questions

Luis Ibanez luis.ibanez at kitware.com
Mon, 12 Apr 2004 13:28:19 -0400


Hi Christos,

Thanks for letting us know...

It is good to hear that your code is working now.


--

1) What do you mean by "line search" ?

    Preemptive answer:

    You will find the list of ITK optimizers
    in the Doxygen groups page:

    http://www.itk.org/Insight/Doxygen/html/modules.html

    in particular in

    http://www.itk.org/Insight/Doxygen/html/group__Optimizers.html


2)  There are several convergence criteria in the
     Gradient descent optimizers. Please look at the
     code in Insight/Code/Numerics.  There is a threshold
     for the magnitude of the cost function derivative.

     If your optimization is running until it uses all the
     alloted iterations, that means it is not converging and
     that you still have some homework to do regarding the
     fine tunning of the registration parameters.

     Just "Cruising around metric values" is not a
     good strategy in a 12-dimensional parametric space   :-)

     The basic registration framework is all about
     optimization, there are several different optimizers
     in ITK, because every registration problem has its own
     particular characteristics that make it better suited
     for specific optimizers.



3)  You compute the translation scaling as:


      1 / [ MF  * sqrt( (nx*dx)^2 +(ny*dy)^2 + (nz*dz)^2 ) ) ]


     where

         nx  = number of pixels along X
         ny  = number of pixels along Y
         nz  = number of pixels along Z

         dx  = pixel spacing along X
         dy  = pixel spacing along Y
         dz  = pixel spacing along Z

     and

         MF = Magic Factor = 10.0;    Don't ask why   :-)



4) Some metrics have optimal values with
    high values, some othere with low values.
    That's why sometimes you set the optimizers
    to maximize and sometimes to minimize.

    Please look at the Software Guide for details
    on the computation of each image metric.

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

    Section 8.9, pdf-page 308.


    Actually you may enjoy reading the whole
    Chapter 9 before you continue your
    experiements with registration.



---


Regards,


    Luis



---------------------------
Christos Panagiotou wrote:

> 
> dear luis
> 
> 
> well, now it works, sorry for wasting your time... i am not sure what i 
> ve changed but i get
> ouput from both observers...
> 
> just some questions that will help me with this optimization.
> 
> 1. is there any line search based optimizer in itk? i havent checked 
> there implementations
> 2. from what i ve understand there is no convergence criterion, the 
> metric just
>    cruises around a value it things is the best? or something like that?
> 3. please could you explain how do i compute my translation scaling 
> value for a 256x256x120 volume with 1.0x1.0x1.0 mm spacing?
> 4. metrics should start with high values and iteratively try to reach a 
> minimum value? what does a negative metric value mean?
> 
> thats all for now, thanks very much for your time and sorry for 
> bothering you with something that obviously was my mistake!
> (i hope i shorted it out permanently :) )
> cheers
> 
> christos
>