[ITK] [ITK-users] Compose Displacement Field Order using Syn regsitration

Matt McCormick matt.mccormick at kitware.com
Wed Apr 30 10:04:16 EDT 2014


Hi Emma,

Yes, that would be the order, but not that the
ComposeDisplacementFieldsImageFilter requires Image's representing the
displacement fields (it does not take Transform's).

It looks like:

composer->SetWarpingField(
inverseAffineIMSepararteDisplacementFieldImageEquivalent );
composer->SetDisplacementField( forwardFields );

would be equivalent to

compositeTransform->AddTransform(
inverseAffineIMSepararteDisplacementFieldImageEquivalent );
compositeTransform->AddTransform( forwardFields );

HTH,
Matt

On Wed, Apr 30, 2014 at 7:38 AM, Emma Saunders
<emmasaunders123 at gmail.com> wrote:
> Hi Matt
>
> Thanks for your help, but am still a little unsure on the difference between
>
> SetDisplacmenetField
> SetWarpingField.
>
> In the above case would I simply use:
>
> Composer->SetDisplacementField( inverseaffine im_seperate)
> Composer->SetWarpingField( forwardfields )
>
> are set DisplacementField and Set Warping Field doing the same job here and
> this is merely the order in which they must be input?
>
> Thanks
>
> Emma
>
>
>
> On Wed, Apr 30, 2014 at 5:55 AM, Matt McCormick <matt.mccormick at kitware.com>
> wrote:
>>
>> Hi Emma,
>>
>> Yes, inverse affine lm_separate followed by the forward displacement
>> fields should be the order to compose the new transform.
>>
>> A CompositeTransform is probably best for this job.
>>
>> As we can see from the ComposeDisplacementFieldsImageFilter source
>> [1], the Warping displacement field follows the input
>> DisplacementField in the output.
>>
>> Note that a more general solution for creating a summary displacement
>> field is the TransformToDisplacementFieldFilter [2], which could use
>> CompositeTransform's that have AffineTransform's.
>>
>> Hope this helps,
>> Matt
>>
>> [1]
>> http://itk.org/gitweb?p=ITK.git;a=blob;f=Modules/Filtering/DisplacementField/include/itkComposeDisplacementFieldsImageFilter.hxx;h=e06b71729e53a057a7504c5dc4d6d388355958b2;hb=HEAD#l118
>>
>> [2]
>> http://www.itk.org/Doxygen/html/classitk_1_1TransformToDisplacementFieldFilter.html
>>
>> On Mon, Apr 28, 2014 at 11:51 AM, Emma Saunders
>> <emmasaunders123 at gmail.com> wrote:
>> > Hi everyone
>> >
>> > I have a moving image sequence with a reference  or fixed image called
>> > Im_fixed.
>> >
>> >  I have used Syn registration on multiple moving images and therefore
>> > have a
>> > sequence of forward (takes fixed to moving) and backward (takes moving
>> > to
>> > fixed) displacement fields.
>> >
>> > Assuming I perform an affine registration of Im_fixed to a separate
>> > image
>> > called Im_seperate, not contained within the sequence, how can I then
>> > proceed to put the Syn registrations into the reference frame of
>> > Im_seperate
>> > such that the forward and backward fields move Im_seperate with the same
>> > motion as the moving image sequence
>> >
>> > I am  using  the Compose Displacement Field Image filter but not clear
>> > on
>> > the order of composition.
>> >
>> > What is the warping field and how does this differ from the displacement
>> > field? Would using the inverse of the affine with the forward
>> > displacement
>> > fields give me fields that move Im_separate in the manner desired?  If
>> > so
>> > which order do I compose them in?
>> >
>> > Thanks
>> >
>> > Emma
>> >
>> >   typedef
>> > itk::ComposeDisplacementFieldsImageFilter<DisplacementFieldType,
>> >    DisplacementFieldType> ComposerType;
>> >    ComposerType::Pointer composer = ComposerType::New();
>> >
>> >   composer->SetDisplacementField( inputfield1);
>> >   composer->SetWarpingField( inputfield2);
>> >   composer->Update();
>> >   combinedfield=composer->GetOutput();
>> >
>> >
>> > _____________________________________
>> > 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
>> >
>> > _______________________________________________
>> > Community mailing list
>> > Community at itk.org
>> > http://public.kitware.com/cgi-bin/mailman/listinfo/community
>> >
>
>
_____________________________________
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 Community mailing list