基于机器视觉的轴类零件几何尺寸测量*
2013-12-23祁晓玲赵霞霞靳伍银
祁晓玲,赵霞霞,靳伍银
(兰州理工大学 机电工程学院,兰州 730050)
0 引言
轴类零件是机械工业中极为常见的零件之一,其几何尺寸与精度不仅直接影响机械的运动性能、使用寿命,且对减少能源消耗和环境污染等有重要影响。在我国大多数机械加工企业的加工现场,产品尺寸的测量仍然采用V 型块加百分表或千分表、千分尺等落后的传统量具。这种传统的手工测量方法对操作人员的依赖性强,操作者劳动强度大,效率低,产品质量得不到有效保障,还可能产生很多人为误差,这样就难以满足大批量、高效率、高精度的产品检测要求。因此,研究低成本、高精度、高效率的轴类零件尺寸自动检测系统,对提高我国机械装备制造业的技术水平具有重大意义[1]。目前,视觉检测技术是精密测试技术领域内最具有发展潜力的新技术,它综合运用了电子学、光电探测、图像处理和计算机技术[2]。将机器视觉引入工业检测中,实现对物体(产品或零件)尺寸或相对位置的快速测量,可以做到实时在线、非接触和高精度,省时省力并可以避免测量过程中人为产生的错误,同时也能实现生产的连续性和提高生产的自动化程度[3]。本文应用机器视觉技术开发了一套完整的轴类零件测量系统,重点介绍了系统的软硬件结构,结合改进的自适应中值滤波算法,对轴类零件的基本参数进行了快速准确地测量。
1 系统总体设计
本系统的组成分为两部分:硬件系统和软件系统。硬件系统主要完成图像采集,使用CCD 摄像头及配套的图像数据采集系统,采集能够反映轴表面特征的图像。如图1 所示,由于轴类零件属于非透明体,采用背向照明方式,背向照明是被测物放在光源和摄像机之间,它的优点是能获得高对比度的图像,有利于后续图像处理。光源发出光波,经环形光管照射于被测零件,使零件尽量在均匀照明的可控背景中,(为了减小周围环境光对零件的影响,我们用一个不透明的圆柱腔体遮光罩将环形灯管围住,并在光源上面放置一块毛玻璃降低散射),经光学系统成像于面阵CCD 的光敏面上,图像采集卡接收从CCD 摄像头中输入的模拟电信号,由A/D 转换为离散的数字信号,与计算机进行通讯,计算机通过对采集的图像数据进行处理,从而能快速、精确地计算出该零件的尺寸,并将结果直接送到显卡上进行显示。
图1 测量系统硬件组成图
本测量系统采用的是总像素单元数为768(水平)×576(竖直)的面阵CCD 摄像机、CCTV-LENS 8.0mm 的镜头、内置有型号为PCI-1104 的4 路标准相机图像采集卡的计算机。
软件部分主要完成图像处理和尺寸测量。如图2 所示,对获取图像的处理包括:图像预处理、边缘提取、边缘修复、算法实现、结果生成等模块。
图2 测量系统软件模块
2 图像处理
对于一个稳定快速的机器视觉测量系统,合理选择图像处理算法非常重要,测量软件所使用的图像处理算法直接决定了测量效果的好坏以及测量过程花费的时间[4]。本系统中出现的噪声主要为椒盐噪声,采用中值滤波就可以较好的去除掉此类噪声,传统的中值滤波方法运用中值代替该点的像素,也就是说,没有考虑这点是被污染点还是未被污染点,这样就会造成图像质量的下降。一种解决方法就是在滤波之前,先实现脉冲噪声的检测,这样只有那些被污染点可以通过滤波器,未被污染点将不会通过。通过把这种噪声检测原理合并到中值滤波中,本文提出一种自适应开关中值滤波算法[5-6],它能在滤除噪声点的同时,很好的保留二维图像的结构细节。具体算法为:
(1)首先采用3 ×3 窗口排列灰度图像,并用二值图像中的3 ×3 模板进行匹配。
(2)在匹配的二值窗口中确定在当前的滤波窗口中有多少个像素被作为非噪声点。
(3)如果未被污染的像素大小小于滤波窗口总像素的一半,用向外增加一个像素的方法沿窗口的4个方向,反复的扩充窗口的大小,如果对结果不满意,以上步骤再执行一次。
(4)由于当前像素被标记为噪声,它将不会出现在过滤过程中,只有当像素被标记为非噪声点时才会出现在中值滤波中,这样形成的滤波效果有较少的失真。运用本文的滤波方法与传统中值滤波相比较,得到如图3 所示。
图3 图像处理
3 测量系统
3.1 系统标定
本测量系统中采用了实验标定的方法:以已知量块作为标准件,选择与实际测量时的测量条件相同的情况下拍摄量块图像,并计算其在图像像素坐标系中的像素值。量块的实际尺寸与其像素尺寸的比值,即摄像头的定标尺寸,从而达到系统标定的目的[8]。在测量中,首先对获取的量块图像进行处理,统计出其在图像坐标系中的像素个数,用P 表示,它与量块的实际长度L 相比得到每像素对应的实际尺寸S,用下式表示:
式(1)中,S 表示一个像素所对应的实际尺寸,即标定值。由于标定过程也会引入误差,因此可以采用多次标定取平均值法消除系统误差的影响。在获取了系统标定参数后,就可以将图像测量所得到的像素尺寸转换成实际的尺寸。但是这种系统标定得到的系数在更换了不同的被测零件或者测量条件(照明、视距、焦距等)后就需要重新标定。本实验选择70mm 的量块作为测量对象,通过计算得到标定值:
3.2 轴的尺寸测量
经过前面的图像处理,获得的轴零件图像可以直接进行计算。轴类零件的尺寸包括径向尺寸、轴向尺寸和连接段的倒角等,如图4 所示的阶梯轴。
3.2.1 轴径的计算
图4 阶梯轴及其尺寸表示
由于轴零件特征的特殊性,可以采用Hough 变换来检测直线。它的基本思想是:将直线上每一个数据点变换为参数平面中的一条直线或曲线,利用共线数据点对应的参数曲线相交于参数空间中一点的关系,使直线的提取问题转化为计数问题。Hough 变换提取直线的主要优点是受直线中的间隙和噪声影响较小。从得出的边缘图像中,可以检测到六条直线段,依次求得各条直线的位置参数,即为三段轴的边缘线,从而可以计算得到图4 所示阶梯轴的轴径。
3.2.2 角度的确定
虽然边界处的坐标已经被求出来了,但是求出的坐标并不都是准确地落在直线上。那么使用哪些点来计算两条直线的角度呢?在计算角度之前可以先对直线进行拟合。基于直线拟合的检测算法,根据最小二乘原理用直线来逼近直线轮廓[9-10]。直线的方程为:
取其残差为:
式中i ∈E,E 表示所有边界的集合;(xi,yi)为图像边界点坐标。
残差平方和函数为:
根据最小二乘原理,应取a0和a1使F(a0,a1)有极小值,故a0和a1应满足下列条件:
表1 实验结果与标准值比较
即得如下正规方程组:
求出a0,a1,可以求出组成倒角的两条直线。角度计算可以使用公式
其中,vec1 和vec2 分别是两条直线方向的向量,方向向量vec1 = (1,k1),vec2 = (1,k2)(k1,k2 分别为两直线的斜率),“<,>”指点积,“| |”指长度即模长。由反余弦函数arccos 可以求出角度。以图4 中所指的倒角为例具体步骤如下:找到左上方水平直线上的一点,求出其坐标,然后扫描行数比该点所在行小于3 的点,从而找到斜线上的一个点。由这两点出发,使用函数bwtraceboundary 跟踪目标边界,本文分别采用向右和向北方向的8 邻域内找100 和10 个点,为了使求得的角度和两条直线的交点更加准确,找的点数越多越精确。把这些点分别拟合成两条直线。计算出两条直线的方向向量,由角度公式(7)得出两直线的夹角,为所求的倒角。
3.2.3 轴长的确定
左端的轴长:求角度时拟合出两条直线,且两直线的交点已知,即为左边部分的边界终点,该点坐标为(r1,c2),依次向左扫描,检测出r1 行的最小列,记作c1,则左端的轴长L1 = c2-c1;中间段轴长:找到图像的中间段部分,记下该段所有边界点所在的行和列。找出最大的列数记作c3,其行数记作r2,即中间段的长度L2 = c3-c2;右端的轴长:在整个图像中找到最大列值c4 的点,则可判断出,该点为工件该段轮廓的结尾点,并把该点记为(r3,c4),则右端的轴长L3 = c4-c3。
4 测量结果与误差分析
根据测量结果,生成的二维图如图5 所示。表1所示为零件实际尺寸与测量结果对比,及其相对误差分析。视觉检测中的误差值是由多方面的因素造成的,其中包含光源偏移及角度变化,摄像机的透视误差,图像处理算法的影响,尺寸测量中检测参数的选取等。
图5 重绘零件图及尺寸标注
5 结论
计算机视觉测量系统在工业生产过程中应用越来越广泛,由于图像采集系统、传输媒介以及成像系统的不完善,图像信号在生成、传输过程中,很容易受到脉冲噪声的干扰,因而图像增强通常是一个必要的环节。选取合适的滤波算法对保证测量精度无疑是非常重要的。本文基于MATLAB 平台,采用改进的自适应中值滤波可以有效地滤除椒盐噪声,并很好的保持图像的细节信息,滤波性能比传统中值滤波更理想。开发了轴类零件尺寸测量系统,实现几何尺寸计算、零件图自动生成。实验表明本文所开发的系统与测量方法能对多尺寸的复杂轴类零件进行较高精度的在线测量。
[1]郭林. 基于CCD 的轴类零件快速精确测量方法研究及实现[D]. 重庆:重庆大学,2006.
[2]Jeong-Ho Lee,You-Sik Kim. Real-time application of critical dimension measurement of TFT-LCD pattern using a newly proposed 2D image-processing algorithm[J]. Optics and Lasers in Engineering,2008,46:558-569.
[3]孙晋豪,杨燕翔. 基于机器视觉的零部件尺寸测量[J].工业控制计算机,2007,20(7):3-4,6.
[4]E. N. Malamas,E. G. M. Petrakis,M. Zervakis,et al. A survey on Industrial vision systems,application and tools[J]. Image and Vision Computing,2003,21(2):171-188.
[5]Mamta Juneja,Rajni Mohana. An improved Adaptive Median Filtering Method for Impulse Noise Detection[J]. International Journal of Recent Trends in Engineering. 2009(1):274-278.
[6]苏峰,朱旻芸,杨秋菊. 基于自适应开关插值算法的图像椒盐噪声滤波[J]. 计算机应用研究,2011,28(2):375-377,381.
[7]张德峰,等. MATLAB 数字图像处理[M]. 北京:机械工业出版社,2009.
[8]田原嫄,黄合成,谭庆肠,等. 基于机器视觉的零件尺寸测量[J]. 激光与光电子学进展,2010(1):86-94.
[9]刘师少. 计算方法[M]. 北京:科学出版社,2005.
[10]孔兵,王昭,谭玉山. 基于圆拟合的激光光斑中心检测算法[J]. 红外与激光工程,2002,31(3):275-279.