APP下载

基于特征融合的金属铸造工件表面裂纹检测算法研究

2023-07-31周少琎韩军吴飞斌

科学技术与工程 2023年20期
关键词:磁粉特征提取分类器

周少琎,韩军,吴飞斌

(1.福州大学电气工程与自动化学院,福州 350001;2.中国科学院海西研究院泉州装备制造研究中心,泉州 362000)

具有复杂结构的金属铸造工件表面裂纹缺陷高质量自动化检测是工程机械领域中的关键。由于表面裂纹是生产过程中不可避免的缺陷,不及时检测出带有表面裂纹缺陷工件影响产品的表现质量和生产效益,这对工件质量检测提出很高的要求。目前,金属铸造工件表面裂纹检测的手段主要采用半自动荧光磁粉检测,即自动化设备对工件进行磁化后,裂纹吸附荧光磁粉后在紫外灯下目检呈现荧光黄绿色。但目检方法依赖主观经验判断,检测速度慢,漏检率和误判率高,这种低效检测手段是实现生产自动化的一大阻碍。因此,使用机器视觉检测方法代替人工检测,克服人工对具有复杂结构工件检测效率低、误检及漏检率高的问题,提升金属铸造工件生产效益,推动金属铸造工件在工程机械制造领域进一步实现自动化。

机器视觉检测的核心在于缺陷检测的算法。根据工业检测的实际情况,在表面缺陷检测中基于图像处理和机器学习的传统缺陷检测技术得到了广泛应用,这种传统方法因快速性、实时性而满足工业检测的需求,并具有低成本和高效率的优点。近年来,磁粉探伤结合这种传统方法的表面缺陷检测技术日益成熟,相关学者已在该方面取得一定的研究成果,但也存在一些局限性。邓鑫等[1]基于梯度-相位联合直方图利用最大熵阈值算法分割图像G通道提取裂纹,其正确率为96.94%,但对微小裂纹的提取效果不佳,且对表面情况复杂的工件难以排除干扰区域。初延亮等[2]基于自定义加权模板对图像进行平滑处理解决荧光磁粉图像亮度分布不均问题,使用Ridler自适应阈值法分割缺陷,但此方法对超大面积的背景区域图像处理效果不明显。牛乾等[3]基于模板匹配定位图像G通道中疑似缺陷区域,基于纹理特征和反向传播神经网络(back propagation neural network,BPNet)判断缺陷真伪,但不适用于没有固定形态的缺陷。陈旭等[4]结合中值滤波除噪和二维大津(otsu)阈值法分割图像,基于形态学特征和Adaboost分类器进行缺陷判定,但针对不同工件图像分割效果浮动太大,适用性有所欠缺。上述成果中针对不同检测对象提出解决方法,意在解决工件复杂表面聚集成像引起各种干扰问题,从而突破裂纹缺陷的快速准确提取和判别这一难点[5]。对于金属铸造工件而言,复杂结构表面成像和磁粉堆积带来干扰影响检测方法判断,表面特征提取对检测技术的适应性要求高,现有检测手段针对金属铸造工件表面裂纹检测并不具有迁移性[6-7]。结合上述背景的成果经验并分析金属铸造工件表面裂纹的特点,提出一种针对金属铸造工件表面裂纹检测这类问题的检测方法。基于磁粉探伤与机器视觉,设计出一种多特征多方法融合的裂纹缺陷检测算法,能够根据裂纹的颜色特征和几何形状特征对待检测图像分割达到提取裂纹的目的,同时通过分割提取裂纹的结果定位裂纹位置,获得包含疑似裂纹感兴趣区域(region of interest,ROI),缩小检测范围。提取包含裂纹ROI区域的纹理特征,利用支持向量机作为分类器对ROI区域进行裂纹真伪判定,从而达到检测裂纹缺陷目的。

1 图像预处理

根据荧光磁粉图像中金属铸造工件表面裂纹成像的特点,对图像进行预处理工作以达到排除图像中工件复杂表面结构、光源所带来的干扰,分割图像以达到提取裂纹的目的,为下一章获取包含裂纹的ROI图像和裂纹识别作铺垫,图像预处理过程如图1所示。

图1 图像预处理过程Fig.1 Image preprocessing process

1.1 图像增强

实际采样过程中工业相机为了拍摄到清晰的荧光磁粉裂纹图像,工业相机的增益参数设定不宜太小,但是复杂不规则的工件表面在拍摄中会引起反光,图像中反光区域会与裂纹目标产生黏连,甚至覆盖裂纹目标。为防止工件表面反光带来影响,曝光量越小越好,但曝光量小容易造成采样图像中裂纹目标图像信息的丢失,这种影响为后续图像处理带来困难。为了克服上述带来的影响,弱化荧光磁粉图像背景并突显裂纹目标,需要对荧光磁粉图像进行图像增强。

常用的图像增强方法有线性变换和非线性变换,线性变换只能提升图像的整体亮度,无法改变对比度。非线性变换方法中灰度拉伸是分段式的线性变换,对于荧光磁粉图像而言,每张图像裂纹所处的灰度范围并不固定,无法确定统一范围标准进行灰度拉伸。GAMMA变换也是非线性变换的一种,其原理是对图像的灰度进行幂率变换:

s=crγ

(1)

式(1)中:c、γ为常数;s、r分别为输出和输入图像的像素灰度值。

如图2所示,当γ<1时,会拉伸图像中灰度级较低的部分,同时会压缩灰度级较高的部分,具有增强图像亮度效果;当γ>1时,会拉伸图像中灰度级较高的部分,同时会压缩灰度级较低的部分,提升图像对比度,突显图像显著高灰度值特征。因此当参数γ>1范围时,通过设置合适γ参数值达到拉伸荧光磁粉图像中高灰度部分来突显裂纹,同时可以压缩低灰度部分实现背景暗化,达到去除背景的作用。

图2 不同参数下GAMMA变换结果对比Fig.2 Comparison of GAMMA transformation results under different parameters

1.2 基于颜色和几何形状特征融合的图像分割

荧光磁粉图像经过GAMMA变换后有效地增强了裂纹目标与背景的对比度,采取图像分割方法将增强后图像中的裂纹与背景分割。传统金属表面缺陷分割采用自适应阈值分割法,自适应阈值分割法通过无监督的方式寻找图像最佳分割阈值。这种无监督的分割法通过循环方式进行多次图像分割,评估每次图像分割的质量,迭代确定最佳分割阈值。无监督的评估标准是根据目标图像广泛特征的匹配程度来确定的,具有客观性和不需要参考图像本身的优势,但是分割图像的背景情况复杂多变会大大影响单一无监督自适应分割法的效果。面对金属铸造工件的复杂结构表面和磁粉堆积带来裂纹周围不规整平面和反光影响,无监督自适应分割法的表现不佳,分割结果中裂纹目标带有干扰粘连。且每个裂纹目标的灰度级变化范围大,面对灰度级较小的裂纹无监督自适应分割法容易造成欠分割,裂纹目标不完整。荧光磁粉图像中,裂纹的广泛特征比较明显,金属铸造工件表面上裂纹呈现黄绿色且颜色饱满,一般为窄条形状,可以考虑对裂纹区域的颜色特征与几何形状学特征进行量化作为图像分割的广泛特征,通过对量化后的颜色特征和几何形状特征进行阈值限定,保留符合条件的图像区域,达到将裂纹与背景区离,实现对裂纹目标的分割。

提出一种基于HSI颜色空间滤波和基于几何形状条件约束的特征融合裂纹分割方法。该方法首先通过HSI色彩空间模型量化图像,对量化后图像的三通道进行阈值限定,滤波图像得到目标颜色范围完成初步分割,然后基于目标的几何形状特征对初步分割结果进行筛选完成最终分割。HSI色彩空间通过色调(Hue)、色饱和度(Saturation)和亮度(Intensity)来描述色彩,相较于RGB颜色空间描述图像,HSI颜色空间描述图像便于色彩处理和识别,有利于对某些具有特定颜色的区域进行提取。由于裂纹目标在荧光图像中呈现荧光绿色,颜色应变化处在蓝色、黄色和绿色之间,根据HSI颜色空间描述,这些颜色在色调、色饱和度、亮度三通道中数值处于一定范围,因此采用HSI图像三通道进行上下阈值限定完成特定颜色滤波实现分割,其限定条件为

Hmin≤H(x,y)≤Hmax

