APP下载

基于深度学习的金属表面缺陷检测

2024-02-21李涛刘俊江张聪朱磊

高师理科学刊 2024年1期
关键词:金属表面卷积深度

李涛,刘俊江,张聪,朱磊

基于深度学习的金属表面缺陷检测

李涛,刘俊江,张聪,朱磊

(齐齐哈尔大学 通信与电子工程学院,黑龙江 齐齐哈尔 161006)

由于金属产品生产过程中各种因素的影响,金属工件可能会存在一些表面缺陷.这会降低材料强度,缩短工件寿命,并且增加安全风险.因此,需要对金属产品表面进行质量检测,这也是保证工业生产质量的关键环节.与传统人工检测相比,基于机器视觉的表面缺陷检测方法具有速度快、精度高等优点.提出了一种改进的YOLOv5算法,用于金属表面缺陷检测研究,在原YOLOv5算法的基础上将空间金字塔池化结构SPP替换成SPPCSPC,提高模型对金属表面缺陷的检测能力.为了验证算法的有效性,分别采用YOLOv3,YOLOv4,YOLOv5及改进的YOLOv5算法对1 800张金属表面缺陷样本图像进行对比测试.结果表明,与YOLOv3,YOLOv4,YOLOv5原算法相比,改进的YOLOv5算法平均目标检测精度均值分别提高了4.3%,3.3%,2%.通过大量图片的学习,可以获得更好的精确率.

金属表面缺陷;空间金字塔池化;机器视觉;目标检测

近年来,金属表面缺陷检测在工业生产和制造领域中越来越受到关注.金属表面缺陷不仅会影响产品的外观质量,还可能导致其在使用过程中发生失效,从而给生产企业带来严重的经济损失和声誉损害.传统的金属表面缺陷检测方法主要依靠人工目视检查,但是这种方法不仅效率低下,而且存在主观性和疲劳度等问题.为了提高金属表面缺陷检测的准确性和效率,越来越多的研究者探索基于深度学习[1]的方法.深度学习作为一种机器学习的分支,其优势在于可以自动地从大量数据中学习并提取特征.因此,基于深度学习的金属表面缺陷检测方法可以通过对大量图像数据的学习和训练,实现对金属表面缺陷的自动识别和分类.相比传统的金属表面缺陷检测方法,基于深度学习的方法具有更高的准确性和效率,并且可以实现自动化及无损检测.

本文旨在探究基于深度学习的金属表面缺陷检测方法,并以NEU-DET数据集(东北大学钢材表面缺陷检测数据集)为例进行实验研究.首先,采用卷积神经网络(CNN)对金属表面缺陷进行特征提取和分类,然后,通过实验对比YOLOv3[2],YOLOv4[3],YOLOv5[4]和改进后的YOLOv5,并对该方法的准确性和效率进行评估.结果表明,改进后的基于深度学习的金属表面缺陷检测方法可以取得较高的准确性和效率,具有广泛的应用前景.未来,将进一步完善基于深度学习的金属表面缺陷检测方法,以提高其在实际应用中的准确性和效率,并且将其应用于更广泛的金属制造领域.随着深度学习技术的不断发展和应用,基于深度学习的金属表面缺陷检测方法将在未来得到更广泛的推广和应用,为工业生产和制造领域的发展做出更大的贡献.

1 实验说明

1.1 算法

卷积神经网络[5](Convolutional Neural Networks,CNN)近年来在图像分类、目标检测、图像语义分割等领域得到了广泛的应用,对于大型图像的处理有出色的表现,经典的卷积神经网络主要由输入层、卷积层、池化层、全连接层组成.其中卷积层主要的作用是特征提取,卷积核的权重是可以学习的,可根据目标函数最优化得出合适的参数;池化层的主要作用是下采样[6],用于有效地减少特征图的维度大小,同时不损坏识别的结果;全连接层的作用主要是特征组合及分类,提供特征的复杂非线性变换.CNN由一层或多层隐藏层组成,多层的隐含层可以通过低级特征组合从而形成高级的特征,第一层卷积层可能只能提取一些低级的特征,如边缘、线条和角等层级,更多层的网路能从低级特征中迭代提取更复杂的特征,创建层级结构可以提升性能和计算效率.

