双目立体视觉测量系统的理论研究
2013-09-17雷楠南
雷楠南
(三门峡职业技术学院 机电工程系,河南 三门峡 472000)
1 引言
立体视觉作为计算机视觉的一个重要分支,其研究主要有两类方法[1-3]:主动视觉方法即直接利用测距器获得景物的三维信息;被动视觉方法即利用两幅或多幅图像对被测物体进行三维重建得到物体的三维信息。双目视觉是被动测量,由两台摄像机从两个视点观察同一景物,以获取不同视点的两幅图像,从两幅图像信息出发通过两幅图像的立体匹配和重建来得到景物的三维信息。大部分情况下,通过三维重建主要是求得某些特征的空间点坐标,然后由这些三维点坐标恢复物体的空间轮廓或曲面。双目立体视觉在实现上采用三角测量方法,目前这种方法已经比较成熟。
2 双目立体视觉测量系统模型的建立
如图1所示,C1与C2为两台简化的摄像机模型,双目立体视觉测量系统模型为:通过C1、C2两摄像机同时观察同一个目标景物。一般情况,C1与C2两摄像机结构和性能参数完全相同,并且摆放位置对称。目前,应用比较广泛的有对称布置的相交轴和平行轴两种配置的双目视觉模型。以图1所示,C1与C2两摄像机为相交轴配置,如果C1与C2摄像机已经标定,则它们的内、外部参数及相互结构位置参数都可获得,用投影矩阵表示为M1与M2。假设空间任意一点P在两台摄像机C1和C2上的图像像素点为P1与P2,于是便可建立空间点P与两图像像素点P1和 P2之间的对应关系式(1-1)、式(1-2)。
图1 双目视觉测量系统原理
式中,(u1v11)T和(u2v21)T分别为 P1、P2在C1和C2两摄像机下获得的图像中的像素齐次坐标;Zc1、Zc2分别为 P1、P2在各自摄像机坐标系下的坐标;(X Y Z 1)T为点空间点P在世界坐标系下的齐次坐标;mij1与 mij2(i=1,2,3;j=1,2,3,4)分别为投影矩阵 M1与 M2的元素。 在式(1-1)、式(1-2)中分别消去 Zc1、Zc2,可得到关于空间点 X,Y,Z 与摄像
机参数的四个线性方程:
从图1可观察到空间点P是O1P与O2P的交点,所以空间点 P 同时满足式(1-3)与式(1-4),若P1、P2已知,将式(1-3)与(1-4)联立即可求解出空间点P的坐标X、Y、Z,由此可构建双目测量系统的立体重建模型。通过双目立体视觉测量系统模型的建立,可见其中关键技术有两项:(1)求解摄像机内外参数,即对两摄像机进行标定;(2)求解空间任意一点在两摄像机所获得的图像中的对应像素点P1与P2,即图像匹配技术。因此,只要完成相机标定与图像匹配,即可对所获得的二维平面图像通过式(1-3)与(1-4)联立求解,获得物体的三维信息。
3 双目摄像机标定
目前在立体视觉测量系统中应用较多的是双目测量,因此在双目测量之前必须对双目CCD相机进行标定,求解出双目相机的内外参数。考虑到标定的简便,介绍一种介于传统标定方法与自标定方法之间标定方法:张氏平面标定法[4-6]。
图2 对四幅棋盘格模板图像角点检测
该方法是将两CCD摄像机放置好并固定,然后在两CCD摄像机视野里移动平面棋盘格模板并拍摄多幅图像,最后对每个视点所获得两CCD摄像机下的图像进行网格角点的提取从而确定单应性矩阵H;考虑摄像机的切向畸变影响,通过人工交互方式来提取样本点,并采用MATLAB软件实现标定[7]。单目相机标定:第一步,读入摄像机所获取的棋盘格模板图像;第二步,进行角点检测;最后可进行摄像机标定。一般,取三幅以上不同视角的图像进行标定,图像越多标定精度越高。图2是对四幅棋盘格模板图像进行角点检测的结果。图3所示为单相机标定后,棋盘格模板与摄像机之间的空间位置图。
图3 棋盘格模板与摄像机之间外部参数示意
在双目立体视觉系统中CCD相机标定方法与单个CCD摄像机标定方法相同,即分别利用左、右两个CCD相机所获得的图像进行标定即可。利用平面模板标定时,内参数是唯一确定的,而外参数则是每幅平面模板对应一组,因此拍摄了几幅图像则对应几组外参数。相机标定后,内参数如下:
左相机的内参数为:
图像主点:
倾斜系数:y=[0.00000]±[0.00000]
畸变系数:[k1,k2,k3,p1,p2]=[-0.28947,0.10326,0.00103,-0.00029,0.00000]±[0.00596,0.02055,0.00030,0.00037,0.00000]
右相机的内参数为:
焦距:
图像主点:
倾斜系数:y=[0.00000]±[0.00000]
畸变系数:[k1,k2,k3,p1,p2]=[-0.28936,0.10677,-0.00078,0.00019,0.00000]±[0.00488,0.00866,0.00027,0.00062,0.00000]
通常进行立体标定来确定两摄像机的空间关系,即利用左、右摄像机标定的结果进一步确定两个摄像机之间的空间位置关系及摄像机与平面模板之间的位置关系。图4所示是利用左右相机标定的结果进行立体标定后得到的空间结构图。进行立体系统标定后得到外部参数(右相机相对于左相机的位置):旋转向量 R=[0.00581,0.00534,-0.00358],平移向量 T=[-100.18514,0.63278,0.48416]。
图4 两个摄像机及平面模板之间的空间位置关系
4 立体视觉图像匹配
三维重建的另一关键因素是求得两CCD相机所获得图像中的对应像素点,以图5所示的平行轴立体视觉成像来说明立体匹配原理[8-9]。通常左、右两个摄像机CL、CR参数相同,建立摄像机坐标系,使两相机的光轴Z1与Z2平行、Y1与Y2轴平行,X1与X2轴在一条直线上。这样,两相机在x轴方向上有一平移△x。这样求解对应像素点时,只要找到左相机下图像像素点(u1v11)T,那么理论上其对应的右相机下图像像素点应为 (u2,v2)=(u2+△x,v2+△x),从而完成求解对应像素点的图像匹配。
图5 平行轴立体视觉
5 结论
文中系统地阐述了双目立体视觉测量系统的原理,并且对立体视觉测量的关键技术:摄像机标定和立体匹配技术做了理论分析。基于MATLAB工具箱,详细介绍了基于平面模板的标定方法,采用张氏平面标定方法对双目CCD相机进行标定,得到两相机的内外参数、空间位置模型图。无论是摄像机标定还是图像立体匹配都是当前研究的热点和难点技术,难点在于相机标定的精度和图像匹配时大量特征点的检测及数据点的处理。随着双目立体视觉测量在制造业自动化领域应用越来越广泛,如反求技术,快速成型技术等,研究和推广应用该技术是制造业自动化技术发展的必然趋势。通过本文,可为研究该技术的初学者提高系统的理论基础。
[1]马松德,张正友.计算机视觉计算理论与算法基础[M].北京:科学出版社,1998.
[2]艾海舟.关于双目立体视觉的研究[D].清华大学,1988.
[3]艾海舟.关于移动机器人自主式系统的研究[D].清华大学,1991.
[4]Zhang Z.A flexible new technique for camera cali2brat ion[J].IEEE Transact ions on Pat tern Analysis and Machine Intelligence,2000,22(11):1330-1334.
[5]杨敏,沈春林.基于单平面模板的摄像机标定研究[J].数据采集与处理,2003(3).
[6]伍尤富.基于平面模板的摄像机两步标定方法[J].电子科技,2007(9).
[7]Camera Calibration Toolbox for Matlab.MATLAB网站.
[8]于希娟.双目立体视觉技术的理论研究与程序实现[D].华北电力大学,2004.
[9]李玲.基于双目立体视觉的计算机三维重建方法研究[D].武汉大学,2005.