Kalibr使用

目的:使用Kalibr来标定出imu与相机的外参矩阵

0.准备工作

标定板:Aprilgrid(推荐),checkerboard, circlegrid

需要提供的参数:
1.imu的配置文件
填写imu的动态特性:需要 noise density以及 bias random walk

#Accelerometers
accelerometer_noise_density: 1.86e-03   #Noise density (continuous-time)
accelerometer_random_walk:   4.33e-04   #Bias random walk

#Gyroscopes
gyroscope_noise_density:     1.87e-04   #Noise density (continuous-time)
gyroscope_random_walk:       2.66e-05   #Bias random walk

rostopic:                    /imu0      #the IMU ROS topic
update_rate:                 200.0      #Hz (for discretization of the values above)

1.相机的标定

ros录制相机的图像,注意相机固定,标定板在前方运动,相机收集的频率推荐降低到4HZ:

rosbag record -O subset /cam 
rosrun topic_tools throttle messages /cam 4.0 /cam_reduce

标定的过程使用命令行

kalibr_calibrate_cameras --bag [filename.bag] 
--topics [TOPIC_0 ... TOPIC_N] --models [MODEL_0 ... MODEL_N] 
--target [target.yaml]

实例:

kalibr_calibrate_cameras --target april_6x6.yaml --bag static.bag --models pinhole-equi pinhole-equi omni-radtan omni-radtan --topics /cam0/image_raw /cam1/image_raw /cam2/image_raw /cam3/image_raw

验证:反投影误差(reprojection errors)应该在 (0.1-0.2 px )

kalibr_camera_validator --chain chain.yaml --target aprilgrid_6x6.yaml

2.相机和IMU的联合标定

标定的过程使用命令行

kalibr_calibrate_imu_camera --bag filename.bag --cam camchain.yaml 
--imu imu.yaml --target target.yaml

实例:

kalibr_calibrate_imu_camera --target april_6x6.yaml --cam camchain.yaml 
--imu imu_adis16448.yaml --bag dynamic.bag --bag-from-to 5 45

增加一个参数,忽略时间空隙:

--no-time-calibration 

增加一个参数,bag从5秒录制到45秒:

--bag-from-to 5 45
  • 1
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值