APP下载

光栅式双目立体视觉传感器光条快速匹配算法

2012-12-19魏振忠樊妍睿

北京航空航天大学学报 2012年5期
关键词:条数中心点光栅

魏振忠 樊妍睿

(北京航空航天大学精密光机电一体化技术教育部重点实验室,北京100191)

侯亚荣

(北京工业大学计算机学院,北京100022)

光栅式双目立体视觉传感器广泛用于物体三维形貌的测量,而如何快速准确地实现光条匹配与识别是其一项关键技术.基于编码方式的光条匹配识别方法研究较为广泛,常用的有空间编码方法[1-3],时间编码方法[4-5],直接编码[6-7]方法等,有些要投射多幅图像,有些要分析图像的灰度及颜色信息,给识别带来了很大不便.文献[8]提出一种基于空间搜索的识别方法,将光栅式双目立体视觉传感器看作两个光栅结构光视觉传感器,可分别测量各光条中心点的三维坐标,搜索不同光条中心点集之间的距离最小且模型编号相同的光条即为匹配光条.但该方法需将所有的可见光条都进行搜索,其中有许多情况是不可能出现的,造成大量冗余计算,当光条数量大且可见光条数较多的情况下,计算量非常大,速度较慢.本文改进了搜索方法,根据可见光条数目,排除了不可能的搜索计算情况,只将可能的情况代入模型进行搜索计算,从而有效减少了计算量.尤其是可见光条数较多时,计算量减少相当可观.

1 光条匹配原理

光栅式双目立体视觉传感器可以看作两个光栅结构光传感器,分别由左、右摄像机和光栅投射器构成.对这两个光栅结构光传感器进行标定后,可完成对物体三维形貌的测量.显然,同一光条上的光条点在两个光栅结构光传感器中得到的测量结果应该相同或很接近,而不同光条上的点则会差距很大.同时,如果光条点代入了错误的模型当中也会使测量结果出现较大偏差.因此,可通过计算两光栅结构光传感器所得各光条的测量结果之间的距离来实现光条的匹配和识别.

2 光条匹配算法

2.1 可能的可见光条组合模式分析及匹配算法

2.1.1 组合模式分析

假设投射光条数为n,光条从左到右依次编号为1,2,…,n,光条的组合模式如下:

1)左图像可见光条数为m1,则左图像中可能的光条组合模式有

2)右图像可见光条数为m2,则右图像中可能的光条组合模式有

3)设N1=n-m1+1,N2=n-m2+1,则列出左右图像中所有可能的光条组合模式如表1.

由表1可知,共有N1×N2种,即(n-m1+1)×(n-m2+1)种可能的光条组合模式情况,即只在N1×N2种情况中搜索,可得到对应的匹配关系.而文献[8]中方法需将所有可见光条都代入已标定好的n个结构光测量模型中进行计算和搜索,有许多情况根本不会存在,本文去掉了这些冗余的计算,且可见光条数越多,相对计算量就越小.

表1 光条组合模式

2.1.2 匹配算法

设左图像中第 i根可见光条为 Li(i=1,2,…,m1),右图像中第i根可见光条为Ri(i=1,2,…,m2),投射的n根结构光的测量模型分别为M1,M2,…,Mn.

对于模式1,即假设左图像光条序列编号为1,2,…,m1,右图像光条序列为 1,2,…,m2,当取左图像中第1根可见光条L1和右图像中第1根可见光条R1,并将其都代入第1个结构光模型M1中时,得到的两光条中心点集合间欧氏距离应非常小,理论上为0,据此可作为其判断标准.同理,其他情况也可以选择相应的判断方法,即选择参加欧氏距离计算的光条及模型,全部列出如表2.

表2 光条组合模式及匹配方法

由表2可知,共有N1×N2种可能的情况.根据其对应的判断方法,计算出所有光条间的欧氏距离,共有N1×N2个,从中选出最小值,并和规定阈值进行比较,若小于阈值则可判定其匹配,从而可以找出其对应的光条分布模式,即左右图像中的光条序列,并识别出其模型号.

模型号的计算方法由算法决定,根据上述算法中的规律,假设左图像第L根光条和右图像第R根光条为匹配光条,则模型号的计算式为M=R+L-1.

具体的光条匹配步骤归纳如下:

