KISS-ICP: In Defense of Point-to-Point ICP – Simple, Accurate, and Robust Registration If Done the Right Way
Point cloud maps (blue) generated online by our proposed odometry pipeline on different datasets with the same set of parameters. We depict the latest scan in yellow. The scans are recorded using different sensors with different point densities, different orientations, and different shooting patterns. The automotive example stems from the MulRan dataset. The drone of the Voxgraph dataset and the segway robot used in the NCLT dataset show a high acceleration motion profile. The handheld mechanical LiDAR of LOAM Livox has a completely different shooting pattern than the commonly used rotating mechanical LiDAR.
It was never this easy, just git clone this repo into your catkin workspace and build it:
cd ~/catkin_ws/ && git clone https://github.com/PRBonn/kiss-icp && catkin build
For more detailed instructions on the ROS wrapper, please visit here
kiss_icp_ros.mp4
We released a python-package supported on , , and .
To get started, just run
pip install kiss-icp
If you also want to install all the (optional) dependencies, like Open3D for running the visualizer:
pip install "kiss-icp[all]"
Next, follow the instructions on how to run the system by typing:
kiss_icp_pipeline --help
This should print the following help message:
If you plan to modify the code then you need to setup the dev dependencies, luckilly, the only real
requirements are a modern C++ compiler and the pip
package manager, nothing else!, in Ubuntu-based
sytems this can be done with:
sudo apt install g++ python3-pip
After that you can clone the code and install the python api:
git clone https://github.com/PRBonn/kiss-icp.git
cd kiss-icp
pip install --verbose .
If you want to have more controll over the build, you should then install cmake
, ,ninja
, tbb
,
Eigen
, and pybind11
as extra dependencies in your system, the ubuntu-way of doing this is:
sudo apt install build-essential libeigen3-dev libtbb-dev pybind11-dev ninja-build
kiss-icp.mp4
- Ignacio Vizzo
- Tiziano Guadagnino
- Benedikt Mersch
- Louis Wiesmann
- Jens Behley
- Cyrill Stachniss
If you use this library for any academic work, please cite our original paper.
@article{vizzo2023ral,
author = {Vizzo, Ignacio and Guadagnino, Tiziano and Mersch, Benedikt and Wiesmann, Louis and Behley, Jens and Stachniss, Cyrill},
title = {{KISS-ICP: In Defense of Point-to-Point ICP -- Simple, Accurate, and Robust Registration If Done the Right Way}},
journal = {IEEE Robotics and Automation Letters (RA-L)},
pages = {1-8},
doi = {10.1109/LRA.2023.3236571},
volume = {8},
number = {2},
year = {2023},
codeurl = {https://github.com/PRBonn/kiss-icp},
}