改进YOLOx的风机叶片缺陷检测研究

2023-09-25 19:32郝伟勋李建军
计算机时代 2023年9期
关键词:目标检测深度学习

郝伟勋 李建军

摘  要: 针对风机叶片表面缺陷识别率低、背景复杂及目标尺度差异大等问题,提出一种改进YOLOx-s的风机叶片缺陷检测方法。在YOLOx-s颈部输出端引入轻量型通道注意力机制提取图像深层次信息,提升缺陷检测准确率;构建特征提取能力更强的残差结构替换主干网络中的Resunit,通过调整残差结构感受野,增强对小目标缺陷的检测能力;经无人机实景拍摄采集叶片表面缺陷信息,使用Imgaug数据增强技术对数据集进行扩充。实验表明,改进后的网络模型对自建数据集的检测速度为39帧/秒,与YOLOx-s网络模型相比,mAP值从93.18%提高到96.61%。实现了风机叶片表面缺陷的高精度、高速度以及高鲁棒性检测。

关键词: 风机叶片; 深度学习; 目标检测; YOLOx-s

中图分类号:TP391          文献标识码:A     文章编号:1006-8228(2023)09-106-05

Research on the defect detection of fan blades based on YOLOx

Hao Weixun, Li Jianjun

(School of Information Engineering, Inner Mongolia University of science and technology, Baotou, Inner Mongolia 014010, China)

Abstract: Aiming at the problems of low recognition rate, complex background, and large difference in target scale of fan blade surface defects, a defect detection method for fan blades based on improved YOLOx-s is proposed. A lightweight channel attention mechanism is introduced at the neck output of YOLOx-s to extract the deep information of the image and improve the defect detection accuracy. A residual structure with stronger feature extraction ability is constructed to replace the Resunit in the backbone network, and the detection ability of small target defects is enhanced by adjusting the receptive field of the residual structure. The blade surface defect information is collected by UAV live shot, and the dataset is expanded using Imgaug data enhancement technology. The experiment shows that the detection speed of the improved network model for the self built dataset is 39 frames/second. Compared with the YOLOx-s network model, the mAP value is increased from 93.18% to 96.61%. It realizes the detection of surface defects of fan blades with high accuracy, high speed and high robustness.

Key words: fan blade; deep learning; target detection; YOLOx-s

0 引言

內蒙古、新疆等地,风力发电的应用较为广泛。由于地处北方,沙尘较多,极易对叶片表面造成损伤。及时检测出损伤位置及损伤类别并加以维护,可延长叶片的使用寿命。现有检测方法有两类,一是根据无缺陷叶片表面和缺陷叶片表面反射率的不同进行缺陷类型诊断,但所有设备造价高昂;二是基于深度学习计算机视觉的风机叶片缺陷检测方法,其凭借检测速度快、成本低,逐渐成为主流。

基于计算机视觉的方法又分为两类:一类是基于区域先验框的两阶段算法,如Faster R-CNN[1];另一类是基于回归的单阶段算法,如SSD[2]、YOLO[3]等。曹锦纲[4]等研究了基于鲁棒主成分分析(RPCA)和视觉显著性的表面缺陷检测,得到较高的准确率,但此研究未涉及复杂背景下的缺陷检测。胡翔宇[5]采集音频信号特征做降噪处理,搭建BP神经网络的三层结构,识别准确率达到93.75%,但该方法模型搭建复杂,且对小目标缺陷检测效果差。张超[6]等采用以Mask R-CNN为基础的网络框架,提高检测速度,但准确率仅为80.6%。曲忠侃[7]等针对风机叶片检测成本高、效率低等问题,提出基于Faster R-CNN的胶衣脱落缺陷检测方法,平均准确率达到92.6%,但缺陷类别少,难以满足实际需求。李亦伦[8]等利用Mosaic数据增强以及改进目标检测YOLOv4算法,风机叶片缺陷检测mAP值达83%。YOLO系列凭借其出色的性能在风机叶片缺陷检测领域受到广泛关注。

