计算机视觉技术在零件尺寸测量中的应用王晓翠1,王艳秋1,麻恒阔2(1.北京航空精密机械研究所,北京100076; 2.A BB电气传动系统有限公司,北京100015)摘要:介绍了一种应用计算机视觉技术检测机械零件参数的测量方法。
以面阵CCD为图像传感器,通过图像采集卡将机械零件的二维图像输入到计算机中。
在对原始输入图像进行直方图校正和边缘保持滤波处理后,对得到的较为平滑的零件图像进行边缘检测。
利用图像边缘灰度突变的特性,提出了一种结合梯度算子的快速边缘检测方法。
并据此计算出零件的各参数值。
此种测量方法非常适合于微小、易形变等接触测量难以准确测量的机械零件的参数检测,具有广阔的应用前景。
关键词:直方图校正;边缘保持滤波;边缘检测中图分类号:T P391.41文献标志码:AApplication of Measurement of Mechanical Accessory Size based on C omputer Vision TechnologyWA N G Xiaocui1,W AN G Y anqiu1,M A H eng kuo2(1.Beijing Pr ecision Eng ineering Institut e fo r A ircraft Industr y,Beijing100076,China;2.ABB Beijing Dr ive Systems Co.,L td,Beijing100015,China)Abstract:T he accessor y parameter measurement met ho d w as presented based on co mputer v ision technolog y.By taking CCD as imag e senso r,the accesso ry image is put into the co mputer via imag e co llection card.T he edge detectio n of smoot her accessor y imag e attained after histo gr am adjusting the or ig inal imag e and holding edg e filter.Co nsider ing the sudden chang e of the gr ay scale o f the image edge,a rapid edge-detectio n technique is pr esented which uses gr adient operato r,and then wo rked o ut t he accesso ry parameters.T his metho d is pr opitio us to measure mechanical accesso ry accur ately,such as m-i nuteness,mo re defo rmable that unfit for tangency measur ement,and has a w ide applicatio n fo reg round.Key words:Histo gr am adjusting,Edge keeping filter,Edg e detectio n基于图像处理的计算机视觉技术是把被测零件的图像当作检测和传递信息的手段,从中提取有用的信号来获得待测的参数。
该测量方法具有非接触、高速度、动态范围大、信息量丰富等优点,非常适合传统方法难以测量的场合,如易变形零件尺寸、微小尺寸及零件孔心距等的测量。
本文介绍了一种以CCD作为图像传感器的图像测量系统,并可实现对微小零件的几何量(如薄板零件的小孔和孔心距等)进行自动测量。
1计算机视觉检测系统的构成计算机视觉检测系统是集光学、光电子学、精密机械及计算机技术为一体的综合系统。
该测量系统基本上由平行光照明系统、CCD图像采集系统以及相应的图像处理软件组成。
为了达到良好的照明效果,并适当提高被测图像的对比度,从而提高图像处理中边缘提取的精度,采用光照均匀的柯拉照明方式,并对被测物进行平行光背光照射。
由于被测对象多为板型零件,因而可以较好地利用光照条件提取被测物的有效轮廓,有利于图像测量算法精度的提高。
结构框图如图1所示。
其工作过程为:将被测零件置于尽可能均匀照明的可控背景前,CCD和图像卡将被测零件图像采集到计算机里,计算机按一定的算法计算出被测物体的几何参数,最后计算机对这些数据进行各种处理,并将结果按一定要求予以显示和存储。
图1图像测量系统结构框图2图像预处理由于光的散射、空间电磁干扰、电路杂波等原因,得到的图像中通常含有如椒盐、脉冲和高斯等噪声。
噪声会影响图像质量,造成零件边缘模糊,降低系统测量精度,因此,必须对原始图像进行灰度校正、噪声过滤等预处理。
对图像测量系统来说,所用的图像预处理方法可不考虑图像降质,只将图像中感兴趣的部分有选择地突出,衰减不需要的特征。
考虑到待测物体参数大多由其外形轮廓决定,本文首先对原始图像进行直方图均衡化处理,然后采用边缘保持滤波算法对图像进行降噪。
2.1直方图修正原始图像的灰度值分布是不均匀的,其灰度值集中在一个较小的区间内,直方图修正是一种通过重新均匀分布各灰度值来改变零件图像对比度的方法,可提高图像的主观质量。
设原始图像灰度值分布在区间[a,b],期望灰度分布区间为[z1,z k],如果原始区间[a,b]是[z1,z k]的子空间,则可将原区间内某像素点z映射为期望区间的点z c,具体为:z c=z K-z1b-a(z-a)+z1(1)如果仅是大多数像素值分布在区间[a,b],则可以使用如下的映射函数:z c=z k-z1b-a(z-a)+z1,a[z[bz1,z<az k,z>b(2)上述映射关系可以使图像的灰度分布更均匀,使曝光不充分的图像得到增强。
2.2边缘保持滤波图像预处理使用平滑处理的方法,主要目的是减少噪声。
由于均值滤波或高斯滤波的平滑功能会使图像边缘模糊,牺牲零件图像的精确定位能力,而中值滤波在去除脉冲噪声的同时也会将图像的线条细节除掉,因此,本文采用边缘保持滤波器。
边缘保持滤波器是在均值滤波和中值滤波的基础上发展起来的一种滤波器,在有效滤除噪声的同时,又可基本保持边缘的阶跃特征,基本算法如下:1)对于像素点[i,j],其灰度值为f[i,j],选取适当大小的领域,如3@3领域;2)依公式V=E f2[i,j]-(E f[i,j])2N式中,N为各邻域的像素个数,分别计算左上角子邻域、左下角子邻域、右上角子邻域、右下角子邻域的灰度分布均匀度V;3)取最小灰度均匀度对应区域的均值作为像素点[i,j]的新灰度值。
3图像边缘提取在图像测量系统中,图像边缘的检测是整个测量的基础和关键。
图像边缘检测精度高,整个测量系统的精度就可大大提高。
基于图像边缘灰度突变的特性,我们可以利用像素点的梯度值来区分边缘点和非边缘点,通过比较各像素点的梯度来获得边缘位置。
但是由于图像采集方面的原因,某些非边缘的梯度幅值可能高于弱边缘的梯度幅值。
因此真正的边缘点应该是对应于梯度值的局部极值点。
如果仅确定单一的阈值,因弱边缘的梯度幅值比较小,在选取边缘点时极易丢失。
但对于弱边缘来说,在与边缘走向垂直的方向上,它也是一个局部峰值,还是可以检测出来的。
为更好地满足图像测量的需要,在检测边缘点时利用Sobel算子在梯度方向上去除非局部极大值点的基础上,引入了Canny边缘检测算法中的双阈值技术来提取候选的边缘点,成功地获取了像素级边缘,具体的步骤如下。
1)用So bel算子对预处理后的图像g(i,j)进行卷积,得到卷积图像。
2)计算图像中每一点的梯度幅值M(i,j)与梯度方向值H(i,j)。
其计算公式为:M(i,j)=p x(i,j)2+p y(i,j)2(3)H(i,j)=tan-1p y(i,j)/p x(i,j)(4)这样就可以得到图像中每一点的梯度方向值H(i,j)。
3)非局部极大值抑制。
首先对图像中每一个像素点的梯度方向值H进行量化,确定其在梯度方向上相邻的2点,以像素点O(i,j)为例进行如下分析。
O11(i-1,j-1)O12(i-1,j)O13(i-1,j+1)O21(i,j-1)O22(i,j)O23(i,j+1)O31(i+1,j-1)O32(i+1,j)O33(i+1,j+1)当H(i,j)\38P或H(i,j)[-38P时,相邻2点为O12,O32;当18P[H(i,j)<38P时,相邻2点为O13, O31;当-18P[H(i,j)<18P时,相邻2点为O21, O23;当-38P[H(i,j)<-18P时,相邻2点为O11, O33。
而后将每一个梯度幅值非零的像素点与沿梯度方向上相邻的2个像素梯度值进行比较,若该像素点的梯度幅值M(i,j)小于其在梯度方向上相邻像素点对应值,则此点标记为非像素点,并置其梯度值为零。
4)重新统计经非局部极大值抑制后的图像像素点梯度,并进行自适应双阈值操作。
考虑到光照不均匀等因素对图像的影响,我们将图像分成若干幅子图,在各个子图中利用其各自的梯度直方图自适应地选取阈值,避免检测到不连续的边缘,允许各幅子图有部分重叠。
为各子图设定高低2个阈值T1和T2。
计算各个子图的梯度均值D 与梯度方差R ,两者之和作为该子图边缘检测地高阈值T 1,令高阈值与低阈值之间的比例为0.4,从而得到低阈值T 2=0.4T 1。
对于大于T 1的像素点标记为边缘点,而小于T 2的一定不是边缘点,从而得到待选边缘点,需要进一步验证。
5)对第4步处理所得的图像进行最后扫描。
在与边缘点或待选边缘点梯度方向垂直的方向上选取小直线领域,直线两端各取2点。
若此点在小领域中是极大值,则是边缘点,否则就不是边缘点。
6)抑制细小边缘,提取出目标轮廓。
对第5步操作后得到的图像中的边缘点进行8领域统计,将像素个数少于一定值的连通边缘视为非目标边缘,将其删除。
将边缘点的梯度值修改为255,非边缘点的梯度值置为0。
7)边缘点连接。
在图像中按照从左到右,从下到上的顺序遍历,选择一有效边缘点作为起点,按照轮廓跟踪算法将各个边缘点连接起来得到边缘链,从而得到单像素边缘图像。
以塑料薄板的小孔为例进行处理。
图2给出了经过边缘提取后的图像效果。
其中图2a 为待检测的原始图像,图2b 为经过图像预处理及边缘提取后的图像。
a)待检测原始图像 b)边缘提取后的图像图2 边缘提取前后的图像4 零件二维图像分析对获得边缘轮廓的零件图像进行分析及尺寸检测。