活塞表面缺陷图像的亚像素边缘检测技术研究

2024-01-26 09:18彬,黄涛,罗
机械设计与制造 2024年1期
关键词:活塞算子灰度

郑 彬,黄 涛,罗 山

(攀枝花学院交通与汽车工程学院,四川 攀枝花 617000)

1 引言

活塞作为汽车发动机核心零部件之一,其工作状态直接决定了汽车的使用性能。活塞的表面缺陷检测是生产制造的一道必不可少的工序,对其表面质量起着关键的作用。

之前大多数汽车零部件制造企业还是采用传统的人工检测方式,而人工检测通常会造成较大的误差。文献[1]针对制动主缸活塞人工检测效率低的问题,采用机器视觉的方法,提高了生产效率。文献[2]设计了一套活塞包胶组件的机器视觉检测系统,并给出了检测算法。文献[3]提出了一种改进的Sobel 边缘检测算法,用于图像边缘检测,比传统算子更清晰。文献[4]提出一种基于自然彩色图像的区域生长算法,具有较强的适应性和有效性。

综上所述,在处理不规则的感兴趣区域时,图像中的噪声很难消除,导致待检测区域边缘模糊。

为了使区域生长法分割的区域精确性更高,结合活塞顶部缺陷的形态学、区域形状、灰度值等特征,以区域生长法的分割模型为基础,提出了一种基于Canny算子进行亚像素级别的边缘提取算法,使分割的区域更符合感兴趣区域的状态。

2 系统总体设计方案

发动机在工作过程中,缸体内的高温高压很容易导致活塞顶部造成裂纹、划痕和崩口等缺陷。为了能快速准确地找出这些缺陷并采集到理想的图像,利用高像素CCD工业面阵相机,设计了一套活塞表面缺陷检测系统,具体流程图,如图1所示。

图1 图像处理流程图Fig.1 Image Processing Flow Chart

采用CCD工业面阵相机采集图像,对图像进行预处理(主要包括图像增强和降噪)、图像分割(区域生长分割法、形态学处理和选取感兴趣区域)和缺陷区域边缘提取(感兴趣区域提取、亚像素级边缘提取和缺陷识别),从而定位出活塞表面的不规则缺陷,最终实现缺陷边缘检测。根据活塞图像采集的实际要求和图像质量等影响因素,搭建了一套基于机器视觉的活塞表面缺陷检测实验平台,如图2所示。该实验平台主要包括CCD工业面阵相机、LED光源、光源控制器和开关电源等部件。

图2 基于机器视觉的活塞表面缺陷检测实验平台Fig.2 Experimental Platform of Piston Surface Defect Detection Based on Machine Vision

3 图像处理

借助于上述活塞表面缺陷检测实验平台,通过光源控制器调整合适的光源强度,对活塞进行对焦操作后,得到带表面缺陷的活塞图像,如图3所示。

图3 带表面缺陷的活塞图像Fig.3 Image of Piston with Surface Defect

3.1 图像预处理

由于区域生长分割法对图像质量要求较高,针对活塞表面的实际情况,首先对原始图像进行增强和降噪处理。采用线性灰度变换处理,使原始图像对比度增加,缺陷区域更明显,易于区域生长分割法处理。在灰度变换中,灰度值线性比例缩放是最重要的步骤之一,其算子,如式(1)所示。

式中:(fg)—进行灰度变换的函数;a—线性灰度变换的斜率;g—灰度值;b—需要变换的灰度范围。

如果g∈gb,则需要对输出的灰度值进行四舍五入处理,以确保输出的灰度值在gb范围内。此处采用的算子,如式(2)所示。

式中:(fg)—进行灰度变换的函数;a—线性灰度变换的斜率;g—灰度值;b—需要变换的灰度范围;min—求最小灰度值;max—求最大灰度值。

由上式可知:

当|a|>1时,对比度增加:

当|a|<1时,对比度降低;

当a<1时,灰度值反转:

当b>0时,亮度值增加;

当b<0时,亮度值降低。

对图像进行降噪时,考虑到活塞长期在气缸内往复工作,导致活塞顶部存在较多麻点。为消除图像本身以及机器视觉采集系统产生的噪声,采用反复迭代的中值滤波算法对图像进行降噪处理,较好地保留了原始图像边缘的特点。

3.2 图像分割

在获取活塞顶部图像中,利用光源垂直照射的原理,使CCD工业相机所捕捉到的图像,缺陷区域比较明显。通过对图像增强,滤波降噪等预处理,使得目标与背景灰度值区别较大,为区域生长图像分割提供了良好的前提条件。

