双目视觉标定的一般方法

1 双目立体相机

双目立体相机是由两个单目相机根据 特定的参数组合而成,工作时可将左右两相机捕捉到的二维图像信息转换到三维立体空间 中,进而通过系列转换变为所需要的三维空间坐标信息。

2 一般过程

双目立体相机标定步骤一般有以下几个步骤:

一是分别对左右相机进行单相机标定, 得到它们的内在矩阵 K,绝对外部参数 R、T,畸变系数 D;

二是根据标定结果对原始图像 进行校正,使两幅图像在同一平面上,相互平行;

三是匹配校正图像之间的像素点。

3 张定友标定思想

采用张正友标定法的思想,按照如下步骤标定实践:

一 通过拍摄多张标定板的照片, 求解每个相机的内参矩阵和畸变矩阵;

二 然后利用每个相机标定得到的参数,对两个相机进 行畸变矫正和水平对齐,使得两个成像平面平行,并且对应点在同一水平线上;

三 然后在校 正后的图像上,寻找左右图像中对应点之间的视差;

四 再根据视差和已知的双目模型参数如 基线长度𝑎和焦距𝑓等,计算每个点离相机的距离,并恢复其三维坐标。

4 标定实践

利用 Matlab 的 2018 版本中的 toolbox_calib 模 块分别对 ZED 2i 双目立体相机的左右两个相机进行单独标定,然后利用两相机的相关参 数进行双目相机的立体标定求解总体参数,最后得到 ZED 2i 双目立体相机的内部参数和 外部参数。

(1)制作规格为 9 格×12 格的黑白相间的棋盘格标定板,其中每个方格大小为 30mm×30mm

(2)将棋盘格标定板放在光线条件良好的位置,不加以固定方便调整标定板姿态。在 ZED 2i 双目立体相机的有效工作距离内,选择合适的距离和位置将相机固定。

通过调 整标定板的位置姿态,分别记录同一位置下的左右两相机的图像,拍摄了 16 组图像。为了 降低后续计算复杂度,本次拍摄 16 组图像保存为 600×600 像素的图像。

(3)在 Matlab 中按照每张图像的顺时针方向检测每个棋盘格角点处图像的特征,并 按照角点特征信息计算相机单应性矩阵𝐻,累计迭代计算进而求取左右相机内部参数,并 通过左右相机的内部参数进行立体匹配,由此可得相机外部参数中的旋转矩阵𝑅和平移向量𝑇。

相关推荐
蒙娜丽宁3 小时前
《Python OpenCV从菜鸟到高手》——零基础进阶,开启图像处理与计算机视觉的大门!
python·opencv·计算机视觉
好喜欢吃红柚子3 小时前
万字长文解读空间、通道注意力机制机制和超详细代码逐行分析(SE,CBAM,SGE,CA,ECA,TA)
人工智能·pytorch·python·计算机视觉·cnn
AI小杨4 小时前
【车道线检测】一、传统车道线检测:基于霍夫变换的车道线检测史诗级详细教程
人工智能·opencv·计算机视觉·霍夫变换·车道线检测
撞南墙者6 小时前
OpenCV自学系列(1)——简介和GUI特征操作
人工智能·opencv·计算机视觉
OCR_wintone4216 小时前
易泊车牌识别相机,助力智慧工地建设
人工智能·数码相机·ocr
王哈哈^_^7 小时前
【数据集】【YOLO】【VOC】目标检测数据集,查找数据集,yolo目标检测算法详细实战训练步骤!
人工智能·深度学习·算法·yolo·目标检测·计算机视觉·pyqt
柳鲲鹏7 小时前
OpenCV视频防抖源码及编译脚本
人工智能·opencv·计算机视觉
浮生如梦_12 小时前
Halcon基于laws纹理特征的SVM分类
图像处理·人工智能·算法·支持向量机·计算机视觉·分类·视觉检测
深度学习lover12 小时前
<项目代码>YOLOv8 苹果腐烂识别<目标检测>
人工智能·python·yolo·目标检测·计算机视觉·苹果腐烂识别
Eric.Lee202117 小时前
yolo v5 开源项目
人工智能·yolo·目标检测·计算机视觉