fix: morphology per surface cluster - #3741
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. @@ Coverage Diff @@
## main #3741 +/- ##
=======================================
Coverage 77.58% 77.58%
=======================================
Files 1315 1315
Lines 124697 124697
Branches 10867 10867
=======================================
+ Hits 96748 96750 +2
+ Misses 24816 24815 -1
+ Partials 3133 3132 -1
Flags with carried forward coverage won't be shown. Click here to find out more. 🚀 New features to boost your workflow:
|
…alOS/dimos into andrew/feat/morphology-mem-fix
Greptile SummaryThe morphology rewrite replaces the image-processing dependency stack with an in-tree distance transform and splits elevation slices into tile clusters. Two reliability problems remain in Confidence Score: 1/5The change is not ready to merge because surface extraction can be made resource-intensive by sparse geometry and can fail on valid boundary coordinates. Two independently reproduced availability failures remain in the morphology implementation: one permits unbounded dense-grid growth from sparse input, and the other overflows support-neighbor arithmetic at coordinate limits. Files Needing Attention: dimos/navigation/nav_3d/mls_planner/rust/src/surfaces.rs
|
…alOS/dimos into andrew/feat/morphology-mem-fix
Contribution path
Problem
We use dilation + erosion for closing holes in the surfaces in the mls planner. We used imageproc for this, but that allocates an entire 2d "image" per z level, and if there are stray voxels far away causes massive images to get allocated.
Solution
Massive benefits in really big spaces, and we can get rid of
imageprocand all the deps that come from that.How to Test
AI assistance
Checklist