Kalibr简介:
ethz-asl/kalibr is a toolbox that solves the following calibration problems:
- Multiple camera calibration: intrinsic and extrinsic calibration of a camera-systems with non-globally shared overlapping fields of view
- Camera-IMU calibration: spatial and temporal calibration of an IMU w.r.t a camera-system
- Rolling Shutter Camera calibration: full intrinsic calibration (projection, distortion and shutter parameters) of rolling shutter cameras
安装步骤:
# 安装依赖库
sudo apt-get install python-setuptools python-rosinstall ipython libeigen3-dev libboost-all-dev doxygen libopencv-dev ros-kinetic-vision-opencv ros-kinetic-image-transport-plugins ros-kinetic-cmake-modules python-software-properties software-properties-common libpoco-dev python-matplotlib python-scipy python-git python-pip ipython libtbb-dev libblas-dev liblapack-dev python-catkin-tools libv4l-dev
sudo pip install python-igraph --upgrade
# 编译Kalibr仓库
mkdir -p ~/kalibr_workspace/src
cd ~/kalibr_workspace
source /opt/ros/kinetic/setup.bash
catkin init
catkin config --extend /opt/ros/kinetic
catkin config --merge-devel # Necessary for catkin_tools >= 0.4.
catkin config --cmake-args -DCMAKE_BUILD_TYPE=Release
cd ~/kalibr_workspace/src
git clone https://github.com/ethz-asl/Kalibr.git
cd ~/kalibr_workspace
catkin build -DCMAKE_BUILD_TYPE=Release -j8
# 执行Kalibr 工程
source ~/kalibr_workspace/devel/setup.bash
kalibr_calibrate_imu_camera --bag [filename.bag] --cam [camchain.yaml] --imu [imu.yaml] --target [target.yaml]
# 参考样例
cd /home/tmp/datasets/calibration/dynamic
source ~/kalibr_workspace/devel/setup.bash
kalibr_calibrate_imu_camera --target april_6x6.yaml --cam camchain.yaml --imu imu_adis.yaml --bag dynamic.bag --bag-from-to 5 45
kalibr_calibrate_cameras --target april_4*4grid.yaml --bag 238.bag --bag-from-to 5 45 --models pinhole-radtan pinhole-radtan --topics /m/left_image /m/right_image
标定过程:
遇到问题:
catkin build -DCMAKE_BUILD_TYPE=Release -j8
fatal error: numpy/arrayobject.h: No such file or directory
解决方法:
(Ubuntu 16.04, Kinetic) sudo apt-get install --reinstall python-numpy
问题:no Import pyx
解决:sudo apt-get install python-pyx
参考:
- https://github.com/ethz-asl/kalibr/issues/260
- Paul Furgale, Joern Rehder, Roland Siegwart (2013). Unified Temporal and Spatial Calibration for Multi-Sensor Systems. In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Tokyo, Japan.
- Paul Furgale, T D Barfoot, G Sibley (2012). Continuous-Time Batch Estimation Using Temporal Basis Functions. In Proceedings of the IEEE International Conference on Robotics and Automation (ICRA), pp. 2088–2095, St. Paul, MN.
- J. Maye, P. Furgale, R. Siegwart (2013). Self-supervised Calibration for Robotic Systems, In Proc. of the IEEE Intelligent Vehicles Symposium (IVS)