基于OpenCV的双目立体视觉测距
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于OpenCV的双目立体视觉测距
基于OpenCV的双目立体视觉测距
论文导读::
双目立体视觉模型。摄像机标定。立体匹配采用OpenCV库中的块匹配立体算法。目前的测距方法主要有主动测距和被动测距两种方法。论文
关键词:
双目立体视觉,摄像机标定,立体匹配,测距
(一)引言基于计算机视觉理论的视觉测距技术是今后发展的一个重要方向,它在机器人壁障系统、汽车导航防撞系统等领域有着广泛的应用前景。目前的测距方法主要有主动测距和被动测距两种方法。论文采用的是被动测距法。被动测距法是在自然光照条件下,根据被测物体本身发出的信号来测量距离,主要包括立体视觉测距法、单目测距法、测角被动测距法等。立体视觉测距法是仿照人类利用双目感知距离信息的一种测距方法,直接模拟人的双眼处理景物,简便可靠,但该方法的难点是选择合理的匹配特征和匹配准则。双目立体视觉系统采用两台摄像机同时从两个不同视点获取同一景物的多幅图像,即立体图像对,通过测量景物在立体图像对中的视差,再利用双目视觉成像原理就可以计算出目标到摄像机的距离。立体匹配采用OpenCV库中的块匹配立体算法,在得到摄像机参数和匹配点后再利用最小二乘法即可算出三维信息。
(二)双目立体视觉模型首先介绍双目视觉所涉及到三个坐标系:
世界坐标系、摄像机坐标系和图像坐标系。世界坐标系中的点坐标记为,摄像机坐标系用表示。图像坐标为摄像机所拍摄到的图像的二维坐标,一般有两种表示方法:
是以像素为单位的图像坐标,是以毫米为单位的图像坐标。建立以毫米为单位的图像坐标是因为坐标只表示了像素在数字图像中的行数和列数,并没有表示出该像素在数字图像中的物理位置论文范文。图1为平行双目视觉模型,即参数相同的两个摄像机平行放置,两光
轴互相平行且都平行于z 轴,x 轴共线摄像机标定,两摄像机光心的距离为
B(即基线距)。图中O
1、O2为左右两摄像机的焦点,I1 、I2为左右摄像机的像平面,P1 、P2 分
别是空间点P在左右像平面上的成像点,f是摄像机的焦距。若视差d 定义为?P1- P2?,则点P到立体视觉系统的距离为:
图1 平行双目视觉模型
(三)摄像机标定摄像机标定是为了建立三维世界坐标与二维图像坐标之间的
一种对应关系。系统采用两个摄像机进行图像采集,设定好两个摄像机之间的距离(即基线距),用摄像机同时采集放在摄像机前的标定物。摄像机标定采用的是张正友的标定方法,棋盘格大小为30mm30mm,角点数为117。标定板的规格如图2所示。图2 平面标定板规格张正友的标定方法需要摄像机从不同角度拍摄标定板
的多幅图像。由于两个摄像机是向前平行放置的,且基线距固定,所以只需摆放标定板的位置变化即可。摄像机为针孔成像模型,则空间点与图像点之间的映射关系为:
为方便计算,使标定板所在平面的Z坐标均为0,即Z=0的平面,则上式可变为:
其中,A为摄像机的内参矩阵,为摄像机外参矩阵,s为尺度因子。令,,则上
式可写为:
其中,为透视投影矩阵,它是标定板上的点和其像点之间的映射。在已知空
间点和其对应像点后,可根据最小二乘方程,采用Levenberg-Marquardt算法求解
得到H矩阵,并求出摄像机的内外参数矩阵。一般摄像机都存在镜头畸变,且畸变会影响标定结果,特别是径向畸变,因此只考虑一阶和二阶的径向畸变。
(四)立体匹配
1.立体匹配算法立体匹配是通过寻找同一空间景物在不同视点下投影图像中
像素间的一一对应关系。立体匹配是匹配两个不同的摄像机拍摄得到图像的三维点。立体匹配采用的是OpenCV提供的块匹配立体算法vFindStereoCorrespondeneBM,该算法使用了一个叫绝对误差累计的小窗口(SAD)来查找立体校正后左右两幅图像之间的匹配点。这个算法只查找两幅图像之间的强匹配点(即强纹理)。块
匹配立体算法有以下三个步骤:
1.预过滤,使图像亮度归一化并加强图像纹理。
沿着水平极线用SAD窗口进行匹配搜索。
3.再过滤,去除坏的匹配点。匹配过程通过在整幅图像滑动SAD窗口来完
成。对左图像上的每个特征而言,搜索右图像中的对应行以找到最佳匹配。校正之后,每一行就是一条极线,因此右图上的匹配位置就一定会在左图像的相同行上(即具有相同的坐标)。如果特征有足够多的可检测的纹理,并位于右摄像机的视图内,就可以找出对应的匹配位置论文范文。
视差效果图视差图是经过左右图像的对应点匹配后得到的,从视差图可以看
出匹配的效果。若图像中的匹配点比较稠密(即匹配点多),则得到的视差图和原图相似度就大;若图像中的匹配点比较稀疏,则得到的视差图和原图相似度就小。论文采用的匹配方法得到的视差图如图3所示,图4为原图。图3 视差图图4 原图
(五)双目视觉测距
1.双目立体视觉测距算法在已知摄像机的内外参数的情况下,计算得到透视
投影矩阵摄像机标定,根据图像坐标系与世界坐标系的关系,则可以求出距离信
息。在双目视觉中,摄像机同时拍摄到同一个物体不同角度的两张图像,由同一点在两幅图像中位置信息可计算出它在世界坐标中的三维坐标。根据式和式,消去比例系数k1和k
2,可得到如下四个方程组:
其中,是世界坐标系下P点的坐标,和是P点在左右图像上的像点。由于标定误差及图像噪声的存在,以上四个方程为非线性的,因此可用最小二乘法求出P点的三维坐标。
实验结果论文采用一个摄像机进行实验,按照图一的方法,现在左位置点拍摄一幅图像,此时标定板位置保持不变,然后让摄像机只在X轴方向移动基线的距离,在Y和Z轴方向都没有移动,再在右位置点拍摄一幅图像,在左右拍摄点都拍摄图像后,再换标定板的摆放方式,继续在左右拍摄点拍摄得到左右图像,依此类推。实验采用左右各9幅图像来标定,图像大小为2304*1728,得到的标定结果如下:
,外参数为:
,
加压站的优化设计_特性曲线
基于SRAM型FPGA测试技术的研究_故障覆盖率
(完)