[Insight-users] Specifying BSpline boundary nodes?

motes motes mort.motes at gmail.com
Tue Aug 25 14:33:56 EDT 2009


When using the BSplineDeformableTransform its necessary to specify
boundary control point nodes like this:

    gridSizeOnImage.Fill(5);
    gridBorderSize.Fill(3);    // Border for spline order = 3 ( 1
lower, 2 upper )
    totalGridSize = gridSizeOnImage + gridBorderSize;
    bsplineRegion.SetSize(totalGridSize);

The result is a 8*8 grid where only 5*5 nodes covers the image.

But what if I only want to cover the image with only 3*3 nodes (and
still use a spline order = 3 ) should I just specify:

    gridSizeOnImage.Fill(3);
    gridBorderSize.Fill(3);    // Border for spline order = 3 ( 1
lower, 2 upper )
    totalGridSize = gridSizeOnImage + gridBorderSize;
    bsplineRegion.SetSize(totalGridSize);

instead?

As long as the interior set of nodes are odd, the boundary condition
is fulfilled as I understand.

In 2D the first case results in (totalGridSize*totalGridSize)*2 =
(8*8)*2 = 128 coefficients and in the second case it results in
(6*6)*2 = 72 coefficients.


More information about the Insight-users mailing list