When using the BSplineDeformationTransform something like this is typically done:<br><br>...<br>...<br>    for( unsigned int i=0; i&lt; SpaceDimension; i++ ) {<br>      spacing[i] = fixedSpacing[i] * (fixedSize[i] - 1) / numberOfGridCells;<br>
    }<br>    origin  = fixedOrigin - fixedDirection * spacing;<br>    bsplineTransform-&gt;SetGridSpacing(spacing);<br>    bsplineTransform-&gt;SetGridOrigin(origin);<br>    bsplineTransform-&gt;SetGridRegion(bsplineRegion);<br>
    bsplineTransform-&gt;SetGridDirection(fixedDirection);<br>    const unsigned int numberOfParameters = bsplineTransform-&gt;GetNumberOfParameters();<br>    const unsigned int numberOfNodes = numberOfParameters / SpaceDimension;<br>
...<br>...<br><br><br><br>In the first loop the position of the deformation vectors are initialized. During the image registration process as I understand the position of the deformation vectors are not changed, only the magnitude and direction of the vectors are modified.<br>
<br>But would the BSplineDeformableTransform not improve the registration result if it was somehow (based on a well chosen heuristic) possible to also move the position of the deformation vectors?<br><br>Are there any articles or other ITK information that deals with a more flexible approach to the position of the deformation vectors?<br>