Skip to content

Unsigned-Long/iKalibr

Repository files navigation


iKalibr: Unified Targetless Spatiotemporal Calibration Framework

Author » Shuolong Chen

"The naming of iKalibr is inspired by Kalibr, but not an extension of it. Wonder why?"

🎉 News » A tested installation pipeline on ubuntu 20.04!


iKalibr is a spatiotemporal calibration framework focusing on resilient integrated inertial systems (sensor suite integrates at least one IMU), the features of iKalibr are listed as follows:

  • Targetless: requires no additional artificial targets or facilities. This is perhaps the biggest difference between iKalibr and Kalibr (Kalibr is a chessboard-based visual-inertial calibrator).
  • Spatiotemporal: determines both spatial (extrinsic rotations and translations) and temporal (time offsets, readout time of RS cameras) parameters.
  • Resilient and compact: supports a wide range of sensor suites for one-shot resilient calibration. The IMUs, radars, LiDARs, optical cameras (both GS and RS modes), and depth cameras (RGBDs, newly supported), are supported currently. See the following illustration of the full pipeline. "Compact" means that no additional sensors are required to calibrate a given sensor suite.
  • Easy to extend: iKalibr is a general spatiotemporal calibration pipeline, and easy to extend to support other sensor types, such as the popular event cameras.

For more details, please refer to our article 👇:

  • S. Chen, X. Li*, S. Li, Y. Zhou, and X. Yang. iKalibr: Unified Targetless Spatiotemporal Calibration for Resilient Integrated Inertial Systems[J]. arXiv:2407.11420 [cs.RO]. [paper-arXiv] [video]
  • S. Chen, X. Li*, S. Li, and Y. Zhou. iKalibr-RGBD: Partially-Specialized Target-Free Visual-Inertial Spatiotemporal Calibration For RGBDs via Continuous-Time Velocity Estimation[J]. arXiv:2409.07116 [cs.RO]. [paper-arXiv]

« Demo Video of iKalibr »

"Targetless, Spatial & Temporal, Resilient, Easy To Use, You Only Calibrate Once"




Tutorial: Prepare iKalibr Environment for Calibration »

  • install available operation systems and required third libraries.
  • clone iKalibr and its submodules on github, compile submodules.
  • compile iKalibr (this would require some time).

Tutorial: General Calibration Procedure in iKalibr »

  • collect sensor data dynamically, sufficiently excited motion is needed.
  • write adaptable configure file (a template file has been provided).
  • run iKalibr based on the configure file.

Additional Helpful Tools in iKalibr »

  • rosbag assembly before solving, such as raw inertial csv file or images to rosbag, merge or split rosbag.
  • data format transformation after solving, some visualization scripts.

Dataset Utilized in iKalibr for Evaluation »

  • our dataset: two cameras, a Livox Avia lidar (with built-in IMU), a velodyne VLP-32C lidars, two mmWave 3D radars, a MTI IMU.
  • LI-Calib (OA-Calib) dataset: a velodyne VLP-16 lidars, three IMUs.
  • River dataset: two mmWave 3D radars, a MTI IMU.
  • TUM GS-RS dataset: a GS camera, a RS camera, a Bosch IMU.
  • VECtor dataset: two optical cameras (with reprojected depth images), two event cameras, an Ouster OS0-128 LiDAR, a XSens MTi-30 AHRS IMU.

Copyright

iKalibr: Unified Targetless Spatiotemporal Calibration Framework
Copyright 2024, the School of Geodesy and Geomatics (SGG), Wuhan University, China
https://github.com/Unsigned-Long/iKalibr.git

Author: Shuolong Chen (shlchen@whu.edu.cn)
GitHub: https://github.com/Unsigned-Long
ORCID: 0000-0002-5283-9057

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  • Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  • Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
  • Neither the name of the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.