《武汉工程大学学报》  2013年10期 68-73   出版日期:2013-11-10   ISSN:1674-2869   CN:42-1779/TQ
双目视觉立体标定方法的改进


0引言 摄像机标定是指建立摄像机几何成像模型,描述空间坐标系中的景物点同它在图像平面上的像点之间的对应关系,并求取该模型的各参数的过程[1].在双目立体视觉系统中,要精确地从二维图像中获取三维信息,准确地得到三维图像点与相应的图像像素点之间的对应关系,摄像机标定是至关重要的,同时精确求取摄像机的内外参数以及畸变系数不仅可以在三维恢复系统中提高精度,而且可以为后续的校正和特征匹配奠定良好的基础.随着计算机视觉的发展,国内外学者进行了大量的研究,也相应的提出了不同的摄像机标定方法,摄像机标定方法大体可以分为传统的摄像机标定方法和摄像机自标定方法.传统的摄像机标定方法需要精度很高的标定参照物,即在确定的摄像机模型下,通过拍摄已知尺寸、形状的标定物来进行标定,再经过一系列的数学变换和计算方法来计算其内外参数,典型的张正友平面标定法[2];而自标定方法是利用摄像机在拍摄过程中周围环境约束与图像位置约束之间的对应关系来求取摄像机模型的内参数,自1992年Hartley[3]和Faugeras[4]首次提出自标定思想以来,其已经成为了计算机视觉研究的热点问题.以射影几何为基础,根据其消失点的重要性质,大量学者提出了一系列的摄像机标定方法,如Liu Ying 等人提出了基于共面消失点的摄像机标定方法[5\|6],该方法要求制作精确定位的点阵模板;吴刚等人也根据射影几何模型的相关性质提出了不同的摄像机标定方法,射影几何中的调和共轭理论高精度的求出消失点,并结合消失点对摄像机内参数的约束,给出了一种基于正方形模板的摄像机内参数求取方法[7],但该方法并未考虑镜头的畸变以及系数的全局优化问题,影响实际的实验精度.此外,以上方法大都进行的单目标定,而本文在研究了这一系列方法的基础上,提出了一种改进的双目视觉摄像机立体标定方法,根据射影几何模型为基础来建立摄像机的标定模型,利用消失点的重要性质,以正方形投影区域进行角点提取,确定角点坐标,结合张正友标定方法,初步求解出摄像机内参数,通过计算空间中的景物点在左右摄像机成像平面上的位置关系,计算出双目视觉系统中两个摄像机之间的旋转矩阵R和平移向量T,从而实现了立体标定,并利用非线性优化方法对参数进行全局优化. 1摄像机成像模型在立体标定时,多采用针孔摄像机模型,根据射影几何中B双空间几何模型的相关性质定义了相应的摄像机标定模型,假设在三维欧氏空间中定义坐标系F(Oc,Xc,Yc,Zc)为摄像机参考坐标系,其中点Oc为摄像机的光心,轴X与轴Y分别与图像平面的横纵轴平行.用F系下的一个齐次向量π(πx,πy,πz)表示一个平面,对平面有如下限定:如果平面没有穿过摄像机光心Oc,那么可以用一个三维向量ω(ωx,ωy,ωz)来表示该平面,并且满足关系〈ω,X〉=1,其中X=[X,Y,Z],对平面满足解析表达式:πxX+πyY+πzZ+πt=0(1)即-πxπtX-πyπt-πzπt(πt≠0)(2)由此可进一步推导出ω与π的关系式:ω=-1πt[πx,πy,πz](πt≠0)(3)由式(3)知可将欧氏空间中的平面π映射到空间中的一个点ω与之相对应.如果记Ω为三维欧氏空间,则在欧式空间中的一个平面必存在任一点ω-(Ω),此时将Ω称为B双空间.B双空间几何的定义说明了图像中点、线、面固有的性质,因此,本文以此性质为基础定义了相应的摄像机标定模型.在图像平面中构造二维坐标系(Ou,Xu,Yu)为图像坐标系,则直线OuOc为光轴,Ou即为光轴OuOc与图像平面的交点,也称之为主点,其中(Ou,Xu)平行于(Oc,Xc),(Ou,Yu)与(Oc,Yc)平行,根据以上定义则有如图1所示的双目视觉成像原理图,在此空间中任取一点M的坐标为[xc,yc,zc]T,它在图像平面中的投影为m,记其坐标x=[xu,yu]T,则必满足x=xuyu=1ZcXcYc,若又记[xc,yc,zc,1]T和[xu,yu,1]T分别为三维空间点M及其投影点m的齐次坐标,则它们之间的投影关系又可表示为βxuyu1=Mxcyczc1=M1[RT]xcyczc1(4)式(4)中β为任意常数,M1=fu0u00fvv00 0 1,即为摄像机的内参数矩阵,其中fu,fv分别表示图像平面xu,yu方向上的焦距,(u0,v0)是主点坐标,R和T分别表示左右摄像机的旋转矩阵和平移矩阵,本文方法就是求取摄像机的内外参数矩阵.图1标定模型图Fig.1Calibration model diagram根据射影几何的性质 [7\|8]:两条平行直线在无穷远处有一个交点,且一条直线上只有一个无穷远点,所有的一组平行线共有一个无穷远点,在本文中称该无穷点在图像平面上的投影点为消失点,并且消失点与摄像机光心的连线与此消失点所在的空间平面平行.根据此性质与射影几何的交比性质结合,提出一种计算摄像机内参数矩阵的改进方法.第10期刘军,等:双目视觉立体标定方法的改进武汉工程大学学报第35卷2改进的摄像机内参数求解算法由于本文中提出的标定方法是基于正方形区域的参数计算[7],因此在利用该方法计算摄像机内参数时,需要在图像平面上找到一个正方形投影区域,投影后会相应的更新摄像机图像坐标系和空间坐标系下的角点坐标值.如图2所示,记一个平面上正方形区域的4个顶点分别为 A、B、C、D,各自的投影点分别为:A1,B1,C1,D1,记A1B1所在的直线为α1,B1C1所在的直线为α2,A1D1所在的直线为α3,C1D1所在的直线为α4,对应向量分别为φ1,φ2,φ3,φ4;v1,v2,v3,v4分别为直线α1,α2,α3,α4的消失点.图2正方形投影区域中点线的关系Fig.2Square projection area between the midpoint of the line由此假设空间中一对正交的平行线,P1,P2为各自的无穷点,p1,p2为相应的消失点,则由正方形投影中点线的关系有:β1p1=N[RT]P1β2p2=N[RT]P2(5)又由于光心与P1的连线垂直于光心与P2的连线,即:PT1P2=0且PT1P1=PT2P2, 因此结合式(5)有:pT1N-TN-1p2=0(6)且PT1N-TN-1p1=pTN2-TN-1p2 ,由此对本文中的正方形模板区域可得到满足的关系式:v1TN-TN-1v3=0v2TN-TN-1v4=0(7)令Q=N-TN-1,结合式(4)将其展开后有:Q=N-TN-1=Q11Q12Q13Q21Q22Q23Q31Q32Q33=1fu20-u0fu20 1fv2-v0fv2-u0fu2-v0fv2v02fv2+u02fu2+1(8)由分析可知Q是一个包含未知变量的对称矩阵,因此可以定义向量Q=[Q1Q2Q3Q4Q5Q6]T,同时设v1,v2,v3,v4的坐标分别为(uv1,vv1),(uv2,vv2),(uv3,vv3),(uv4,vv4),则联合式(7)、(8)有:uv1uv3Q1+(vv3uv1+uv3vv1)Q2+vv1vv3Q3+(uv1+uv3)Q4+(vv3+vv1)Q5+Q6=0uv2uv4Q1+(vv4uv2+uv2vv4)Q2+vv2vv4Q3+(uv2+uv4)Q4+(vv2+vv4)Q5+Q6=0(9)在实验中同时获得了两幅以上的图像,假设从不同的位置拍摄了N幅图像,则需要建立N组类似式(9)的方程:XQ=0,其中X是2N×6的矩阵,且由于每一个消失点的坐标可以利用相应的射影几何关系进行计算,则可以很容易计算出矩阵X;当N≥3时,利用最小二乘法可求解向量Q,从而得到摄像机的内参数如下:λ=Q6-Q32+fu(Q2Q3-Q1Q5)Q1=0fu=λQ1fv=λQ1Q1Q4-Q22v0=Q2Q3-Q1Q5Q1Q4-Q22u0=vofu-Q3fu2λ3算法的实现先利用射影几何消失点与交比的性质求出摄像机的内参数,然后结合张正友标定法与Brown方法求解出其外参数,并利用非线性优化方法对参数进行全局优化计算,从而得到最终精确的标定参数,具体完整的标定实现过程如下.3.1图像采集及角点提取采用黑白棋盘格图像为9×7的方格图作为标定板,每个方格的大小为27 mm×27 mm,固定并在不同的角度拍摄一系列图片,一般而言,拍摄的图片数量越多,其精度就相对较高,但所需时间也较长,就此本文中分别对左右摄像机采集了10幅图像.在进行角点提取时,由于使用传统的角点检测算法在全部图像范围内进行检测,会存在较大的误差,降低检测精度;因此,本文为了避免这个问题,选取图像区域为7×5的方格作为角点的检测区域,再在这个区域内采用harris算法进行角点检测.符合本文改进的计算摄像机内参数的求解方法中以正方形投影区域进行计算,因此在实验中以选取的7×5方格区域左上角作为原点,对每一幅棋盘格图建立角点的空间坐标系,同时确定每一个提取出的角点图像坐标值.3.2计算摄像机内参数及畸变系数提取出角点后,利用前面所述的摄像机内参数求解方法进行相应的求解.由于在标定过程中,镜头存在畸变等因素会影响标定的精度[9],因此在本文中考虑了横向畸变和径向畸变,利用文献[10]的畸变模型,将提取出的角点空间坐标和相应的图像坐标进行运算,利用最小二乘法优化,从而得到畸变系数.最后利用Levenberg\|Marquardt算法对所求解的内外参数进行全局非线性优化,得到最终的内外参数.3.3求解旋转矩阵R和平移矩阵T对双目摄像头标定不仅要得出每个摄像机的内部参数,还需要通过标定来测量两个摄像机之间的相对位置(即右摄像头相对于左摄像头的三维平移向量T和旋转矩阵R).在空间中给定任一点P,假设点P在世界坐标系、左摄像机C1坐标系和右摄像机C2坐标系下的非齐次坐标分别为Xw,Xc1,Xc2,则三者满足以下关系式:Xc1=R1Xw+T1Xc2=R2Xw+T2(10)其中R1,R2分别为左右摄像机与世界坐标系的旋转矩阵,R,T2分别为左右摄像机与世界坐标系的平移向量,这4个变量可以通过前述方法进行计算出来.又由于在左右摄像机坐标系中Xc1,Xc2都表示点P的坐标,因此由式(10)可得Xc1,Xc2满足:Xc1=R1R2-1Xc2+T1-R1R2-1T2(11)若令R=R1R2-1,T=T1-R1R2-1T2,则左右摄像机之间的旋转矩阵R和平移向量T就可以通过这样的方式计算出来.4实验结果及分析为了验证算法的有效性, 实验中将左右摄像机各采集的10幅图像,分别采用上述标定方法进行立体标定,标定结果如式(11)及表1所示. R=0.999 9 0.005 43 -0.016 31-0.005 431.000 0 0.047 630.016 31 -0.019 54 0.999 9T=-201.308 550.067 55-6.420 98(12)表1本文实验标定结果Table 1The calibration results of this experiment摄像机内参数 左摄像机标定结果 右摄像机标定结果M=1754.507760449.5823301754.35017345.47277001M=1735.915960563.4273501745.94808376.54735001畸变系数 K=[\|0.065370.225810.00199\|0.000550.00000] K=[\|0.216490.618540.00964\|0.008230.00000]结果分析:图3是采用本文改进的角点检测方法进行检测的结果,图4显示了具体检测到的每个角点,从图3及图4中可以看出检测出的角点就是在实验所需要的全部角点信息,运用本文提供的内参数求解算法可以得到相关参数.由实验结果可以看出,旋转矩阵R基本接近单位矩阵,同时结合图5显示的左右摄像机与棋盘格标定板的位置关系可以得出左右摄像机的位置基本是前向平行的,另实验中左右摄像机的实际距离是205 mm,而由实验所得的平移向量T中两相机的距离为201.308 55 mm,两者比较接近;实验结果总体符合实验要求,标定结果达到了一定的精度,但在标定的过程中畸变仍然对结果有些影响,在后续的实验中还需进一步优化,提高实验的精确度. 图3角点检测结果Fig.3Corner detection results图4具体的角点检测细节Fig.4Specific details of corner detection图5双摄像头与标定棋盘间的位置关系Fig.5Dual cameras and calibration positional relationship between the board5结语以射影几何模型为基础,结合消失点的一些重要性质,在进行单目标定的基础上,提出了上述双目摄像机内参数求取新方法,同时在该方法中对角点的提取也做了相应的改进,充分利用了图像的点、线、面固有的性质,结合张正友标定方法的灵活性,使该方法在实验中实现起来简单方便,并能取得较高的精度,为后续进行立体校正与匹配奠定了基础.致谢本研究工作得到了湖北省教育厅青年人才项目、武汉工程大学科学研究基金项目及武汉工程大学研究生教育创新基金项目的资助,在此表示衷心的感谢.