神经网络[7]是通过对人的大脑神经网络研究,信息处理后抽象简化得来的,激活函数是非线性的,它们将非线性特性引入到网络中.在神经元中,输入的inputs通过加权求和后,还被作用了一个函数,这个函数就是激活函数.激活函数是非线性的,它们将非线性特性引入到神经网络中,常用的激活函数有sigmoid,tanh,relu等.

损失函数[8]是用于计算预测值与目标值误差的函数.反向传播过程中需要对网络中的每一个权重都计算损失函数的梯度,并通过梯度下降来更新权重使得损失函数达到最小.

1.2 YOLOv5 算法概述

深度学习与机器视觉领域的发展为金属表面缺陷检测任务提供了智能、便捷的缺陷检测方法,该类方法主要是将算法部署在移动端对金属表面缺陷进行实时、精准检测,要求选取的算法具有较强的检测能力和抗干扰能力.本文在YOLOv5算法的基础上对金属表面缺陷检测任务进行了有针对性的改进.YOLOv5算法由骨干网络、颈网络、预测网络三部分构成.骨干网络主要采用带有残差结构的C3模块对图片进行特征提取;颈网络由特征金字塔网络[9](Feature Pyramid Networks,FPN)和金字塔注意力网络[10](Pyramid Attention Network,PAN)组成,实现了特征增强与上下信息流融合;预测网络拥有三层检测层,每个检测层的损失由定位、分类和置信度三类损失组成,其中分类和置信度损失通过二元交叉熵损失函数进行计算,而定位损失采用的是完全重叠度(Complete Intersection over Union,CIoU)损失函数.最后通过预设的置信度阈值对预测框进行筛选,实现对检测目标的定位与分类.YOLOv5的整体结构见图1.输入端为经过处理后的640×640×3的输入图像;C3为特征提取模块;P1至P5为网络层数;SPPF为快速空间金字塔池化层;20×20×255,40×40×255,80×80×255为输出特征图的长、宽和维度,分别对应网络对大、中、小不同尺度目标的检测任务.

图1 YOLOv5 网络结构

1.3 改进 YOLOv5 网络结构——空间金字塔池化

考虑到金属表面缺陷识别精度对工业生产的重要性,本文将使用SPPCSPC来替换SPP.SPPCSPC的网络结构见图2.它通过卷积、批归一化、激活函数以及池化操作等来提升模型对金属表面缺陷检测的识别能力,能够在增加少量参数的前提下提高对金属表面缺陷数据集的特征提取能力.

图2 SPPCSPC 模块结构

2 实验评估指标

3 实验验证

3.1 数据集

在东北大学(NEU)的表面缺陷数据库中,收集了六种典型的热轧钢带表面缺陷,即轧痕(RS)、斑块(Pa)、裂纹(Cr)、凹陷面(PS)、包容(In)和划痕(Sc).该数据库包括1 800张灰度图像:六种不同类型的典型表面缺陷各300张样本.

六种典型表面缺陷的样本图像见图3,每张图像的原始分辨率为200×200像素.从图3中可以清楚地看到,类内缺陷在外观上存在较大的差异,如划痕(最后一列)可能是水平划痕、垂直划痕和斜向划痕等.同时,类内缺陷也有类似的方面,如轧痕、裂纹和凹陷的表面.此外,由于光照和材料变化的影响,类内缺陷图像的灰度是不同的.简而言之,NEU表面缺陷数据库包括两个难题,即类内缺陷在外观上存在较大差异,而类间缺陷具有相似的方面,缺陷图像受到光照和材料变化的影响.

图3 NEU-CLS

对于缺陷检测任务,此数据集提供了注释,表明每张图像中缺陷的类别和位置.NEU-DET的一些检测结果的实例见图4.对于每个缺陷,黄色框表示其位置的边界框,绿色标签是类别得分.

图4 NEU-DET

3.2 数据预处理

3.2.1 Mosaic数据增强 Mosaic数据增强的方式参考了CutMix[12]数据增强思想.CutMix数据增强将2张图片进行拼接,而Mosaic采用4张图片的拼接,增加数据量的同时可以丰富检测物体的背景.

