基于双线性对称NASNet的磁痕图像缺陷检测

2020-11-18 13:10
制造业自动化 2020年11期
关键词:准确率样本特征

(西南科技大学 信息工程学院,绵阳 621000)

0 引言

荧光磁粉探伤技术是一种在铁磁性材料表面缺陷检测中广泛使用的方法。铁磁性材料经过磁化后,其表面缺陷处会产生漏磁场吸附大量的荧光磁粉,并在紫外光照射下发出明亮的黄绿色荧光,从而形成磁痕图像,可通过计算机视觉技术对磁痕图像进行处理,以实现对缺陷的检测。受工件表面情况、探伤工艺等影响,荧光磁粉聚集成像的情况较为复杂[1],且由于紫外光中含有紫光成分,将会在工件表面形成反光区域,如何在噪声和反光干扰的情况下对磁痕图像缺陷进行有效检测是计算机视觉算法的难点问题。

目前,计算机视觉技术已被广泛应用于荧光磁粉探伤中,并取得了不错的研究成果。康健[2]等人通过不变矩特征匹配,实现了火车轮对荧光磁粉裂纹的识别。张静[3]等人根据几何特征、纹理特征、灰度特征等信息实现了对车削类工件磁痕图像缺陷的识别。李远江[4]等将几何特征和支持向量机(SVM)结合,实现了对真实裂纹的识别。杨志军[5]等通过梯度形态学和几何特征实现了对焊缝裂纹的自动识别。牛乾[6]等人将灰度共生矩特征和多层感知机进行结合,实现了对缺陷工件的识别。游斌相[7]等提取小波特征并结合BP神经网络,实现了对两种裂纹缺陷的识别。马涛[8]等人融合了图像的几何特征和纹理特征,并结合SVM实现了对裂纹的提取。但上述大多为基于传统图像处理和机器学习的方法,在实际生产的复杂环境下易受噪声和反光影响,检测精度不高,且算法的泛化能力较差。

近年来,随着深度学习技术的发展,卷积神经网络(CNN)在目标检测上相比于传统图像处理和机器学习方法准确率更高,鲁棒性更好,为磁痕图像缺陷检测提供了新的思路。本文将深度学习应用于荧光磁粉探伤中,提出一种基于双线性对称NASNet(BS-NASNet)的磁痕图像缺陷检测算法。该算法结合双线性CNN模型和NASNet网络形成一种新的BS-NASNet网络模型,能够在噪声和反光干扰的情况下实现对磁痕图像缺陷的高精度检测。

1 算法原理

双线性模型能够对磁痕图像中缺陷和非缺陷部分的差异进行有效检测,NASNet网络能够获得更为准确丰富的图像特征,将两种算法进行结合,有利于充分提取缺陷和非缺陷间的细微差异,提高磁痕图像缺陷的检测精度。因此,本文将双线性模型和NASNet网络进行结合,构建一种双线性对称NASNet网络模型,称之为BSNASNet,用于磁痕图像缺陷的检测。

1.1 双线性模型

双线性模型[8]是一种细粒度图像分类网络,该网络将两个并联的CNN网络作为特征函数,通过双线性池化对提取的特征向量进行融合,再送入最后的分类器中进行识别。双线性通过对图像的局部特征进行建模,能够获得丰富的全局和局部特征,实现对不同区域差异信息的提取。

一个双线性模型B由四元组(fA,fB,P,C)组成,其中,fA和fB表示特征函数,P表示池化函数,C表示分类函数。特征函数可表示为映射f:L×I→Rc×D,I表示输入图像,L表示位置,通常包含位置和尺度,c×D表示输出特征的大小。在图像每个位置l处,特征函数fA和fB的特征输出通过矩阵外积进行组合,如式(1)所示:

fA和fB的特征维度c必须兼容,且要求c>1。

为获得图像的特征描述,通过池化函数P对图像中所有位置的双线性特征进行增强,P可以定义为所有双线性特征的加权和,如式(2)所示:

如果fA和fB输出的特征大小分别为c×M和c×N,则的大小为M×N,经过双线性模型后其大小变为MN×1,最后通过分类函数C即可获得相应的类别概率。

双线性模型通过两个CNN作为特征函数进行特征提取,且两个CNN网络通过训练能够提取互为补充的特征信息,相比于单个的CNN网络,双线性模型能够获得更为丰富的全局和局部特征。

1.2 NASNet网络

NASNet[9]是2018年由Google Brain团队提出的一种网络模型,该网络是由神经架构搜索在CIFAR-10和ImageNet中搜索到的表现最优的卷积层进行组合而成。相对于近年人工设计的主流网络模型,NASNet网络具有更快的运算速度和更高的准确率。

