[Insight-users] modify transformation parameters by usingitkBSplineDeformableTransform

Magnotta, Vincent A vincent-magnotta at uiowa.edu
Mon May 10 20:26:45 EDT 2010


Xi,

I would think that this would be easier to implement using a ThinPlateSpline Transform.

Vince


----------------------
Associate Professor 
Department of Radiology 
0453-D JCP 
200 Hawkins Drive 
Iowa City, IA 52242 
E-mail: vincent-magnotta at uiowa.edu 
Phone: 319-356-8255 Fax: 319-353-6275 
Website: http://www.radiology.uiowa.edu 



-----Original Message-----
From: insight-users-bounces at itk.org on behalf of Xi Liang
Sent: Sun 5/9/2010 7:50 PM
To: Luis Ibanez
Cc: insight-users at itk.org
Subject: Re: [Insight-users] modify transformation parameters by usingitkBSplineDeformableTransform
 
Hi Luis,

Thank you for the response. I think I did not make my question clear, and
the following is the purpose to write the code.

My goal is not to create a Transform filter to be used in a registration. I
want to create a simulated motion (include nonrigid and rigid deformations).
I have a random nonrigid bspline deformation transformation parameters (can
be easily get the corresponding deformation field), and a segment mask
image. These two are my input. I want the output to be a nonrigid
deformation field. This generated deformation field will be used on a image
that has nonrigid and rigid structures, where the rigid area is the same as
the input segment mask. Therefore I need to either modify the transformation
parameters, or the corresponding deformation field to achieve a partial
rigid deformations.

I am currently modifying a filter based on
http://elastix.isi.uu.nl/doxygen/a00228.html. I am reading the ITK software
guide and try to understand how it works. The author Marius Staring told me
It can be easily modified to fill my need -- assigning a subset of a
deformation field with its mean value.

Luis, you suggest that there are better ways to implement a Transform that
behaved as a Translation (or rigid) transformation in some regions and as
Deformable in others. What is that? Is that similar to the above method? to
modify the deformation field. Or you suggest a different scheme?


1) If you want to implement a Transform that behaves as
   a Translation (or Rigid) transform in some regions and
   as Deformable in others, there are better ways of
   implementing such class, than fiddling with the parameters
   of the BSplineDeformable transfrom.

On 10 May 2010 07:50, Luis Ibanez <luis.ibanez at kitware.com> wrote:

> Hi Xi,
>
>
> 1) If you want to implement a Transform that behaves as
>    a Translation (or Rigid) transform in some regions and
>    as Deformable in others, there are better ways of
>    implementing such class, than fiddling with the parameters
>    of the BSplineDeformable transfrom.
>
> 2) But, just to answer your question. The parameter array
>    of the BSpline transform has the components of the
>    deformation vectors at every node of the BSpline grid.
>
>    Given a BSpline grid with N nodes in 3D, you will have
>
>                          3 x N        parameters
>
>    and they are arranged as:
>
>      X1,X2,X3....... Xn,  Y1,Y2,Y3.....YN,...Z1, Z2, Z3,... ZN
>
>
> 3) You can change those parameters manually.
>    Simply have to figure out which BSpline nodes
>    are on top of the regions for which you want to
>    allow only Translations, and change those
>    accordingly.
>
>
>
>
>   Regards,
>
>
>       Luis
>
>
>
> ---------------------------------------------
> On Wed, May 5, 2010 at 6:58 AM, Xi Liang <liangxi1986317 at hotmail.com>
> wrote:
> > Dear all,
> > I want to change the some control point parameters got by running
> > registration by using itkBSplineDeformableTransform.h. The reason is to
> > manually modify a set of control points such that only translation is
> > applied on the corresponding regions. The question I would like to ask is
> > whether this should be done manually, or we have a filter to change those
> > parameters?
> > If I have to do this manually, I will have to understand of the format of
> > parameters. I understand the number of parameters get
> > from itkBSplineDeformableTransform is ImageDimension *
> > (numberOfGridNodesInOneDimension + BsplineOrder). Which value is for
> > lower/upper borders, and which are for nodes? I think I will only need to
> > modify the node values to enforce the translation transformations.
> > This method is introduced by Tanner in Volume and Shape Preservation of
> > Enhancing Lesions when applying nonrigid registration to a time series of
> > contrast enhancing MR breast Images. It couples the control points of a
> > bspline deformation to enforce rigidity on certain structures.
> > Kind regards,
> > Xi
> >
> >
> > _____________________________________
> > 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.html
> >
> > 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
> >
> >
>
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.itk.org/pipermail/insight-users/attachments/20100510/b10c21a3/attachment.htm>


More information about the Insight-users mailing list