[Insight-users] BSplineDeformableTransform parameters?

Luis Ibanez luis.ibanez at kitware.com
Wed Jul 22 12:41:21 EDT 2009


Hi Motes,

1) Yes, the parameters of the BSplineDeformableTransform are the components
     of the deformation vectors at every node of the BSpline grid.

2) In order to compute a value in the domain of a BSpline of order 3, you
need
    the values of 4 BSpline nodes.

    If you think about a point in just on the left border of an image, you
will need
    one node in the border of the image, another one outside of the image,
and
    two more inside the image. Imagine that in the diagram below, the "O"
symbols
    represent BSpline nodes, and the "x" symbol represent the point where
you
   need to compute a value (for example, a deformation vector).


                       O________Ox________O_________O

    Now consider the right side of the image domain in the diagram below you

    will need two BSpline nodes outside of the image, one in the border and
    another one inside of the image.

                       O_______xO_________O_________O

     Of course, the asymmetry of the choice is arbitrary. We could have
chosen
     to use two nodes on the left side outside of the image, and one on the
right
     side, outside of the image.


3) When we refer to Cubic BSplines, we are talking about the largest order
of
    the polynomials used for the interpolation.  In this case, = 3.



    Regards,


           Luis



---------------------------------------------------------------------
On Wed, Jul 22, 2009 at 10:39 AM, motes motes <mort.motes at gmail.com> wrote:

> I am trying to understand the parameters to the BSplineDeformableTransform
> in the BSplineWarping1.cxx example.
>
> 1) As I understand the parameters are actually just a set of deformation
> vectors. The location of theses vectors are distributed uniformly over the
> image but the orientation and magnitude of the vectors might vary during the
> registration.
>
> 2) When defining the grid extra "vectors" outside the image must be defined
> following the below rule from the example:
>
>
> //  Since we are using a B-spline of order 3, the coverage of the BSpling
> grid
> //  should exceed by one the spatial extent of the image on the lower
> region of
> //  image indices, and by two grid points on the upper region of image
> indices.
> //  We choose here to use a $8 \times 8$ B-spline grid, from which only a
> $5
> //  \times 5$ sub-grid will be covering the input image.
>
> But why?
>
> If p=3 is the degree a Cubic B-spline has support over p+1=4 knots.
> Assuming that clamped knot-vectors are used the first and second basis
> function will only have support over 1 and 2 knots respectively.
> The third basis function has full support over the 4 knots.
>
> Is this why extra control points / deformation vectors are added?
>
>
> Another thing. In the above comments is not meant to say order 4? Normally
> the order = degree+1 and as I understand ITK uses cubic B-splines which is
> 3-degree.
>
>
> _____________________________________
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.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/20090722/f8b89c7b/attachment.htm>


More information about the Insight-users mailing list