(2)

Smin≤S(x,y)≤Smax

(3)

Imin≤I(x,y)≤Imax

(4)

式中:H(x,y)、S(x,y)、I(x,y)为输入图像在坐标(x,y)处三通道的数值;Hmin、Hmax、Smin、Smax、Imin、Imax分别为三通道阈值上下限。

考虑到裂纹荧光色的灰度值偏高的特点,其色饱和度和亮度值应偏高,进一步缩小了三通道数值变化范围。根据上述公式对图像三通道进行滤波,对符合限定条件的图像像素点进行提取形成二值化图像作为初始分割结果,其二值化原理为

(5)

式(5)中:f(x,y)为二值化后的输出图像,初步二值化处理的过程如图3所示。

图3 基于颜色特征的裂纹分割效果Fig.3 Crack segmentation effect based on color features

图像初步分割结果中裂纹存在断裂等情况,影响后期对裂纹目标的筛查与定位,需要补全裂纹图像以便于后期对初步二值化图像中连通域进行几何形态筛选,获取准确的ROI(region of interest)裂纹区域,采用对初步二值化图像进行形态学处理的方法。为了突出裂纹目标方便后期获取ROI区域,该方法对连通域进行轻微过度膨胀处理,目的是使目标连通域的形态更加饱和完整,但不影响后期对连通域筛选。该方法原理通过使用一个较大的膨胀算子矩阵和一个较小的腐蚀算子矩阵结合处理,达到连通域整体轻微膨胀的目的,具体操作如下:首先,对二值化图像进行膨胀处理链接裂纹图像;其次,使用5×5的中值滤波消除二值化图像的孤立点[8];最后,对除噪后的二值化图像进行腐蚀处理细化膨胀图像,得到形态学处理结果。

为了得到更准确的二值化图像,需要对初步二值化图像中连通域进一步分析,达到区分裂纹目标与非裂纹目标的目的。裂纹区别于大部分的干扰,在形态学上呈现细长条状,即各种几何形状特征在数值上处于一定范围内,通过人眼十分容易甄选出来[9]。而大部分的干扰,如工件表面反光、磁粉喷洒堆积等在形态学呈大面积团状或是小面积团状粗点状,通过几何形状滤波的方法进一步排除干扰,该方法基于几何特征和形状特征对连通域加以约束条件筛选出疑似裂纹完成更精确的分割。

裂纹几何特征:通过构建连通域的最小外接旋转矩形可获得裂纹最小旋转外接矩形长度L和宽度W,计算连通域中的总像素数和目标区域边缘的像素总数获得裂纹面积S和周长P作为裂纹的几何特征。

采用长短径比K、圆形度C和矩形度J作为裂纹的形状特征。裂纹的长短径比K,是对裂纹形状的简便度量,其定义为其最小旋转外接矩形长度L和宽度W的比值,即

(6)

裂纹的圆形度C反映裂纹形状的紧凑程度,其定义为

(7)

裂纹的矩形度J反映裂纹对其最小旋转外接矩形的充满程度,其定义为裂纹区域面积和最小旋转外接矩形面积之比,可表示为

(8)

通过对上述几何形状特征设定上下阈值,如式(9)所示。

Xmin≤X≤Xmax

(9)

式(9)中:X为几何形状变量L、W、S、P、K、C和J;Xmin和Xmax分别为每个变量X的上下阈值,通过限定后可以进一步排除二值化图像中几何形态不符的干扰。

2 基于图像局部纹理的特征提取与判别

图像分割结果中仍有非裂纹存在,伪裂纹区域在颜色特征和形态学特征上与裂纹较为相似,仅凭上述特征作为判断依据已难以断定候选裂纹区域的真伪。金属铸造工件采样图像如图4所示,通过对候选裂纹区域的观察可以发现,干扰主要为结构型反光和结构性磁粉堆积等。

工件孔洞或边缘等部分反光细长状区域之外亮度暗,因此反光周围灰度小,但进入反光区域灰度值变化剧烈。同时由于工件结构的原因,磁粉在裂纹处、沟壑处等堆积呈细长状,如钢号印、工件边缘等处,区域的灰度值变化较为缓慢。而基于统计学的角度来看,裂纹区域灰度分布较为接近正态分布且灰度值发生突变,灰度波动较大。这些裂纹与干扰在灰度变化有方向性和位移性的规律,在局部区域形成特定的纹理走势,因此基于真伪裂纹区域纹理不同的特点,对区域纹理进行量化,利用区域的纹理特征进一步区分真伪裂纹。

