[Insight-users] Strategies for registering "Large" images

Luis Ibanez luis.ibanez at kitware.com
Sat Feb 7 13:00:41 EST 2009


Hi Mike,

The memory limits will be the ones that result from simple RAM allocation.

Note that one of the memory demanding operations in image registration
is the computation of the moving image gradient.

you could avoid such computation by using an optimizer that does not
require derivatives (e.g. you may want to consider the Amoeba optimizer
and the OnePlusOneEvolutionaryOptimizer).


Of course, subsampling, as Mathieu suggested is also a good option.

In order to locate the offending memory allocation, you may find useful
to introduce the new classes

Insight/Code/Common/
               itkMemoryProbe.cxx
               itkMemoryProbe.h
               itkMemoryProbesCollectorBase.h
               itkMemoryUsageObserver.cxx
               itkMemoryUsageObserver.h


    Regards,


        Luis


-----------------------
Michael Jackson wrote:
>  I have some images that are 7446x8332 pixels in width and height.  From 
> experimenting with the images I know there are both  translational and 
> rotation components to the registration that needs  to take place. I 
> tried feeding both images into the  2DCenteredRegistration example (with 
> appropriate changes) but the  program just seems to do nothing. Does not 
> crash, but does not put out  any progress text and doesn't take any CPU 
> time either. It (the  program) just seems like it is idle or something.
>   Is there some sort of limit to the size of images I can feed into  the 
> registration algorithms by any chance (Probably only based on  available 
> memory would be my guess).
>   Also, is there a way to load just one "corner" of each image and  
> align based on those corners instead of having to load each image in  
> its entirety? Is this a good idea?
>   Also, the true center of rotation for the images is at best in the  
> upper left corner of the image (in reality it is probably further  "off" 
> that corner but I'll take the top left corner if that would  work. 
> Should I be using a different registration algorithm? Euler  based 
> algorithm? I thought using the current algorithm would allow me  to set 
> the center of rotation where ever I needed it.
> 
>  Sorry for the basic questions but I am still trying to come up the  
> learning curve.
> 
> Thanks for any help or advice.
> _________________________________________________________
> Mike Jackson                  mike.jackson at bluequartz.net
> BlueQuartz Software                    www.bluequartz.net
> Principal Software Engineer                  Dayton, Ohio
> 
> 
> 
> _______________________________________________
> Insight-users mailing list
> Insight-users at itk.org
> http://www.itk.org/mailman/listinfo/insight-users
> 


More information about the Insight-users mailing list