现有研究方法存在以下不足:①所选取网络架构的局限性,以v3网络模型为例,其对小目标有效特征的提取能力差;②缺陷图像背景复杂、缺陷类别多且尺度差异大。如“沙眼”属于典型的小目标,而“油污”、“脱漆”目标较大。针对上述问题,本文以YOLOx-s网络为基础,改进网络内部的残差结构,并融合注意力机制。改进后的网络模型大幅提升mAP值的同时对上述不足带来的问题有了明显改善。

1 YOLOX算法原理

1.1 输入端、主干网络及颈部

YOLOx-s以YOLOv3-spp[9]为基础进行改进。算法框架主要分为四个部分:输入端(Input)、主干网络(Backbone)、颈部(Neck)以及预测(Prediction)[10]。输入端、主干及颈部网络结构如图1所示。

输入端Focus层结构由切片操作和基础卷积运算组成,使得输入的三通道图像扩充为12通道,在保证低参数量和计算量的同时,完成下采样操作。主干网络由CBS、CSPLayer、SPP构成,其中CBS模块包含卷积层、BN层和激活函数;CSPLayer模块采用残差结构,内部包含Resunit,加深了网络的总体深度。SPP 模块由池化核大小为5×5、9×9、13×13的池化操作(Maxpool)和基础卷积组成,用于扩大感受野且不显著增加模型尺寸。

主干网络提取的不同尺度特征层由颈部进行深度特征提取及通道融合。其主要由特征金字塔网络(feature pyramid network, FPN)、CBS模块、CSPLayer模块构成。将融合后的特征信息P1_out、P2_out、P3_out输出到预测端。

1.2 预测

目标检测任务中,同一个检测头检测物体的位置和类别会严重影响检测速度和准确率。鉴于定位和分类任务关注的重心不同,YOLOx-s使用Decoupled head对此进行优化。预测端网络结构如图2所示。

融合后的特征经CBS、卷积层及激活函数作用,形成三个分支结构,cls_output对目标框类别进行分数预测,obj_output对前、背景进行判别,reg_output预测目标框的坐标信息(x,y,w,h)。最后经Concat操作,得到不同维度的特征信息。此外,引入Anchor-free检测器和SimOTA(Simplified Optimal Transport Assignment)标签分配机制以及Focal Loss损失数。

1.3 损失函数

YOLOx-s损失由IOU损失、类别损失、置信度损失三部分构成。IOU损失指交并比。

[IOU=A∩BA∪B]    ⑴

其中,A为预测框;B为真实框。

IOU损失如式⑵:

[LossIOU=1-IOU2]  ⑵

类别损失和置信度损失使用BCEWith LogitsLoss计算,如式⑶、式⑷:

[lossc=l1,…,lN]  ⑶

[ln=-yn∙logσx+1-yn∙log1-σxn]  ⑷

其中,N为batch size,本文中设置为4。每个批次预测n个标签,c为风机表面缺陷类别,[σx]表示sigmoid函数。

损失函数表达式如下:

[Loss=WeightLossIOU+Lossobj+Losscls]   ⑸

2 网络模型构建

针对风机叶片缺陷检测任务中存在背景干扰、缺陷类型多、目标尺寸差异大等问题,构建如图3所示的网络框架。

主干网络由CBS、CSPLayer、SPP、以及替换Resunit使用的残差模块(1×1Conv Resunit,CR)构成。颈部输出不同维度的特征信息,通过轻量型通道注意力机制(Efficient Channel Attention, ECA)连接到预测端,强化网络整体对叶片表面缺陷的感知能力。

2.1 CR残差模块

深度残差网络作为一类极深的体系结构出现。实际应用中衍生出不同种类的残差模块。Resunit采用傳统结构,如图4(a)所示。残差部分由CBS模块构成,对浅层特征做进一部提取,经addition与直接映射部分进行通道融合。其特点在于,提升了网络总体深度,可有效避免训练过程中梯度消失、梯度爆炸等问题。但结构简单,卷积核大小均为3×3,在小目标和被检测目标尺度差异大的数据集上进行检测,性能明显不足。

