visual odometry
**Visual odometry (VO)** is the **real-time estimation of a camera or robot trajectory from sequential visual observations** - it computes incremental motion between frames to track pose as the agent moves through an environment.
**What Is Visual Odometry?**
- **Definition**: Estimate relative translation and rotation over time from camera input.
- **Input Types**: Monocular, stereo, or RGB-D image streams.
- **Output**: Incremental and integrated trajectory in 3D space.
- **Difference from SfM**: VO prioritizes online incremental updates for real-time operation.
**Why Visual Odometry Matters**
- **Navigation Core**: Provides motion estimate for autonomous platforms.
- **Low Infrastructure**: Works without external localization beacons.
- **Sensor Flexibility**: Runs on camera-only hardware for lightweight systems.
- **Foundation for SLAM**: Supplies front-end motion estimates before global map correction.
- **Deployment Utility**: Used in drones, AR devices, and mobile robots.
**VO Approaches**
**Feature-Based VO**:
- Track keypoints and solve geometric motion from correspondences.
- Robust under moderate texture and lighting.
**Direct VO**:
- Optimize photometric consistency over pixels.
- Uses more image information but sensitive to illumination shifts.
**Learned VO**:
- Neural models infer pose changes directly from frame sequences.
- Often fused with geometric constraints for stability.
**How It Works**
**Step 1**:
- Estimate frame-to-frame correspondences and solve relative camera transform.
**Step 2**:
- Integrate transforms over time to build trajectory and optionally refine with local optimization.
Visual odometry is **the real-time motion estimation engine that keeps an agent oriented as it moves through unknown space** - robust VO is a prerequisite for reliable autonomous navigation.