根据分割结果中连通域的位置,可以将检测对象从整体图像缩小至包含候选裂纹的局部图像上。本文通过确定候选裂纹连通域中心点,以中心点为基准在原始待检图像上获取大小100×100的ROI区域,根据上述分析提取候选裂纹ROI区域的纹理特征作为候选裂纹区域的特征,进一步判定候选裂纹的真伪,裂纹区域纹理特征提取与裂纹识别具体过程如图5所示。

图5 裂纹纹理特征提取与识别过程Fig.5 Feature extraction and recognition of crack texture

从图5可以看出,首先对ROI区域图像灰度化处理,基于灰度共生矩阵来描述ROI区域纹理来提取候纹理特征。灰度共生矩阵描绘图像各像素间的空间分布关系中包含的纹理信息[10],通过计算不同灰度值组合出现的频率来表示某种纹理像素对在图像中出现的次数统计形成分布矩阵P,其定义为

P(i,j|a,b,θ)={(x,y)|f(x,y)=

i,f(x+a,y+b)=j},x,y=0,1,…,L-1

(10)

式(10)中:f(x,y)为图像在(x,y)的灰度值;a、b为距离偏移量;θ为扫描方向。

分布矩阵不仅反映灰度的分布特征,同时反映具有相同灰度或者接近灰度的像素之间的位置分布特性。由于灰度共生矩阵的数据量较大,一般不直接作为特征使用,在应用中通常基于灰度共生矩阵构建一些统计量作为图像的纹理特征。为了细致描绘ROI区域图像的纹理,通过8个不同的方向和3个不同的距离偏移量对图像进行扫描构建若干个灰度共生矩阵,基于每个矩阵构建6个统计量(对比度、均匀性、能量、自相关性、角二阶矩、相异性)并融合为144维的纹理特征向量。

由ROI区域图像集提取144维纹理特征向量作为数据集,以支持向量机为模型建立分类器,对纹理特征数据集进行训练,实现对候选裂纹进行分类。为了验证基于灰度共生矩阵的特征提取方式在ROI图像检测准确率的优势,将于以下4种不同的特征提取方式进行对比。

(1)Hu不变矩。该方式通过求得灰度图像的二阶和三阶中心矩来构造7个不变矩组描述图像特征。

(2)基于灰度-梯度共生矩阵的特征提取方式。通过统计图像的灰度-梯度对个数建立矩阵描绘纹理特征,基于共生矩阵可以计算15个常用的二次统计特征:小梯度优势、大梯度优势、灰度分布不均匀性、梯度分布不均匀性、能量、灰度平均值、梯度平均值、灰度均方差、梯度均方差、相关、灰度熵、梯度熵、混合熵、惯性、逆差距。

(3)基于方向梯度直方图的特征提取方式。通过统计图像局部区域梯度的大小和方向次数建立直方图构成图像的特征描述符,反映出裂纹的结构或形状。

(4)基于多特征融合的方式。通过提取基于灰度-梯度共生矩阵纹理特征和Hu不变矩,并提取图像的偏度和峰度作为灰度特征,进行多特征融合构成综合纹理特征。

(5)基于卷积神经网络的特征提取方式。通过卷积神经网络对ROI进行卷积操作提取ROI的特征,进一步构成特征向量。

3 实验验证

在金属履带链片磁粉探伤图像上实验提出的算法,实验图像包括两个部分:通过机器视觉系统采集到1 920×1 200像素的工件荧光磁粉探伤图像和100×100像素的候选裂纹灰度图像。由于候选裂纹图像数量较少,且候选裂纹图像中裂纹图像与非裂纹图像在数量上存在不平衡,因此对候选裂纹图像数据集进行数据增强。实验中由419张履带链片荧光磁粉探伤候选裂纹图像组成图像数据集对分类器[11]进行训练分类,其中包含186张真实裂纹图像。

3.1 算法参数设定

