finds.dev← search

// the find

PRBonn/kiss-icp

★ 2,238 · C++ · MIT · updated Jun 2026

A LiDAR odometry pipeline that just works

KISS-ICP is a LiDAR odometry pipeline that estimates ego-motion from point cloud sequences using a tuned variant of point-to-point ICP with adaptive thresholding and a voxel hash map. It targets robotics engineers who need reliable localization without spending days tuning SLAM parameters. Backed by a peer-reviewed RA-L paper from the University of Bonn's robotics group.

The zero-parameter-tuning claim actually holds up — the adaptive threshold in Threshold.cpp estimates point-to-point correspondence distances from motion history, which sidesteps the usual 'max correspondence distance' hand-tuning that breaks ICP on new sensors. The voxel hash map (tsl_robin under the hood) gives O(1) nearest-neighbor lookup without building a full KD-tree per frame, which matters at 10–20Hz LiDAR rates. Python install is a single pip command that builds the C++ core via pybind11, and the dataset loaders cover KITTI, nuScenes, Ouster, rosbag, MCAP — you can benchmark against public datasets in minutes. Active maintenance with a recent push (June 2026) and a real CI matrix across C++, Python, and ROS 2.

It does odometry, not full SLAM — there is no loop closure, so long outdoor runs accumulate drift that never gets corrected. If you need a globally consistent map, you will have to bolt on something else (LIO-SAM, GTSAM graph, etc.). ROS 1 support was quietly dropped after v0.3.0, which will catch teams running older robot stacks. The C++ core has no IMU pre-integration, so fast rotational motion with a slow-spinning LiDAR (e.g., Velodyne HDL-32 on a turning robot) will stress the motion model. Evaluation notebooks target KITTI/MulRan; if your sensor has non-uniform scan patterns or rolling shutter, you are mostly on your own figuring out whether deskewing is needed.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →