一.双目相机标定
1.标定板准备
1.1标定板下载
https://github.com/ethz-asl/kalibr/wiki/downloads
1.2标定板参数
文件april_6x6_80x80cm.yaml A0纸打印,官方参数
target_type: 'aprilgrid' #gridtype
tagCols: 6 #number of apriltags
tagRows: 6 #number of apriltags
tagSize: 0.088 #size of apriltag, edge to edge [m]
tagSpacing: 0.3 #ratio of space between tags to tagSize
codeOffset: 0 #code offset for the first tag in the aprilboard
2左右目相机数据准备
2.1关闭结构光
相机默认开启结构光,录制双目数据时会有很多点,干扰标定。
终端1:
1.source /home/xu/imu_catkin_ws/devel/setup.bash
2.roslaunch /home/xu/catkin_ws_realsense/src/realsense-ros/realsense2_camera/launch/rs_camera.launch
终端2:
rosrun rqt_reconfigure rqt_reconfigure
打开后将camera->stereo_module中的emitter_enabled设置为off(0)
2.2可视化双目
打开rviz
修改Fiexd Fram 为camera_link,add rgb和双目对应的topic,/camera/color/image_raw、/camera/infra1/image_rect_raw、/camera/infra2/image_rect_raw
标定时间要在90s以上
2.3修改相机包帧率
kalibr在处理标定数据的时候要求频率不能太高,一般为4Hz,我们可以使用如下命令来更改topic的频率,实际上是将原来的topic以新的频率转成新的topic,实际测试infra1才是对应左目相机。
rosrun topic_tools throttle messages /camera/color/image_raw 4.0 /color
rosrun topic_tools throttle messages /camera/infra1/image_rect_raw 4.0 /infra_left
rosrun topic_tools throttle messages /camera/infra2/image_rect_raw 4.0 /infra_right
2.4录制数据
rosbag record -O multicameras_calibration /infra_left /infra_right /color
multicameras_calibration.bag为录制数据
3.kaliba标定
1. source /home/xu/kalibr_workspace/devel/setup.bash
2. cd /home/xu/kalibr_workspace
3.rosrun kalibr kalibr_calibrate_cameras --target /media/xu/AE42-542E/d455/april_6x6_80x80cm.yaml --bag /media/xu/AE42-542E/d455/multicameras_calibration.bag --models pinhole-radtan pinhole-radtan pinhole-radtan --topics /infra_left /infra_right /color --bag-from-to 2 200 --show-extraction --approx-sync 0.04
–target /home/lessle6/Project/1Ahahahgraduation/Calib/kalibr_workspace/data/april_6x6_A4.yaml
是标定板的配置文件,注意如果选择棋格盘,注意targetCols和targetRows表示的是内侧角点的数量,不是格子数量。
–bag /home/lessle6/multicameras_calibration.bag \ 是录制的数据包
models pinhole-radtan pinhole-radtan pinhole-radtan表示三个摄像头的相机模型和畸变模型(解释参考https://github.com/ethz-asl/kalibr/wiki/supported-models,根据需要选取,其中VINS使用的畸变模型是radtan)
—topics /infra_left /infra_right /color表示三个摄像头对应的拍摄的数据话题
–bag-from-to 3 202表示处理bag中3-202秒的数据。
–show-extraction表示显示检测特征点的过程,这些参数可以相应的调整。
可以使用rosbag info 来参看录制的包的信息
标定结果