[Insight-developers] Please help mewithBSplineDeformableTransformation

Miller, James V (GE, Research) millerjv at crd.ge.com
Tue Mar 21 11:26:59 EST 2006


There a number of ways to this.  The one off the top of my head requires 
writing a new BSplineDeformableTransform subclass.

If the control points outside the grid are to be fixed in location, 
then those control points could be stored in the transform's "FixedParameters".
The "Parameters" for optimization would be just the control points over the domain
of the image.

Transforming a point with the new transform is now much more complicated because some
of the spline coeffiecients are in the fixed parameters and some are in the 
parameters to be optimized.  One could keep an extra set of "full control points"
and copy the parameters that are optimized into the full set of control points as
needed, then use the current code for evaluating the deformation.  This is relatively 
simple to do but would be very slow in practice. Or, the transform code could be written 
such that information was pulled from the fixed parameters or from the parameters to be 
optimized as needed to evaluate the current position in the B-Spline. This would probably
be a tad bit slower than the original code for evaluating the transform, due to some
extra conditionals, but would be faster than the first option.  However, it requires
writing new code for evaluating a BSpline.

Another option is write a whole new optimizer that will actually avoid using the
fixed control points in the any of the calculations of the metric dervitive, etc.

Jim




-----Original Message-----
From: insight-developers-bounces+millerjv=crd.ge.com at itk.org
[mailto:insight-developers-bounces+millerjv=crd.ge.com at itk.org]On Behalf
Of Henning Meyer
Sent: Tuesday, March 21, 2006 10:53 AM
To: insight-developers at itk.org
Subject: Re: [Insight-developers] Please help
mewithBSplineDeformableTransformation


Please help, isn't there a way? It has to be useful for every kind of
flexible registration using BSplineDeformableTransform.



> To have a switch for optimization would be very useful. Does anybody
> have an idea? How complicated would a wrapper for
> BSplineDeformableTransform be?
>
> Henning
>
> 2006/3/20, Miller, James V (GE, Research) <millerjv at crd.ge.com>:
> > I think for the LBFGSBOptimizer, you use the SetBoundSelection() method along with the SetLowerBound(), SetUpperBound() methods.
> >
> > Jim
> >
> > -----Original Message-----
> > From: Henning Meyer [mailto:tutmann at gmail.com]
> > Sent: Monday, March 20, 2006 9:25 AM
> > To: Miller, James V (GE, Research)
> > Subject: Re: [Insight-developers] Please help me
> > withBSplineDeformableTransformation
> >
> >
> > How would one mark parameters for the optimizer, to tell it not optimize those?
> >
> > Henning
> >
>
_______________________________________________
Insight-developers mailing list
Insight-developers at itk.org
http://www.itk.org/mailman/listinfo/insight-developers


More information about the Insight-developers mailing list