abner-math / PlaneDetection

Implementation of my article "A Robust Statistics Approach for Plane Detection in Unorganized Point Clouds"
GNU General Public License v3.0
223 stars 24 forks source link

can't detect plane #2

Closed JR9124 closed 4 years ago

JR9124 commented 4 years ago

Hi, thanks for sharing your code. I have tried read point cloud whose format is x y z r g b, and then I clicked Autodetected planes, however, there is no result. I have also tried to modify the load module so that it can load point cloud whose format is x y z nx ny nz, but there is still no result. I debugged the code and found that connectivity of point cloud is not established, could you tell me how to read point cloud whose format is x y z or x y z nx ny nz to successfully detect planes by using the code?

abner-math commented 4 years ago

Hello! Yes, you need to create a connectivity graph first. Currently in the UI this is only achievable by estimating the normals first (Go to Plane Detector > Estimate Normals).

Another (less handy) alternative is to modify the code to make it skip the normal estimation process when the point cloud has already normals (your case) and just create the connectivity graph. For that you need a little bit of understanding of this class: https://github.com/abnerrjo/PlaneDetection/blob/master/PointCloudEditor/normalestimatorworker.cpp

Also see this issue for faster normal estimation: https://github.com/abnerrjo/PlaneDetection/issues/1

JR9124 commented 4 years ago

Thanks for your help and quickly reply!