为了实现活塞表面缺陷区域初步分割,采用区域生长分割法初步提取缺陷区域。区域生长(Region Growing)的基本思想是将指定的像素点或者像素区域按照规定的条件发展成更大的区域[5]。具体来说,就是以一个集合单位的种子点为起点,通过指定条件将周围与之相似的灰度值或纹理颜色等的相邻像素合并到一个区域内;再将得到的新区域,作为新的种子重复上述操作;直到结束继续扩展区域,这就标志着采用区域生长法的图像分割结束。基于区域生长原理,给出矩阵B1,如式(3)所示。

令矩阵B1中“6”为种子,以“6”为中心,对四周各像素点灰度值的差取绝对值。当某像素点绝对值小于阈值T,则该像素点定义为新的种子。此处,令T=1,则进行区域生长操作后,B1更新为B2,如式(4)所示。

从B2可知,其灰度值为0、1、2、3、4、8 和9的七个像素区域都成为了边界。其中,右下角的6可以成为种子,但它的周围并没有种子,因此不在生长区域之中。此时,令新阈值T=4,再次进行区域生长操作后,内则B2更新为B3,如式(5)所示。

由B3可知,针对活塞表面缺陷检测,其阈值T的选择对区域生长最后的分割结果是很重要的,阈值T的选择,如式(6)所示。

式中:T—设定阈值;k—所求均值;R—图像区域;(fx,y)—图像数据函数;max—图像区域最大值。其中,对含有N个像素的图像区域R,它的均值,如式(7)所示。

式中:k—所求均值;N—像素点的个数;R—图像区域;(fx,y)—所求函数。

基于灰度分布相似性的区域生长准则的具体算法如下。

(1)将图像分割成互不干扰的小区域。由于不同的小区域可能具有相似的灰度直方图,因此区域过小,检测可靠性就会降低;区域过大,就会淹没一些小目标,对图像分割造成极大的干扰。

(2)检测或者平滑差分。一般采用柯尔莫哥洛夫-斯米洛夫(Kolomogorov-Smimov)距离来检测直方图的相似性。当检测结果小于给定的阈值,则将两个区域进行合并操作。柯尔莫哥洛夫—斯米洛夫检测算子,如式(8)所示。

再采用式(9)进行平滑差分检测。

式中:h1(z)、h2(z)—邻接两个区域的累计灰度直方图;T—给定的阈值。

(3)重复上述过程,使给定区域按照之前给定的生长条件一直进行,直到邻接的区域不满足式(8)、式(9)限定的阈值为止,则标志区域生长结束。

3.3 图像形态学处理

区域生长法的优点是计算简单,但是用区域生长法在处理图像时对噪声特别敏感,会将图像局部分开的区域连接起来或者使局部区域产生孔洞。因此先采用膨胀处理和闭运算等形态学方法对图像进行处理,在此基础上再采用区域生长法提取图像边缘特征。

为了筛选出区域生长分割后产生的一些小区域,确保图像中只有需要的特征区域,需对区域进行联通操作。其算法是:首先进行第一次初步提取,其次进行一次闭运算,再进行一次特征提取,并结合灰度特征直方图,最终得到缺陷区域。在此基础上,采用边缘填充算法,实现缺陷的初步定位。两次提取的结果,如图4所示。

图4 特征提取Fig.4 Feature Extraction

4 边缘提取

由图4可知,虽然对图像进行了预处理,对感兴趣区域也进行了形态学处理,但所得到的不规则缺陷区域并没有达到理想目标。放大图像后,显示区域边缘并未与缺陷区域边缘完全重合,而且不太平滑。为了消除区域生长法对分割区域时所产生的不稳定性,提出了一种利用感兴趣区域(Region of Interest,ROI)提取方法,首先将提取区域灰度化处理,其次进行亚像素级别边缘精准提取,再将提取出的区域进行边缘优化,最终得到连续、平滑的不规则缺陷区域。

4.1 ROI提取

采用感兴趣区域进行图像处理能快速定位目标区域范围,不仅可有效提高图像处理的效率,而且还能大幅度减少图像处理时间[6]。

在上述提取的活塞表面缺陷区域基础上,为了能精准提取到目标位置,对其进行ROI操作,以便于对缺陷区域进行单独处理。对提取出的区域,进行RGB图像转换,使其成为灰度图像。为有效地降低图像处理的运算量并结合人眼的生理特点,对图像采用加权法进行灰度转换,如式(10)所示。

式中:Gray—转换后的单颜色通道;R—一色通道;G—一色通道;B—另一色通道。

4.2 亚像素级别边缘提取

目前,图像处理中经常使用的边缘检测算子有以下几种:Roberts算子、Sobel算子、Prewitt算子、Canny算子等[7]。采用Roberts算子往往会出现边缘不连续和抗噪性能不强等缺点[8];Sobel算子易受局部边缘的影响,导致边缘提取精度不高[9-11];Prewitt算子需要进行人工阈值设定且边缘检测不精细[12];相对于经典的拉普拉斯算子,高斯-拉普拉斯抗噪性能更好,但在处理复杂的边缘特征时,会平滑掉部分尖锐边缘,从而导致检测精确不高[13]。而Canny边缘检测算子明显优于上述的边缘检测算子[14]。

