Visual odometry (VO) vs VIO: what's the difference?
Published:
Visual odometry (VO) estimates a vehicle's motion from camera images alone. Visual-inertial odometry (VIO) combines that estimate with acceleration and angular rate data from an inertial measurement unit (IMU). In short, VIO is VO with an IMU to cover the cases where a camera on its own struggles.
How does visual odometry work?
Visual odometry looks at how the scene changes between consecutive camera frames to work out how far the camera, and therefore the vehicle, has rotated and in which direction it has moved. Chaining these small steps together gives a path (trajectory).
There are two main approaches. Feature-based methods find distinctive points such as corners in the image, match them in the next frame and solve for the motion from the geometry. Direct methods skip point extraction and compare pixel intensities directly.
Single-camera (monocular) VO has a known limit: because one camera does not measure distance directly, it finds the direction of motion but not its true scale. A stereo camera or additional sensors solve this.
What is VIO, and what does it add to VO?
An IMU consists of accelerometers and gyroscopes; it measures the vehicle's acceleration and rotation rate at a high frequency. VIO fuses these measurements with camera data.
The fusion can be done in two ways. Loosely coupled systems make separate estimates from the camera and the IMU and then combine the results. Tightly coupled systems use the raw visual observations and IMU measurements together in a single estimation problem; they are usually more accurate but more complex. In practice, both filter-based (for example MSCKF) and sliding-window optimization VIO methods are common.
- Scale: with enough motion, the IMU's acceleration measurements make it possible to estimate true distance.
- Fast motion: during sudden movements the camera cannot follow, and during brief image dropouts, the IMU fills the gap.
- Level reference: because the IMU measures the direction of gravity, the vehicle's roll and pitch angles become observable.
Limits they share
Both VO and VIO are relative methods: each step adds a small error, and those errors accumulate over time. In VIO, horizontal position and heading (yaw) in particular cannot be observed in absolute terms, so drift is unavoidable over long periods.
The visual part still depends on the camera: textureless surfaces, low light, glare and motion blur make both methods harder. For VIO to work well, the calibration and time synchronization between the camera and the IMU must also be accurate.
When is each one the better choice?
VO can be enough on systems that carry only a camera, move slowly or have very limited computing power. On vehicles such as drones that maneuver quickly and already carry an IMU, VIO usually gives a more robust result.
To limit the error that builds up over long distances, both methods are often combined with sources that provide an absolute reference, such as SLAM with loop closure, terrain-referenced navigation or scene matching.
Our own IRA-2 GPS-denied navigation kit for fixed-wing UAVs is built on VIO: it fuses camera imagery with inertial measurements entirely on board.
IRA-2: GPS-denied navigation built on VIO →