CR残差模块结构如图4(b)所示,直接映射部分添加1×1卷积进行降维,一定程度上减小主干网络的计算量,卷积核越小,感受野则越小,提取到的特征更为直观。残差部分卷积核大小为3×3、5×5,卷积核大,则提取的信息语义层次更高,同时将第二个CBS结构中的SiLU激活函数移动到addition后面。利用SiLU激活函数无上界有下界、平滑、非单调的特性对不同卷积核提取到的featuremap整体进行激活运算。

CR模块数学函数表达如式⑹所示。

[y=hx+f(x)1+exp [-hx+fx]]   ⑹

其中,x为输入,y为输出,h(x)为直接映射部分的1×1卷积操作,f(x)表示残差部分卷积、BN等一系列操作。相较于Resunit,CR残差模块具有更好的特征提取能力,有利于小目标和目标尺度差异大的缺陷检测。

2.2 颈部融合注意力机制

缺陷检测受复杂背景影响较大,特征提取过程中存在噪声干扰。注意力机制通过挖掘各通道之间的相互联系,学习不同通道特征的重要程度,使得网络在运行过程中更好的关注重要特征。轻量型通道注意力机制ECANet网络结构如图5所示。

该网络具备参数少、速度快、效果好的特点。首先对输入进来的特征层进行全局平均池化,通道维数保持不变,然后通过卷积核大小为k的快速1D卷积实现跨通道信息交互,再取一次Sigmoid激活函数将值固定在(0,1)区间内,最后将权值与原输入特征层相乘,以此来实现增加少量计算的同时,达到更好的去噪效果。

1D卷积核大小计算如式⑺所示。

[k=log2C+2]  ⑺

其中,k为1D卷积核大小,C为输入通道数且C为偶数。

3 实验结果与分析

3.1 实验环境

实验操作系统为Windows11,GPU 版本为NVIDIA GeForce RTX 3060 Laptop,Pytorch版本为1.10.2。训练时输入图像大小为460×460,初始化IOU为0.5,epoch设定为300,batch size为4,优化器使用Adam。

3.2 数据集

通过无人机实景拍摄,获取存在缺陷的叶片图像,共1224张,其中脱漆309张,沙眼305张,裂纹285张,油污325张。使用Imgaug数据增强通过对图像进行随机色域、镜像、旋转不同角度等变换,得到可用于训练的图像共4896张,3916张用于训练,496张用做验证集,484张用做测试集。

使用Labelimg对叶片缺陷的类别及位置进行标注,如图6所示。

3.3 评价性指标

本文选取了平均准确率(Average Precision, AP)、平均准确率均值(mean Average Precision, mAP)、检测速率(Frame Per Second,FPS)作为评价指标。准确率计算如下:

[Precision=TPTP+FP×100%]   ⑻

TP表示检测到的缺陷类别与真实缺陷类别一致的样本数量,FP 指检测到的缺陷类别与真实缺陷类别不一致的样本数量,FN 指真实缺陷目标存在但未被检测出的样本数量。

mAP指各类缺陷检测准确率的均值,可以更全面地评估模型的有效性,计算如式⑼所示。FPS用于评估模型在设备上的处理速度,为用于实际提供数据支撑。

[mAP=i-1NAPiN]    ⑼

3.4 消融实验

以YOLOx-s网络模型为基础进行实验,“裂纹”类缺陷的检测准确率为95.32%,由于网络模型受复杂背景及噪声干扰影响大,导致“沙眼”类的检测准确率仅为87.15%,mAP值低。颈部输出端融合轻量型通道注意力网络连接到预测部分,减弱由背景复杂、噪声干扰带来的问题,mAP值提升0.73%。将CR模块引入到主干网络,加强网络整体对小目标缺陷的特征提取能力,结果表明,mAP值达到96.34%且各类缺陷目标的检测准确率均得到提升。较YOLOx-s网络模型相比,mAP值提高3.16%,训练过程loss曲线如图7所示。

在80个Epoch至180个Epoch之间,由于叶片表面缺陷尺寸差异大,Loss曲线存在波动。

