Skip to content

Commit d006746

Browse files
awesomebytesclaude
andcommitted
PLAN.md: vision loop-closure tutorial GO — capstone merged
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
1 parent 08868d8 commit d006746

1 file changed

Lines changed: 17 additions & 0 deletions

File tree

PLAN.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -413,6 +413,23 @@ mechanically, not by discipline.
413413
as the env's CPU OpenCV — CUDA libs must be FIRST on LD_LIBRARY_PATH,
414414
never both loaded. `docs/vision/CUDA_OPENCV.md`.
415415

416+
- **Vision loop-closure tutorial (2026-07-11, GO; 10 commits, merged 08868d8):**
417+
the capstone — ORB-SLAM2's place-recognition front-end as short Python:
418+
zero-copy image ingest (cv::Mat aliases the C++ msg buffer,
419+
pointer-identity-tested — first zero-copy-IN across the kits; 1080p ingest
420+
~155× vs rclpy copy), C++ cv::ORB (~270 fps), DBoW2 built from source
421+
(5 files, no CMake; ORB-SLAM2-style binary vocab cache: real 145 MB
422+
ORBvoc → 971k words in 2.3 s, binary reload 0.37 s), temporally-gated
423+
loop detection — synthetic: 19 loops, P=1.00/R=0.95, GOLDEN TEST green,
424+
no download; TUM fr3_long_office (1.48 GB tooling-downloaded): the genuine
425+
revisit detected (frame ~2207 → ~78). M4: GTSAM pose-graph correction,
426+
drift 2.19 → 0.14 m (~15×) — via gtsam's Python binding (cppyy gtsam
427+
BLOCKED on missing boost headers; sound fallback, batch step not hot loop).
428+
Reusable dataset tooling: synthetic generator + TUM/ORBvoc downloaders +
429+
dataset_publisher node. Headline doc: `docs/tutorials/vision_loop_closure.md`.
430+
CUDA path documented via the Esri prebuilt (~5.3× ORB). Post-merge fix:
431+
stale vendored DBoW2 rebuilt (14/14 green).
432+
416433
## Risks & mitigations
417434

418435
- **conda-forge cppyy behaves differently from the pip wheel** (cling resource

0 commit comments

Comments
 (0)