[Insight-users] Examples for ...v4 registration methods

Lydia Hellrung hellrung at cbs.mpg.de
Tue May 29 12:40:32 EDT 2012


Hi Luis, 

thanks a lot for your answer. We deal with the links you sent and try to find answers. But in parallel I'd like to share some more information in detail with you, maybe we've overseen something basically. My first try is to describe our work. Maybe already this helps: 

(1) Used equipment

MAC PRO with 2x 2.26 GHZ Quadcore and 8GB RAM
ITK 4.1.0 build as release WITHOUT v3 compatibility
Xcode compiler llvmgcc42


(2) History of our work

- implemented multithreaded Registration algorithm for fMRI structural (3D: 240 x 256 x176 pixel and MNI Template 91x109x91 ) and functional data (2D: 64x64 pixel with 10 timesteps) with ITK3.20.1 in Review code version
- coreg of structural and anatomical uses: prealign of the images, 
     VersorRigid3D transform; RegularGradientStepOptimizer; LinearInterpolator and MattesMutualInformationMetric
  -> took 15 seconds to find registration

- normalization to mni uses 3-step registration: prealign of the images, 
   (a) VersorRigid3D transform; RegularGradientStepOptimizer; LinearInterpolator and MattesMutualInformationMetric
   (b) Affine transform; RegularGradientStepOptimizer; LinearInterpolator and MattesMutualInformationMetric
   (b) BSpline transform; LBFGSOptimizer; LinearInterpolator and MattesMutualInformationMetric

   -> took 3 min to find registration


(3) Migration to ITK4
 
- worked through migration guides and adapted API 
- special handling for bspline transform found and implemented as described in guide
- using same parameter set for algorithms
- RESULTS: (a) less good registration results 
           (b) and disastrous runtimes with 114 sec for coreg and 14 min (!!) for normalization BUT all processors are running (most of the time, one bottleneck of a few seconds we couldn't overcome so far but same in old version)



So, you say it's definitely the same methods/implementations as in ITK 3? We try to setup a simple example out of our sources, it's too complex right now ;-). 

Thanks a lot 
Lydia


----- Original Message -----
> Hi Lydia,
> 
> 
> In ITKv4, the registration framework that existed for ITKv3
> is still fully functional and it is tested on a nightly basis in
> many platforms. There shouldn't be any computation time
> change in this code between ITKv3 and ITKv4.
> 
> 
> Could you please give us more details on the registration
> components that you are using ?
> 
> 
> 1) Metric
> 2) Optimizer
> 3) Interpolator
> 4) Transform
> 
> 
> Information about your platform will also be very useful:
> 
> 
> a) Compiler (VC, gcc, ic ?)
> b) Architecture (Win/Mac/Linux)
> c) Amount of RAM memory
> d) Compilation mode : Debug / Release / Other ?
> e) Processor: Number of Cores (how many get used ?)
> 
> 
> 
> 
> and description of the images that you are using:
> 
> 
> i) Image size in pixels
> ii) Image dimension (2D, 3D)
> 
> 
> 
> 
> Ideally,
> if you can share your source with use,
> we will be able to help you a lot faster.
> 
> 
> 
> 
> Finally, regarding the ITKv4 registration framework,
> you may find useful the following materials that have
> been used in Conference tutorials in MICCAI 2011 and
> ISBI 2012.
> 
> 
> 
> 
> https://github.com/InsightSoftwareConsortium/ITKv4-TheNextGeneration-Tutorial
> 
> 
> Particularly the presentation:
> https://github.com/InsightSoftwareConsortium/ITKv4-TheNextGeneration-Tutorial/blob/master/ITKv4TheNextGenerationTutorial.pdf
> 
> 
> and the exercises:
> https://github.com/InsightSoftwareConsortium/ITKv4-TheNextGeneration-Tutorial/tree/master/Exercises/Registration
> 
> 
> You may want to look closely at:
> https://github.com/InsightSoftwareConsortium/ITKv4-TheNextGeneration-Tutorial/blob/master/Exercises/Registration/RegistrationExercises.cxx
> 
> 
> 
> 
> You may find useful as well the recent ITK Webinars.
> http://www.kitware.com/products/webinars.html
> 
> 
> particularly
> http://www.kitware.com/products/webinars.html#introitk
> 
> 
> and
> http://www.kitware.com/products/webinars.html#itkv4
> 
> 
> 
> 
> 
> 
> Thanks
> 
> 
> 
> 
> Luis
> 
> 
> 
> 
> -------------------------------
> 
> On Tue, May 22, 2012 at 1:11 PM, Lydia Hellrung < hellrung at cbs.mpg.de
> > wrote:
> 
> 
> Hi,
> 
> we try to register MRI data with ITK 4.
> So far, we can run an algorithm migrated from ITK 3 (no compatibility
> mode) but with a tremendous increase in runtime. For this, we don't
> have an explanation. So, we looked around and found the new
> registration stuff ...v4 but couldn't find any example for it.
> Are there somewhere new examples explaining these methods in more
> details?
> 
> Thanks a lot in advance
> Lydia
> 
> -----------------------------------------------------------------
> Max Planck Institute for Human Cognitive and Brain Sciences
> Lydia Hellrung e-mail: hellrung at cbs.mpg.de
> Stephanstraße 1a http://www.cbs.mpg.de/~hellrung
> 04103 Leipzig, Germany Phone: +49-341-9940-2431 Fax: -2221
> -----------------------------------------------------------------
> 
> _____________________________________
> Powered by www.kitware.com
> 
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.html
> 
> Kitware offers ITK Training Courses, for more information visit:
> http://www.kitware.com/products/protraining.php
> 
> Please keep messages on-topic and check the ITK FAQ at:
> http://www.itk.org/Wiki/ITK_FAQ
> 
> Follow this link to subscribe/unsubscribe:
> http://www.itk.org/mailman/listinfo/insight-users


More information about the Insight-users mailing list