A lightweight, monocular vision-based teach-and-repeat navigation system built for embedded robotics — no LiDAR, no GPS, no expensive stereo cameras. Just a single cheap camera and a Jetson Nano.
The Idea
Teach-and-repeat navigation is one of the most practical paradigms for autonomous mobile robots in structured environments: you drive the robot along a route once (the “teach” phase), and it learns to repeat that exact route on its own (the “repeat” phase).
The challenge is doing this with only monocular vision under real-world constraints — low-texture floors, dynamic objects, and severe compute limitations on embedded hardware.
What I Built
- Visual localization module using ORB feature detection + Lucas–Kanade optical flow for real-time keyframe matching and heading correction
- Ackermann Pure-Pursuit controller for smooth, geometrically-correct path following
- Evaluated trade-offs between feature-based (ORB) and appearance-based (dense optical flow) approaches under varying scene conditions
Key Findings
- ORB-based relocalization was significantly more robust in low-texture scenes than appearance-based methods
- Lucas–Kanade tracking provided stable heading estimates even under partial occlusion
- The full pipeline ran in real-time on Jetson Nano at ~15 fps with under 2W average power draw
Metrics
- Lateral path error: < 8 cm on a 20m indoor route
- Route completion rate: 94% across varied lighting conditions
- CPU utilization: < 45% on Jetson Nano (leaving headroom for higher-level planning)