~/satyajit

LiDAR Odometry

2026-05-28 · #slam #lidar #perception

LiDAR odometry estimates a sensor's motion by aligning consecutive point-cloud scans. Each new scan is matched against a reference — the previous scan or a local map — and the rigid transform that best aligns them is the frame-to-frame motion. Integrate those transforms and you have a trajectory.

The matching step is exactly point-cloud-registration: the odometry front-end is a registration problem solved fast enough to run online. Modern systems fuse an IMU to constrain the optimization (LiDAR-inertial odometry), which keeps the registration well-conditioned during fast motion and feature-poor scenes.

Why it is hard

- Scans are sparse and unstructured, so naive nearest-neighbour matching is costly. - Drift accumulates: small per-frame errors compound over a long trajectory. - Degenerate geometry (long corridors, open fields) leaves the alignment under-constrained along some axes.

Most of the engineering effort goes into making point-cloud-registration both robust and cheap enough to close the loop every frame.

Linked from