-
Notifications
You must be signed in to change notification settings - Fork 419
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
Semantic mesh optimization - split by objectID and cull #521
Conversation
Codecov Report
@@ Coverage Diff @@
## master #521 +/- ##
==========================================
- Coverage 61.54% 61.28% -0.27%
==========================================
Files 166 166
Lines 7594 7627 +33
Branches 84 84
==========================================
Hits 4674 4674
- Misses 2920 2953 +33
Continue to review full report at Codecov.
|
Wow. Look at this: |
This is awesome! Great work @matthewjmay! I think I know which dataset these benchmarks are on. Have you thought about also testing on MP3D and Gibson? |
I believe the results are from MP3D dataset. |
@dhruvbatra @bigbike Confirming these benchmarks are on the MP3D dataset. |
That's great, thank you! |
This is great! Two high-level ideas before I deep-dive into the code:
|
@mosra, That's great! I was actually thinking of something like your first point while implementing this (a simpler version where individual I thought about the single uniform object ID per drawable as well, but decided that it wasn't a good idea to constrain us to this design yet. For one, I can't toggle this feature on/off easily for A/B testing (this won't matter once this design is approved/merged), and also I didn't want to constrain us into this 1 Drawable has 1 ObjectID model, since @bigbike is working on some other scene partitioning models. |
Any blocks on this? Looks like it might be ready to go. @bigbike ? |
…arch#521) * split semantic mesh * enable culling on semantic mesh * update test
Motivation and Context
Previously, semantic meshes were loaded in as a single mesh, making them impossible to cull. This PR leverages the spatial locality of ObjectIDs to split the single mesh into multiple different meshes by object ID, calculate AAbbs, and enables culling on this semantic mesh. See below for a visualization of how this works:
Full benchmarks are currently being ran.
Some example scene A/B tests benchmarking culling on semantic only, and overall rgbd + semantic:
How Has This Been Tested
Types of changes
Checklist