当前位置:首页 期刊杂志

基于多尺度卷积神经网络和类内mixup操作的磁瓦表面质量识别

时间:2024-05-04

张京爱,王江涛,2*

(1.淮北师范大学物理与电子信息学院,安徽淮北 235000;2.淮北师范大学信息学院,安徽淮北 235000)

0 引言

磁瓦是永磁体直流电机的核心部件之一,常用来代替传统的电励磁。据中国磁性材料及行业协会估计,2017 年我国对磁瓦的需求规模将达50 亿元以上,到2020 年该规模将达60 亿元。磁瓦产业已成为国民经济中一股重要的力量。在磁瓦生产过程中,由于生产工艺或者碰撞原因,不可避免地会产生残次品。因此对磁瓦质量进行挑选,剔除残次品,成为当前磁瓦生产中的必需工序。当前的残次品剔除主要依赖于人工进行,成本高,效率低,且人工易于疲劳,错检漏检现象时常发生。为了克服上述困难,提高磁瓦检测的效率和自动化水平,机器视觉技术[1-4]被引入到各类检测和识别应用中。

基于机器视觉技术的磁瓦检测可以分为两类:一类直接在图像的灰度空间中进行处理判断是否存在缺陷;另一类则首先对磁瓦图像进行某类变换,然后在此类变换下进行缺陷判断。胡浩等[5]在图像的灰度空间下,综合考虑了形状、纹理、边缘等特征,将磁瓦缺陷分为3 类,采用不同的特征组合来对三类缺陷进行检测。刘国平等[6]为了解决磁瓦表面灰度分布均匀、噪声较多等问题,从获取扫描行更稳定的灰度出发,提出下包络线灰度对比度来分割出缺陷区域。李雪琴等[7]则将磁瓦图像进行Contourlet 变换,以变换后得到的子带系数作为研究对象,通过对比确定是否存在缺陷。同样从图像变换的角度出发,文献[8]则采用平稳小波变换构造轮廓波包,首先利用相关去噪消减图像的噪声,然后通过轮廓波包逆变换来得到缺陷图像。

经过多年的研究,尽管先后已出现多种不同的缺陷识别方法,然而由于磁瓦形状的不规则性,大多数方法还是局限于实验环境中。首先,已发表的文献中进行实验时样本量大多为几百个,数据集规模偏小,不足以反映工厂环境下的实际性能。其次,多数算法需要人工的确定一系列的阈值,这不利于在实际多变的环境中推广应用。再次,磁瓦的曲面形状给照明设计带来困难,往往难以得到理想均匀的光照效果。

近年来,深度卷积网络在计算机视觉分类和检测任务中都表现出了优异的性能[9-10],但在磁瓦质量识别领域相关的工作较少。针对上述问题,本文在构造符合实际生产场景样本集的基础上,通过将深度卷积网络引入缺陷识别系统,设计一类端到端的,不需要人工干预,且对光照不敏感的磁瓦缺陷识别算法,以提高磁瓦缺陷识别系统的识别精度和推广能力。

1 磁瓦图像的采集及目标获取

通过对大量的带缺陷的磁瓦进行分析,发现绝大多数的磁瓦缺陷发生在磁瓦两端。由于磁瓦表面形状为凸起曲面,在采用单一相机自顶朝下进行拍摄时,两端边角无法包含在视野内,因此,本文采用了如图1 所示的摄像机布局,通过两个互相对角的摄像机,不但可以更加清晰地对两端图像进行采集,而且利用摄像机的视场互补,也可以获取整个凸起曲面的图片。对于光照来说,在这里希望所研发的缺陷识别系统能够不依赖于严格的光照条件,因此在磁瓦工件两侧各设置一个发光二极管面光源来进行照明,并没有进行更加优化的布局设计。

图1 摄像机布局结构Fig.1 Layout structure of cameras

在检测磁瓦时,难以保证所有磁瓦都处于相同的姿态,因此需要从采集图像中得到姿态归一化的目标图片。假定采集到的磁瓦工件图像如图2(a)和图2(c)所示,此时为了获取标准的磁瓦样本。采用如下的步骤来进行处理:

第一步 对采集到的图像进行阈值分割,获得磁瓦所在的矩形区域(图2中白色实线矩形框所示)。

第二步 进一步寻找磁瓦目标的最小外接矩形,如图2中白色虚线矩形框所示。

第三步 将获取的最小外接矩形区域进行旋转,得到标准的磁瓦样本图像,如图2(b)和图2(d)所示。

在训练和测试阶段,均采用上述的方法,首先采集到原始图像,然后获取要训练或测试的磁瓦样本进行对应的操作。

