《武汉工程大学学报》  2011年05期 101-105   出版日期:2011-05-31   ISSN:1674-2869   CN:42-1779/TQ
双目立体视觉测量系统的研究与实现


0引言客观现实世界是一个三维的空间世界,常用的摄像机、数码相机等图像捕获设备利用光学镜头成像原理只能获取到二维图像,但二维图像几乎失去了物体所有的深度信息,然而物体的三维图像能够更加全面、真实地反映客观物体,提供更加丰富而准确的信息,所以有必要从二维图像中重构场景的三维空间,以获取其三维信息.人的视觉系统具有将获取的图像信息转换为立体视图的功能,实现对客观世界三维场景的感知、认识和理解.双目立体视觉测量系统正是根据此原理,模拟人类视觉处理景物的方式,探求从二维图像中恢复三维空间信息的方法,达到从图像认识世界的目的.双目立体视觉技术在物体三维测量中的应用日益成为计算机视觉、虚拟现实、生物工程和多媒体技术等前沿领域研究的重要内容.1双目立体视觉原理双目视觉测量原理是从两个视点观察同一物体,以获取在不同视角下的感知图像,通过三角几何原理计算图像像素间的位置偏差(即视差)来获取景物的三维信息[1].空间点是构成三维空间结构的最基本单元,理论上可以由点形成线,由线形成面,再由各种面构成三维立体结构.因此,空间点的坐标测量是双目立体视觉的最基本内容. 三维空间点成像模型如图1所示,对于空间物体表面任意一点P,如果用C1和C2两个摄像机同时观察P点,P在两相机的投影分别为P1、P2,并且己经确定P1与P2为双目视觉图像的匹配点,那么可以得出,P点既位于直线O1P1,上,又位于直线O2P2上.因此,P就是这两条直线的交点,它的三维位置是唯一确定的.图1双目视觉成像原理
Fig.1Principle of binocular vision imaging令世界坐标系下空间点P(X,Y,Z)在两个摄像机像平面上的投影坐标分别为P1(u1,v1)和P2(u2,v2),点P1、P2坐标均以像素为单位.根据针孔成像模型,经过理论推导可以得到像素坐标和世界坐标之间的关系为[2]:su
v
1=ax0u00
0ayv00
0010Rt
01X
Y
Z
1(1)
式(1)中,s是比例系数;ax=fdx,ay=fdy;矩阵R=r11r12r13
r21r22r23
r31r32r33为旋转矩阵,t=tx
ty
tz为平移矩阵;f为摄像机焦距;dx和dy分别为图像坐标系中相邻像素在X轴和Y轴方向上的距离.  在测量系统中,摄像机是基于双目平行的空间关系进行配置的.要求空间点P的坐标,先用摄像机定标的方法分别求出双目摄像机的投影矩阵,再将这两个投影矩阵分别带入式(1),从而可以得到关于X、Y、Z的四个线性方程构成的超定方程组,可利用最小二乘法解得该点的世界坐标.第5期陈念,等:双目立体视觉测量系统的研究与实现
武汉工程大学学报第33卷
2图像预处理  从图像获取系统中得到的符合立体视觉原理的左右图像对,由于各方面因素的影响,会不可避免的存在噪声、干扰和失真现象,造成图像质量的下降,而两台摄像机由于接收的光强不同,立体图像对间也会存在亮度差异.因此在对其进行分析和操作之前,必须对原始图像进行必要的预处理.图像预处理的就是对图像采用一系列技术来降低噪声的影响和图像的失真, 改善图像的视觉效果,突出有用信息、抑制无用信息[3].基于上述问题,提出一种图像预处理方法,步骤如下:(1) 采用阈值法将图像二值化,效果如图2、图3所示.图2图像二值化前
Fig.2Before the binarization of an image图3图像二值化后
Fig.3After the binarization of an image(2) 采用阈值面积去噪法对图像进行降噪处理,效果如图4、图5所示.阈值面积去噪法即采用区域面积滤波的方式消除掉面积过大和面积过小的图像区域,去掉标靶外围大部分干扰点,得到标靶去噪后的二值化图像[4].图4图像降噪处理前
Fig.4Before the image noise reduction processing图5图像降噪处理后
Fig.5After the image noise reduction processing(3)保存经处理后的二值化图像.经过处理后,噪声与失真等不利因素明显减少,标定版特征圆清晰可见,且圆心坐标容易得到,使得标定图像在特征检测与提取时有利于计算机分析和计算,提高了系统精度.3双目摄像机标定  摄像机标定是指建立摄像机图像像素坐标与场景点三维坐标之间的关系,根据摄像机模型,由己知特征点的图像坐标和世界坐标求解摄像机的内外参数,主要参数包括摄像机的畸变系数、焦距、中心点坐标、投影矩阵以及摄像机之间的旋转矩阵、平移矩阵[5].摄像机标定是双目立体视觉研究中需要解决的第一问题,也是进行双目视觉三维重建和非接触三维测量时不可或缺的重要环节,标定的精度直接影响最终的重建效果与测量误差.双目立体视觉中双目摄像机标定与单个摄像机标定类似,先用单摄像机标定的方法分别得到两个摄像机各自的内外参数,然后利用两摄像机的外参数标定摄像机与摄像机之间的位置关系.设两摄像机的外参数分别为R1、t1与R2、t2(R为旋转矩阵,T为平移矩阵), R1、t1表示摄像机C1与世界坐标系之间的相对位置, R2、t2表示摄像机C2与世界坐标系之间的相对位置.对于空间任意一点P,由三维重建原理可得P1=R1P+t1
P2=R2P+t2(2)由式(2)消去P后得到:P2=R2R-11P1+t2-R2R-11t1=RP1+t(3)令摄像机C1相对于摄像机C2的位置关系为R、T,则R=R2R-11
t=t2-R2R-11t1(4)由此,可以求出双目摄像机模型参数之间的几何关系. 结合对HALCON软件平台的使用,利用其算法动态库,通过不同的特征坐标值对摄像机进行多次标定,对于内、外参数,利用多次标定取平均值的方法进行确定. 首先,使用HALCON中亚象素阈值、亚象素边缘提取、圆心确定等一系列操作计算标定板上每个点的图像坐标以及标定板与摄像机之间大致的位置关系,即摄像机的外参初始值.然后,通过修改并调 用HALCON库函数来确定两个摄像机的内参数、外参数以及两个摄像机之间的相对位置关系.最后,通过多次测量取平均值来确定相关参数信息.系统坐标计算精度为亚象素级,如某标志点在左摄像机图像坐标系中坐标为(624610932,574.729904),在右摄像机图像坐标系中相应点坐标为(592.833922,604.261484).因此,系统具有较高的测量精度.表1为部分特征点在双目摄像机中的图像坐标.表1特征点在双目摄像机的图像坐标
Table 1Image coordinates of feature points
in the binocular camera
点号左摄像机uv右摄像机uv1624.610 932574.729 904592.833 922604.261 4842678.743 202573.604 230643.378 641603.449 8383736.539 945572.446 281697.406 433602.464 9124798.498 759570.890 819755.493 438600.908 1365864.791 111568.704 444817.919 240598.933 4926935.735 700566.972 387884.673 684597.370 52671011.582 593566.296 625956.505 597596.832 0908623.539 007506.173 759591.843 284536.440 2999677.463 950503.106 583642.323 333533.220 00010735.117 318499.692 737696.323 442530.094 955左摄像机标定参数:旋转矩阵:R=0.845 2070.031 9730.533 482
-0.009 1250.998 927-0.045 41
-0.534 3610.033 5160.844 592平移向量: t=-13.723 388
-507.209 815
2 355.424 530有效焦距:f=5.086 001畸变系数:k=0.003 742用同样的方法可以得到右摄像机标定参数.最终计算出双目标定的结果.双目摄像机标定结果:欧拉角: Rx=-0.026 907; Ry=0.042 819; Rz=0.005 11平移向量:t=-188.730 691
-5.222 369
119.025 6454立体匹配  在基于双目立体视觉的测量系统中,立体匹配是一个关键技术,它是指将同一空间景物在不同视点下投影图像的像素点对应起来,并由此生成相应的视差图(Disparity map)的过程.目前,立体匹配算法[56]主要分为基于特征和基于区域两类.前一类选取图像中具有唯一性质的点作为匹配点,通常选择边缘、角点等;后一类考虑每个需要匹配的点的邻域性质,能够得到稠密的视差图.本文采用基于特征的立体匹配算法. 基于特征的匹配不是直接利用图像的灰度,而是通过灰度导出符号特征来实现匹配,因此这种方法对于对比度和光照变化等相对稳定,同时基于特征的匹配可以通过对特征属性的简单比较而实现,因此匹配的速度相对较快.设IL(x , y)和IR(x , y)分别为左、右两幅图像,对于每一像素点计算在水平、垂直、左对角和右对角方向上相邻像素灰度值的平方和,取其最小值作为该像点特征值,即FL(x,y)=min{H,V,L,R}(5)其中H=[IL(x,y)-IR(x,y-1)]2+
[IL(x,y)-IR(x,y+1)]2V=[IL(x,y)-IR(x-1,y)]2+
[IL(x,y)-IR(x+1,y)]2L=[IL(x,y)-IR(x-1,y-1)]2+
[IL(x,y)-IR(x+1,y+1)]2R=[IL(x,y)-IR(x-1,y+1)]2+
[IL(x,y)-IR(x+1,y-1)]2为了消除噪声的影响,对所有特征图像取阈值Th,从而得到图像的所有特征点.FL(x,y)=FL(x,y),FL(x,y)≥Th
0, else(6)  在获得左、右图像的所有特征点后,进行两者之间的匹配.在理想情况下,左图像的每一个特征点在右图像中有唯一的特征点与之对应,但由于遮挡、阴影及噪声等影响,对左图像中的某些特征点,在右图像中可能没有对应点,或者有多个可能对应点.为了使两幅图像的特征点之间能够实现正确的对应,通常在得到可能的特征匹配点集后,设置一个初始匹配概率,然后进行一个松驰迭代过程,取那些具有较大匹配概率的可能匹配点作为最终的对应匹配点,从而实现两幅图像间的对应问题的求解[79].5测量系统结构与精度  已知摄像机成像模型和匹配关系后,可以根据立体匹配得到的视差关系恢复物体的三维信息.其中根据标定所得的摄像机内、外参数,利用最小二乘法可求出离散空间点的三维坐标,将这些点进行曲面拟合即可得到空间物体的三维模型.本文设计的双目立体视觉测量系统提供三维测量函数接口,只需将检测到的特征点在左右图像中的坐标值传递给该函数即可得到相应物点的三维坐标值.系统分为硬件部分与软件部分,如图6、图7所示.图6系统硬件连接图
Fig.6Connection diagram of the hardware in the system图7系统软件逻辑示意图
Fig.7Logical diagram of the software in the system一般来讲,距离测量精度与匹配定位精度成正比,与摄像机基线(不同摄像机位间的连线)长度成反比.增大基线长度可以改善深度测量精度,但同时会增大图像之间的差异,增加匹配的困难程度.因此,要设计精确的计算机立体视觉系统,必须综合考虑各方面的因素,保证各个环节都具有较高的精度.在本系统中通过校正立体视觉系统的方法,简化了匹配的复杂度,通过使用图像金字塔以及各种约束提高了算法速度和精度,另外也校正了倾斜对高度测量的影响等.系统特征圆检测精度0.02像素,通过500个标志点坐标的对应关系计算出的摄像机各个参数需要的时间约为1.6 s,标定残差小于0.1像素,系统精度较高. 6 结语在进行双目立体视觉测量系统设计的基础上,实现了具有较高精度的标定算法以及其他相关技术,验证了所设计系统的可行性,若要进一步提高测量精度,还需要精心设计系统的每个环节以减小累积误差.以视觉系统为基础的三维外形轮廓的非接触式、高速测量是一个重要的研究方向,本文的工作只是这一技术领域的部分体现,还有很多问题需要解决.