[vtkusers] Re : closest point on a surface / vtkIterativeClosestPointTransform

Jason Taclas jason.taclas.2006 at alum.bu.edu
Mon Mar 10 15:01:05 EDT 2008


I have been trying to follow your suggestions, but I am somewhat hung up on
the data set;
When you say
       locator->SetDataSet(data); // data represents the surface
what is the representation of the surface?  Is it the surface itself, or the
maskpoints vertices data?  I had originally imagined using the vertices to
represent the surface in the locator, and measure the distance to this
surface representation from a different point cloud, but your description
takes the vertices, distorts them with noise and displaces the noisy
vertices representation in space.  I have been having trouble using locators
(my application tends to crash at the implimentation of the
"findclosestpoint" method), and I wonder if it is because I am using the
wrong data set, be it from the filter producing my surface, or the
maskpoints vertices data.

Jason

On Thu, Feb 21, 2008 at 4:57 AM, Steffen Oeltze <
stoeltze at isg.cs.uni-magdeburg.de> wrote:

> Yes, it works. Instead of creating the surface, I import a surface.
> Then, I'm using vtkMaskPoints as well to randomly select surface
> vertices. Next, I apply some noise to these vertices, a little bit of
> translation and rotation. Finally, I use the ICP to bring the points
> back to the surface.
>
> Then, I measured the Euclidean distance between the transformed points
> (before and after ICP) and the surface. For that purpose, I use:
>
>
> vtkCellLocator *locator = vtkCellLocator::New();
>        locator->SetDataSet(data); // data represents the surface
>        locator->SetNumberOfCellsPerBucket(1);
>        locator->BuildLocator();
>        locator->Update();
>
> in a loop:
>
> locator->FindClosestPoint(inPoint, closestPointOnSurface, cell_id,
> sub_id, dist2);
>
> Cheers,
> Steffen
>
>
>
>
> Jason Taclas schrieb:
> > have you gotten this to work?  I'm having trouble on a similar project;
> > I am also using vtkIterativeClosestPoint to register a point cloud to a
> > surface, and I also need to make distance measurements.  If it matters
> > at all, my surface was created with vtkMarchingCubes.  I used
> > vtkMaskPoints with GenerateVerticesOn to get to vertices, is this what
> > you did?
> >
> > On Feb 15, 2008 9:21 AM, Steffen Oeltze
> > <stoeltze at isg.cs.uni-magdeburg.de
> > <mailto:stoeltze at isg.cs.uni-magdeburg.de>> wrote:
> >
> >     Thanks a lot for the hint! I'm using vtkCellLocator now to determine
> the
> >     closest point on a surface for a given position in 3D.
> >
> >     Steffen
> >
> >     cedric.schwartz at enst-bretagne.fr
> >     <mailto:cedric.schwartz at enst-bretagne.fr> schrieb:
> >      > Hi,
> >      > As far as I know you can't have the distance information with the
> ICP
> >      > transform. Maybe you should try vtkPointLocator or vtkKdTree in
> >     order to
> >      > obtain the distance measure.
> >      > Cedric
> >      >
> >      > _______________________________________________
> >      > This is the private VTK discussion list.Please keep messages
> >     on-topic.
> >      > Check the FAQ at: http://www.vtk.org/Wiki/VTK_FAQ
> >      > Follow this link to subscribe/unsubscribe:
> >      > http://www.vtk.org/mailman/listinfo/vtkusers
> >      >
> >      >
> >
> >
> >     _______________________________________________
> >     This is the private VTK discussion list.
> >     Please keep messages on-topic. Check the FAQ at:
> >     http://www.vtk.org/Wiki/VTK_FAQ
> >     Follow this link to subscribe/unsubscribe:
> >     http://www.vtk.org/mailman/listinfo/vtkusers
> >
> >
> >
> > ------------------------------------------------------------------------
> >
> > _______________________________________________
> > This is the private VTK discussion list.
> > Please keep messages on-topic. Check the FAQ at:
> http://www.vtk.org/Wiki/VTK_FAQ
> > Follow this link to subscribe/unsubscribe:
> > http://www.vtk.org/mailman/listinfo/vtkusers
>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.vtk.org/pipermail/vtkusers/attachments/20080310/60fb7306/attachment.htm>


More information about the vtkusers mailing list