Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

More examples for detect_planar_patches #7003

Open
3 tasks done
iegorval opened this issue Oct 8, 2024 · 6 comments
Open
3 tasks done

More examples for detect_planar_patches #7003

iegorval opened this issue Oct 8, 2024 · 6 comments
Labels

Comments

@iegorval
Copy link

iegorval commented Oct 8, 2024

Checklist

My Question

Hello,

I am looking for more examples on different point clouds for detect_planar_patches. The method is absolutely unusable for me on a relatively simple pointcloud, either downsampled or not, with normal estimation from open3d as well. It either does not detect any plane or detects some random planes that do not seem to be related in any way with underlying surfaces.

If the method assumes that point cloud should have some specific features (point density, normal estimation quality etc), I think it is better to write it to documentation. It is also better to have more examples in order to give a feel whether the method would work or not.

I am detecting just simple rectangular box in the scene and it amazes me that this method fails so strongly even after trying different parameters set and original author's GUI in Qt.

Also, is there some alternative in open3d that is planned?

Thanks.

Best regards,
Valeria

@rxba
Copy link
Contributor

rxba commented Oct 8, 2024

Hey @iegorval , I can confirm that this method did not produce good results for me either. However, while researching for similar issues to link to you (namely #6550 and discussion #6233 ), I realized that PR #6608 is probably the fix for this. This was merged into main in March, so it's not included in the latest release 0.18.0.

You could try building the current main branch from source and see if it fixes the issue. Thanks!

@iegorval
Copy link
Author

iegorval commented Oct 9, 2024

@rxba That is great info, thanks, will check it!

@rxba
Copy link
Contributor

rxba commented Oct 9, 2024

@iegorval You're right, I thought the links got fixed in a recent PR, but I am guessing something else is wrong with them currently. I also can't see the current Linux wheels on https://github.com/isl-org/Open3D/releases .

Unless someone else with more knowledge about the Releases can chime in, the only other advice I can give right now is to build the current main branch from source yourself, according to the instructions.

@iegorval
Copy link
Author

iegorval commented Oct 9, 2024

@iegorval You're right, I thought the links got fixed in a recent PR, but I am guessing something else is wrong with them currently. I also can't see the current Linux wheels on https://github.com/isl-org/Open3D/releases .

Unless someone else with more knowledge about the Releases can chime in, the only other advice I can give right now is to build the current main branch from source yourself, according to the instructions.

Ah, I see you answered message that I deleted.

Yes, the wheels did not work for me, I ended up building from source.

Somehow the method still does not do what I really expect. I ended up computing it with multiple combination of parameters to extract the surfaces I want even though all required surfaces had similar properties in terms of noise, normals etc. I am not sure if that is the fault of normals estimation itself or of this method. Even though I got the results, I am still not 100% convinced about this, because the change of parameters produces not-so-clear changes in results for me.

@rxba
Copy link
Contributor

rxba commented Oct 9, 2024

I haven't found the time to try it yet myself but thanks for the insights. If you have specific examples of how it is not working as intended feel free to post them so others can have a look.

@iegorval
Copy link
Author

iegorval commented Dec 1, 2024

I haven't found the time to try it yet myself but thanks for the insights. If you have specific examples of how it is not working as intended feel free to post them so others can have a look.

Coming back to this topic: I am not even sure how it is intended to work. I have a point cloud with pretty visible planar patches located in the point cloud, and even after trying hundreds of combinations for the parameters of this algorithm, I am not able to detect them, while a lot of absolutely random non-planar things are getting marked as planar patches. So I would say either documentation / example is very unclear, or the method's quality is very dubious.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants