1. 引言
机器视觉技术是一门依托数字图像处理、光学成像技术、模式识别和计算机处理等技术的综合学科 [1]。机器视觉能够代替人眼,在必要的图形中获取实用的信息内容,对这类数据进行计算和求解,最后输出检测结果 [2]。随着汽车市场的不断发展,对于各部分零件的寿命以及工作效率都有了更高的要求。活塞环(如图1)是发动机的重要组成部分,它直接影响着发动机的工作效率和寿命 [3]。所以,活塞环的质量能否合格,它直接关系到了发动机的总体性能,也间接影响到了车辆的整体工作效率,对发动机制造业乃至整个车辆产业的发展趋势都有着重要的影响 [4]。
Figure 1. Physical picture of piston ring
图1. 活塞环实物图
通过企业调研,如今国内的活塞环检测普遍采用是人工检测。将活塞环压入标准环规(如图2)中,在密闭的黑暗空间里,由光源照射,测量漏光弧的角度。近年来,越来越多的公司以及高校研究活塞环检测的自动检测方法,国内大都采用了光电探测器件来实现 [5],通过光敏器件,记录活塞环一圈的漏光情况,再将信号转换成电信号,经过电气装置放大,输出结果。该检测方法结构简单,成本低,但是检测过程不能连续检测,计算漏光的精度较低。马勒发动机零件(营口)有限公司设计了一台活塞环自动检测机,应用摄像头对活塞环进行检测,检测效率高,但是此项技术尚未公开。
2. 图像拼接技术
图像拼接技术指将两幅或者多幅具有重叠部分的图片拼接成一幅完整的全景图片或具有高分辨率的图片 [6]。图像拼接技术的一般流程图如图3所示:
Figure 3. General process of image stitching technology
图3. 图像拼接技术一般流程
将活塞环的图像分为四个部分采集,在相机参数没有发生改变的情况下,使得每个部分的图像都占有更多的像素。将每个部分的活塞环的轮廓提取出来,应用图像拼接技术,将四幅图像拼接到一起,达到提高整幅图像的分辨率的目的。提取后的四段活塞环图片如图4所示。
(a) 活塞环片段 (b) 活塞环片段 (c) 活塞环片段 (d) 活塞环片段
Figure 4. Picture of the four-segment piston ring after extraction
图4. 提取后的四段活塞环图片
若直接将四幅图像拼接到一起,若参数出现偏差,会导致形成一个闭合的圆,闭口间隙不能在图片中显示出来。在活塞环压入标准环规的时候,不能保证每次都是同一个角度,为了确保算法的统一性,可分别将图像拼接起来。将活塞环片段1与2拼接,3与4拼接,得到拼接部分1 (如图5)和拼接部分2 (如图6),再将拼接部分1与拼接部分2拼接到一起,得到整幅的活塞环轮廓图像如图7所示。
Figure 7. Outline image of the entire piston ring
图7. 整幅的活塞环轮廓图像
图像配准是指采用一定的匹配策略,找出待拼接图像中的模板或特征点的对应位置,进而确定图片之间的对应关系,是整个图像拼接流程中最为关键的一步,配准的精度决定了图像拼接后的质量 [7]。
由于活塞环的轮廓具有明显的形状特征,可采用基于特征的配准方法进行拼接。通过特征检测的方法得到图像中重要的点,称为兴趣点。与其他的点不同,兴趣点即图像函数上发生变化的点,一般这种变化发生在图像边缘的交叉点(称为连接点)和发生在颜色或亮度发生急剧变化的点(区域点)。将两幅图像的特征点作为一组坐标,建立变换仿射矩阵,从而实现图像的拼接。假设一个位置(x,y),那么这个位置的像素灰度值为I(x,y),如果这个窗口分别向x和y方向移动一段距离u和v,那么新的位置就是(x + u,y + v),这个位置的像素灰度值为I(x + u,y + v),设w(x,y)为该位置的窗口函数,代表窗口内各个像素的权重,那么该窗口移动后的像素灰度值变化量E计算如下:
(1)
若窗口内的点是一个兴趣点,那么E(u,v)的值会很大。为了提高计算效率,对上述公式进行简化,若Ix和Iy为I的偏导数,代表图像中x和y方向的梯度图,即
(2)
利用泰勒级数展开得到下列公式:
(3)
其中矩阵M为:
(4)
3. 改进的Canny算子
在活塞环闭口间隙检测过程中,图像的轮廓是否清晰比图像中其他部分更为重要,它直接影响了检测的精度。传统的Canny算子在滤波过程中,采用高斯滤波的方式,高斯滤波是一种低通滤波的方法,即低频信号通过,高频信号受到阻隔、减弱 [8]。图像的边缘部分通常为高频信号,高斯滤波处理会导致图像轮廓变得模糊,并且存在断点,因此,低通滤波的方法并不适用在边缘上。
针对这一问题,提出了改进的Canny算子,采用中值滤波代替高斯滤波对活塞环图像进行处理。
对图像进行中值滤波,中值滤波对脉冲干扰而产生的椒盐噪声有着很好的抑制作用,同时又可以有效的保护图像的边缘轮廓,不会导致图像模糊。
中值滤波法是一种非线性的平滑方法,他对一个滑动窗口内的诸像素灰度排序,用其中值代替窗口中心像素(x,y)原来的灰度(若窗口中有偶数个像素,则取两个中间值的平均)。
图8(a)是原图,数字代表该处的灰度。可以看出中间的6和周围的灰度相差很大,可判定为噪点。经过3 * 1窗口(即水平3个像素取中间值)的中值滤波,得到图8(b)的图像,可以看出噪点被去除。
(a) 原图 (b) 处理后的图像
Figure 8. Median filter template
图8. 中值滤波模板
传统Canny算子提取的轮廓与改进的Canny算子的轮廓对比如图9所示:
(a)(b)
Figure 9. (a) Contour extraction by traditional canny operator; (b) Contour extraction by improved canny operator
图9. (a)传统Canny算子提取轮廓;(b)改进的Canny算子提取轮廓
4. 漏光度检测
4.1. 检测标准
国家专门制定了活塞环光密封度的检测标准 [9]:1) 连续漏光弧长对应的中心角小于等于25˚,不连续漏光累计弧长所对应的中心角小于等于45˚。2) 闭口间隙的开口左右15˚不允许出现漏光。3) 点状漏光可忽略不计。以上的检测标准是针对直径小于200 mm及以下的活塞环。
4.2. 漏光类型
光密封度是对活塞环外圆面的形象表述,它能够反应活塞环外圆面与气缸内壁的贴紧程度,直接影响发动机的工作效率。传统的检测方法是把活塞环压入标准环规中,在密闭空间里,用光照射活塞环,通过人眼来识别穿透过活塞环外圆与标准环规间的光斑的大小来衡量漏光度。漏光主要包括弧长漏光以及点状漏光,如下图10所示。
(a) 点漏光(b) 弧长漏光
Figure 10. Point light leakage and arc length light leakage of the piston ring
图10. 活塞环的点漏光与弧长漏光
5. 漏光度检测
5.1. 检测原理
活塞环的漏光度检测原理如图11所示:
Figure 11. Schematic diagram of piston ring detection principle
图11. 活塞环检测原理示意图
活塞环的漏光弧如上图所示,若想计算漏光弧所对应的中心角,需确定漏光弧的两个端点A和B以及活塞环的圆心O,设A点坐标(x1, y1),B点坐标(x2, y2),活塞环的半径R,那么中心角θ的度数计算公式如下:
(5)
5.2. 漏光弧的端点
在检测漏光度时,图像中最重要的就是漏光弧,图像的其他部分均不重要,为了突出漏光弧,可通过灰度变换的方式对图像进行处理。对图像中每一个像素进行扫描,将亮度高的地方亮度修改为0,亮度低的地方亮度修改为255,设某一个像素点A,它的灰度值为f,给定的灰度值为a,那么其计算公式如下:
(6)
经过变换,将图像中漏光弧凸显出来,方便找到漏光弧的端点。漏光弧的端点也就是灰度值急剧变化的点,也成为角点。在图像中求得角点,并且标记出来。
(7)
其中,I(x, y)表示像素的灰度值,对于上式,我们希望E的值尽量的大一点,对上式右边泰勒展开得:
(8)
进而可表示为:
(9)
得到的结果如图12所示:
Figure 12. Endpoint detection of light leakage arc
图12. 漏光弧的端点检测
5.3. 活塞环图像圆心的确定
用最小二乘法拟合出活塞环的内环以及外环,求得内环以及外环的直径,将内外环的圆心坐标取平均值,作为活塞环的圆心。设活塞环的中心坐标为(ai, bi),内外环的半径为Ri,当i = 1时,结果为内环的结果,当i = 2时,结果为外环的结果,则最小二乘法拟合圆的计算方法如下:
(10)
将其转换为:
(11)
其中,
(12)
展开得到:
(13)
求导得到圆心及半径的参数:
(14)
最终拟合的内环和外环的结果如图13所示。
Figure 13. Fitting result of inner and outer ring of piston ring
图13. 活塞环内外环拟合结果
5.4. 漏光度检测算法流程
在活塞环压入标准环规时,不能保证每次开口都在同一个位置,在检测连续漏光和累计漏光时,会将开口包括在里面,所以,检测的过程要确定一个检测的起始点,避开开口位置,从起始点开始,顺时针检测漏光度。本文以活塞环的圆心,与活塞环开口的中心位置做一条直线,以这条直线为检测的起始点,顺时针检测,如图14所示。
在活塞环漏光度检测标准中,明确规定了点状漏光不作为累计漏光计算,所以在检测流程中,要先将点状漏光去除。点状漏光十分的小,因此漏光弧两个点的坐标十分相近,距离也很小,通过实验测试,一般将小于2个像素点的漏光弧定义为点状漏光。
在检测活塞环开口左右15˚漏光情况时,以起始线为准,以活塞环圆心为中心点,另作两条直线位于起始线两侧,每一侧与起始线夹角为15˚。且在此过程中,需要考虑点状漏光,所以在整个流程中,需要先检测活塞环开口左右是否存在漏光,若存在漏光,可直接得出结论,该活塞环不合格。若不存在漏光,在继续检测。由于连续漏光的弧对应角度要小于25˚,累计漏光弧对应角度小于45˚,如果先对累计漏光弧进行检测,在对连续漏光弧长检测,那么就需要对活塞环轮廓图像检测两次,这样就减缓了检测的效率,因此,先对累计漏光弧长进行检测,当检测到某一段漏光弧对应的角度大于25˚时,就判断为不合格,若没有,就将所有的漏光弧对应的角度值相加,与45˚相比较,确定活塞环是否合格,以100个活塞环作为一个检测周期,具体检测流程如图15。
6. 结论
通过机器视觉对活塞环漏光度进行检测,结合图像拼接技术,在硬件条件不改变的情况下,提高了图像的分辨率。提出了一种改进的Canny算子,对活塞环图像轮廓进行检测,使得图像更加清晰。通过最小二乘法拟合活塞环的内外环,得到圆心坐标,做出检测起始线,顺时针检测活塞环。为了避免程序的重复性,确定了检测流程,实现活塞环漏光度的自动化检测,代替人工检测,具有很高的使用价值。
致 谢
感谢指导教师王学俊老师,以及对于本论文的帮助者和所有被引用文献的所有者致以诚挚的谢意和崇高的敬意。