NASNet与ResNet[10]和Inception[11]网络的构建方式类似,通过基本单元堆叠而成,其在ImageNet上的网络架构如图1所示。NASNet包含Normal cell和Reduction Cell两种基本组成单元,Normal Cell是不改变输入特征图大小的卷积单元,Reduction Cell是通过增加步幅使输入特征图的尺寸缩小为原来的一半的卷积单元。每个Cell又由若干个Block组成,每个Block是通过在搜索空间中依次选择隐藏状态1、隐藏状态2、操作1、操作2和组合方法这5种方式的组合,对上述操作重复B次即可构成相应的Cell。

NASNet在ImageNet图像分类验证集上的识别率相较于之前所有Inception模型都更高,且对比于ImageNet上其他主流深度学习算法的识别结果也有一定程度的提升。此外,NASNet网络可通过改变基本单元的数量调整网络的规模大小,搭建不同的网络模型,其轻量级网络模型能够在极大程度上节省运算开销的同时仍保证较高的准确率。

2 BS-NASNet网络结构

本文算法将双线性模型和NASNet两种网络结合,提出了一种新的BS-NASNet网络模型。

本文算法选用轻量级的NASNetMobile作为NASNet的预训练模型。NASNetMobile采用分别由5个Block构成且在ImageNet上表现最好的Normal cell和Reduction Cell作为构建NASNet的基础单元,对应图2中的Normal cell的数量N=4,主要由4个Reduction Cell和12个Reduction Cell构成,网络参数相对较少,减小了训练的运算复杂度。

本文算法将两个相同结构的NASNetMobile网络融合成如图2所示的S-NASNet网络,代替原始双线性模型中的VGG16作为网络的特征函数fA和fB。若将两个NASNetMobile网络直接进行组合,则形成的S-NASNet网络最后的特征输出层的特征维数较大,会导致网络在训练过程中产生过拟合的情况,不适用于小样本训练。因此本文算法分别对两个NASNetMobile网络的输出特征层通过1 ×1 卷积进行特征降维后再进行融合,可进一步减小特征维数,压缩网络参数,防止算法过拟合。假设特征函数输出层的特征维数为M×N×D,1×1卷积滤波器的个数为A,则经过1×1卷积操作后,特征维数变为M×N×A,当A<D时,即可实现特征降维的功能。相比于原始双线性模型中的特征函数VGG16网络模型,S-NASNet网络能够更为充分地提取图像的全局特征和局部特征,检测出图像中的细微特征,从而对图像间的差异进行准确的描述。

在BS-NASNet中,将两个特征函数最后的特征输出层融合成双线性特征向量时,同样先采用1×1卷积操作进行特征降维后再进行融合,以降低特征维数,进一步避免算法在训练时发生过拟合。本文算法选择使用加权池化作为BS-NASNet的池化函数,并且在双线性特征向量后面使用sign平方和L2正则化操作,即从而进一步提高网络的性能。最后将正则化后的特征向量送入到网络最后一层的softmax分类器中,从而实现对磁痕图像缺陷的检测。BS-NASNet网络的整体结构示意图如图3所示。

图1 NASNet网络结构图

图2 S-NASNet网络结构示意图

图3 BS-NASNet整体结构示意图

3 实验验证及分析

3.1 实验平台及数据集

本文算法在64G内存的工作站上进行实验,并通过TITAN XP对网络模型的训练进行GPU加速。实验所用图像为生产现场采集的两种磁痕图像数据集,数据集1的样本图像中包含较强的反光干扰,数据集2的样本图像更为复杂,除反光干扰外还存在大量噪声,两种数据集的部分样本图像如图5所示。其中,前两张为缺陷样本图像,第三张为无缺陷样本图像。

第一种数据集共包含1004张无缺陷样本图像和804张缺陷样本图像,图像尺寸为468×1324,训练集中包含700张无缺陷样本图像和560张缺陷样本图像,测试集中包含300张无缺陷样本图像和240张缺陷样本图像。第二种数据集共包含872张无缺陷样本图像和914张缺陷样本图像,图像尺寸为800×1536,训练集中包含575张无缺陷样本图像和574张缺陷样本图像,测试集中包含297张无缺陷样本图像和340张缺陷样本图像。实验中将无缺陷样本图像作为正样本,缺陷样本图像作为负样本对网络进行训练。

图4 磁痕图像样本

3.2 训练参数设置

