基于图像分析的瓷砖角点快速定位

2013-04-26 07:13管庶安胡尧俊
武汉轻工大学学报 2013年2期
关键词:暗区角点瓷砖

田 魁,管庶安,胡尧俊

(武汉工业学院数学与计算机学院,湖北武汉430023)

在基于机器视觉的瓷砖尺寸与平整度检测合为一体的设备中,由于只能采用上光源方式采集图像[1],故在皮带磨损、皮带上有水渍、瓷砖表面有花纹等情况下,图像中存在严重的干扰,如图1所示。按照常规方法进行角点定位[2],会因为干扰因素较多而导致算法复杂,不仅很难满足在线实时检测的要求,而且检测结果也难以达到精度要求,甚至角点定位错误。对此,本文采用侧射平行光源照明,在瓷砖边沿形成阴影暗区,在检测算法中,先根据瓷砖在图像中的形状和位置特征确定一个存在角点和边缘的参考区域,再根据阴影暗区的特征在参考区域中精确搜索边缘,定位角点。本方法避开了对大量不存在目标的区域的搜索,具有速度快、定位准确和抗干扰能力强的特点,实际效果良好。

1 基于侧射平行光源的瓷砖图像采集

为了检测瓷砖的四条边长,将被检测的瓷砖置于传输皮带上,在皮带上方固定四台摄像机,当瓷砖匀速地通过摄像机下方时,摄像机同时被触发采集瓷砖四个角点的图像[3]。在由于要将尺寸与平整度检测合为一体,只能采用上光源照明,为了尽可能地排除干扰,采用侧射平行光源照明,结果在靠近瓷砖边沿的皮带表面上形成阴影暗区,如图2所示。大量实验表明,成像后水渍、皮带磨损等干扰在阴影区变得不明显,因此大大地削减了瓷砖边沿外侧的干扰,对边缘的准确定位极为有利。

图1 采集到的含有干扰的图像

在以下讨论中,记采集到的瓷砖灰度图像为f(x,y),尺寸为1 280×960像素,对应实物的尺寸约为20 mm×15 mm。

图2 侧射平行光源照明方式

2 瓷砖边缘所在区域的确定

由于摄像机采集到的是瓷砖的四个角点的图像,故只要知道是哪个角,就能知道水平边缘和垂直边缘所处的区域。实际情况下,由于安装误差、对中机构工作误差、瓷砖在运动时光电检测装置的延迟误差等,会使瓷砖的角点偏离图像中央位置,如果在整幅图像中盲目搜索角点,由于计算量大,耗时长,将无法满足实时检测的要求,因此首先需要确定瓷砖边缘的参考位置,再由此得到边缘所在的参考区域,最后在参考区域中定位角点。

2.1 边缘参考位置的确定

某摄像机采集到的图像如图3所示,将图像划分为五个矩形区域,区域Ⅴ是瓷砖角点的允许区域,角点出现在该区域才能被准确检测出来,否则会因为能看到的边缘点太少而无法准确定位角点,甚至定位错误。实际中,通过调整摄像机的安装位置以及使用对中机构对瓷砖运动方向进行修正,可以保证瓷砖角点始终落在区域Ⅴ中。

图3 瓷砖图像区域的划分

在图3中,设图像左上角为坐标系原点,水平方向为x轴,竖直方向为y轴,水平边缘在竖直方向的参考位置设为yo,竖直边缘在水平方向的参考位置设为xo。由于砖角出现在左上方,因此要确定yo,必须在区域Ⅳ中搜索;要确定xo,必须在区域Ⅰ中搜索。以确定yo为例,记区域Ⅳ左上角的坐标为(x1,y1),右下角的坐标为(x2,y2)。将区域Ⅳ中的图像向y轴投影,记为fy(y):

(1)式中求和具有平滑作用,可以抑制一些噪声的干扰。图4为摄影和梯度曲线。fy(y)的曲线如图4(a)所示。

由图4(a)可以看出从y1到y2,灰度值在yo处发生跳变后的一段范围内保持不变,这段范围就对应着图像中的阴影暗区,为了准确找到yo,求fy(y)关于y的梯度,记为gy(y):

图4 投影和梯度曲线

(2)式中求和亦具有平滑作用,所以噪声得到了进一步抑制。gy(y)的曲线如图4(b)所示。

由图4(b)可以看出在y1和yo之间出现了很多峰点,这些峰点大部分是由瓷砖表面的花纹形成的干扰点,由于实际边缘点所在位置峰值较大,设定一个峰值幅度阈值T1,当峰值点的幅度大于T1时,则把该点当作候选边缘点,记为 pi,i=1,2,…m。现在需要利用阴影暗区的特征,从m个候选边缘点中筛选出一个实际边缘点,算法如下。

对于所有的pi,求Si:

(3)式中N的值由阴影暗区的宽度决定,一般取阴影区宽度的1/2。Si取最小值时所对应的pi就是瓷砖水平边缘在垂直方向的参考位置yo。

同理由区域Ⅰ可以求得瓷砖竖直边缘在水平方向的参考位置xo。

2.2 边缘参考区域的确定

由于瓷砖的运动,实际的瓷砖边缘不是严格水平或垂直的,边缘将存在于参考位置附近的某个矩形区域内。图5中Sx、Sy分别表示水平边缘、垂直边缘存在的区域,记:

Sx=(0,yo-d,xo+d,yo+d),

