[Insight-users] itkLinearInterpolateImageFunction
Luis Ibanez
luis.ibanez at kitware.com
Sat Jun 20 21:22:30 EDT 2009
Hi Anja,
Let me correct a statement from my previous email:
" When you say "non-rigid" we assume that you are talking
about a transformation that doesn't preserve angles.
This includes : Affine and Similarity Transforms"
This is not quite correct.
A better description could be:
* A rigid transformation preserve distances
Therefore Similarity transforms and Affine transforms
are not (necessarily) rigid.
Similarity transforms, being a combination of rotations,
translation and uniform scaling, will preserve angles,
but not distances.
Affine transforms, being a combination of rotations
translations, non-uniform scaling and shearing, may
not preserve angles nor distances. They only map
straight lines into straight lines.
Luis
------------------------------------------------------------------
On Sat, Jun 20, 2009 at 10:39 AM, Luis Ibanez <luis.ibanez at kitware.com>wrote:
>
> Hi Anja,
>
> What you describe, could be a potential way of implementing
> a registration process, but may not be necessarily efficient.
>
>
> You really should identify better the components of a registration
> problem.
>
>
>
> A) Transform:
>
> When you say "non-rigid" we assume that you are talking
> about a transformation that doesn't preserve angles.
> This includes : Affine and Similarity Transforms.
>
>
>
> B) Interpolator:
>
> The role of the interpolator is to restore continuity
> on the moving image, so that you can query values in
> non-grid positions. This is needed regardless of the
> type of transform.
>
> Unless you are dealing with a Transform limited to
> translations parallel to the image axis moving at
> jumps that are multiple of the pixel spacing and, both
> of your images has the same direction, and their origins
> are separated by an integer multiple of the pixel spacing....
>
>
>
> C) The Optimizer itself doesn't compute the Similarity Metric.
> That's indeed the role of the Metric classes. The Optimizer
> only chooses the location of the parametric space in which
> the Metric (Cost Function) must be evaluated. The computation
> itself is done by the Metric classes.
>
>
>
> D) In the ITK implementation, there is no (explicit) resampling
> of the moving image at every stage of the registration.
>
> The reasons for not doing so are:
>
> 1) It would require extra memory
>
> 2) The image will degrade (lose high spatial frequencies)
> after passing through a series of multiple resamplings.
>
>
> -------------------------------------------------------------
>
>
> It seems that you are interested in understanding the
> implementations of deformable registration in ITK.
>
> There are three main versions:;
>
>
> 1) B-Spline Transforms (standard registration framework)
> 2) Dense Fields (Demons and its variants which are all PDE-based)
> 3) FEM (in which the image space is modeled as an elastic material).
>
>
> Are you interested in particular in one of these specific methods ?
>
>
>
> Please let us know,
>
>
> Thanks
>
>
> Luis
>
>
> -------------------
>
> Anja Ende wrote:
>
>> Hello,
>>
>> Thanks guys. It really helps.
>>
>> So, I am guessing when yoou are going non-rigid registration (say
>> using free form deformation), then the registration algorithm would
>> use something like B-splines to control the transformation of the
>> input image. Then when optimizer computes the similarity matrix, it
>> would resample the transformed image onto a regular grid and then run
>> the similarity measure.
>>
>> Is this a correct interpretation?
>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.itk.org/pipermail/insight-users/attachments/20090620/ca5536c3/attachment.htm>
More information about the Insight-users
mailing list