An actively maintained universal calibration toolbox for assisted, target-based multi-sensor calibration with ROS 1 and ROS 2 support. It provides a variety of methods and applications to calibrate complex multi-sensor systems, e.g.
- Extrinsic Camera-LiDAR Calibration,
- Extrinsic Camera-Reference Calibration,
- Extrinsic LiDAR-LiDAR Calibration,
- Extrinsic LiDAR-Reference Calibration, and
- Extrinsic LiDAR-Vehicle Calibration (prototype).
The software is licensed under the new BSD 3-Clause license. If you use this project for your research, please cite:
@inproceedings{
ruf2025_multisensor_calibration,
title={Multi-Sensor Calibration Toolbox for Large-Scale Offroad Robotics},
author={Boitumelo Ruf and Miguel Granero and Raphael Hagmanns and Janko Petereit},
conference={German Robotics Conference (RIG) 2025},
year={2025},
}
The multisensor_calibration
can be installed with apt:
sudo apt install ros-$ROS_DISTRO-multisensor-calibration
Or manually. If you want to compile and use locally, see Getting Started.
Since ROS 1 is soon end-of-life, there will be no official release for ROS 1. However, there is a version of the source code available for ROS 1 under the branch noetic.
Acknowledgement: This software was developed as part of the projects AKIT-PRO (grant no. 13N15673) and ROBDEKON – Robotic Systems for Decontamination in Hazardous Environments (grant nos. 13N14674 and 13N16538), funded by the Federal Ministry of Education and Research (BMBF) under the German Federal Government’s Research for Civil Security program.
Service | devel | main |
---|---|---|
GitHub | ||
If you have already installed the package with apt, this section can be skipped.
Basic requirements can be installed by calling following command from the top of the ROS workspace:
rosdep install -y -r --from-paths src --ignore-src
Further requirements:
- PCL
- OpenCV
- Qt
- small_gicp: TThe package
small_gicp_vendor
wraps this library to make it available for other ROS components. This is a common practice for third-party libraries without available deb sources. It is licensed under the MIT-License. - OpenMP (optional): This is used to parallelize and speed up the processing of each point in the point cloud. If not found by CMake the processing will be done sequentially.
- Doxygen (optional): If available, this Doxygen documentation will be build automatically.
-
Clone repository:
git clone https://github.com/FraunhoferIOSB/multisensor_calibration.git
-
Initialize
rosdep
and install dependencies:sudo rosdep init rosdep update rosdep install --from-paths src -y --ignore-src
-
Run
colcon
to build from source:
To build in 'Debug' mode add-DCMAKE_BUILD_TYPE=Debug
to catkin command. If 'CMAKE_BUILD_TYPE' omitted, multisensor_calibration will be build in 'Release' mode.MAKEFLAGS='-j 8' colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release
Run the following launch file from the package.
ros2 launch multisensor_calibration multi_sensor_calib_example.launch.py
See the user documentation for basic usage, tutorials and workflows.