Sy=(xo-d,0,xo+d,yo+d).

其中,圆括号中的4个参数分别表示矩形区域的左上角x,y坐标和右下角x,y坐标。d决定矩形区域的大小,要求选择适当的d值,使水平或垂直边缘全部含于Sx或Sy中。实际中,设允许瓷砖偏转的角度为 ±2°,则可取 d=|W tan2°|,W 为图像宽度,W=1280,计算得 d≈45,取 d=50。

图5 边缘参考区域

3 边缘的精确搜索和角点定位

为了定位角点,需要得到全部边缘点。必须说明,在Sx和Sy内,仍存在某些干扰,特别是对瓷砖进行倒角加工造成的干扰,对精确定位边缘造成影响。为此,应采用抗干扰性能良好的算法来搜索边缘。现以水平边缘的定位为例说明采取的算法。

(1)对Sx中的第x列像素求关于垂直方向的梯度 grad(x,y):

(2)在第x列,沿着y方向搜索梯度大于阈值T2的峰点,记峰点位置于数组peek[n]中,n为峰点的个数。

(3)如果n=0,则转步骤(4);如果n=1,则该点即为边缘点,记录位置,转步骤(4);如果n≥2,表明搜索到的边缘候选点有多个,此时需要利用阴影暗区的特征来进一步甄别,筛选出真正的边缘点,记录位置,转到步骤(4)。

(4)若为最后一列,则结束;否则x=x+1,转步骤(1)。

(4)式中,某点梯度的计算邻域为矩形,其高为6,宽为2A。由于水平边缘不会偏离水平位置太多,故A可取大些,有利于抗干扰。通过上述算法可以精确搜索出瓷砖的水平边缘,同理在Sy内也可以精确搜索出瓷砖的垂直边缘。

通过上述得到的边缘中不可避免地存在一些由噪声引起的干扰点,也有可能会丢失一些真正的边缘点,需要用直线来拟合水平边缘和垂直边缘,两直线的交点就是瓷砖的角点,通过这种方式,甚至在瓷砖少许缺角的情况下也能准确定位角点。

常用直线拟合方法有Hough变换和最小二乘法。Hough变换具有抗干扰能力强等特点,具有排除干扰点,连接断裂的功能,但当边缘稍有弯曲时会产生误差[4]。最小二乘法拟合能对弯曲进行平均处理修正,但干扰点会影响拟合的精度[5]。本文将两者结合起来[6],先作 Hough变换,再取 Hough变换得到的直线近旁的点作最小二乘法拟合,从而精确地拟合出边缘,定位角点。

4 实验结果分析

实验中用侧射平行光源照明采集200块瓷砖的800幅图像,其中白色瓷砖100块,黑色瓷砖50块,花砖50块,皮带面上有严重磨损、水渍。经试验,选择有关参数为 N=30,T1=160,T2=6,A=30,d=50。采用本文算法在SAMSUNG R428笔记本电脑上用VC++编程实现对角点的定位,每幅图像平均耗时为11.5 ms,很好地满足了定位误差在像素内,对应的平均误差为±0.02 mm,定位精度高。在有花纹干扰、水渍干扰、皮带磨损、瓷砖倒边角和缺角的情况下,全部能快速、准确定位角点。

5 结束语

本文采用的算法具有如下特点:①将目标搜索的范围限定在Sx和Sy中,此区域内噪声干扰大大削弱,而且在求投影和梯度时,多次利用求和平均的方法使噪声干扰进一步得到抑制。②只在Sx和Sy内搜索边缘点,数据量大大减少,定位速度快。③结合Hough变换和最小二乘法进行边缘拟合,拟合精度高。实验表明:该算法是一个速度快、定位精度和稳定性较高的算法,能满足瓷砖尺寸检测系统的应用要求。

[1]李亚标,王宝光,姜希.基于线阵CCD的瓷砖尺寸在线检测系统的研究[J].传感器与微系统,2010,(1):27 -29.

[2]Rafael C.Gonzalez,Richard Eugene Woods.Digital Image Processing,2nd Edition[M].London:Prentice Hall,2002,568 -572.

[3]吴彰良,刘洁,孙长库,等.基于计算机视觉的油封尺寸检测系统设计[J].计算机测量与控制,2012,20(5):1196 -1198.

[4]Zhiguo Yan,De Xu,Min Tan,et al.A fast and robustmethod for line detection based on image pyramid and Hough transform[J].Transactions of the Institute of Measurement and Control,2011,33(8):971 -984.

[5]杨冬涛,龚昌来,罗聪,等.利用图像处理技术测量零件尺寸[J].煤矿机械,2012,33(5):141-143.

[6]郭斯羽,翟文娟.结合Hough变换与改进最小二乘法的直线检测[J].计算机科学,2012,39(4):196-200.

猜你喜欢
暗区角点瓷砖
Dekorami瓷砖系列:以静态时空讲述瓷砖的故事
基于配准图像与水平集算法的宫颈荧光多生暗区分割方法
比大小招数多
基于FAST角点检测算法上对Y型与X型角点的检测
铺瓷砖
阴道超声在剖宫产术后子宫切口憩室诊断中的临床效果
基于边缘的角点分类和描述算法
光束分析仪测量高阶拉盖尔高斯光束暗区半径研究
基于圆环模板的改进Harris角点检测算法
杭州市三年消除城市照明暗区3098处