aruco emit detection3D#2278
Conversation
Codecov Report❌ Patch coverage is 📢 Thoughts on this report? Let us know! |
Greptile SummaryThis PR refactors live ArUco/AprilTag detection to emit
Confidence Score: 5/5Safe to merge; the refactoring is well-structured and all call sites are consistently updated. The core detection and streaming logic is correctly implemented. MarkersPerFrame flush semantics handle all expected frame orderings. The two findings are both speculative edge cases that do not affect the current deployed configurations. No files require special attention; the two suggestions in marker_detection_stream_module.py and desk_marker_tf.py are minor hardening improvements. Important Files Changed
Sequence DiagramsequenceDiagram
participant Cam as CameraModule
participant MDSM as MarkerDetectionStreamModule
participant DM as DetectMarkers
participant MPF as MarkersPerFrame
participant LCM as LCMTransport
participant MTF as MarkerTfModule
participant RR as Rerun
Cam->>MDSM: color_image (Image)
MDSM->>MDSM: _append_image_with_pose (TF lookup, gate on CameraInfo)
MDSM->>DM: Stream[Observation[Image]] with pose tuple
DM->>DM: QualityWindow / SpeedLimit
DM->>DM: detect_markers_in_image
DM-->>MPF: Observation[Detection3DMarker] x N
DM-->>MPF: None sentinel (empty frame)
MPF->>MPF: flush on count or ts-change
MPF->>LCM: Detection3DArray (one per frame)
LCM-->>MTF: Detection3DArray (in-process)
LCM-->>RR: Detection3DArray (via LCM wire)
MTF->>MTF: "_process_detections -> tf.publish"
RR->>RR: "msg.to_rerun() -> rr.Boxes3D"
Reviews (9): Last reviewed commit: "fix test pydantic None" | Re-trigger Greptile |
f8d4f3c to
9846741
Compare
7d38835 to
da3c529
Compare
dd9b101 to
1830e75
Compare
Integrate origin/main (PR #2242 loop_closure rewrite, #2278 aruco Detection3D, #2316 docs/coding-agents rename, mem2 time windowing, etc.). Took origin's marker-free PGO/PoseGraph rewrite for loop_closure (eval, pgo, test_pgo, markers_rrd), marker_transformer, and the map CLI; kept branch map_rrd. Stripped remaining # ---- section markers from map_rrd.
This PR builds upon #2242 and closes awaited #1654
Make marker detection emit
vision_msgs/Detection3DArrayso downstream detection consumers - filtering - debug overlays - tracking - spatial memory - and Rerun visualization can treat markers like other 3D detections.Architecture