[ITK] BSpline Registration Parameters

Matt McCormick matt.mccormick at kitware.com
Sun Jun 8 14:40:13 EDT 2014


Hi Stephen,

Since the impact of parameters in the BSplineTransform are usually
uniform in their effect, they scaling parameters are usually uniform.

Hope this helps,
Matt

On Wed, May 21, 2014 at 12:00 PM, Stephen Parsons
<stephen.parsons at uky.edu> wrote:
> In the ITK Software Guide there is some general advice on how to approach
> adjusting the parameters of registration. The following is said regarding
> the Affine Transform:
>
> 5)  The MOST critical values of the registration process are the
>       scaling parameters that define the proportions between
>        the parameters of the transform. In your case, for an Affine
>        Transform in 2D, you have 6 parameters. The first four are
>         the ones of the Matrix, and the last two are the translation.
>
>         The rotation matrix value must be in the ranges of radians
>          which is typically [ -1 to 1 ], while the translation values are
>          in the ranges of millimeters (your image size units).
>
>         You want to start by setting the scaling of the matrix
>         parameters to 1.0, and the scaling of the Translation
>         parameters to the holy esoteric values:
>
>                1.0   /  (  10.0 * pixelspacing[0]  *  imagesize[0]  )
>                1.0   /  (  10.0 * pixelspacing[1]  *  imagesize[1]  )
>
>          This is telling the optimizer that you consider that rotating
>          the image by 57 degrees is as "significant" as translating
>          the image by half its physical extent.
>
>         Note that esoteric value has included the arbitrary number
>         10.0 in the denominator, for no other reason that we have
>          been lucky when using that factor. This of course is just a
>          supersticion, so you should feel free to experiment with
>          different values of this number.
>
>         Just keep in mind that what the optimizer will do is to
>         "jump" in a paramteric space of 6 dimension, and that the
>        component of the jump on every dimension will be proporitional
>        to 1/scaling factor * OptimizerStepLenght.     Since you put
>        the optimizer Step Length to 0.1, then the optimizer will start
>        by exploring the rotations at jumps of about 5degrees, which
>        is a conservative rotation for most medical applications.
>
>        If you have reasons to think that your rotations are larger or
>         smaller, then you should modify the scaling factor of the  matrix
>         parameters accordingly.
>
>         In the same way, if you thinkl that 1/10 of the image size is too
>         large as the first step for exploring the translations, then you
>         should modify the scaling of  translation parameters accordingly.
>
> I would like to know if anyone has similar advice regarding the
> BSplineTransform. Any help is welcome!
>
> Stephen Parsons
> University of Kentucky
>
> _______________________________________________
> Community mailing list
> Community at itk.org
> http://public.kitware.com/cgi-bin/mailman/listinfo/community
>


More information about the Community mailing list