[Insight-users] cubic b-spline question

Luca Pamparana luca.pamparana at gmail.com
Sat Dec 24 05:56:56 EST 2011


Hi Nick,

Thank you for that detailed reply. That makes sense.

Luca

On Tue, Dec 20, 2011 at 7:40 PM, Nicholas Tustison <ntustison at gmail.com> wrote:
> Hi Luca,
>
>> - I see that the transformation at any given voxel is affected by the
>> neighboring 64 control points. However, say I take one control point
>> and just displace it along one dimension, how many voxels would this
>> affect i.e. how many voxels would see some changed displacement as a
>> result of moving one control point in one dimension?
>
> It depends on the resolution of your image.  A better way to think about it
> would be to recognize that the B-spline transform is defined over a
> continuous domain which is subdivided into same-sized elements,
> like a mesh or grid.  Moving a single control point will effect the
> neighboring 4 (= spline order + 1) B-spline elements in each dimension.
>
> To figure out the number of voxels, you need to calculate the number
> of elements comprising the mesh over the transform domain (which we
> assume is identical to the fixed image domain) in a given dimension.
> This depends on the order and number of control points according to the
> simple relationship
>
> number of mesh elements in dimension x =
>  number of control points in dimension x - spline order
>
> Since each control point effects (spline order + 1) elements in each dimension,
> to determine the number of effected voxels, we simply need to determine the
> number of voxels per element
>
> So the number of pixels effected per dimension would be
>
>  ( number of pixels in dimension x / number of mesh elements in dimension x  ) * ( spline order + 1 )
>
>> - Is there a way in the ITK machinery to get the indexes of affected
>> voxels due to perturbation to a single b-spline control point in the
>> grid?
>
> No, you would have to set this up yourself but it should be pretty easy to
> do.
>
> Nick


More information about the Insight-users mailing list