• Stars
    star
    2,290
  • Rank 19,954 (Top 0.4 %)
  • Language
    C++
  • License
    Apache License 2.0
  • Created almost 3 years ago
  • Updated 3 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

OpenCalib: A Multi-sensor Calibration Toolbox for Autonomous Driving

SensorsCalibration toolbox v0.1

SensorsCalibration is a simple calibration toolbox and open source project, mainly used for sensor calibration in autonomous driving.

Introduction

Sensor calibration is the foundation block of any autonomous system and its constituent sensors and must be performed correctly before sensor fusion may be implemented. Precise calibrations are vital for further processing steps, such as sensor fusion and implementation of algorithms for obstacle detection, localization and mapping, and control. Further, sensor fusion is one of the essential tasks in autonomous driving applications that fuses information obtained from multiple sensors to reduce the uncertainties compared to when sensors are used individually. To solve the problem of sensor calibration for autonomous vehicles, we provide a sensors calibration toolbox. The calibration toolbox can be used to calibrate sensors such as IMU, LiDAR, Camera, and Radar.

Environment(Quick Start)

# pull docker image
sudo docker pull scllovewkf/opencalib:v1
# After the image is pulled down, start the docker image. Β /home/sz3/ailab/ = Β code root path on your host
docker run -it -v /home/sz3/ailab/:/share scllovewkf/opencalib:v1 /bin/bash
# or
sudo ./run_docker.sh

Sensors calibration

This calibration toolbox provides some calibration tools based on road scenes. The specific contents are as follows. If you want to use one of the calibration tools in the list below, you can click the use link to enter the instruction page.

calibration param calibration type calibration method mannual calibration auto calibration usage documentation
camera intrinsice intrinsic target-based βœ” camera intrinsic
imu heading extrinsic target-less βœ” imu heaidng
lidar2imu extrinsic target-less βœ” βœ” lidar2imu
lidar2camera extrinsic target-less βœ” βœ” lidar2camera
lidar2lidar extrinsic target-less βœ” βœ” lidar2lidar
surround-camera extrinsic target-based & target-less βœ” βœ” surround-camera
radar2camera extrinsic target-less βœ” radar2camera
radar2lidar extrinsic target-less βœ” radar2lidar

Factory calibration

At the same time, the calibration toolbox also provides some factory calibration tools.

calibration board type calibration sensor calibration board pattern remove opencv auto calibration usage documentation
chessboard Camera chessboard βœ” βœ” factory calib
circle board Camera circle_board βœ” βœ” factory calib
vertical board Camera vertical board βœ” βœ” factory calib
apriltag board Camera apriltag board βœ” βœ” factory calib
aruco marker board Camera aruco marker board βœ” βœ” factory calib
round hole board Camera and LiDAR round hole board βœ” βœ” factory calib

SensorX2car

SensorX2car is a calibration toolbox for the online calibration of sensor-to-car coordinate systems in road scenes for autonomous driving.

calibration param calibration type calibration method mannual calibration auto calibration usage documentation
camera2car extrinsic target-less βœ” βœ” SensorX2car
lidar2car extrinsic target-less βœ” SensorX2car
pose_sensor2car extrinsic target-less βœ” SensorX2car
radar2car extrinsic target-less βœ” SensorX2car

Related paper

Related paper available on arxiv:
OpenCalib: A Multi-sensor Calibration Toolbox for Autonomous Driving

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Citation

If you find this project useful in your research, please consider cite:

@article{opencalib,
    title={OpenCalib: A Multi-sensor Calibration Toolbox for Autonomous Driving},
    author={Yan, Guohang and Liu, Zhuochun and Wang, Chengjie and Shi, Chunlei and Wei, Pengjin and Cai, Xinyu and Ma, Tao and Liu, Zhizheng and Zhong, Zebin and Liu, Yuqian and Zhao, Ming and Ma, Zheng and Li, Yikang},
    journal={arXiv preprint arXiv:2205.14087},
    year={2022},
}

License

SensorsCalibration is released under the Apache 2.0 license.

Contact

If you have questions about this repo, please contact Yan Guohang ([email protected]). If you need business cooperation, please call 19821266250 (same number on WeChat).