前言

一个 8x6 的棋盘标定板,边长 10.8 cm,因为标定用的是内部角点,所以实际打印出是 9x7 大小
保证一个 5m X 5m 的无遮挡环境
一个发布了左右图像到 ROS 中的双目相机
标定板链接:
http://wiki.ros.org/camera_calibration/Tutorials/StereoCalibration?action=AttachFile&do=view&target=check-108.pdf

参考链接

https://www.bianchengquan.com/article/570460.html
http://wiki.ros.org/camera_calibration/Tutorials/StereoCalibration

操作步骤

  1. 安装依赖及相机标定工具
rosdep install camera_calibration
rosmake camera_calibration
  1. 发布zed2相机图像数据
roslaunch zed_wrapper zed2.launch
  1. 进行标定双目相机内参
rosrun camera_calibration cameracalibrator.py --approximate 0.1 --size 8x6 --square 0.108 right:=/my_stereo/right/image_raw left:=/my_stereo/left/image_raw right_camera:=/my_stereo/right left_camera:=/my_stereo/left

参数解释如下:

–approximate:摄像机校准器可以处理时间戳不完全相同的图像,当前设置为 0.1 秒,意思是只要时间戳差小于 0.1 秒,标定程序就可以正常运行。
–size:标定板内角点大小 8x6
–square:标定板边长 0.108,单位 m
right:右相机图像主题
left:左相机图像主题
right_camera:右相机
left_camera:左相机
启动界面如下,把棋盘格放到相机视野中,标定过程中 X,Y,Size 会不断变化:

  1. 开始标定
    4.1 水平拿着标定板
    确保手拿着标定板长的这一边,不要拿反了:

    4.2 移动标定板
    为了得到好的标定结果,需要在相机视野里面移动标定板,标定板位置如下:
    X 轴标定:移动到视野的最左边,最右边
    Y 轴标定:移动到视野的最上方,最底部
    倾斜标定:改变标定板的角度,斜着拿
    Size 标定:移动标定板充满整个相机视野
    X,Y 和 Size 一起标定:保持标定板倾斜启动到视野的最左,最右,最上,最下
    一些标定画面如下:

  2. 标定结果
    当你移动标定板使得标定程序有了足够的数据计算标定矩阵时,程序中的标定按钮「CALIBRATE」就会变亮,然后点击即可生成标定结果:

    侧边栏会出现标定精度和尺寸:

    epi 为标定精度,当前为 0.16 像素
    dim 为标定尺寸,当前为 0.108 米
    在终端会生成左右图像的标定矩阵,这里截取左右相机的内参矩阵 K 和畸变矩阵 distortion:

Left:
K =  [425.19601412158482, 0.0, 308.29689772295882, 0.0, 426.02702697756899, 223.53789948448997, 0.0, 0.0, 1.0]Right:
K =  [425.18741896821433, 0.0, 323.8787136811938, 0.0, 426.46867413824884, 226.19589833365407, 0.0, 0.0, 1.0][narrow_stereo/left]
distortion
-0.314202 0.091935 0.001295 -0.001620 0.0000[narrow_stereo/right]
distortion
-0.305505 0.082701 0.001967 -0.001641 0.0000

然后点击侧边栏的「SAVE」按钮保存标定结果到 /tmp/calibrationdata.tar.gz,至此双目相机内参标定完成!

