poisson surface reconstruction

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

poisson surface reconstruction

somnath
i am using poisson reconstruction for my point clouds having 435962 points, not only it is taking lot of time nearly 35 min for generating a surface , but also creating a unwanted rectangular flat surface behind the generated output, my confusion is that why such a  flat surface is obtained behind the main object.


the code is as follows
 pcl::Poisson<pcl::PointNormal>poi;
   poi.setInputCloud(cloud_with_normals);
   poi.setSearchMethod(tree2);
   poi.setConfidence(false);
   poi.setManifold(false);
   poi.setOutputPolygons(false);
   poi.setDepth(10);
   poi.setSolverDivide(4);
   poi.setIsoDivide(4);
   poi.setSamplesPerNode(1);

i have attached the image too,
please  give me some feedback
Reply | Threaded
Open this post in threaded view
|

Re: poisson surface reconstruction

mustafaf
Hi Somnath,

Poisson Surface Reconstruction is made to give water-tight meshes. I think the "extension" that you're seeing is a consequence of this. There are some things that you can do to get "rid" of the extension. You can:

1) Change the setScale parameter to 1.0 (instead of 1.1). This will give you less "extension" of the mesh but I think there will still be significant extension. A drawback might be longer time to do the reconstruction.

2) You can get a bounding box for the original point cloud and then "crop" the reconstructed mesh with the original point cloud bounding box. Note that for best results, you should use an oriented bounding box.

3) The best way would be to get the convex hull of the original point cloud and then "crop" the reconstructed mesh with this convex hull as a bounding volume.

For (2) and (3), I don't think any relevant methods exist in PCL. However, you can use VTK for doing it. PCL already includes a wrapper to convert from and to pcl::PolygonMesh and vtkPolyData.
Reply | Threaded
Open this post in threaded view
|

Re: poisson surface reconstruction

somnath
thnx mustafa
 i will try and see what is the result


On Fri, Mar 29, 2013 at 10:56 PM, mustafaf <[hidden email]> wrote:
Hi Somnath,

Poisson Surface Reconstruction is made to give water-tight meshes. I think
the "extension" that you're seeing is a consequence of this. There are some
things that you can do to get "rid" of the extension. You can:

1) Change the setScale parameter to 1.0 (instead of 1.1). This will give you
less "extension" of the mesh but I think there will still be significant
extension. A drawback might be longer time to do the reconstruction.

2) You can get a bounding box for the original point cloud and then "crop"
the reconstructed mesh with the original point cloud bounding box. Note that
for best results, you should use an oriented bounding box.

3) The best way would be to get the convex hull of the original point cloud
and then "crop" the reconstructed mesh with this convex hull as a bounding
volume.

For (2) and (3), I don't think any relevant methods exist in PCL. However,
you can use VTK for doing it. PCL already includes a wrapper to convert from
and to pcl::PolygonMesh and vtkPolyData.



--
View this message in context: http://www.pcl-users.org/poisson-surface-reconstruction-tp4026975p4026976.html
Sent from the Point Cloud Library (PCL) Users mailing list mailing list archive at Nabble.com.
_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users


_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users
Reply | Threaded
Open this post in threaded view
|

Re: poisson surface reconstruction

somnath
In reply to this post by somnath
im unable to get vtk function to crop my mesh given in my previous post, can anybody help me? i am in need of it immediately