相机和imu单独标定请参考前面的博客
1、准备文件
- checkboard.yaml
- 相机标定文件camera_calibration.yaml
- imu标定文件imu_calibration.yaml
IMU标定文件格式需要改为如下:
rostopic: /zed2/zed_node/imu/data_raw
update_rate: 200.0 #Hz
accelerometer_noise_density: 1.95210249097e-03 #continous
accelerometer_random_walk: 3.21657754841e-05
gyroscope_noise_density: 1.66653821181e-03 #continous
gyroscope_random_walk: 3.62995642537e-06
2、录制数据包
rosbag record -O camera_imu.bag /zed2/zed_node/imu/data_raw /zed2/zed_node/left_raw/image_raw_color /zed2/zed_node/right_raw/image_raw_color
具体晃动方式,请参考:https://github.com/ethz-asl/kalibr
3、获取标定结果
kalibr_calibrate_cameras --bag camera_imu.bag
--topics /zed2/zed_node/left_raw/image_raw_color /zed2/zed_node/right_raw/image_raw_color /zed/imu/data_raw
--target /home/linu/checkboard.yaml
--bag-from-to 10 120
--cam /home/linu/camera_calibration.yaml
--imu /home/linu/imu_calibration.yaml
--imu-models scale-misalignment
--timeoffset-padding 0.1
包含:
bag——rosbag录制的camera和imu数据包
topic——话题
target——标定板
cam——相机标定文件
imu——imu标定文件
imu-models——imu模型设置
timeoffset-padding 0.1——不加可能导致优化失败
4、标定结果
Calibration results
===================
Normalized Residuals
----------------------------
Reprojection error (cam0): mean 0.388027724346, median 0.321586354657, std: 0.193270240334
Reprojection error (cam1): mean 0.345539051233, median 0.306117037601, std: 0.16266451799
Gyroscope error (imu0): mean 0.047658139606, median 0.019215060196, std: 0.066810728083
Accelerometer error (imu0): mean 0.038012311012, median 0.0120486055, std: 0.081502678654
Residuals
----------------------------
Reprojection error (cam0) [px]: mean 0.388027724346, median 0.321586354657, std: 0.193270240334
Reprojection error (cam1) [px]: mean 0.345539051233, median 0.306117037601, std: 0.16266451799
Gyroscope error (imu0) [rad/s]: mean 0.00118778318767, median 0.00028144806936, std: 0.001101726635
Accelerometer error (imu0) [m/s^2]: mean 0.0113284920637, median 0.02255015969, std: 0.02416736731076
Transformation (cam0):
-----------------------
T_ci: (imu0 to cam0):
[[ 0.00187147 -0.99998549 -0.00505064 0.01366733]
[ 0.01017231 0.00506942 -0.99993541 -0.00102147]
[ 0.99994651 0.00181997 0.01018165 -0.01131571]
[ 0. 0. 0. 1. ]]
T_ic: (cam0 to imu0):
[[ 0.00187147 0.01017231 0.99994651 0.01129992]
[-0.99998549 0.00506942 0.00181997 0.0136929 ]
[-0.00505064 -0.99993541 0.01018165 -0.00083716]
[ 0. 0. 0. 1. ]]
timeshift cam0 to imu0: [s] (t_imu = t_cam + shift)
0.00154701726907521
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)