激光条纹法向中心的快速提取算法研究*
2018-12-23席剑辉
席剑辉,包 辉,任 艳
(沈阳航空航天大学 自动化学院,辽宁 沈阳 110136)
激光条纹法向中心的快速提取算法研究*
席剑辉,包 辉,任 艳
(沈阳航空航天大学 自动化学院,辽宁 沈阳 110136)
探讨一种亚像素级激光条纹法向中心快速提取算法。主要考虑激光条纹中心存在于条纹骨架的法向截面上,当条纹被物体表面调制成曲线或者受噪声影响不规则变化时,提取法向中心十分困难。首先设计一个模板对条纹图像进行两次卷积,以消除孤立光斑,并使用中值滤波器来减少随机噪声;其次沿着条纹边缘,在小邻域内计算每个点的灰度梯度值,以获得条纹法线;最后找到距离法线最近的光点,利用灰度重心法提取条纹的亚像素中心坐标。实验结果证明该算法具有较高的提取精度和广泛的实用性。
激光条纹;中心提取;重心法;两次卷积
近年来,在非接触测量、机器视觉、遥感图像处理、目标跟踪等领域,精确检测以提取相机图像中被目标表面调制成不规则形状的激光条纹中心,是获得目标三维信息的重要步骤。特别是在激光视觉检测系统中,条纹中心的检测精度直接影响到整个测量系统的测量精度。如果图像质量不高、噪声较多,则难以快速准确地提取条纹中心。
目前提出的条纹检测方法大致分为2类:①基于激光条纹图像的几何特征。Muller和Saack通过确定不同直径的圆与条纹的边缘内切,再把圆的中心连起来即为条纹中心。Seguchi提出逐层剥取条纹外层的像素点来细化条纹,最后得到条纹中心线的思想。②利用条纹的光强变化及分布特点来提取条纹骨架线,进而提取中心。1982年Yatagai[1]确定亮条纹中的光强极大点为条纹骨架线。Ramesh等人在1991年第一次提出了使用光强最小值点来确定骨架线,进而提出改进算法降低噪声的影响,得到优质的骨架线。近年来,如何精确提取条纹中心日益成为研究热点,一些综合性的方法被提出。比如熊会元等[2]采用阈值分割确定条纹中心初始点和法线方向,最后在法线方向精确获取条纹中心;贾卫平等[3]提出一种基于Hessian矩阵的多结构光条纹亚像素中心提取方法;张广军等[4]采用曲线拟合的方法来得到亚像素级精度的光条中心。这些算法可以得到亚像素级精度,但因为依赖于像素的灰度值关系,容易受噪声影响。
本文所用方法沿用曲线拟合法思路,将每点法向灰度强度最高的点判为中心点。同时简化曲线拟合过程,使算法不但提取精度高,而且速度快。
1 激光条纹图像卷积滤波去噪
利用差影法提取条纹目标,并对提取的条纹图像进行二值化。根据光条横截面光强分布特点,可知光条的中心位置处最“亮”,即中心位置处像素的灰度值最大。但是受外界环境的变化、激光的散射、被测表面相邻部分相互反射光的干扰等影响,实际获取的激光条纹图像中含有大量的噪声。这些噪声对图像的影响主要表现为2点:①误检测作为局部最大点的孤立光斑,容易造成“假”目标,在提取条纹中心时造成误差;②沿着条纹边缘形成的毛刺、暗点、断点等,这类噪声影响了条纹中心提取的速度。
为滤除局部光点、光斑,首先设计3×3模板。使用模板对条纹图像进行两次卷积,在保留有效点的同时删除“假”目标点,即孤立光点。在前景图像中,移动模板中心与值为1的像素重合,根据下式计算一次卷积:
式(1)中:G1(i,j)为模板与图像卷积的值。
若G1(i,j)>5,则认为该像素为孤立的一个亮点,可消除,将该像素值置为0.经过以上处理后,能将所有单像素噪声点和两像素的噪声点都去掉。对较大的局部光斑,利用上述模板用邻域的方式对图像进行二次卷积,其公式为:
若G2(i,j)<3,将其点判断为有用点,保留该点,将该点像素值置为1.通过上述两次的卷积便足够滤掉所有非光条上的噪声点,但在光条边缘可能会形成一些断点,导致边缘模糊,影响中心提取的精度,可结合中值滤波[5]对图像边缘进行平滑滤波,保留连续的光条图像。
2 激光条纹中心提取
由于目标表面三维形貌的复杂性,当激光条纹投射其上时,被表面形貌调制,二维图像中的激光条纹不再是直线。因此准确得到条纹法向是十分重要的。本文先利用梯度法提取条纹骨架线,再根据骨架的法向提取准确的条纹中心。
设f(x,y)为像素点(x,y)的灰度值,根据灰度分布计算每行的灰度梯度值。将图像左上角的设置点作为图像坐标的原点。用Point(i)表示第i行最大梯度点的列坐标:
式(2)中:j=1,2,…,N,其中,N为图像的列数。计算第i行激光条纹的切线斜率:
为进一步降低噪声的影响,在当前点前后设置小邻域l,邻域内切线斜率的均值即为当前点切线斜率。因此,可以得到条纹点处(i,Point(i))的法线斜率,公式如下:
再根据已知点(i,Point(i))计算该点法线的截距:
至此,确定当前点的法线方程。计算条纹像素到该法线的距离:
设θ为距离阈值。设定点集Vi(x,y),将符合Di(x,y)<θ的点放入Vi(x,y)中。利用重心法[6]求出条纹中心的列坐标xc(i)和行坐标yc(i)。
3 实例分析
目前的亚像素级条纹中心提取算法主要基于结构激光的光学分析及条纹灰度分布特性分析,现有的方法有高斯拟合法、方向模板法、灰度重心法等[7-8]。为说明本文方法的有效性,将本文方法的提取结果与极值法和高斯拟合法的结果进行比较。图1(a)为激光投射原图,从图中可以看出,随着物体表面形貌的变化,激光表现出不同的几何特征。图1(b)和(c)则是2种方法的中心提取结果。由图1(d)本文算法结果图可以看出,本文方法可以得到更为连续的条纹中心线,尤其针对物体表面比较粗糙、激光线投影散射严重、噪声比较大的情况,可以获得较高精度的条纹中心。
比较3种算法的计算时间,算法利用VS2012平台,结合OPENCV函数库,结果如表1所示。从表1可以得出,本文算法的运算时间较少。从上述的实例比较中可以看出,本文算法在鲁棒性、提取精度和运算时间方面都有所提高。
4 结论
本文给出的亚像素中心提取算法考虑针对不同类型的噪声进行滤除,获取较高精度的条纹中心。仿真实例说明本文算法结合拟合算法和灰度重心法的特点,在法线方向寻找条纹中心,符合激光条纹的光强分布特性。算法既有高斯拟合算法的提取精度,又有极值法运算量小的优点,具有较好的鲁棒性,运算快且适用性广。
图1 实物仿真图
表1 算法快速性比较
[1]T.Yatagai,M.Idesawa.Automatic fringe analysis for moire topography.Optics and Lasers in Engineering,1982(3):73-83.
[2]熊会元,宗坚,陈承鹤.线结构光条纹中心的全分辨率精确提取[J].光学精密工程,2009(5):1057-1062.
[3]贾卫平,王邦国.基于Hessian矩阵的多结构光条纹中心快速提取方法[J].大连大学学报,2014,35(6):34-37.
[4]张广军,王红,赵慧洁,等.结构光三维视觉系统研究[J].航空学报,1999,20(4):365-367.
[5]刑藏菊,王守觉,邓浩江,等.一种基于极值中值的新型滤波算法[J].中国图象图形学报,2001,6(6):533-536.
[6]吴家勇,王平江,陈吉红,等.基于梯度重心法的线结构光中心亚像素提取方法[J].中国图象图形学报,2009,4(7):1354-1360.
[7]尚雅层,陈静,田军委.高斯拟合亚像素边缘检测算法[J].计算机应用,2011,31(1):179-181.
[8]王泽浩,张中炜.自适应方向模板线结构光条纹中心提取方法[J].激光杂志,2017,38(1):60-64.
TP391.41
A
10.15913/j.cnki.kjycx.2018.01.041
2095-6835(2018)01-0041-03
国家自然科学基金青年基金资助项目(60804025);辽宁省教育厅科学技术研究项目(L2014069);辽宁省自然科学基金项目(2015020061);沈阳市科技创新团队项目(src201204)
席剑辉(1975—),女,四川遂宁人,硕士导师,主要研究模式识别与智能系统。包辉(1991—),女,江苏淮安人,硕士。
〔编辑:刘晓芳〕