3.2.2 自适应锚框 在YOLO系列算法中,通常对不同的数据集都会设定初始长宽的锚框.在YOLOv3,YOLOv4中,初始锚框都是通过单独算法得到的,常用的是K-means算法.本文将这种功能嵌入至代码中,实现了每次训练可以自适应地计算不同训练集中的最佳初始锚框.初始锚框为[10,13,16,30,33,23]、[30,61,62,45,59,119]、[116,90,156,198,373,326],经过计算本文最佳初始锚框为[111,114,141,121,127,141]、[150,149,159,169,195,212]、[256,173,173,292,326,298].

3.2.3 自适应缩放图片 数据集的大小往往都是大小不一,需要对其尺寸归一化.然而,实际项目中的很多图片长宽比不一致,缩放并填充后,两端填充部分较多,存在很多冗余信息,影响模型速度及效果.本文方法对原始图像进行自适应填充最少的灰度值,使得图像高度或宽度两端的灰度值最少,计算量也会随之减少,速度也得到提升,具体步骤为:

(1)图像缩放比例.假设原始图像为1 000×800,缩放至416×416.将416×416除以原始图像相应宽高,得到系数分别为0.416,0.52,取其较小值0.416.

(2)缩放后的尺寸.将原始图片宽高乘以较小的系数0.416,则宽为416,高为332.

