郝偉勛 李建軍
摘? 要: 針對(duì)風(fēng)機(jī)葉片表面缺陷識(shí)別率低、背景復(fù)雜及目標(biāo)尺度差異大等問(wèn)題,提出一種改進(jìn)YOLOx-s的風(fēng)機(jī)葉片缺陷檢測(cè)方法。在YOLOx-s頸部輸出端引入輕量型通道注意力機(jī)制提取圖像深層次信息,提升缺陷檢測(cè)準(zhǔn)確率;構(gòu)建特征提取能力更強(qiáng)的殘差結(jié)構(gòu)替換主干網(wǎng)絡(luò)中的Resunit,通過(guò)調(diào)整殘差結(jié)構(gòu)感受野,增強(qiáng)對(duì)小目標(biāo)缺陷的檢測(cè)能力;經(jīng)無(wú)人機(jī)實(shí)景拍攝采集葉片表面缺陷信息,使用Imgaug數(shù)據(jù)增強(qiáng)技術(shù)對(duì)數(shù)據(jù)集進(jìn)行擴(kuò)充。實(shí)驗(yàn)表明,改進(jìn)后的網(wǎng)絡(luò)模型對(duì)自建數(shù)據(jù)集的檢測(cè)速度為39幀/秒,與YOLOx-s網(wǎng)絡(luò)模型相比,mAP值從93.18%提高到96.61%。實(shí)現(xiàn)了風(fēng)機(jī)葉片表面缺陷的高精度、高速度以及高魯棒性檢測(cè)。
關(guān)鍵詞: 風(fēng)機(jī)葉片; 深度學(xué)習(xí); 目標(biāo)檢測(cè); YOLOx-s
中圖分類號(hào):TP391? ? ? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A? ? ?文章編號(hào):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 引言
內(nèi)蒙古、新疆等地,風(fēng)力發(fā)電的應(yīng)用較為廣泛。由于地處北方,沙塵較多,極易對(duì)葉片表面造成損傷。及時(shí)檢測(cè)出損傷位置及損傷類別并加以維護(hù),可延長(zhǎng)葉片的使用壽命?,F(xiàn)有檢測(cè)方法有兩類,一是根據(jù)無(wú)缺陷葉片表面和缺陷葉片表面反射率的不同進(jìn)行缺陷類型診斷,但所有設(shè)備造價(jià)高昂;二是基于深度學(xué)習(xí)計(jì)算機(jī)視覺(jué)的風(fēng)機(jī)葉片缺陷檢測(cè)方法,其憑借檢測(cè)速度快、成本低,逐漸成為主流。
基于計(jì)算機(jī)視覺(jué)的方法又分為兩類:一類是基于區(qū)域先驗(yàn)框的兩階段算法,如Faster R-CNN[1];另一類是基于回歸的單階段算法,如SSD[2]、YOLO[3]等。曹錦綱[4]等研究了基于魯棒主成分分析(RPCA)和視覺(jué)顯著性的表面缺陷檢測(cè),得到較高的準(zhǔn)確率,但此研究未涉及復(fù)雜背景下的缺陷檢測(cè)。胡翔宇[5]采集音頻信號(hào)特征做降噪處理,搭建BP神經(jīng)網(wǎng)絡(luò)的三層結(jié)構(gòu),識(shí)別準(zhǔn)確率達(dá)到93.75%,但該方法模型搭建復(fù)雜,且對(duì)小目標(biāo)缺陷檢測(cè)效果差。張超[6]等采用以Mask R-CNN為基礎(chǔ)的網(wǎng)絡(luò)框架,提高檢測(cè)速度,但準(zhǔn)確率僅為80.6%。曲忠侃[7]等針對(duì)風(fēng)機(jī)葉片檢測(cè)成本高、效率低等問(wèn)題,提出基于Faster R-CNN的膠衣脫落缺陷檢測(cè)方法,平均準(zhǔn)確率達(dá)到92.6%,但缺陷類別少,難以滿足實(shí)際需求。李亦倫[8]等利用Mosaic數(shù)據(jù)增強(qiáng)以及改進(jìn)目標(biāo)檢測(cè)YOLOv4算法,風(fēng)機(jī)葉片缺陷檢測(cè)mAP值達(dá)83%。YOLO系列憑借其出色的性能在風(fēng)機(jī)葉片缺陷檢測(cè)領(lǐng)域受到廣泛關(guān)注。
現(xiàn)有研究方法存在以下不足:①所選取網(wǎng)絡(luò)架構(gòu)的局限性,以v3網(wǎng)絡(luò)模型為例,其對(duì)小目標(biāo)有效特征的提取能力差;②缺陷圖像背景復(fù)雜、缺陷類別多且尺度差異大。如“沙眼”屬于典型的小目標(biāo),而“油污”、“脫漆”目標(biāo)較大。針對(duì)上述問(wèn)題,本文以YOLOx-s網(wǎng)絡(luò)為基礎(chǔ),改進(jìn)網(wǎng)絡(luò)內(nèi)部的殘差結(jié)構(gòu),并融合注意力機(jī)制。改進(jìn)后的網(wǎng)絡(luò)模型大幅提升mAP值的同時(shí)對(duì)上述不足帶來(lái)的問(wèn)題有了明顯改善。
1 YOLOX算法原理
1.1 輸入端、主干網(wǎng)絡(luò)及頸部
YOLOx-s以YOLOv3-spp[9]為基礎(chǔ)進(jìn)行改進(jìn)。算法框架主要分為四個(gè)部分:輸入端(Input)、主干網(wǎng)絡(luò)(Backbone)、頸部(Neck)以及預(yù)測(cè)(Prediction)[10]。輸入端、主干及頸部網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。
輸入端Focus層結(jié)構(gòu)由切片操作和基礎(chǔ)卷積運(yùn)算組成,使得輸入的三通道圖像擴(kuò)充為12通道,在保證低參數(shù)量和計(jì)算量的同時(shí),完成下采樣操作。主干網(wǎng)絡(luò)由CBS、CSPLayer、SPP構(gòu)成,其中CBS模塊包含卷積層、BN層和激活函數(shù);CSPLayer模塊采用殘差結(jié)構(gòu),內(nèi)部包含Resunit,加深了網(wǎng)絡(luò)的總體深度。SPP 模塊由池化核大小為5×5、9×9、13×13的池化操作(Maxpool)和基礎(chǔ)卷積組成,用于擴(kuò)大感受野且不顯著增加模型尺寸。
主干網(wǎng)絡(luò)提取的不同尺度特征層由頸部進(jìn)行深度特征提取及通道融合。其主要由特征金字塔網(wǎng)絡(luò)(feature pyramid network, FPN)、CBS模塊、CSPLayer模塊構(gòu)成。將融合后的特征信息P1_out、P2_out、P3_out輸出到預(yù)測(cè)端。
1.2 預(yù)測(cè)
目標(biāo)檢測(cè)任務(wù)中,同一個(gè)檢測(cè)頭檢測(cè)物體的位置和類別會(huì)嚴(yán)重影響檢測(cè)速度和準(zhǔn)確率。鑒于定位和分類任務(wù)關(guān)注的重心不同,YOLOx-s使用Decoupled head對(duì)此進(jìn)行優(yōu)化。預(yù)測(cè)端網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示。
融合后的特征經(jīng)CBS、卷積層及激活函數(shù)作用,形成三個(gè)分支結(jié)構(gòu),cls_output對(duì)目標(biāo)框類別進(jìn)行分?jǐn)?shù)預(yù)測(cè),obj_output對(duì)前、背景進(jìn)行判別,reg_output預(yù)測(cè)目標(biāo)框的坐標(biāo)信息(x,y,w,h)。最后經(jīng)Concat操作,得到不同維度的特征信息。此外,引入Anchor-free檢測(cè)器和SimOTA(Simplified Optimal Transport Assignment)標(biāo)簽分配機(jī)制以及Focal Loss損失數(shù)。
1.3 損失函數(shù)
YOLOx-s損失由IOU損失、類別損失、置信度損失三部分構(gòu)成。IOU損失指交并比。
[IOU=A∩BA∪B]? ? ⑴
其中,A為預(yù)測(cè)框;B為真實(shí)框。
IOU損失如式⑵:
[LossIOU=1-IOU2]? ⑵
類別損失和置信度損失使用BCEWith LogitsLoss計(jì)算,如式⑶、式⑷:
[lossc=l1,…,lN]? ⑶
[ln=-yn?logσx+1-yn?log1-σxn]? ⑷
其中,N為batch size,本文中設(shè)置為4。每個(gè)批次預(yù)測(cè)n個(gè)標(biāo)簽,c為風(fēng)機(jī)表面缺陷類別,[σx]表示sigmoid函數(shù)。
損失函數(shù)表達(dá)式如下:
[Loss=WeightLossIOU+Lossobj+Losscls]? ?⑸
2 網(wǎng)絡(luò)模型構(gòu)建
針對(duì)風(fēng)機(jī)葉片缺陷檢測(cè)任務(wù)中存在背景干擾、缺陷類型多、目標(biāo)尺寸差異大等問(wèn)題,構(gòu)建如圖3所示的網(wǎng)絡(luò)框架。
主干網(wǎng)絡(luò)由CBS、CSPLayer、SPP、以及替換Resunit使用的殘差模塊(1×1Conv Resunit,CR)構(gòu)成。頸部輸出不同維度的特征信息,通過(guò)輕量型通道注意力機(jī)制(Efficient Channel Attention, ECA)連接到預(yù)測(cè)端,強(qiáng)化網(wǎng)絡(luò)整體對(duì)葉片表面缺陷的感知能力。
2.1 CR殘差模塊
深度殘差網(wǎng)絡(luò)作為一類極深的體系結(jié)構(gòu)出現(xiàn)。實(shí)際應(yīng)用中衍生出不同種類的殘差模塊。Resunit采用傳統(tǒng)結(jié)構(gòu),如圖4(a)所示。殘差部分由CBS模塊構(gòu)成,對(duì)淺層特征做進(jìn)一部提取,經(jīng)addition與直接映射部分進(jìn)行通道融合。其特點(diǎn)在于,提升了網(wǎng)絡(luò)總體深度,可有效避免訓(xùn)練過(guò)程中梯度消失、梯度爆炸等問(wèn)題。但結(jié)構(gòu)簡(jiǎn)單,卷積核大小均為3×3,在小目標(biāo)和被檢測(cè)目標(biāo)尺度差異大的數(shù)據(jù)集上進(jìn)行檢測(cè),性能明顯不足。
CR殘差模塊結(jié)構(gòu)如圖4(b)所示,直接映射部分添加1×1卷積進(jìn)行降維,一定程度上減小主干網(wǎng)絡(luò)的計(jì)算量,卷積核越小,感受野則越小,提取到的特征更為直觀。殘差部分卷積核大小為3×3、5×5,卷積核大,則提取的信息語(yǔ)義層次更高,同時(shí)將第二個(gè)CBS結(jié)構(gòu)中的SiLU激活函數(shù)移動(dòng)到addition后面。利用SiLU激活函數(shù)無(wú)上界有下界、平滑、非單調(diào)的特性對(duì)不同卷積核提取到的featuremap整體進(jìn)行激活運(yùn)算。
CR模塊數(shù)學(xué)函數(shù)表達(dá)如式⑹所示。
[y=hx+f(x)1+exp [-hx+fx]]? ?⑹
其中,x為輸入,y為輸出,h(x)為直接映射部分的1×1卷積操作,f(x)表示殘差部分卷積、BN等一系列操作。相較于Resunit,CR殘差模塊具有更好的特征提取能力,有利于小目標(biāo)和目標(biāo)尺度差異大的缺陷檢測(cè)。
2.2 頸部融合注意力機(jī)制
缺陷檢測(cè)受復(fù)雜背景影響較大,特征提取過(guò)程中存在噪聲干擾。注意力機(jī)制通過(guò)挖掘各通道之間的相互聯(lián)系,學(xué)習(xí)不同通道特征的重要程度,使得網(wǎng)絡(luò)在運(yùn)行過(guò)程中更好的關(guān)注重要特征。輕量型通道注意力機(jī)制ECANet網(wǎng)絡(luò)結(jié)構(gòu)如圖5所示。
該網(wǎng)絡(luò)具備參數(shù)少、速度快、效果好的特點(diǎn)。首先對(duì)輸入進(jìn)來(lái)的特征層進(jìn)行全局平均池化,通道維數(shù)保持不變,然后通過(guò)卷積核大小為k的快速1D卷積實(shí)現(xiàn)跨通道信息交互,再取一次Sigmoid激活函數(shù)將值固定在(0,1)區(qū)間內(nèi),最后將權(quán)值與原輸入特征層相乘,以此來(lái)實(shí)現(xiàn)增加少量計(jì)算的同時(shí),達(dá)到更好的去噪效果。
1D卷積核大小計(jì)算如式⑺所示。
[k=log2C+2]? ⑺
其中,k為1D卷積核大小,C為輸入通道數(shù)且C為偶數(shù)。
3 實(shí)驗(yàn)結(jié)果與分析
3.1 實(shí)驗(yàn)環(huán)境
實(shí)驗(yàn)操作系統(tǒng)為Windows11,GPU 版本為NVIDIA GeForce RTX 3060 Laptop,Pytorch版本為1.10.2。訓(xùn)練時(shí)輸入圖像大小為460×460,初始化IOU為0.5,epoch設(shè)定為300,batch size為4,優(yōu)化器使用Adam。
3.2 數(shù)據(jù)集
通過(guò)無(wú)人機(jī)實(shí)景拍攝,獲取存在缺陷的葉片圖像,共1224張,其中脫漆309張,沙眼305張,裂紋285張,油污325張。使用Imgaug數(shù)據(jù)增強(qiáng)通過(guò)對(duì)圖像進(jìn)行隨機(jī)色域、鏡像、旋轉(zhuǎn)不同角度等變換,得到可用于訓(xùn)練的圖像共4896張,3916張用于訓(xùn)練,496張用做驗(yàn)證集,484張用做測(cè)試集。
使用Labelimg對(duì)葉片缺陷的類別及位置進(jìn)行標(biāo)注,如圖6所示。
3.3 評(píng)價(jià)性指標(biāo)
本文選取了平均準(zhǔn)確率(Average Precision, AP)、平均準(zhǔn)確率均值(mean Average Precision, mAP)、檢測(cè)速率(Frame Per Second,F(xiàn)PS)作為評(píng)價(jià)指標(biāo)。準(zhǔn)確率計(jì)算如下:
[Precision=TPTP+FP×100%]? ?⑻
TP表示檢測(cè)到的缺陷類別與真實(shí)缺陷類別一致的樣本數(shù)量,F(xiàn)P 指檢測(cè)到的缺陷類別與真實(shí)缺陷類別不一致的樣本數(shù)量,F(xiàn)N 指真實(shí)缺陷目標(biāo)存在但未被檢測(cè)出的樣本數(shù)量。
mAP指各類缺陷檢測(cè)準(zhǔn)確率的均值,可以更全面地評(píng)估模型的有效性,計(jì)算如式⑼所示。FPS用于評(píng)估模型在設(shè)備上的處理速度,為用于實(shí)際提供數(shù)據(jù)支撐。
[mAP=i-1NAPiN]? ? ⑼
3.4 消融實(shí)驗(yàn)
以YOLOx-s網(wǎng)絡(luò)模型為基礎(chǔ)進(jìn)行實(shí)驗(yàn),“裂紋”類缺陷的檢測(cè)準(zhǔn)確率為95.32%,由于網(wǎng)絡(luò)模型受復(fù)雜背景及噪聲干擾影響大,導(dǎo)致“沙眼”類的檢測(cè)準(zhǔn)確率僅為87.15%,mAP值低。頸部輸出端融合輕量型通道注意力網(wǎng)絡(luò)連接到預(yù)測(cè)部分,減弱由背景復(fù)雜、噪聲干擾帶來(lái)的問(wèn)題,mAP值提升0.73%。將CR模塊引入到主干網(wǎng)絡(luò),加強(qiáng)網(wǎng)絡(luò)整體對(duì)小目標(biāo)缺陷的特征提取能力,結(jié)果表明,mAP值達(dá)到96.34%且各類缺陷目標(biāo)的檢測(cè)準(zhǔn)確率均得到提升。較YOLOx-s網(wǎng)絡(luò)模型相比,mAP值提高3.16%,訓(xùn)練過(guò)程loss曲線如圖7所示。
在80個(gè)Epoch至180個(gè)Epoch之間,由于葉片表面缺陷尺寸差異大,Loss曲線存在波動(dòng)。
主干網(wǎng)絡(luò)引入CR殘差模塊并融合ECAnet網(wǎng)絡(luò),模型收斂性得到優(yōu)化, loss曲線如圖8所示。
結(jié)合兩種改進(jìn)策略的具體實(shí)驗(yàn)數(shù)據(jù)如表1所示。
本文針對(duì)YOLOx-s提出的兩點(diǎn)改進(jìn)措施使得葉片表面缺陷檢測(cè)mAP值達(dá)到96.61%。“沙眼”類小目標(biāo)的檢測(cè)準(zhǔn)確率提升了6.72%。檢測(cè)速度為39幀/秒,可滿足實(shí)際應(yīng)用的需求。
3.5 檢測(cè)結(jié)果
本文所提網(wǎng)絡(luò)模型檢測(cè)效果如圖9所示。其中,沙眼類小目標(biāo)缺陷檢測(cè)如圖9(a)所示。圖9(c)的檢測(cè)結(jié)果表明,當(dāng)拍攝受到光線或其他葉片的影響時(shí),仍能準(zhǔn)確識(shí)別。多目標(biāo)檢測(cè)效果如圖9(d)所示。
3.6 對(duì)比實(shí)驗(yàn)
為驗(yàn)證本文所提方法在風(fēng)機(jī)葉片缺陷檢測(cè)任務(wù)中的優(yōu)秀表現(xiàn),選取Faster-RCNN、YOLOv3、PP-YOLO、YOLOx-s、Mask R-CNN主流模型進(jìn)行對(duì)比。對(duì)比結(jié)果如表2所示,其中mAP值有較大提升,與YOLOv3相比,mAP值提升了11.61%。相比于PP-YOLO提升了9.61%。
4 結(jié)論與展望
為更好的解決風(fēng)機(jī)葉片缺陷檢測(cè)問(wèn)題,本文提出以YOLOx-s 網(wǎng)絡(luò)模型為基礎(chǔ),首先對(duì)數(shù)據(jù)集進(jìn)行增強(qiáng),達(dá)到可用于訓(xùn)練的規(guī)模,其次對(duì)主干部分的殘差網(wǎng)絡(luò)進(jìn)行改進(jìn),提升檢測(cè)準(zhǔn)確率,最后引入注意力機(jī)制。對(duì)比現(xiàn)階段用于風(fēng)機(jī)葉片缺陷檢測(cè)任務(wù)的主流模型,結(jié)果表明本文所提方法表現(xiàn)最佳,改進(jìn)策略可有效提高檢測(cè)精度。
現(xiàn)階段面臨無(wú)公開(kāi)且缺陷類別多樣的數(shù)據(jù)集。在保持高準(zhǔn)確率的同時(shí)需要進(jìn)一步提升檢測(cè)速率。創(chuàng)建界面顯示系統(tǒng),保存風(fēng)機(jī)編號(hào)及缺陷類型。繼續(xù)優(yōu)化網(wǎng)絡(luò)結(jié)構(gòu),減小模型參數(shù)量,將訓(xùn)練好的模型移植到無(wú)人機(jī)平臺(tái)上進(jìn)行實(shí)時(shí)檢測(cè)并傳回檢測(cè)結(jié)果,真正做到便捷化、智能化。
參考文獻(xiàn)(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] 曹錦綱,楊國(guó)田,楊錫運(yùn).基于RPCA和視覺(jué)顯著性的風(fēng)機(jī)葉片表面缺陷檢測(cè)[J].圖學(xué)學(xué)報(bào),2019,40(4):7.
[5] 胡翔宇.基于音頻信號(hào)特征分析的風(fēng)機(jī)葉片缺陷檢測(cè)方法研究[D].河北:華北電力大學(xué),2020.
[6] 張超,文傳博.基于改進(jìn)Mask R-CNN的風(fēng)機(jī)葉片缺陷檢測(cè)[J].可再生能源,2020,38(9):1181-1186.
[7] 曲忠侃,李學(xué)峰,李鳳俊,等.基于Faster R-CNN的風(fēng)機(jī)葉片缺陷圖像多點(diǎn)檢測(cè)系統(tǒng)設(shè)計(jì)[J].電子設(shè)計(jì)工程,2021,29(4):57-61.
[8] 李亦倫,成和祥,董禮,等.基于改進(jìn)YOLOv4的風(fēng)電機(jī)組葉片缺陷檢測(cè)算法[J].風(fēng)機(jī)技術(shù),2022,64(1):46-53.
[9] 曾凱,李響,賈建梅,等.基于YOLOv3-spp的缺陷檢測(cè)優(yōu)化模型[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2022,31(2):213-219.
[10] 周嘉灝,廖冠中.基于改進(jìn)YOLOX的番茄病葉識(shí)別[J].信息與電腦(理論版),2022,34(4):91-97.