主干网络引入CR残差模块并融合ECAnet网络,模型收敛性得到优化, loss曲线如图8所示。

结合两种改进策略的具体实验数据如表1所示。

本文针对YOLOx-s提出的两点改进措施使得叶片表面缺陷检测mAP值达到96.61%。“沙眼”类小目标的检测准确率提升了6.72%。检测速度为39帧/秒,可满足实际应用的需求。

3.5 检测结果

本文所提网络模型检测效果如图9所示。其中,沙眼类小目标缺陷检测如图9(a)所示。图9(c)的检测结果表明,当拍摄受到光线或其他叶片的影响时,仍能准确识别。多目标检测效果如图9(d)所示。

3.6 对比实验

为验证本文所提方法在风机叶片缺陷检测任务中的优秀表现,选取Faster-RCNN、YOLOv3、PP-YOLO、YOLOx-s、Mask R-CNN主流模型进行对比。对比结果如表2所示,其中mAP值有较大提升,与YOLOv3相比,mAP值提升了11.61%。相比于PP-YOLO提升了9.61%。

4 结论与展望

为更好的解决风机叶片缺陷检测问题,本文提出以YOLOx-s 网络模型为基础,首先对数据集进行增强,达到可用于训练的规模,其次对主干部分的残差网络进行改进,提升检测准确率,最后引入注意力机制。对比现阶段用于风机叶片缺陷检测任务的主流模型,结果表明本文所提方法表现最佳,改进策略可有效提高检测精度。

现阶段面临无公开且缺陷类别多样的数据集。在保持高准确率的同时需要进一步提升检测速率。创建界面显示系统,保存风机编号及缺陷类型。继续优化网络结构,减小模型参数量,将训练好的模型移植到无人机平台上进行实时检测并传回检测结果,真正做到便捷化、智能化。

参考文献(References):

[1] REN S, HE K, GIRSHICK R, et al. Faster R-CNN:

Towards Real-Time Object Detection with Region Proposal Networks [J]. IEEE Transactions on Pattern Analysis & Machine Intelligence,2017,39(6):1137-1149.

[2] LIU W, ANGUELOV D, ERHAN D, et al. SSD: SingleShot MultiBox Detector[J].2015.

[3] REDMON J, DIVVALA S, GIRSHICKR, et al. You OnlyLook Once: Unified, Real-Time Object Detection[C]// Computer Vision & Pattern Recognition. IEEE,2016.

[4] 曹錦纲,杨国田,杨锡运.基于RPCA和视觉显著性的风机叶片表面缺陷检测[J].图学学报,2019,40(4):7.

[5] 胡翔宇.基于音频信号特征分析的风机叶片缺陷检测方法研究[D].河北:华北电力大学,2020.

[6] 张超,文传博.基于改进Mask R-CNN的风机叶片缺陷检测[J].可再生能源,2020,38(9):1181-1186.

[7] 曲忠侃,李学峰,李凤俊,等.基于Faster R-CNN的风机叶片缺陷图像多点检测系统设计[J].电子设计工程,2021,29(4):57-61.

[8] 李亦伦,成和祥,董礼,等.基于改进YOLOv4的风电机组叶片缺陷检测算法[J].风机技术,2022,64(1):46-53.

[9] 曾凯,李响,贾建梅,等.基于YOLOv3-spp的缺陷检测优化模型[J].计算机系统应用,2022,31(2):213-219.

[10] 周嘉灏,廖冠中.基于改进YOLOX的番茄病叶识别[J].信息与电脑(理论版),2022,34(4):91-97.

猜你喜欢
目标检测深度学习
视频中目标检测算法研究
行为识别中的人体运动目标检测方法
有体验的学习才是有意义的学习
电子商务中基于深度学习的虚假交易识别研究
MOOC与翻转课堂融合的深度学习场域建构
大数据技术在反恐怖主义中的应用展望
深度学习算法应用于岩石图像处理的可行性研究
基于深度卷积网络的人脸年龄分析算法与实现
移动机器人图像目标识别
基于背景建模法的运动目标检测