refactor(perception): replace OSR tracking with Dan localization - #3849
Draft
ruthwikdasyam wants to merge 1 commit into
Draft
refactor(perception): replace OSR tracking with Dan localization#3849ruthwikdasyam wants to merge 1 commit into
ruthwikdasyam wants to merge 1 commit into
Conversation
❌ 1 Tests Failed:
View the top 1 failed test(s) by shortest run time
To view more test analytics, go to the Test Analytics Dashboard |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Contribution path
Problem
The xArm object scene registration path maintained a second object-tracking and persistence stack beside Dan perception. Pick-and-place consumed stable OSR UUIDs and then made another perception RPC for the point cloud, which allowed a pick to use geometry that differed from the scan result. The real xArm stack also lacked a published camera mount edge needed to resolve camera observations into the world frame.
Solution
ObjectDBlookup APIs with one warmDanDetectorover bounded RGB-D, camera-info, and split-TF history.localize_objects(prompts)RPC that returns request-scopedLocalizationresults and rejects ambiguous, stale, or frame-inconsistent geometry.link7 -> camera_linkmount transform repeatedly and configure explicit real and simulated optical frames.Key tradeoffs:
How to Test
Run the headless xArm room stack on a CUDA/MPS-capable host:
In
dimos shell:Validation completed:
pytest-fast: 4,725 passed and 15 skipped. Two unrelated relay static-file tests still fail with existing HTTP 404 behavior.AI assistance
OpenCode with GPT-5.6-sol was used extensively for codebase analysis, implementation, conflict resolution, tests, and PR preparation. The author is responsible for reviewing the resulting changes.
Checklist