(3)灰边的填充值.先将416-332=84,并采用取余的方式得需要填充的像素值84%32=20(32是由于网络经过了5次下采样,2的5次方为32,两端各10个像素.在测试过程中采用灰色填充,训练过程依旧使用原始的resize操作以提高物体的检测、计算速度.

3.3 对比实验

为了能够判断改进后的模型对于金属表面缺陷的检测性能是否优于其他网络模型,本文用改进后的YOLOv5s模型与YOLOv3,YOLOv4,YOLOv5系列进行对比试验.这些模型的不同是:首先,YOLOv4在输入端使用了Mosaic数据增强,而YOLOv5在其基础上还使用了自适应锚框计算、自适应图片缩放.其次,YOLOv3的Backbone都采用了Darknet53,其借鉴了ResNet[13]的残差结构,使其网络结构更深.而YOLOv4则是将各种新的结构结合起来,其中就包括了CSPDarknet53[14]、Mish激活函数、Dropblock等.与YOLOv4不同的是,YOLOv5添加了Focus结构、CSP结构,并且设计了两种CSP结构,一种应用于Backbone,一种应用于Neck中.再次,在Neck中,YOLOv3只使用了FPN结构;YOLOv4则是使用了SPP模块、FPN+PAN结构;YOLOv5在YOLOv4的基础上将一些普通卷积替换成了CSP结构,加强网络特征融合能力.最后,在Prediction中,YOLOv3的损失函数使用的是BCE(Binary Cross Entropy)Loss以及MSE(Mean Squared Error)Loss;YOLOv4使用的是CIoU Loss和DIoU NMS[15];YOLOv5使用CIoU Loss和加权NMS[16-17].对比试验的结果见表1.本文改进方法与YOLOv3相比,mAP(Mean Average Precision)提升了4.2个百分点,检测速度也较快;与YOLOv4相比,mAP提升了3.3个百分点,召回率与FPS低于YOLOv4的原因是本文着重于mAP与参数量大小的改进;与原YOLOv5的两个大小不同的模型相比,评价指标基本上都占优,检测速度也满足实时检测的要求.综上所述,改进后的模型在mAP、参数量都是最优的,基本上在性能上全面领先其他模型,能够更好地部署到嵌入式设备中,满足实时检测的要求.因此,更加适合用于金属表面缺陷的检测.

表1 对比试验结果

3.4 SPP 模块的结构

SPP 模块的结构见图5.颈部网络是一系列混合组合图像特征的特征聚合层,主要用于生成FPN(feature pyramid networks),然后将输出的特征图传给预测网络.由于该网络的特征提取器采用了一种新的增强自下而上路径的FPN结构,改善了低层特征的传递,增强了对不同尺度物体的检测.因此,可以准确识别不同大小和尺度的同一目标物体.

预测网络主要用于模型最后的检测部分,对上一层输出的特征图应用锚框,输出一个向量,包含目标物体的类别概率、物体得分、位置、对象周围的边界框.YOLOv5s架构的检测网络由三个检测层组成,其输入是尺寸分别为 80×80,40×40,20×20 的特征图,用于检测不同大小的图像对象.每个检测层最终输出一个21通道的向量((2类+1类概率+4个周围框位置坐标)×3个锚框),然后生成预测的边界框和原图中目标的类别并标注,实现图像中金属目标的检测.

图5 SPP 模块的结构

3.5 实验与分析

本文算法的实验环境——操作系统:Windows10;GPU:RTX 2080ti;内存:476G;深度学习框架:pytorch;编程语言:Python3.7.

目标检测中的改进技巧对模型是否有用,与模型规模、网络结构、数据集分布等情况有关.YOLOv5模型及其添加了改进技巧的模型在NEU-DET数据集上相关的训练设置描述.

采用YOLOv5模型在COCO数据集上的预训练权重,设置批次大小为8,训练的最大次数为150.以改进实验中mAP指标最高的模型即采用SPPCSPC来替换SPP改进的YOLOv5为例,在NEU-DET测试集上的曲线见图6,图像预测样本见图7.

图6 改进YOLOv5后的P-R曲线

图7 预测结果样本

首先,由采用SPPCSPC来替换SPP改进的YOLOV5模型在测试集上的曲线可以看出,此时的目标检测模型在NEU-DET数据集上mAP达到了72.90%.这说明,采用SPPCSPC来替换SPP有效地提高了在NEU-DET数据集上的识别能力.

其次,对照NEU-DET数据集中测试集样本的预测结果样本可以看出,目标检测模型在缺陷类别识别方面未出现错误,整体识别效果较好.

实验测试结果表明,分类识别与目标检测功能基本满足准确性与实时性的要求,为实际生产现场的应用提供了理论支持与技术支撑.但是,本文研究的内容仍然存在一些不足,有待进一步的改进与完善.

(1)与实际生产加工过程中的金属产品表面缺陷种类的数量和同种缺陷不同表现的数量相比,本文中引入的公共数据集的缺陷数据是较少的,且不全面.可以考虑结合生产一线更多的数据,扩展数据集内容,加强模型的识别性能.(2)可以考虑对目标检测模型的主干网络做轻量化的处理,在保证检测精度的情况下加快缺陷检测速度,降低对计算机硬件参数的要求.(3)在金属表面缺陷检测系统的实现中,未对深度学习的网络做模型加速部署,可以考虑优化模型部署方式,提高系统识别性能与可靠性.

4 结论

本文基于YOLOv5网络模型改进了一种工业生产场景下适用于不同的金属表面缺陷检测的算法模型,改进的模型在检测任务中提高了目标检测精度,这符合工业生产场景下目标检测需要较高检测精度的工作需求.本文模型在原YOLOv5模型的基础上将空间金字塔池化结构SPP替换成SPPCSPC,显著提升了整体网络模型对小目标的检测性能.改进的YOLOv5提高了检测精度,通过这一系列的改进使得整体网络模型更满足于金属表面缺陷检测的工作环境需求.从最后的检测结果来看,本文模型相较于YOLOv5网络检测精度有着显著提升,并且也提高了整体网络的鲁棒性,具有更好的检测性能和目标分辨能力,这也是金属表面缺陷检测领域的重要发展方向之一.

[1] Le Cun Y,Bengio Y,Hinton G.Deep learning[J].Nature,2015,521(7553):436-444.

[2] Redmon J,Farhadi A.Yolov3:An incremental improvement[J].arXiv preprint arXiv:2018,1804.02767.

[3] BOCHKOVSKIY A,WANG C Y,LIAO H Y M.Yolov4:Optimal speed and accuracy of object detection[J].arXiv preprint arXiv:2020,2004.10934.

[4] ZHU X,LYU S,WANG X,et al.TPH-YOLOv5:Improved YOLOv5 based on transformer prediction head for object detection on drone-captured scenarios[C]//Proceedings of the IEEE/CVF international conference on computer vision.2021:2778-2788.

[5] Albawi S,Mohammed T A,Al-Zawi S.Understanding of a convolutional neural network[C]//2017 international conference on engineering and technology(ICET).Antalya,Turkey,2017:1-6.

[6] 刘颖,刘红燕, 范九伦, 等. 基于深度学习的小目标检测研究与应用综述[J].电子学报, 2020,48(3): 590-601.

[7] 周飞燕, 金林鹏,董军.卷积神经网络研究综述[J].计算机学报,2017, 40(6):1229-1251.

[8] Schorfheide F.Loss functionbased evaluation of DSGE models[J].Journal of Applied Econometrics,2000,15(6):645-670.

[9] LIN T Y,DOLLÁR P,GIRSHICK R,et al.Feature pyramid networks for object detection[C]//Proceedings of the IEEE conference on computer vision and pattern recognition.2017:2117-2125.

[10] LI H,XIONG P,AN J,et al.Pyramid attention network for semantic segmentation[J].arXiv preprint arXiv:2018,1805.10180 .

[11] 杨斌,李成华,江小平,等.一种用于提升深度学习分类模型准确率的正则化损失函数[J].中南民族大学学报(自然科学版),2020,39(1):74-78.

[12] YUN S,HAN D,OhS J,et al.Cutmix:Regularization strategy to train strong classifiers with localizable features[C]//Proceedings of the IEEE/CVF international conference on computer vision.2019:6023-6032.

[13] WU Z,SHEN C,Van Den HENGEL A.Wider or deeper:Revisiting the resnet model for visual recognition[J].Pattern Recognition,2019,90:119-133.

[14] Misra D.Mish:A self regularized non-monotonic activation function[J].arXiv preprint arXiv:2019,1908.08681.

[15] ZHENG Z,WANG P,LIU W,et al.Distance-IoU loss:Faster and better learning for bounding box regression[C]//Proceedings of the AAAI conference on artificial intelligence,2020,34(7):12993-13000.

[16] Bodla N,Singh B,Chellappa R,et al.Soft-NMS——improving object detection with one line of code[C]//Proceedings of the IEEE international conference on computer vision.2017:5561-5569.

[17] ZHANG H,LI F,LIU S,et al.Dino:Detr with improved denoising anchor boxes for end-to-end object detection[J].arXiv preprint arXiv:2022,2203.03605 .

Metal surface defect detection based on deep learning

LI Tao,LIU Junjiang,ZHANG Cong,ZHU Lei

(School of Communication and Electronic Engineering,Qiqihar University,Qiqihar 161006,China)

Due to various factors in the production of metal products,some surface defects may exist on metal workpieces.This can reduce the strength of the material,shorten the life of the workpiece,and increase the safety risk.Therefore,it is necessary to carry out quality inspection on the surface of metal products,which is also a key link to ensure the quality of industrial production.Compared with the traditional manual inspection,the machine vision-based surface defect detection method has the advantages of high speed and high accuracy.An improved YOLOv5 algorithm is proposed for metal surface defect detection research,which replaces the spatial pyramid pooling structure SPP with SPPCSPC on the basis of the original YOLOv5 algorithm to improve the model′s ability to detect defects on metal surfaces.In order to verify the effectiveness of the algorithm,a comparative test is conducted on 1 800 samples of metal surface defects using YOLOv3,YOLOv4,YOLOv5,and an enhanced YOLOv5 algorithm.The results show that compared with the original algorithms of YOLOv3,YOLOv4,and YOLOv5,the mean average target detection accuracy of the improved YOLOv5 algorithm has been improved by 4.3%,3.3%,and 2%,respectively.A better accuracy rate can be obtained by learning from a large number of images.

metal surface defects;spatial pyramidal pooling structure;machine vision;target detection

TP391.41∶TG11

A

10.3969/j.issn.1007-9831.2024.01.008

1007-9831(2024)01-0036-07

2023-06-21

2022年度黑龙江省大学生创新创业训练计划项目(S202210232132); 黑龙江省教育科学“十四五”规划重点课题(GJB1422319)

李涛(2001-),男,山西大同人,在读本科生.E-mail:2471539653@qq.com

朱磊(1982-),女,吉林敦化人,教授,博士,从事机器学习与电磁超表面研究.E-mail:zhuzhubutterfly@163.com

猜你喜欢

金属表面卷积深度
一种基于微带天线的金属表面裂纹的检测
基于3D-Winograd的快速卷积算法设计及FPGA实现
深度理解一元一次方程
从滤波器理解卷积
深度观察
深度观察
浅析着色探伤剂
深度观察
基于傅里叶域卷积表示的目标跟踪算法
远离 水滴