算法参数包括图像分割参数、纹理特征提取参数和分类器参数。本实验中对1 920×1 200像素工件荧光磁粉探伤图像集实验,选定GAMMA变换的系数γ=3,HSI色彩图像的三通道阈值限定,三通道阈值范围为(30,43,46)~(100,255,255),在实验中能够100%分割得到裂纹。几何形状阈值参数大量实验确定后,具体数值设置如表1所示。

表1 几何形状特征约束条件参数设置Table 1 Geometric shape feature constraint parameter setting

纹理特征提取参数包括距离偏移量和扫描方向对。实验中采用八方向[0°,45°,90°,135°,180°,225°,270°,315°,360°]3个距离偏移量[2,8,16]对100×100像素的候选裂纹灰度图像进行扫描。本实验中对分类器参数的选定影响了训练收敛速度、分类准确率和拟合情况,经过实验确定具体参数如表2所示。

表2 SVM分类器参数设置Table 2 Parameter setting of SVM classifier

3.2 结果比较和分析

本文算法基于OpenCV视觉库、Scikits-Image图像处理库和Scikits-Learn机器学习库,通过Python编程实现。首先通过GAMMA变换对工件荧光磁粉探伤图像进行图像增强处理,提升图像对比度,突出目标,然后基于HSI颜色特征和裂纹形态学特征对裂纹目标区域进行分割,并通过中值滤波算法消除二值化图像中的孤立点,同时通过形态学处理对裂纹进行修补,最终获得比较完整的裂纹目标区域。根据裂纹目标区域在原始图像中提取ROI区域并对ROI区域提取特征进行裂纹判别,裂纹完整检测的算法设计如图6所示。

图6 算法设计过程Fig.6 Algorithm design process

选取裂纹目标在工件表面所出现的常规情况下、存在反光区域、工件表面不平整等情况的裂纹图像对本文算法进行测试,并将本文算法的裂纹分割结果与多种工业应用较为成熟的分割算法[12-16]进行比较,实验效果分别如图7所示。

图7 不同图像分割算法结果比较Fig.7 Comparison of results of different image segmentation algorithms

从图7可以看出,GAMMA变换显著突出裂纹目标。分割实验结果可以看出,一维OTSU(one-dimensional otsu,1D OTSU)算法、基于灰度-梯度共生矩阵的快速二维OTSU(two-dimensional otsu,2D OTSU)算法、阈值迭代(ISODATA)算法和基于LI的最小交叉熵阈值迭代算法对光线变化敏感,对反光的抗干扰能力弱,容易造成过分割;最小阈值(minium thresholding,MT)算法对反光干扰不敏感,但容易造成欠分割而失去裂纹目标;三角阈值(triangular thresholding,TT)算法和基于直方图数据的最大相关条件分割(YEN)算法对工件不平整表面背景敏感,分割的裂纹目标与周围表面区域有所黏连。相较而言,对于荧光磁粉裂纹图像,本文算法较为有效的消除反光区域和工件表面不平整带来的干扰,更为准确完整地将裂纹目标提取出来,而且对灰度较低的裂纹目标也有较好的提取效果。为了验证本文算法的性能,实验比较了单独基于不同特征提取方式和基于不同分类器算法与本文算法在对候选裂纹的识别效果。实验通过基于灰度共生矩阵的特征提取方式与Hu不变矩、基于灰度-梯度共生矩阵、基于方向梯度直方图和基于多特征融合4种不同特征提取方式作比较,同时近年来表面缺陷检测通过卷积神经网络提取图像特征判定缺陷的方法得到应用,根据实际工程应用嵌入式设备内存和算力的情况,选择层数较浅的卷积神经网络和轻量化网络来提取图像特征有应用意义[17]。对比近年来轻量化网络特征提取效果,实验结果如表3所示。

表3 不同特征提取方式效果对比Table 3 Effect comparison of different feature extraction methods