1)将左图像中第1~N2根可见光条L1~LN2的中心点分别代入第i~i+N2-1个结构光测量模型 Mi~Mi+N2-1中,可得到 N2个光条三维中心点集合(i=1,2,…,N1);

2)将右图像中第i根可见光条也依次代入第 i~i+N2-1 个结构光测量模型 Mi~Mi+N2-1中,得到N2个光条三维中心点集合;

3)计算前两步中对应模型号相同的光条三维中心点集合之间的距离,可得到N2个距离;

4)令i=i+1,重复以上计算,直到i>N1时停止计算,共得到N1×N2个距离;

5)在N1×N2个距离中搜索最小值,其对应的光条即为匹配光条,对应的模型号即为其测量模型.

2.2 光条三维中心点集合间距离的计算[8]

光条三维中心点集合间距离的计算可根据文献[8]中所阐述的方法进行,具体如下:

对左右两光栅结构光传感器分别进行标定,得到两传感器中各线结构光传感器测量模型集合,分别记为φLM和φRM.将两图像中的光条中心点集合中各点分别代入相应的测量模型中,可得到各点的三维坐标值,设两光条三维中心点集合分别为 φLT和 φRT.

1)正向计算.取φLT中一点,计算其与φRT中所有点之间的欧氏距离.记录其中的最小距离d及两集合中对应的两三维点.

2)反向计算.计算φRT中对应最小距离d的三维点与φLT中所有点之间的距离,记录其中的最小距离d′及两集合中对应的两三维点.

上述计算中,若d=d′,且两集合中对应的两三维点相同,则该最小距离参与两集合间最小距离和的计算.对φLT和φRT中所有点按上述方法计算最小欧氏距离,最终得到两集合中三维点之间的最小欧氏距离和.因为各光条间参加计算的点数不同,最后应除以参加计算的总点数,算出平均距离.

3 方法性能分析

3.1 计算量比较

文献[8]中方法是先在左图像中取一根光条,和右图像中所有可见光条代入所有模型中进行计算,需要计算n×m2次距离,而本文方法的计算量为N1×N2,即 (n-m1+1)×(n-m2+1)次距离计算.可见,在投射光条数很大,且可见光条数也很大的情况下,文献[8]中方法的计算量将会变得很大.假设 n=32,m1=25,m2=26,则文献[8]方法需计算32×26=832次,而本文的方法只需计算56次.所以,本文算法在可见光条数越多的情况下,相对计算量越小.

当可见光条数比较小时,本文算法会失去计算量优势.假设左右图像可见光条数相等为m,投射光条数为n=2N(N=1,2,…),当本文算法的计算量和文献[8]算法相等时,则

令m/n=a,a为比例系数,则 m=an,式(1)可写为

展开化简后,得

当n取不同值时,可解出不同的a值,即当m<an时,本文算法的计算量将大于文献[8]算法.N取不同值时各参数如表3.

表3 最少可见光条数计算

由表3可知,n越大,a越小,即保持计算量优势的最少可见光条数比例越小.表中各m值均为舍去小数位后的光条数,当可见光条数小于等于m时,本文算法计算量将大于文献[8]算法.

一般情况下,测量中可见光条数占总投射光条数比例至少达到一半以上,且n的取值在8以上,所以本文算法的计算量优势在通常情况下都能充分发挥出来.

3.2 准确性比较

文献[8]中方法是先取左图像中某一光条,然后在右图像所有可见光条中进行搜索寻找匹配光条,但如果右图像的可见光条中根本没有和其匹配的,则此次计算将不能得到结果.例如,当左图像中分布模式为1,2,…,m1,右图像中分布模式为2,3,…,m2+1,若取左图像中第1根光条在右图像中进行搜索,就得不到匹配光条.而本文所介绍的算法,分析了所有可能出现的情况,在一次搜索过程中,总可以找出一对匹配的光条.

4 实验

采用两台分辨率为1600×1200的AVT Pike F505B摄像机,15 mm镜头,可投射8个光平面的光栅结构光投射器,构建了光栅式双目立体视觉传感器测量系统,如图1所示.

图1 实验系统

4.1 摄像机参数标定结果

左摄像机内部参数:

右摄像机内部参数:

两摄像机之间的旋转矩阵和平移矢量:

4.2 光平面方程标定结果

左光栅结构光视觉传感器光平面方程:

右光栅结构光视觉传感器光平面方程:

4.3 光条匹配

用上述系统拍摄一组光栅图像对算法进行实验验证,如图2.

图2 光栅图像

n=8,m1=6,m2=6,N1=n -m1+1=3,N2=n-m2+1=3,所以 N1×N2=9.得到各光条中心点集合间的平均距离如表4.

表4 光条中心点集合间距离 mm

从表4数据看出,L3和R3之间距离明显小于其他值,由此可知,左图像第3根光条和右图像第3根光条为匹配光条,且对应模型号为5,匹配结果正确.

5 结论

在原有三维空间搜索方法的基础上,根据可见光条数目和光条序列间的关系,分析了各种可能的光条组合,提出了一种快速的光条匹配算法,排除了冗余计算,大大减少了计算量.在实现光条匹配的同时,也实现了模型号的识别.实验表明:该算法在保持了原算法鲁棒性的前提下,大大减少了算法的运算量,实现了光栅光条的快速匹配与识别.

References)

[1]陶国智,邾继贵,叶声华.光栅式结构光传感器的编码方法[J].航空精密制造技术,1999,35(3):18 -20 Tao Guozhi,Zhu Jigui,Ye Shenghua.Coding method of the grate structure sensor[J].Aviation Precision Manufacturing Technology,1999,35(3):18 -20(in Chinese)

[2]Pages J,Salvi J,Forest J.A new optimised de bruijn coding strategy for structured light patterns[C]//Josef K,Marin E,Mark N.Proceedings of the 17th International Conference on Pattern Recognition .Los Alamitos:IEEE Computer Society,2004:284 -287

[3]Chen S Y,Li Y E,Zhang W.Vision processing for realtime 3-D data acquisition based on coded structured light[J].IEEE Transactions on Image Processing,2008,17(2):167 -176

[4]孙军华,魏振忠,张广军.一种高密度光栅结构光编码方法[J].光电工程,2006,33(7):78 -82 Sun Junhua,Wei Zhenzhong,Zhang Guangjun.A coding method for high-density grating structured light[J].Opto-Electronic Engineering,2006,33(7):78 -82(in Chinese)

[5]于晓洋,关丛荣,吴海滨,等.高采样密度彩色结构光三维测量技术仿真研究[J].系统仿真学报,2011,23(2):346 -350 Yu Xiaoyang,Guan Congrong,Wu Haibin,et al.Research of high sampling density color structured light 3D measurement technique simulation[J].Journal of System Simulation,2011,23(2):346-350(in Chinese)

[6]Lu C,Cho G.Accurate 3D scanning of swaying human body parts by one projection based on OIMP technique[C]//Tang Y Y,Wang S P,Loettem G,et al.Proceedings of the 18th International Conference on Pattern Recognition.Los Alamitos:IEEE Computer Society,2006:1 -4

[7]Gorthi S S,Lolla K R.A new approach for simple and rapid shape measurement of objects with surface discontinuities[C]//Wolfgang O,Christophe G,Erik L N.Proceedings of SPIE.Bellingham:SPIE,2005:184 -194

[8]谢光辉,魏振忠,刘震,等.一种光栅式双目立体视觉传感器光条匹配方法[J].北京航空航天大学学报,2008,35(1):113-116 Xie Guanghui,Wei Zhenzhong,Liu Zhen,et al.Light-stripes matching method for raster binocular stereo vision sensor[J].Journal of Beijing University of Aeronautics and Astronautics,2008,35(1):113 -116(in Chinese)

[9]张广军.机器视觉[M].北京:科学出版社,2005 Zhang Guangjun.Machine vision[M].Beijing:Science Press,2005(in Chinese)

猜你喜欢

条数中心点光栅
高速公路隧道感温光栅监测技术探析
一种基于标准差的K-medoids聚类算法
Scratch 3.9更新了什么?
如何设置造型中心点?
光纤光栅传感器的应用研究及进展
光纤光栅传感器在足尺沥青路面加速加载试验中的应用
人民网、新华网、中国非公企业党建网两新党建报道条数排行
对多边形对角线条数的探究
每只小猫给了猫妈妈几条鱼
寻找视觉中心点