通过对磁瓦残次品进行分析发现,尽管缺陷发生部位集中于磁瓦两端,但缺陷类别多种多样。图3 给出了常见的缺陷类型,主要包括掉块、磕边、裂缝、坑洞等。从图中可以看出,不同类型的缺陷外观差异较大,难以采用传统的图像处理方法进行统一的特征描述。鉴于此,本文不考虑缺陷的类型,通过设计端到端的深度学习系统直接对磁瓦进行表面质量识别。

图2 采集到的图像及获取的磁瓦样本Fig.2 Collected images and corresponding megnetic tile samples

图3 常见的缺陷类型Fig.3 Common types of defects

2 多尺度深度卷积网络设计

采用深度学习进行磁瓦识别时,首先需要设计深度卷积网络模型来构建磁瓦质量识别系统。当前存在多种不同的网络框架可供选择,比如VGG(Visual Geometry Group)系列[11]、残差网络(Residual Network,ResNet)系列[12]等。考虑到系统的实时性、训练样本集的规模、卷积网络自身的性能等因素,综合进行衡量,选定ResNet18作为识别系统的主框架。

如图4 所示,不考虑池化、批归一化等操作,ResNet18 一共由18层网络组成,其中包含4个残差模块,每个残差模块包含两个残差单元,其内部结构可参考图5,残差单元采用如下的形式来得到:

其中:x为模块的输入,y为模块的输出,F为模块对x的映射。

图4 ResNet18网络结构Fig.4 Network architecture of ResNet18

上述模型中输入图像的尺度为224×224×3,整个网络经过一系列的池化和下采样将图像缩小至原来的1/32,残差模块4输出大小为7×7×512,该输出与全连接层相连进行最终分类。由于磁瓦表面缺陷可能以任意的外观和尺寸出现,如图6 所示,不同的缺陷之间存在着较大的尺度差异。因此将原图下采样为7×7的卷积结果不利于识别微小尺度缺陷。为了解决这一问题,本文对原始的ResNet18 进行微调,同时采用残差模块3 和残差模块4 的结果进行全连接分类识别。如图7 所示,将残差模块3 的输出结果引入分支连接一全连接层,并将该全连接层与原全连接层进行拼接,共同进行分类得到识别结果。

图5 残差模块结构示意图Fig.5 Schematic diagram of residual module architecture

图6 磁瓦表面缺陷区域存在较大尺度差Fig.6 Significant scale differences among tile surface defects

图7 多尺度ResNet18网络结构Fig.7 Network structure of multiscale ResNet18

磁瓦表面质量识别问题可以看作为二分类问题,因此采用两类交叉熵函数作为深度卷积网络的损失函数,该函数如式(2)所示:

其中:z为样本真实标签,p为网络预测标签。通过损失函数就可以采用梯度下降法来更新网络参数,直至收敛或达到训练迭代次数为止。

3 采用类内mixup提高样本泛化能力

在训练深度卷积网络时,网络的规模受限于样本的数量,而训练样本的多样性则直接关系到深度卷积网络的识别能力。因此,数据增广已成为提高样本多样性的常用手段。数据增广方法一般可以分为两类:一类是对原样本施加亮度偏移、色彩偏移、角度偏移等简单运算得到增广后的样本;另一类则以原样本为基础生成新的虚拟样本。这里,同时采用了两种不同的增广策略来扩充样本,首先通过随机偏移样本的亮度来完成第一类数据扩充,因为在构建样本集时没有对磁瓦的姿态方向进行限制,因此不需要再进行旋转操作对样本进行增广。对于第二类扩充策略,本文在构建虚拟样本时以Zhang 等[13]提出的mixup 方法为基础,并对其进行了拓展。传统的mixup 方法使神经网络的训练得以在样本对及其对应标签的凸组合上进行,对样本泛化能力有着明显的提升作用。mixup采用如下的操作来生成虚拟样本:

其中(xi,yi)和(xj,yj)为从训练集中随机选择的两个样本,且λ~Beta(α,α),α∈(0,∞)。从式(3)可以看出,新生成的虚拟样本实际上是原样本的线性叠加,通过该方式可以让不同样本间的分布更为平滑。

对于本文所研究的问题来讲,由于磁瓦的缺陷可能以细小、微弱的形式出现,因此如果采用类间形式进行mixup,容易使样本混淆。一般来说,一个有缺陷的样本与无缺陷的样本叠加,得到的结果依然为有缺陷的样本,而式(3)并不能支撑该理论。考虑到该问题,这里对叠加样本的类别进行了限制:

在式(4)中,仅当随机选择的样本属于同一类别时才进行叠加,在这里将其称为类内mixup。由于仅在类内进行线性平滑,可以对缺陷类型进行进一步的泛化,从而有助于提升网络的推广能力。

4 实验及分析

