robotics//navigation//odometry
Odometry is the estimation of a robot's pose by chaining relative motions measured from one instant to the next (wheel turns, the shift between two lidar scans, the movement of features between two camera frames), and it is the first motion estimate of almost every ground robot, warehouse vehicle and vacuum cleaner. It belongs to the same family as dead reckoning, and the words overlap in use: dead reckoning usually integrates rates and accelerations from inertial sensors, odometry adds up displacements measured against the wheels or the surroundings.
Odometry is the estimation of a robot's pose by chaining relative motions measured from one instant to the next (wheel turns, the shift between two lidar scans, the movement of features between two camera frames), and it is the first motion estimate of almost every ground robot, warehouse vehicle and vacuum cleaner. It belongs to the same family as dead reckoning, and the words overlap in use: dead reckoning usually integrates rates and accelerations from inertial sensors, odometry adds up displacements measured against the wheels or the surroundings.
For a differential-drive robot with wheels a distance bbb apart, the rotary encoder on each wheel gives the distance rolled by the left and right wheels in one step, ΔsL\Delta s_LΔsL and ΔsR\Delta s_RΔsR, and the pose advances by
Δs=ΔsR+ΔsL2,Δθ=ΔsR−ΔsLb.\Delta s=\frac{\Delta s_R+\Delta s_L}{2},\qquad \Delta\theta=\frac{\Delta s_R-\Delta s_L}{b}.Δs=2ΔsR+ΔsL,Δθ=bΔsR−ΔsL.
The first is how far the centre moved, the second how much the robot turned, and the position is updated along the current heading. Visual and lidar odometry replace the wheels by matching what the sensor sees now against what it saw a moment ago, which works on legs, tracks and in the air, where nothing rolls.
Every step carries a small error, and the steps are chained, so the pose drifts without bound. Wheels slip on a wet floor, their radius changes with load and wear, and a heading error of a degree turns into a lateral error that grows with every metre travelled; a lidar match fails in a long featureless corridor, a camera in the dark.
Heading is the weak spot: an error in Δθ\Delta\thetaΔθ rotates everything that follows, which is why ground robots add a gyroscope and fuse the two (sensor fusion).
Odometry is rarely the final answer. In SLAM each odometry step becomes an edge of a graph of poses, and recognising a place already visited closes a loop that spreads the accumulated drift back over the path; a particle filter uses it as the motion model and a known map as the correction. With a camera and an IMU together it becomes visual-inertial odometry.