表3中列出了不同特征提取方式与本文特征提取方式的在测试图像上的准确率,实验中对候选裂纹图像集进行5次五折交叉验证实验,对不同特征提取方式的25次实验结果取平均值,获得不同特征提取方式识别裂纹的平均准确率。在实验结果中,提取图像Hu不变矩、基于灰度-梯度共生矩阵、基于ResNet-50[18]的纹理特征提取方式的平均准确率均低于80%,不适用于候选裂纹图像检测;基于梯度直方图的特征提取方式、基于多特征融合、基于MobileNetV3[19]和基于ShuffleNetV2[20]的提取方式虽然平均准确率较高,但是二者提取单张图像特征耗时较长,影响实时检测速度。基于灰度共生矩阵的特征提取方式具有较好的平均准确率,相较之前三者的准确率分别提升了4.83%、2.97%和0.69%,且同时具备耗时少的优点。

表4列出了支持向量分类器与常用的有监督机器学习模型[21-23]、BP神经网络[24]在基于灰度共生矩阵的实验结果。实验中对候选裂纹图像集进行5次五折交叉验证获得基于不同分类器的平均准确率、精确率(Precision)、召回率(Recall)和F1得分(F1),其中F1为精确率和召回率的调和均值。

表4 不同分类器效果对比Table 4 Effect comparison of different classifiers

(11)

F1得分对于二分类问题具有很好的评估效果,分类器F1得分越高,说明分类器的分类效果越好。

经过实验结果比较看出,除了决策树分类器之外,其余四者的平均准确率和F1皆高于90%,基于决策树弱分类器的Adaboost强分类器的精确率不足,仅有88.64%,基于遗传算法改进的BP神经网络在面对小样本数据集的检测效果表现并不突出,F1仅为91.42%,且训练收敛的速度较慢。基于支持向量机为弱分类器的Adaboost强分类器与单一的支持向量机分类器在F1上相近,分别为93.66%和93.74%,且二者在分类裂纹图片和非裂纹图片上的召回率也相近,前者仅比后者高出0.22%,在精确率方面基于支持向量机为弱分类器的Adaboost强分类器比单一的支持向量机分类器高出1.88%。

针对候选裂纹图像集的训练和分类预测的推理速度实验结果如表5所示。对于同一数据集而言,基于支持向量机为弱分类器的Adaboost强分类器与单一的支持向量机分类器在ROI缺陷预测上的效果差异不大,但是后者的训练收敛速度是前者的约200倍,后者对单张ROI预测判定推理速度是前者的约40倍,因此速度上使用支持向量机作为分类器具有明显的速度优势。

表5 不同分类器图像预测速度对比Table 5 Comparison of image prediction speed of different classifiers

4 结论

提出一种基于颜色和几何形状特征相融合的荧光磁粉图像裂纹分割和基于局部纹理特征的裂纹判别的算法。该算法首先根据裂纹的颜色特征对彩色图像进行分割得到二值化图像,根据裂纹的几何形状特征对二值化疑似裂纹连通域进行筛查,根据疑似裂纹连通域对原始图像中裂纹区域进行提取ROI区域作为候选裂纹;然后,计算候选裂纹ROI区域的灰度共生矩阵,基于灰度共生矩阵构建二次统计量融合成候选裂纹的纹理特征,使用支持向量机分类器判别。得出以下结论。

(1)融合裂纹颜色和几何形状特征对荧光磁粉图像中裂纹进行分割的算法是有效的,较于传统无监督图像分割算法更为快速完整提取裂纹。

(2)与其他特征提取方式和分类模型相比,基于灰度共生矩阵提取裂纹纹理特征与支持向量机分类器的判别算法在准确率、精确率、召回率和F1得分上有较为明显的优势,且在分类器识别速度快,具有一定的工程应用意义。

(3)本文算法检测采用监督式裂纹分割提取法相较于无监督式分割法在计算量得到大幅度减少,但其鲁棒性相比无监督分割算法具有一定劣势,并且需要人工调参,这些方面仍需要进一步研究改进。

猜你喜欢

磁粉特征提取分类器
充电式交流磁粉探伤仪的应用研究
核电站堆内异型结构组件的磁粉检查工艺
磁粉夹持正压力理论分析和实验研究
基于Daubechies(dbN)的飞行器音频特征提取
BP-GA光照分类器在车道线识别中的应用
Bagging RCSP脑电特征提取算法
加权空-谱与最近邻分类器相结合的高光谱图像分类
结合模糊(C+P)均值聚类和SP-V-支持向量机的TSK分类器
基于MED和循环域解调的多故障特征提取
基于LLE降维和BP_Adaboost分类器的GIS局部放电模式识别