基于上述分析,结合活塞原始图像的本身特性,提出利用Canny算子初步定位缺陷边缘,再采用边缘算法进行拟合、平滑、拼接和特征选取等处理得到完整、精确的不规则边缘缺陷位置,有效地提高了算法的运行速度和稳定性。由于上文已经对图像进行了预处理,为进行Canny算子边缘检测奠定了良好的处理环境。在此基础上,采用如下的算法。

(1)使用一阶有限差分方法,计算图像在x和y方向上的偏导数矩阵P和Q。其中,一阶差分卷积模板如下所示。

其中x方向和y方向的一阶偏导数矩阵表达式,如式(11)和式(12)所示。

式中:P[i,j]—x方向的梯度幅值。

式中:S—图像灰度值;Q[i,j]—y方向的梯度幅值。

(2)计算梯度的幅值与方位角,如式(13)、式(14)所示。

式中:M[i,j]—该点幅值;P[i,j]—x方向的梯度幅值;Q[i,j]—y方向的梯度幅值。

式中:θ[i,j]—梯度方位角;P[i,j]—x方向的梯度幅值;Q[i,j]—y方向的梯度幅值。

(3)非极大值抑制(Non-Maximum Suppression,NMS),指的是细化宽边缘带,即只保留边缘峰值最大的区域,其余非极大值的点均置零处理。

(4)双阈值算法检测边缘和连接边缘。目的是减少Canny算法中出现的假边缘数量。

为验证Canny算子在处理本例的优势性能,分别利用Prewitt算子、Roberts算子、Kirsch算子、高斯-拉普拉斯算子和Sobel算子对目标区域进行边缘提取,其处理结果,如图5所示。

图5 不同边缘算子检测结果对比图Fig.5 Comparison of Different Edge Operators Detection Results

从图5可知,采用Prewitt算子和Roberts 算子提取的轮廓边缘存在不连续现象。Kirsch算子在轮廓边缘细节方面效果较好,但也存在连续性较差现象。高斯-拉普拉斯算子对噪声较为敏感,出现伪边缘响应。Sobel算子对灰度的变化不敏感,存在不连续现象。Canny算子标识出的边缘与实际边缘非常接近。

4.3 轮廓拟合与定位

对已经预处理过的ROI区域再进行一次灰度化处理,极大程度上减少了外部噪声,但基于本身缺陷区域的不规则性,Canny算法也未能将轮廓完全提取,还有较少部分区域存在断点。因此根据缺陷轮廓端点处的局部曲率,连接曲率满足一定条件的轮廓边缘进行拟合操作。其算法为:如果所有的阈值都在轮廓线之间被满足,则计算一个评分值;角度和距离的计算值越接近于0,则得分值越高;然后按照分数值的顺序执行连接操作。因此,当连接操作有多个候选项时,则首先合并最佳拟合轮廓。通过上述算法对由Canny算子处理后存在的断点位置进行拟合操作,再对目标区域进行边缘平滑处理及缺陷定位。最终得到经过亚像素边缘提取定位出的缺陷区域,如图6所示。

图6 亚像素级别缺陷定位图Fig.6 Sub-Pixel Defect Location Graphic

5 结论

介绍了基于机器视觉的活塞表面缺陷检测系统的组成,针对活塞图像对比度低、缺陷区域小、缺陷种类多、人工检测效率低等问题,提出了基于区域生长法和亚像素边缘提取方法。区域生长法作为一种易于操作的常用图像分割方法,在处理环境较为复杂的区域图像时,缺少一定的精准性和稳定性。基于改进区域生长法的局限性,引用Canny 算子结合区域生长法处理图像缺陷区域,取得了较好的缺陷定位效果,达到了预期的检测目的,较好地提高了区域生长法在复杂环境下的可应用性。

猜你喜欢
活塞算子灰度
采用改进导重法的拓扑结构灰度单元过滤技术
一种活塞挤压式室内通风设备的研发与应用
拟微分算子在Hp(ω)上的有界性
基于灰度拉伸的图像水位识别方法研究
各向异性次Laplace算子和拟p-次Laplace算子的Picone恒等式及其应用
一类Markov模算子半群与相应的算子值Dirichlet型刻画
基于最大加权投影求解的彩色图像灰度化对比度保留算法
Roper-Suffridge延拓算子与Loewner链
基于灰度线性建模的亚像素图像抖动量计算
KS Kolbenschmidt公司的新型钢活塞