ZED2双目相机内参标定相关推荐

  1. zed相机拆机_机器人技术:ZED 双目相机内参标定方法

    今天在家总结了下标定 ZED 相机的步骤,方便开学后直接开整. 一.准备工作 一个 8x6 的棋盘标定板,边长 10.8 cm,因为标定用的是内部角点,所以实际打印出是 9x7 大小 保证一个 5m ...

  2. ZED2双目相机kalibr标定终于得到了个相对满意的结果

    之前的实验数据效果不佳,回溯查找问题,发现VINS跑纯双目的结果很差,经常性的跑飞,结果很离谱.之前VGA模式下,最好的标定结果如下: 调整了图片分辨率为720P,这样图片清晰很多,会提高特征点提取和 ...

  3. ros --- 双目相机内参与外参标定

    ros --- 双目相机内参与外参标定 小觅相机直接获取参数 手动重新标定 1. 双目相机内外参标定 生成标定板 录制 stereo_calibra.bag 标定 标定结果 标定验证 2. 双目 + ...

  4. matlab双目相机标定校正_双目相机的标定过程详解!-----MATLAB

    基于双目视觉的测距.三维重建等过程中的第一步就是要进行标定.双目相机的标定过程在网上有很多资料,但是基本都没有matlab官方网址讲的好.所以请参考MATLAB官方文档:https://ww2.mat ...

  5. 双目相机的标定 python_六个步骤完成双目相机的标定,这么看来也不是很难嘛...

    机器视觉之halcon入门(40)-双目相机的标定 一个相机看到的是一张图像,只有二维信息,要想获取空间物体的三维信息,有一种常用的一种方法是:模拟人眼,用两个相机,就是所谓的双目相机.用相机总是少不 ...

  6. 【自动驾驶】27.相机畸变_相机内参标定 整理

    本文整理了很多有关相机畸变博客的相关内容,都附上的原文地址,也纠正了一些其他博客的错误. 下面两张截图来自高翔博士的<视觉SLAM十四讲>书中内容. 有关添加畸变矫正以及去畸变的详细过程, ...

  7. 二十.激光、视觉和惯导LVIO-SLAM框架学习之相机内参标定

    专栏系列文章如下: 一:Tixiao Shan最新力作LVI-SAM(Lio-SAM+Vins-Mono),基于视觉-激光-惯导里程计的SLAM框架,环境搭建和跑通过程_goldqiu的博客-CSDN ...

  8. Basler相机内参标定及Basler相机和Livox-avia激光雷达联合标定

    本次相机内参标定及相机-激光雷达联合标定采用的数据为同一批.数据采集系统:ubuntu-20.04,ROS-noetic. 前期准备 关于系统安装以及ROS环境配置,在这里不写出具体步骤,可查阅其他相 ...

  9. 工业相机基础知识以及相机内参标定

    第一部分 工业相机基础知识 本部分主要参考以下文章: [计算机视觉]相机成相之像距.物距.焦距 CCD以及镜头入门知识 工业摄像头传感器尺寸与像元尺寸的关系 1.相机成像 根据相机成像原理,可得到如下 ...

最新文章

  1. 英语之弱元音Schwa
  2. XVI Open Cup named after E.V. Pankratiev. GP of Ekaterinburg
  3. git 怎么备份本地分支_Git常用个人备份笔记
  4. 使用简单的Java代码在SAP C4C里创建销售订单
  5. Flume均匀发送数据到kafka的partition配置UUID Interceptor生成key的坑
  6. markdown 流程图_测试了12款Markdown编辑器,推荐一个最好用的!
  7. 一个 冒泡排序 和 选择排序 的简单c程序
  8. 我最大的乐趣是不厌其烦地收集人生的各种经历和体验。我喜欢享受人生的各种经历和体验所带给我的难以言表的乐趣...
  9. tensorflow构建CNN模型时的常用接口函数
  10. zabbix3.0 安装方法
  11. Motion 5 for Mac(专业视频编辑软件)v5.3.2永久破解版
  12. 模拟学信网登录,Cookie 序列化,在反序列化之后不能用的问题
  13. Perl面向对象编程入门
  14. 水瓶座06年3月运程
  15. 薪资大曝光,转行测试工程师:真香!!!
  16. [0892]《兽医内科学》主观题
  17. 【KITTI】KITTI数据集简介(三) — 图像数据image_2
  18. 2023河南理工大学计算机考研信息汇总
  19. 2021届 美的笔试 C++开发工程师
  20. 程序员面临脱发困扰吃什么?

热门文章

  1. 锡恩管理思想再受客户集中推广
  2. 单片机入门、进阶到终结
  3. 【SUMO学习】初级 Hello World
  4. 羊了个羊游戏开发教程2:随机生成卡牌
  5. BI大数据项目的0-1开展模型
  6. java ntp服务器ip地址_NTP服务器时间同步
  7. 【练习二】选择结构(if、switch)相关练习
  8. R语言标准化死亡率 (SMR)分析(3)
  9. java repaint 没反应_Java repaint()在浏览器中不起作用
  10. C语言——如何调用函数