<br>Hi Motes,<br><br>The second diagram:<br><br><br> O_______xO_________O_________O<br><br><br>was provided as an illustration of what happens on the *right* side of the image.<br><br><br>You may find useful to look at the following tutorial:<br>
<br><a href="http://www.na-mic.org/Wiki/images/0/06/Insight-DeformableRegistration-BSplines.ppt">http://www.na-mic.org/Wiki/images/0/06/Insight-DeformableRegistration-BSplines.ppt</a><br><br><br>It walks you step by step through the process of conception of the<br>
BSpline grid.<br><br> <br> Please let us know if you still have any questions,<br><br><br> Thanks<br><br><br> Luis<br><br><br>---------------------------------------------------------------------------------------------------------------<br>
<div class="gmail_quote">On Sun, Jul 26, 2009 at 9:10 AM, motes motes <span dir="ltr"><<a href="mailto:mort.motes@gmail.com">mort.motes@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br><br><div class="gmail_quote"><div class="im">On Wed, Jul 22, 2009 at 6:41 PM, Luis Ibanez <span dir="ltr"><<a href="mailto:luis.ibanez@kitware.com" target="_blank">luis.ibanez@kitware.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Hi Motes,<br><br>1) Yes, the parameters of the BSplineDeformableTransform are the components<br> of the deformation vectors at every node of the BSpline grid.<br><br>2) In order to compute a value in the domain of a BSpline of order 3, you need<br>
the values of 4 BSpline nodes.</blockquote></div><div><br><br>As I understand this is the k=4 order B-spline curve with the following knot-vector:<br><br><br> 0 1 2 3 4 5 6 7<br>[0 0 0 0 1 1 1 1]<br>
n n+1 m<br><br>where n+1= 4 control points must be defined to evaluate the curve in the whole domain. Actually this is a fourth order bezier curve.<br><br> </div><div class="im"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br><br> If you think about a point in just on the left border of an image, you will need<br> one node in the border of the image, another one outside of the image, and<br> two more inside the image. Imagine that in the diagram below, the "O" symbols<br>
represent BSpline nodes, and the "x" symbol represent the point where you<br> need to compute a value (for example, a deformation vector).<br><br><br> O________Ox________O_________O<br>
<br> Now consider the right side of the image domain in the diagram below you <br> will need two BSpline nodes outside of the image, one in the border and<br> another one inside of the image.<br>
<br> O_______xO_________O_________O<br>
<br> Of course, the asymmetry of the choice is arbitrary. We could have chosen<br> to use two nodes on the left side outside of the image, and one on the right<br> side, outside of the image.<br><br></blockquote>
</div><div><br>I am not sure I understand this. I have tried to make a illustration of how I understand your description:<br><br><a href="http://img268.imageshack.us/img268/5481/bsplineparameters2.png" target="_blank">http://img268.imageshack.us/img268/5481/bsplineparameters2.png</a><br>
<br>But I still don't see why its not possible to evaluate deformation values in the leftmost interval in the left case:<br><br> Ox_new________Ox________O_________O<br><br>If that was the case it would only be necessary to define interior control points (5*5=25) instead of interior + exterior (5+3 * 5+3 = 64).<br>
<br>And why are two extra nodes required in the right most case:<br><br> O_______xO_________O_________O<br><br>when only one are required in the left most case?<br><br><br> </div><div class="im"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br>3) When we refer to Cubic BSplines, we are talking about the largest order of<br>
the polynomials used for the interpolation. In this case, = 3.<br><br><br><br> Regards,<br><br><br> Luis<br><br><br> <br>---------------------------------------------------------------------<br><div class="gmail_quote">
<div><div></div><div>
On Wed, Jul 22, 2009 at 10:39 AM, motes motes <span dir="ltr"><<a href="mailto:mort.motes@gmail.com" target="_blank">mort.motes@gmail.com</a>></span> wrote:<br></div></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div><div></div><div>
I am trying to understand the parameters to the BSplineDeformableTransform in the BSplineWarping1.cxx example.<br><br>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.<br>
<br>2) When defining the grid extra "vectors" outside the image must be defined following the below rule from the example:<br><br><br>// Since we are using a B-spline of order 3, the coverage of the BSpling grid<br>
// should exceed by one the spatial extent of the image on the lower region of<br>// image indices, and by two grid points on the upper region of image indices.<br>// We choose here to use a $8 \times 8$ B-spline grid, from which only a $5<br>
// \times 5$ sub-grid will be covering the input image.<br><br>But why?<br><br>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.<br>
The third basis function has full support over the 4 knots.<br><br>Is this why extra control points / deformation vectors are added?<br><br><br>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.<br>
<br>
<br></div></div>_____________________________________<br>
Powered by <a href="http://www.kitware.com" target="_blank">www.kitware.com</a><br>
<br>
Visit other Kitware open-source projects at<br>
<a href="http://www.kitware.com/opensource/opensource.html" target="_blank">http://www.kitware.com/opensource/opensource.html</a><br>
<br>
Please keep messages on-topic and check the ITK FAQ at: <a href="http://www.itk.org/Wiki/ITK_FAQ" target="_blank">http://www.itk.org/Wiki/ITK_FAQ</a><br>
<br>
Follow this link to subscribe/unsubscribe:<br>
<a href="http://www.itk.org/mailman/listinfo/insight-users" target="_blank">http://www.itk.org/mailman/listinfo/insight-users</a><br>
<br></blockquote></div><br>
</blockquote></div></div><br>
</blockquote></div><br>