在数据预处理阶段,随机选择训练数据集中的一半图像经过水平翻转实现数据增强,并将图像尺寸归一化至224×224。训练网络模型时,设置训练的批次大小为32,初始学习率为0.001,学习衰减率为0.001,优化器采用Adam优化算法,并对整个网络参数进行训练。

3.3 实验对比及分析

通过现场采集的磁痕图像数据集1和数据集2对本文算法进行测试。本文算法在两种数据集上的准确率和网络损失变化曲线分别如图5和图6所示。

图中的蓝色和橙色曲线分别代表网络在训练集和测试集中的准确率和网络损失的变化情况。根据网络的准确率和损失变化曲线可以看出,对于存在反光干扰、噪声影响不大、成像情况相对简单的数据集1,本文算法在第3次迭代时已基本稳定,且算法的收敛速度极快,只需经过极少次的迭代训练即可达到较高的检测精度和较小的网络损失。在包含反光区域和大量噪声、成像情况相对复杂的数据集2上,本文算法也在第4次迭代时基本收敛,网络的检测精度仍然具有较高的水平,对于图像中的噪声和反光区域具有较强的抗干扰能力。

图5 数据集1准确率和损失变化曲线

图6 数据集2准确率和损失变化曲线

本文算法在特征融合时采用1×1卷积对特征进行降维,有效降低了网络的过拟合风险。从曲线图中可以看出,对于小样本数据集训练,本文算法的检测精度和网络损失曲线最终趋于平稳,并未发生过拟合的情况。

为对算法性能进行评价,本文选用准确率P、召回率R和F1值作为评价指标,准确率表示检测正确的正样本占所有检测为正样本的比例,召回率反映了检测正确的正样本占所有正样本的比例,F1值是准确率和召回率的综合指标,三者的计算公式分别如式(4)、式(5)、式(6)所示:

式中,TP表示算法检测为无缺陷图像且实际也为无缺陷图像的数量,TN表示算法检测为缺陷图像且实际也为缺陷图像的数量,FP表示算法检测为无缺陷图像但实际为缺陷图像的数量,FN表示算法检测为缺陷图像但实际为无缺陷图像的数量。

将本文算法的检测结果与文献[4]的几何特征与SVM结合的方法、文献[6]的灰度共生矩与MLP的方法、文献[7]的小波特征与BP神经网络结合的方法,以及单独的NASNet网络和以VGG16作为特征函数的双线性模型方法在两种数据集上的检测结果进行比较,各算法检测性能对比结果如表1所示。

表1 各算法性能对比

从表1中各算法的性能对比结果中可以看出,文献[4]、文献[6]和文献[7]中基于传统特征提取与机器学习结合的检测方法易受图像中反光和噪声的影响,在准确率、召回率和F1值上均低于93%,检测精度不高。相对而言,基于深度学习的NASNet和双线性模型在准确率、召回率和F1值上均高于97%,比上面三种算法提升约5%,对磁痕图像缺陷的检测效果更好。相比于单独的NASNet和以VGG16作为特征函数的双线性模型,本文算法将两种算法进行融合,使算法性能上有一定程度的提升,算法的检测准确率更高。

对于包含大量噪声、成像情况相对更为复杂的数据集2,从各算法的测试结果对比中可以看出,文献[4]、文献[6]和文献[7]的检测方法受图像噪声干扰较为严重,算法性能较差,其准确率、召回率和F1值上相对于数据集1的测试结果降低约5%。相对而言,基于深度学习的NASNet和双线性模型方法在数据集2上的测试结果与数据集1的结果相差不大,受噪声影响较小,算法鲁棒性好。对比于其他几种检测方法,本文算法的在准确率、召回率和F1值上均高于其他几种检测算法。

4 结语

针对现有磁痕图像缺陷检测方法易受噪声和反光干扰、检测精度低的问题,本文提出一种基于BS-NASNet的磁痕图像缺陷检测算法。算法将S-NASNet作为双线性模型的特征函数,能够有效提取出缺陷和非缺陷之间的细微差异特征。算法对网络的输出特征层经过1×1卷积降维后再进行融合,压缩了网络参数,能够有效降低网络过拟合风险,适用于小样本数据。实验结果表明,本文算法能够在噪声和反光干扰的复杂情况下,实现对磁痕图像的缺陷检测。

猜你喜欢
准确率样本特征
根据方程特征选解法
离散型随机变量的分布列与数字特征
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
2015—2017 年宁夏各天气预报参考产品质量检验分析
用样本估计总体复习点拨
不忠诚的四个特征
规划·样本
高速公路车牌识别标识站准确率验证法
随机微分方程的样本Lyapunov二次型估计