为了尽可能地贴近实用场合,更加客观地评估算法在实用中的分类性能,采用实际生产的磁瓦构建缺陷样本集。该样本集包含了7 759 个有缺陷样本(负样本)、4 452 个无缺陷样本(正样本),其中训练集由6 692 个负样本和3 984 个正样本组成,其余样本构成测试集。在构建样本的时候,为了体现环境的复杂性,并没有对磁瓦的位置和角度进行严格限制,因此样本集中的磁瓦以不同的姿态和不同的反光区域呈现。如图8所示给出了部分的样本示例。

图8 磁瓦样本图像示例Fig.8 Schematic diagram of tile samples

所有实验均在显卡型号为GTX1080TI、内存为16 GB 的机器上进行,所采用的深度学习工具为Pytorch。由于本文的重点在于评估所提出系统的性能,在进行网络训练时采用了通用的超参数设置,训练所用的学习率设为0.001,训练迭代次数为100 个epoch,每个batch 大小为50,采用随机梯度下降学习到网络的最终参数。为了更加直观地观测所研究系统的性能,分别对采用VGG16、ResNet18、多尺度ResNet18(本文算法)的识别系统进行了对比。如图9 所示,给出了3 种方法的训练loss曲线。从曲线可以看出,3种网络结构均可在最终达到收敛,但ResNet18 结构明显比VGG16 具有更好的收敛性能。而多尺度ResNet18和传统的ResNet18具有相似的loss曲线,而多尺度的结构可以取得更小的代价。

在训练过程中,每训练完成一个epoch 保存一次网络权重文件,在训练结束后,在所有权重文件中选取对测试集性能最优的权重作为最终的网络参数。表1 分别采用准确率(accuracy)、精确率(precision)、召回率(recall)和F1 分数4 个指标[14-15]对不同模型的性能进行对比,从中可以看出3种网络结构均取得了高于90%的正确识别率,充分说明了深度卷积网络在缺陷识别问题上的有效性,而采用ResNet 结果明显要优于VGG 结构,特别的,本文提出的多尺度ResNet18 取得了最好的识别结果。另外,多尺度ResNet18 在运行时间上一幅图像仅耗时1.31 ms,完全可以满足实时的需要。

图9 不同网络结构下的loss曲线Fig.9 Loss curves with different network architectures

表1 不同网络结构下的识别性能对比Tab.1 Comparison of recognition performance under different network architectures

除不同的网络结构外,也对采用传统mixup 和类内mixup的数据增广方法进行了对比。图10 给出了以多尺度的ResNet18 为基础,分别采用两种不同数据增广方法训练时的loss 曲线,训练时采用与前述相同的超参数,在进行mixup 时将α的值设为通用的1.0,λ参数则可以由对应的Beta 分布得出。如图中所示,传统的mixup 扩充样本后,在训练的初始阶段训练损失快速下降,但过后loss 的值陷入震荡,无法收敛。而类内mixup 由于将叠加的样本限制在类内,生成了更加合理的虚拟样本,因此网络可以迅速趋于收敛。

图10 不同mixup操作下的loss曲线Fig.10 Loss curves with different mixup operations

以多尺度的ResNet18 为基础,加入mixup 操作进行样本扩充后的网络识别性能如表2 所示。与前面相同,依然使用所保存的100 个权重文件中在测试集上性能最优的权重参数作为最终网络进行测试。从识别结果可以看出,采用原始的mixup操作后,不但没有改进识别性能,反而识别率有所下降。这是因为与传统的分类问题不同,由于缺陷区域往往仅占有整个样本的微小部分,因此在不同类样本间进行叠加时会引起系统混淆。相对而言,本文提出的类内mixup 则将识别准确率进一步地提升至97.9%,取得了满意的识别效果,表明所研究的系统对不同的缺陷类型、不同的反光场景都具备了良好的鲁棒性。

表2 不同mixup操作下的识别性能对比Tab.2 Comparison of recognition performance under different mixup operations

5 结语

利用计算机视觉技术对生产工件的质量进行检测是工业生产中的重要需求之一。本文对铁氧体磁瓦表面缺陷识别问题展开研究,将深度学习技术引入到磁瓦缺陷识别中,提出一种基于深度卷积网络的磁瓦表面质量识别系统。该系统首先从抓取的磁瓦图像中获得磁瓦目标,并进行旋转归一化处理,然后设计多尺度卷积网络对磁瓦目标图像进行分类识别。为了提高系统的泛化能力,训练时提出一种新颖的类内mixup方法来生成虚拟样本,从而完成对样本的扩充。同时构建了较大规模的磁瓦缺陷数据集,在该数据集上进行实验的结果表明,所研究的磁瓦缺陷识别系统可以达到接近97.9%的识别准确率,为实际应用提供了一种可行的途径。本文仅从工厂实用的角度出发对磁瓦是否具有缺陷进行了二类分类,并没有考虑缺陷的类别和位置,未来将对磁瓦缺陷类型和位置进行标注,进一步深入研究磁瓦缺陷检测问题。

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!