Nuno,<div><br></div><div>Assuming that you have a reasonable initial guess for the alignment, turn of the ICP initialization so that the centers of mass of the point clouds are not used to initialize the transfer, then choose the partial cloud as the source points. </div>
<div><br></div><div>- Wes<br><br><div class="gmail_quote">On Fri, Mar 25, 2011 at 8:09 AM, nuno.jf <span dir="ltr"><<a href="mailto:nunofernandes7@gmail.com">nunofernandes7@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
David, for what I understood, ICP minimizes the distance between all the<br>
points in the point clouds. So, if apply ICP to two point clouds that only<br>
are coincident in some regions, the result will be bad, because the distance<br>
between all the points will be considered, and not only the distance between<br>
the coincident ones.<br>
This is what my problem is. I have two point clouds that are only coincident<br>
in some regions and I need to align them. Just take a look at the following<br>
images from my specific case:<br>
<br>
The 1st polydata(target) to which I want to align the 2nd polydata (source).<br>
This point cloud is the front of a cranium.<br>
<a href="http://vtk.1045678.n5.nabble.com/file/n4263964/target.png" target="_blank">http://vtk.1045678.n5.nabble.com/file/n4263964/target.png</a><br>
<br>
The 2nd polydata. This point cloud corresponds to the left side of the<br>
cranium, coinciding with the left side of the 1st point cloud.<br>
<a href="http://vtk.1045678.n5.nabble.com/file/n4263964/source.png" target="_blank">http://vtk.1045678.n5.nabble.com/file/n4263964/source.png</a><br>
<br>
This is how the polydatas are positioned in relation to each other:<br>
<a href="http://vtk.1045678.n5.nabble.com/file/n4263964/before_ICP.png" target="_blank">http://vtk.1045678.n5.nabble.com/file/n4263964/before_ICP.png</a><br>
<br>
Finally, after making some experiments combining vtkTransformPolyDataFilter<br>
with vtkIterativeClosestPointTransform:<br>
<a href="http://vtk.1045678.n5.nabble.com/file/n4263964/after_ICP.png" target="_blank">http://vtk.1045678.n5.nabble.com/file/n4263964/after_ICP.png</a><br>
<br>
So, after seeing this and visiting the site you had advised me to visit, I<br>
figured out that I need to find a way to apply ICP only to some of the<br>
points (the left half) in the polydatas, or to apply other algorithm that<br>
does that automatically. Is my presupposition correct? Can you help me doing<br>
this, because I don't know what more can I do? And I believe the worst is<br>
yet to come, because I will need to align the back of the cranium too.<br>
Thank you so much!<br>
<br>
--<br>
View this message in context: <a href="http://vtk.1045678.n5.nabble.com/How-to-bring-an-object-to-the-coordinate-s-origin-tp4243261p4263964.html" target="_blank">http://vtk.1045678.n5.nabble.com/How-to-bring-an-object-to-the-coordinate-s-origin-tp4243261p4263964.html</a><br>
Sent from the VTK - Users mailing list archive at Nabble.com.<br>
_______________________________________________<br>
Powered by <a href="http://www.kitware.com" target="_blank">www.kitware.com</a><br>
<br>
Visit other Kitware open-source projects at <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 VTK FAQ at: <a href="http://www.vtk.org/Wiki/VTK_FAQ" target="_blank">http://www.vtk.org/Wiki/VTK_FAQ</a><br>
<br>
Follow this link to subscribe/unsubscribe:<br>
<a href="http://www.vtk.org/mailman/listinfo/vtkusers" target="_blank">http://www.vtk.org/mailman/listinfo/vtkusers</a><br>
</blockquote></div><br><br clear="all"><br>-- <br>Wesley D. Turner, Ph.D.<br>Kitware, Inc.<br>Technical Leader<br>28 Corporate Drive<br>Clifton Park, NY 12065-8662<br>Phone: 518-881-4920<br>
</div>