[Insight-developers] RE: Demons voodoo

Luis Ibanez luis.ibanez at kitware.com
Fri, 09 Apr 2004 10:56:18 -0400


Hi Jim,

A filter for estimating the inverse of a deformation
field was commited a couple of months ago.

It is

      Insight/Code/BasicFilters
          itkDeformationFieldInverseImageFilter.h
          itkDeformationFieldInverseImageFilter.txx


it uses KernelBased splines in order to approximate the
inverse of the field.

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



   Luis


-------------------------------------
Miller, James V (Research) wrote:
> Lydia,
> 
>  
> 
> I can use the WarpImageFilter as is. Though I am thinking of writing a 
> filter that will approximate the inverse of a deformation.  There are 
> some one-to-many/many-to-one issues but we could handle them via an 
> approximation.
> 
>  
> 
> I am going to "try" to create a branch where I can checkin my 
> changes. This way you can try them on your data and see if you like the 
> results at all. I'll put my test images in Testing/Data/Input.
> 
>  
> 
> In thinking about this more, how about this plan of attack.  Why don't 
> you come up with the definition of "forward mapping" and "reverse 
> mapping" given a fixed and moving image. You have been thinking about 
> this longer than I have, so we'll start with whatever definition you 
> come up with. 
> 
>  
> 
> We'll then document in each of these filters whether they calculate a 
> forward or reverse mapping.  I think we can put a protected flag in the 
> PDEDeformableRegistrationFilter such that subclasses can indicate to the 
> PDEDeformableRegistrationFilter whether they calculate a forward or 
> reverse mapping. The PDEDeformableRegistrationFilter can then implement 
> the pipeline calls using meta-information from the moving or fixed 
> image, whichever is appropriate. If we can write routines that can 
> produce either a forward or reverse mapping, then we'll expose the flag 
> to the user. 
> 
>  
> 
> There are some other things I'd like to change with the Demons 
> algorithms.  For instance, I would like to add a mode to precompute 
> gradients and gradient magnitudes of the fixed image so that I can trade 
> off memory for speed. But I am going to hold off on this until we decide 
> how to handle the forward/reverse mapping.
> 
>  
> 
> I have some other tests I want to run ferret out the differences in the 
> forward/reverse approaches.  I think there may a difference in how the 
> low end of the intensity range is manipulated.
> 
>  
> 
> Jim
> 
>     -----Original Message-----
>     *From:* Lydia Ng [mailto:lng at insightful.com]
>     *Sent:* Thursday, April 08, 2004 8:09 PM
>     *To:* Miller, James V (Research); Insight-developers (E-mail)
>     *Subject:* RE: Demons voodoo
> 
>     Jim,
> 
>      
> 
>     Are you able to use the WarpImageFilter as it? Or do you have to
>     modify it to?
> 
>      
> 
>     Also, have you seen http://www.inria.fr/rrrt/rr-3706.html?
> 
>      
> 
>     BTW: Could you send me your test code and the toy images? I am
>     wondering if the current implementation uses moving image derivative
>     instead of the fixed image that the behavior may be to same as to
>     your suggested changes.         
> 
>      
> 
>     -Lydia
>