项新建,王乐乐,曾航明
(浙江科技学院自动化与电气工程学院,浙江 杭州 310023)
推力轴承是用来承受轴向力的专用轴承,在机械行业被广泛应用于汽车、机床、大型机械等领域[1]。我国制造业经过不断发展,轴承的生产工艺和质量已经得到很大提高,但是由于生产过程中的不确定因素,一些工件端面会有划痕、凹坑、油污等缺陷,在出厂前必须经过严格检测,目前大部分企业采用人工检测,效率低、劳动强度大且动作频繁重复容易产生视觉疲劳,检测准确性无法保证,检测过程中难免产生漏检、错检[2]。轴承由滚动体、保持架和垫圈组成,垫圈起固定滚动体和保持架的作用,防止核心滚动体松动,同时密封润滑油,如果将存在缺陷的轴承垫圈安装使用,长时间运转会造成异常磨损,严重可能造成滚动体脱落轴承无法工作,对设备造成损伤,甚至无法运转[3]。因此快速高效地检测推力轴承垫圈的表面缺陷尤为重要。
机器视觉和图像处理技术经过不断地开发和研究,应用越来越广泛,类似的缺陷检测研究主要有二值化阈值分割、特征提取与选择、形态学处理等。杜晓辉等[4]提出一种基于机器视觉的火花塞端面缺陷自动检测方法,采用改进的霍夫变换提取感兴趣区域,二值化并利用形态学滤波分离缺陷,最后通过计算梯度直方图特征进行逻辑分类。韩志玮等[5]提出一种基于机器视觉的刹车片表面缺陷图像检测方法,结合灰度共生矩阵与密度聚类分析刹车片表面缺陷,再根据刹车片自身纹理提取特征来进行检测。Martínez等人[6]介绍了一种用于检测金属零件纹理表面缺陷的机器视觉系统,将多幅图像分别处理合并为一幅图像,从中提取特征与之前处理步骤建立基于人工神经网络的学习分类器的特征空间,进行自动化检测与分类。Prappacher等人[7]提出快速可重复训练的卷积神经网络检测滚子轴承滚动体表面缺陷,为解决神经网络方法标记训练数据要求高的问题,使用模拟缺陷使得检测系统比现有的系统训练更快、成本更低。国内外对缺陷检测主要采用了传统的图像处理和神经网络训练等方法,神经网络由于需要大量的训练样本,然而获取缺陷样本十分困难,所以操作难度较大。
因此为提高推力轴承垫圈缺陷的检测准确率和效率,实现垫圈的自动化检测,针对垫圈图像背景复杂、干扰较多等特点,对采集到的图像进行分析和图像处理,检测出推力轴承垫圈的缺陷并分类,设计了推力轴承垫圈端面缺陷检测及分类系统,实验验证该系统稳定,检测结果符合要求。
推力轴承垫圈端面缺陷检测系统由硬件系统和图像处理软件部分组成。硬件系统主要包含光源、工业相机、工业镜头、计算机、传送带装置、分类机构及其控制设备,图像处理方面主要含有软件平台、图像采集及图像处理算法[8]。将对视觉检测系统的软硬件进行设计和论述,实现对推力轴承垫圈端面缺陷检测和分类的目的。
推力滚针轴承的结构如图1所示,由于密封、保存、使用不当等原因,工件表面容易产生划伤、磕碰、锈蚀等缺陷,其分布无规律、随机性较大,因此需对整个工件表面进行检测[9]。为了提高检测效率并改善繁琐的检测过程,针对工件的特征以及缺陷的特征设计一套自动化检测系统实现图像采集以及缺陷的识别分类。
图 1 推力滚针轴承结构(单位:mm)
以垫圈的下端面为检测对象进行研究,上端面与下端面采用相同方法,根据工件和图像的特征,针对噪声干扰、缺陷分类等问题,首先将图像Blob分析,求出内外径圆所在区域,对亚像素(XLD)轮廓利用最小二乘法圆拟合得到其尺寸参数,生成内外径区域圆求差集得到感兴趣区域,再利用傅里叶变换、低通滤波、图像卷积和傅里叶逆变换,抑制其他因素干扰,突出缺陷,最后得到缺陷并提取特征,根据特征对缺陷进行分类,实现缺陷检测及分类。
在搭建系统时首先需要对相机、镜头、光源进行选型,考虑到检测环境、检测工件的特征等要求后,选取高分辨率海康威视工业相机MV-CE200-10UC(分辨率5 472×3 648)、高帧速Basler镜头、环形光端面打光。环形光源有如下特点:1)LED采用直流电源,采集的图像不存在频闪;2)LED照明360°均匀照射在工件表面上,无虚影;3)极低热量,功耗小,平均使用寿命35 000 h以上,安全稳定。
在采集端面图像时,考虑提高检测的效率以及自动化,相机的采集图像方式设置为外部触发。夹具到位后PLC发出信号,计算机发出采集指令,相机随即拍照,由千兆网口传入计算机进行图像处理,拍照结束后PLC发出信号夹具松开传送带继续工作,垫圈端面图像采集系统见图2。检测系统包含运动控制系统、图像采集系统和分类系统,实现缺陷识别及自动化分类,系统的整体工作流程见图3。
图 2 图像采集系统
图 3 系统整体流程图
系统具体流程为:1)工件由传送带进行运输,传送带由步进电机驱动,光电传感器触发开始计时,到达图像采集区域后传送带暂停,夹具开始固定工件,夹具就位后PLC发出采集图像信号,触发相机采集;2)图像采集完成,计算机给PLC发出采集完毕信号,驱动夹具复位,传送带继续工作;3)到达分类工位后,图像经过计算机处理完成缺陷检测,触发相应光电传感器进行分类;4)工件根据分类结果进入各自分拣槽,系统流程结束完成垫圈下端面缺陷的检测及分类,下端面检测完毕后将合格工件翻转后再次通过检测系统进行检测,系统流程结束完成垫圈上、下端面缺陷的检测及分类。机器视觉检测系统如图4所示。
图 4 机器视觉检测系统
图像采集系统采集的推力轴承垫圈图像如图5所示,由图像可以看出感兴趣区域为圆环,但图像中存在夹具、背景等干扰,且打光凸显缺陷的同时将表面纹理也突出显示,针对这种复杂环境下缺陷的检测,提出基于傅里叶变换的推力轴承垫圈端面缺陷检测的图像处理算法。
图 5 推力轴承垫圈采集图像
垫圈分为上端面和下端面,由于端面相似且篇幅限制,以下端面为例进行研究,上端面采用相同算法进行检测,算法流程图如图6所示,首先相机采集到彩色图像转为灰度图,二值化得到内外径圆区域,亚像素边缘提取得到XLD轮廓,对亚像素圆轮廓用最小二乘法进行圆拟合,从而提取出感兴趣圆环区域;然后对灰度图进行傅里叶变换将空间域转为频率域,同时滤波抑制其他干扰将缺陷区域突出化;最后对处理后的灰度图像裁切,通过灰度直方图来分割阈值,快速得到缺陷区域,并通过分析缺陷区域特征对缺陷区域分类。
图 6 图像处理算法流程图
在图像处理过程中需要将图像处理的范围局限在图像中的某一特定感兴趣区域即ROI (region of interest)。推力轴承垫圈的图像中,感兴趣区域为中间的圆环区域,除此之外还有夹具和背景等干扰,需要对这些干扰区域进行抑制或剔除,由于背景、夹具和垫圈的平均灰度值较接近,利用常用的二值化和连通域面积很难将ROI提取出来[10]。因此需要利用ROI呈圆环的特征,用最小二乘法将内外径圆拟合,生成区域、求其差集,基于此提出一种提取环形ROI的算法,针对环形且与背景灰度相近难以分离的感兴趣区域的提取。
对推力轴承垫圈图像二值化、阈值分割、形态学处理和提取亚像素边缘后得到内外径圆的亚像素轮廓,以外圆轮廓为例用最小二乘法进行近似圆拟合[11],设拟合圆方程为:
经过变换可得另一形式圆方程:
只需求出参数a,b,c就可得到圆心及半径:
设亚像素轮廓上的点坐标为(Xi,Yi),i∈(1,2,3,···,N),令Q(a,b,c)为 δi的平方和:
为使Q(a,b,c)的值最小,求得参数a,b,c如下:
将a,b,c代入式(3)可得拟合圆圆心坐标(A,B)和半径R的值。最后根据求得的圆心及半径生成外径圆区域,同理可得内径圆区域,求两者差集得到感兴趣区域。
受推力轴承垫圈材质的影响,垫圈端面的灰度值呈均匀分布,缺陷的灰度值较大,但与表面相差较小难以分离出缺陷,运用图像的乘法将图像自乘,大大增加亮暗图像点之间的差值,达到提高其对比度的目的,根据输入的图像得到其灰度值区间(g1,g2),乘上灰度适应因子Mult,变换公式如下:
在图像采集过程中,由于环境、光照等不确定因素影响,图像中会不均匀地分布着噪声,为减少图像中的噪声,首先快速傅里叶变换将图像由空间域转换到频率域,傅里叶变换及傅里叶逆变换公式如下:
式中:f(k,l)——一幅大小为M×N的数字图像;
k,l——时域变量;
m,n——频域变量。
经过傅里叶变换得到频谱图如图7(a)所示,为了便于滤波和频谱分析,将原频谱图进行中心化得到中心化频谱图如图7(b)所示,图中包含3种描述特征信息的参数振幅、相位和能量谱,计算公式如下:
图 7 频谱图
其中R(m,n)和I(m,n)分别表示F(m,n)的实部和虚部。
傅里叶对应的中心化频谱图呈中心发散分布,且有许多离散的高频点,因此选用低通滤波器对傅里叶频率域进行滤波,滤除掉一些细小的纹理和点噪声排除干扰,缺陷的轮廓信息会丢失一部分,但对于提取缺陷影响有限。低通滤波器函数如下:
式中:D0——一个给定的非负值,为低通滤波器的截止频率;
D(m,n)——点(m,n)到频率平面原点的距离,即,其特性曲线如图8所示。
图 8 低通滤波器特性曲线
对滤波后的图像进行傅里叶逆变换,其计算公式见式(8),将频率域转换为空间域,重建得到重构图,从而实现对原始图像的滤波[12]。
经过上述图像增强和图像滤波后,对转换的原始灰度图像进行裁剪,将图像的定义域缩小到了指定目标区域,即上述感兴趣的圆环区域,排除其他背景及夹具的干扰,针对端面的圆环进行检测,使得检测时间大大减少,效率和准确度大大提高。
3.3.1 多形状特征提取缺陷
缺陷区域含于感兴趣圆环区域之中,所以需要对图像进行阈值分割。阈值分割的难点在于如何准确找到分离出缺陷的阈值,阈值的选择直接决定了区域分割以及后续区域特征分析的准确性。常用的阈值分割方法有:实验法、直方图谷底确定法、迭代选择法、最小均方误差法和最大类间方差法等[13],结合各方法的优缺点和实际检测情况,选择最大类间方差法,也称为Ostu分割法,求得最佳阈值T,将图像分割为前景和背景,若像素值大于该阈值T则为感兴趣目标,若小于该阈值T则为背景区域。
式中:f(x0,y0)——原始图像;
g(x0)——阈值分割后的二值图像;
1——感兴趣的目标区域;
0——背景区域。
通过阈值分割初步将背景区域和感兴趣的目标区域分割,但其中仍然存在其他干扰区域,对感兴趣区域进行矩形结构元素闭运算,闭运算即先膨胀后腐蚀,将轮廓变得平滑并且填充小的孔洞和轮廓线的断裂。闭运算处理后,一些较小的干扰点被剔除,感兴趣区域也较平滑完整,然后断开连通域,将感兴趣区域分成相对独立的区域,分别对单独的区域进行后续处理,达到分离出缺陷的目的。
感兴趣区域分开后需要对其进行筛选,最终得到缺陷区域,通过对感兴趣区域的几何特征进行分析,首先引入区域面积(Area)指标和区域轮廓长度(Contlength)指标,然后进一步引入区域矩形度形状因子(Rectangularity)和椭圆参数 Anisometry,设定每个指标的上下阈值对感兴趣区域进行形状选择,最后得到缺陷区域,提取出推力轴承垫圈端面的缺陷。形状选择公式和椭圆参数Anisometry的计算公式如下:
式中:Minq——各形状指标的下阈值,q=0,1,2,···;
Maxq——各形状指标的上阈值,q=0,1,2,···;
Ra——区域等效椭圆长轴半径;
Rb——区域等效椭圆短轴半径。
为了突出显示缺陷对缺陷区域形状转换,转换方式为求区域的平行坐标轴的最小外接矩形,并对其按矩形结构元素膨胀,使得缺陷区域完全突出显示。为方便显示,将转换的矩形区域转为亚像素轮廓。
3.3.2 多阈值缺陷分类
实际生产过程中,检测时不仅要检测出缺陷还需对缺陷进行分类并分拣,方便后续对存在缺陷的产品进行处理,部分缺陷可以通过处理达到要求从而降低次品率提高企业效益。由于缺陷的复杂性没有统一指标,单一要素无法实现分类,因此采用多个阈值对缺陷分类[14],3个类型定义为表面划痕(surface scratch)、油污(greasy dirt)、凹坑(pit)。
经过上述多形状特征提取,把缺陷区域进行编号并统计个数,分别对每个亚像素轮廓求其多边形的长度(Length),计算每个区域内灰度值的偏差(Deviation)。要求得灰度值偏差需要先求其平均灰度值(Mean),计算公式如下:
式中:Z——区域;
p——区域Z中的像素;
g(p)——像素p的灰度值;
F——平面,F=|Z|。
通过大量实验分析每个缺陷类型的特征,选取多个阈值如T1、T2、T3,具体分类算法如下:
其中大部分表面划痕的长度较长,将大于等于阈值T1的区域定义为表面划痕;凹坑的长度一般较小,将小于等于阈值T2的区域定义为凹坑;对于在阈值T1,T2之间的区域可能为划痕或油污,引入灰度值偏差来分类,长度大于阈值T2且小于阈值T1且灰度值偏差小于阈值T3的区域定义为表面划痕,灰度值偏差大于等于阈值T3的区域定义为油污。通过多阈值多指标完成了对每个缺陷的分类,但由于样本数量有限阈值的选取具有局限性,针对特殊的情况可能需要对阈值来调整,以满足检测的需要。
实验选用CPU型号为Inter(R)Core(TM)i5- 4590 CPU@3.30 GHz,8 GB内存PC机,Win7操作系统,软件基于Halcon环境开发,通过推力轴承垫圈检测硬件系统进行相关实验研究。
为了验证图像增强、图像滤波、干扰抑制等,设计了如下的对比实验,来验证一系列图像处理对提取感兴趣区域的效果。分别采用直接的传统二值化阈值分割方法和一系列改进后图像预处理再阈值分割,对两种方法得到的感兴趣区域进行对比,效果如图9所示。
图 9 感兴趣区域提取对比图
由图9(a)可以看出,对于原始图像用传统的二值化和阈值分割方法,计算区域连通分量的个数有10 379个,很难经过后续的多阈值多特征筛选将缺陷区域分离出来;图9(b)可以看出,经过改进和使用一系列图像处理后,区域连通分量大幅减少为105个,通过傅里叶变换低通滤波处理,排除绝大部分纹理和点噪声,虽然仍存在干扰区域,但多为大面积区域及圆形区域,通过后续形状选择以及其他特征,能够快速准确的将缺陷区域分割,从而提取出感兴趣缺陷区域。
实验验证了所提出的缺陷检测方法以及图像处理算法的有效性,将实际工件检测系统采集的图像应用于所提出的图像处理方法中,各种缺陷检测的效果如图10所示。
图 10 各缺陷检测结果示意图
为了验证缺陷提取的准确性,针对3种常见的缺陷类型进行了检测实验,选取了10个样本工件进行实验并记录检测结果,样本检测结果如表1所示。
表 1 样本检测结果
由表1分析可知,缺陷类型的出现呈随机性,10个样本检测结果与实际情况相符,但由于随机性较大无法完全验证检测方法,故增加样本的数量,对50个推力轴承垫圈进行了检测实验,得出检测方法的成功率为90.65%,分析导致检测错误、漏检的原因发现:由于算法编写时仅用了有限的工件数量导致阈值选取不准确;还有一些缺陷情况较复杂无法进行分类或分类错误。对阈值进行调整后再对50个推力轴承垫圈进行验证,分析检测结果与实际情况的对比,最终准确率为95.23%。
为进一步验证检测系统的实用性,经过多次多组实验统计检测时间,为消除随机误差将同一工件检测10次得到平均耗时,选取有代表性的3组结果如图11所示。
图 11 检测时间统计图
实验结果表明,该图像处理算法和检测系统,可以有效检测多种推力轴承垫圈表面缺陷,从效率方面分析,单个工件的检测时间为1 064.89 ms,满足了检测速度的要求;在准确率方面,缺陷识别分类准确率为95.23%,满足实际生产检测的要求。总体上满足实际检测需求,提高了检测效率,具有较高的可靠性、准确性。
本文针对制造业自动化和对高效率、高质量的检测需求,设计了推力轴承垫圈表面缺陷自动检测系统,搭建了硬件系统,采用了傅里叶变换低通滤波算法对图像进行滤波和增强处理,提取感兴趣的区域;利用缺陷的形状特征,多指标形状选择分离出缺陷区域;最后分析缺陷特征,引入多阈值对缺陷进行分类,完成缺陷的检测和分类目的。与传统的图像处理方法相比,该算法在对推力轴承垫圈缺陷检测时,能够较准确的提取出各类缺陷并分类,准确率达95.23%,平均检测时间1 064.89 ms,为自动检测推力轴承垫圈缺陷提供了一种可行的系统及图像处理算法。不足之处在于检测算法由于样本数量限制无法将各个阈值调整到最佳,后续会继续进行相关研究,改善问题并提高检测速度和准确率。