RGB-D相机建图——3、使用kalibr进行相机标定

Kalibr 视觉惯性校准工具箱

官方网站:https://github.com/ethz-asl/kalibr

Kalibr是一个工具箱,可以解决以下校准问题:
多摄像机校准:具有非全局共享重叠视场的摄像机系统的内部和外部校准
视觉惯性校准校准(camera-IMU):带有摄影机系统的IMU的时空校准
Rolling Shutter 相机校准:Rolling Shutter 相机的完整固有校准(投影,失真和快门参数)

1. 安装
  • 官方安装网站:https://github.com/ethz-asl/kalibr/wiki/installation

  • 学习帖:

  1. https://zhuanlan.zhihu.com/p/47750214
  2. https://blog.csdn.net/zhubaohua_bupt/article/details/80222321
  3. 使用kalibr对相机标定(不带IMU):
    https://blog.csdn.net/u010368556/article/details/86183374?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522162497029916780274127205%2522%252C%2522scm%2522%253A%252220140713.130102334…%2522%257D&request_id=162497029916780274127205&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allbaidu_landing_v2~default-1-86183374.pc_search_result_before_js&utm_term=kalibr%E8%BF%9B%E8%A1%8C%E7%9B%B8%E6%9C%BA%E6%A0%87%E5%AE%9A&spm=1018.2226.3001.4187
  4. 张正友标定法matlab实现:
    https://blog.csdn.net/weixin_43847162/article/details/89302878?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522162497118216780366586760%2522%252C%2522scm%2522%253A%252220140713.130102334…%2522%257D&request_id=162497118216780366586760&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allbaidu_landing_v2~default-7-89302878.pc_search_result_before_js&utm_term=%E5%BC%A0%E6%AD%A3%E6%9C%89%E6%A0%87%E5%AE%9A%E6%B3%95&spm=1018.2226.3001.4187
  • 采用链接1中的官方教程 其中的Building from source:

直接复制时:
E: 无法定位软件包 ros-indigo-vision-opencv
E: 无法定位软件包 ros-indigo-image-transport-plugins
E: 无法定位软件包 ros-indigo-cmake-modules
由于是18.04并使用的是melodic,应该将所有的indigo改为melodic

编译时出现错误:
RGB-D相机建图——3、使用kalibr进行相机标定_第1张图片
安装:

sudo apt-get install libv4l-dev

注意是4l(小写字母L)而不是41(数字1)

2. 进行标定

Kalibr 视觉惯性校准工具箱
官方网站: https://github.com/ethz-asl/kalibr
安装:https://github.com/ethz-asl/kalibr/wiki/installation
流程细贴:
https://blog.csdn.net/zhubaohua_bupt/article/details/80222321
https://zhuanlan.zhihu.com/p/47750214

2.1 打开相机

rosrun rqt_image_view rqt_image_view 

官方多目相机标定教程:
http://wiki.ros.org/camera_calibration/Tutorials/StereoCalibration

用kalibr的标定方式:
RGB-D相机建图——3、使用kalibr进行相机标定_第2张图片
根据标定板的大小与尺寸,修改realsense的launch文件

2.2 开相应相机launch文件
例如:

roslaunch realsense2_camera rs_camera_vins_d455.launch

2.3 录bag
录制分两个部分,跟随官方网站中的视频链接做旋转、平移等动作就可以了

1、标相机位置 (动板,不动相机)

rosbag record -o 包名.bag /camera/infra1/image_rect_raw /camera/infra2/image_rect_raw

(相机话题名要自己查找核实一下)

第一次标定:

kalibr_calibrate_cameras --bag 包名.bag --topics /camera/infra1/image_rect_raw --topics /camera/infra2/image_rect_raw

2、标板 (动相机 不动板,话题:相机+IMU)

rosbag record -o d435icamera.bag /camera/infra1/image_rect_raw /camera/infra2/image_rect_raw /camera/imu

回放:

rosbag play d435idata_2021-04-22-17-28-22.bag

其中在录包之后可以开rpt看摄像头情况,来检查自己录的视频是否符合要求,有没有少做动作或者距离不合适等等

rosrun rqt_image_view rqt_image_view

你可能感兴趣的:(ubuntu,计算机视觉,相机标定)