<br><br><div class="gmail_quote">On Sun, Aug 16, 2009 at 5:22 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><br> "Glimpsing at the source leaves no doubt"<br><br><br>If you look at lines 120-130 of the ThinPlateSplineWarp.cxx file:<br><br> while (!infile.eof())<br> {<br> infile >> p1[0] >> p1[1] >> p1[2] >> p2[0] >> p2[1] >> p2[2]; <br>
<br> sourceLandMarkContainer->InsertElement( id, p1 );<br> targetLandMarkContainer->InsertElement( id++, p2 );<br> } <br><br>You will see that the first three values of the file are assigned<br>to the X,Y,Z coordinates of the first source landmark, while the<br>
second group of three values is assigned to the X,Y,Z coordinates<br>of the first landmark in the group of target landmarks.<br><br><br>Note that this is different from how we manage BSplineDeformableTransforms.<br><br>In this ThinPlateSpline example there are no deformation vectors. We use<br>
a group of landmarks in the Fixed image, that map, one-to-one, to landmarks<br>in the moving image.<br><br>The triplet ( 180 217 0 ) that you pointed out to in your email, correspond <br>indeed to the coordinates of a point in the space of the fixed image.<br>
<br>It is the point with coordinates: X = 180.0, Y = 217.0, Z = 0.0<br>
<br><br> Regards,<br><br><br> Luis<br><br></blockquote><div><br><br><br><br><br>Ok that makes sense, but how would that be used in a registration context eg. connecting the ThinplateSpline to an optimizer? <br>
<br>The source and target landmarks are choosen manually in the example but I am working on a project where this is not possible and the registration process should run automatically.<br><br><br><br>I am therefore still pretty interested in using the BSplineDeformationTransform, but I am still stuck with how to create a non-uniform grid of deformation vectors - if this is even possible with the current implementation?<br>
<br>
<br>Assume that I have defined a 5*5 grid of deformation vectors. Now I want the deformation vector at location (2,3) to be located at another location, how would that be possible?<br><br><br>As I understand the only way to create a non-uniform location of deformation vectors is to change the spacing. But that will only result in non-uniform spacing arcross dimesions and not within each of the dimesions.<br>
<br>Am I walking down a dark and lonely path trying to make the current BSplineDeformationTransform more flexible?<br><br><br><br><br><br><br><br><br><br><br><br> </div><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><div></div><div>On Sun, Aug 16, 2009 at 2:10 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>In the ThinPlateSplineWarp.cxx a set of landmarks are read from the file LandmarkWarping3Landmarks1.txt which contains this:<br>
<br> 0 0 0 0 0 0<br>180 0 0 180 0 0<br>180 217 0 180 217 0<br>
0 217 0 0 217 0<br> 0 0 180 0 0 180<br>180 0 180 180 0 180<br>180 217 180 180 217 180<br> 0 217 180 0 217 180<br> 90 108 90 90 130 90<br><br><br><br>
As I understand these are 18 landmark points which is actually just deformation vectors. So the 3 first values in the third row:<br><br>180 217 0<br><br>corresponds to a vector at some location pointing 180 unit in the x-direction and 217 units in the y-direction.<br>
<br>But where in the image is this vector located?<br><br>Or are the above landmarks just 'regular' points that are interpolated by the ThinPlateSpline and not deformation vectors?<br><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><br>