extract curvatures from cloud points

View: New views
6 Messages — Rating Filter:   Alert me  

extract curvatures from cloud points

by sara shafaei :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hey Guys,

I am trying to extract curvatures from cloud points. I converted the cloud points to vtkpolydata format but vtkcurvatures didn't accept it, so I tried to use vtkTriangleFilter  before vtkcurvature. it doesn't also accept vtkpolydata and vtkDelauny3D output. Any help would be appricited.

Thank you,
Sara 



_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the VTK FAQ at: http://www.vtk.org/Wiki/VTK_FAQ

Follow this link to subscribe/unsubscribe:
http://www.vtk.org/mailman/listinfo/vtkusers

Re: extract curvatures from cloud points

by David Doria-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Mon, Nov 9, 2009 at 4:29 PM, sara shafaei <sara_shafaei@...> wrote:
Hey Guys,

I am trying to extract curvatures from cloud points. I converted the cloud points to vtkpolydata format but vtkcurvatures didn't accept it, so I tried to use vtkTriangleFilter  before vtkcurvature. it doesn't also accept vtkpolydata and vtkDelauny3D output. Any help would be appricited.

Thank you,
Sara 

You need to create a mesh from the points before you can use the vtkCurvatures filter. This is typically not very easy to do. You may want to look at using some local information on the point cloud to estimate an indicator of the curvature - something like for each point:
1) find all points in some specified radius
2) fit a plane through those points
3) compute the average distance of all the points in the radius to the plane

This will give you a reasonable sense if the point is on a flat surface or a non-flat surface.

Does this sound like a reasonable approach to anyone else? Should I make a vtkPointCloudCurvatureEstimation class?

Thanks,

David

_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the VTK FAQ at: http://www.vtk.org/Wiki/VTK_FAQ

Follow this link to subscribe/unsubscribe:
http://www.vtk.org/mailman/listinfo/vtkusers

Re: extract curvatures from cloud points

by David Doria-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


You need to create a mesh from the points before you can use the vtkCurvatures filter. This is typically not very easy to do. You may want to look at using some local information on the point cloud to estimate an indicator of the curvature - something like for each point:
1) find all points in some specified radius
2) fit a plane through those points
3) compute the average distance of all the points in the radius to the plane

This will give you a reasonable sense if the point is on a flat surface or a non-flat surface.

Does this sound like a reasonable approach to anyone else? Should I make a vtkPointCloudCurvatureEstimation class?

Thanks,

David

I went ahead and made this into a filter. It is available here:
http://www.vtk.org/Wiki/images/9/9a/VtkPointSetCurvatureEstimation.zip

Hope it helps!

Thanks,

David

_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the VTK FAQ at: http://www.vtk.org/Wiki/VTK_FAQ

Follow this link to subscribe/unsubscribe:
http://www.vtk.org/mailman/listinfo/vtkusers

Re: extract curvatures from cloud points

by sara shafaei :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Thanks David for the reply.  How can I create a mesh from cloud points. I would like to have a mesh to have more accurate result.

Thanks,
Sara

--- On Tue, 11/10/09, David Doria <daviddoria+vtk@...> wrote:

From: David Doria <daviddoria+vtk@...>
Subject: Re: [vtkusers] extract curvatures from cloud points
To:
Cc: vtkusers@...
Date: Tuesday, November 10, 2009, 1:15 AM

On Mon, Nov 9, 2009 at 4:29 PM, sara shafaei <sara_shafaei@...> wrote:
Hey Guys,

I am trying to extract curvatures from cloud points. I converted the cloud points to vtkpolydata format but vtkcurvatures didn't accept it, so I tried to use vtkTriangleFilter  before vtkcurvature. it doesn't also accept vtkpolydata and vtkDelauny3D output. Any help would be appricited.

Thank you,
Sara 

You need to create a mesh from the points before you can use the vtkCurvatures filter. This is typically not very easy to do. You may want to look at using some local information on the point cloud to estimate an indicator of the curvature - something like for each point:
1) find all points in some specified radius
2) fit a plane through those points
3) compute the average distance of all the points in the radius to the plane

This will give you a reasonable sense if the point is on a flat surface or a non-flat surface.

Does this sound like a reasonable approach to anyone else? Should I make a vtkPointCloudCurvatureEstimation class?

Thanks,

David

-----Inline Attachment Follows-----

_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the VTK FAQ at: http://www.vtk.org/Wiki/VTK_FAQ

Follow this link to subscribe/unsubscribe:
http://www.vtk.org/mailman/listinfo/vtkusers


_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the VTK FAQ at: http://www.vtk.org/Wiki/VTK_FAQ

Follow this link to subscribe/unsubscribe:
http://www.vtk.org/mailman/listinfo/vtkusers

Parent Message unknown Re: extract curvatures from cloud points

by David Doria-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Thu, Nov 12, 2009 at 2:37 PM, sara shafaei <sara_shafaei@...> wrote:
Thank you David for your time to make the curvature class.  I was trying to use it with my data but it didn't work. actually, I put my data in vtkpolydata format and gave to CurvatureEstimation->SetInput(poly) as input but it caused error.
I also have question about he output, Is it giving Gussian and mean curvature?

Thank you so much for your help.

Sara

 


Sara,

Hmm, can you send me the polydata along with your code so I can try it? What was the error?

Also, this is a VERY approximate "curvature-like" computation - it is just trying to indicate regions that are "non-flat". It is not intended to approximate either Gaussian or mean curvature.

Thanks,

David

_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the VTK FAQ at: http://www.vtk.org/Wiki/VTK_FAQ

Follow this link to subscribe/unsubscribe:
http://www.vtk.org/mailman/listinfo/vtkusers

Parent Message unknown Re: extract curvatures from cloud points

by David Doria-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Thu, Nov 12, 2009 at 3:44 PM, sara shafaei <sara_shafaei@...> wrote:
and here is the code.



Sara,

You are likely getting errors sending mail to the list because you are sending attachments. You should typically upload the files to webspace somewhere and post a link to them.

As for creating a surface from points, CGAL is probably your best bet. I'm working on some stuff for VTK but it will likely be pretty naive.

Can you please try to construct a VERY small example (< 30 lines please, yours is 180!!) with your data? It seems as though you are trying to read bmp images... how are you converting these to point coordinates that you will then use my curvature filter with?

Thanks,

David

_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the VTK FAQ at: http://www.vtk.org/Wiki/VTK_FAQ

Follow this link to subscribe/unsubscribe:
http://www.vtk.org/mailman/listinfo/vtkusers