陳 為,鐘欣童,張 婧,李澤辰
(1. 青島科技大學(xué)自動(dòng)化與電子工程學(xué)院,山東 青島 266000;2. 青島北海船舶重工有限責(zé)任公司,山東 青島 266000)
隨著我國軍事化進(jìn)程的加速和空軍力量的增強(qiáng),飛機(jī)的執(zhí)勤任務(wù)與日俱增。航空發(fā)動(dòng)機(jī)是航空飛行器中的重要組成部件,它的正常運(yùn)行將直接決定飛行器的安穩(wěn)運(yùn)轉(zhuǎn)。目前飛機(jī)上大量使用的發(fā)動(dòng)機(jī)是渦扇發(fā)動(dòng)機(jī),它通過不斷提升渦輪前溫度來提高推重比,這使得渦輪葉片的工作溫度很高,凸臺易發(fā)生形變錯(cuò)位,對飛機(jī)行駛造成安全隱患。
一般情況下葉片凸臺位于航空發(fā)動(dòng)機(jī)內(nèi)部,外側(cè)有風(fēng)扇整流罩覆蓋,無法直接用肉眼觀測檢查。而且航空發(fā)動(dòng)機(jī)內(nèi)部機(jī)械構(gòu)造復(fù)雜且精密,空間狹小,加大了葉片凸臺的維修難度。目前對葉片凸臺的檢修多采用將發(fā)動(dòng)機(jī)拆開,用肉眼檢查的方法,拆機(jī)和組裝耗費(fèi)了大量的人力和時(shí)間成本。而且現(xiàn)有對發(fā)動(dòng)機(jī)葉片的目標(biāo)檢測多集中于對葉片表面缺陷的檢測[1,2],對葉片凸臺的缺陷檢測則極少被關(guān)注。
因此本文提出的從航空發(fā)動(dòng)機(jī)內(nèi)部對葉片凸臺進(jìn)行目標(biāo)檢測的算法,填補(bǔ)了對葉片凸臺進(jìn)行目標(biāo)檢測的空白,極大地提高了檢修效率。及時(shí)預(yù)警對發(fā)動(dòng)機(jī)葉片進(jìn)行維護(hù),這對于保障飛行安全,提高我國航空工業(yè)水平有著非常重要的意義。
近年來,基于深度學(xué)習(xí)的計(jì)算機(jī)視覺[3]算法迅速發(fā)展,在目標(biāo)檢測、目標(biāo)跟蹤、語義分割的應(yīng)用中都取得了較好的效果[4]。目前基于深度學(xué)習(xí)的目標(biāo)檢測[5]模型可大致分為兩類:基于候選區(qū)域(region proposal)的目標(biāo)檢測模型如R-CNN、Faster R-CNN[6]、R-FCN[7]等;和基于選框回歸方法的目標(biāo)檢測模型如YOLO[8]、SSD[9]等。
本文采用2020年由Alexey Bochkovskiy等人提出的YOLOv4[10]模型對葉片凸臺進(jìn)行目標(biāo)檢測,隨后使用數(shù)據(jù)增強(qiáng)處理數(shù)據(jù)集,用聚類分析的方法對默認(rèn)候選框進(jìn)行改進(jìn),進(jìn)一步提高目標(biāo)檢測的準(zhǔn)確率。
YOLO(You Only Look Once)系列的核心思想十分簡潔,即利用整張圖片作為網(wǎng)絡(luò)的輸入,直接在輸出層回歸候選框的位置和類別。
YOLO模型作為一種基于選框回歸方法的目標(biāo)檢測算法,通常由三部分組成,如圖1。
1)主干網(wǎng)絡(luò)(Backbone):從圖像中抽取特征,例如VGG[11]和ResNet-50[12]都是常用的主干網(wǎng)絡(luò);
2)銜接部分(Neck):用于連接主干網(wǎng)絡(luò)與頭部結(jié)構(gòu);
3)密集連接頭(DenseHead):用于在特征圖上進(jìn)行密集的位置相關(guān)操作,其中RPN、Retina[13]、FCOS[14]等Head是具有代表性的操作。
圖1 基于選框回歸的目標(biāo)檢測模型
YOLOv4是第四代YOLO目標(biāo)檢測模型,它的主要目的在于設(shè)計(jì)一個(gè)能夠應(yīng)用于實(shí)際工作環(huán)境中的快速目標(biāo)檢測系統(tǒng),且能夠被并行優(yōu)化。YOLOv4模型與YOLOv3整體預(yù)測思路沒有區(qū)別,但在YOLOv3模型的基礎(chǔ)上引入了大量創(chuàng)新改進(jìn),以達(dá)到算法精度和速度的平衡。
YOLOv4在輸入端使用了自對抗訓(xùn)練(Self-Adversarial Training)[15]。在主干特征提取網(wǎng)絡(luò)中,借鑒2019年CSPnet(Cross Stage Partial Networks)[16]的經(jīng)驗(yàn),產(chǎn)生新的Backbone結(jié)構(gòu)CSPDarknet53,并且在其中使用了Mish激活函數(shù)提高精度
Mish=x×tanh(ln(1+ex))
(1)
同時(shí)在特征金字塔中采用SPP(Spatial Pyramid Pooling)[17]和PANet(Path Aggregation Network)[18]特征提取結(jié)構(gòu),SPP結(jié)構(gòu)如圖2,它能夠極大地增加感受野,分離出最顯著的上下文特征。PANet對特征進(jìn)行反復(fù)提取,提高特征提取的能力。
圖2 SPP結(jié)構(gòu)
YOLOv4中回歸損失函數(shù)采用了CIOU Loss的回歸方式
(2)
CIOU將目標(biāo)與候選框之間的距離、重疊率、尺度以及邊界框中心點(diǎn)距離的信息都考慮進(jìn)去,使得目標(biāo)回歸變得更加穩(wěn)定,預(yù)測框回歸的速度和精度更高。
遷移學(xué)習(xí)是一種機(jī)器學(xué)習(xí)的方法,指的是一個(gè)預(yù)訓(xùn)練的模型被重新用在另一個(gè)任務(wù)中。遷移學(xué)習(xí)的主要思想是從相關(guān)領(lǐng)域中遷移標(biāo)注數(shù)據(jù)或者知識結(jié)構(gòu)、完成或改進(jìn)目標(biāo)領(lǐng)域或任務(wù)的學(xué)習(xí)效果。目前遷移學(xué)習(xí)在訓(xùn)練神經(jīng)網(wǎng)絡(luò)中廣泛使用。為了進(jìn)一步提高模型訓(xùn)練效率,本文實(shí)驗(yàn)在訓(xùn)練前使用遷移學(xué)習(xí)的方法,加載預(yù)訓(xùn)練模型。
針對本文數(shù)據(jù)集圖片角度變化多、目標(biāo)尺寸變化大的特點(diǎn),選用通用性較好、種類豐富的coco數(shù)據(jù)集進(jìn)行遷移學(xué)習(xí)。將在公開數(shù)據(jù)集coco上訓(xùn)練好的檢測模型權(quán)重加載到Y(jié)OLOv4模型中,在訓(xùn)練中對該模型不斷進(jìn)行修改調(diào)整,使模型不必從零開始訓(xùn)練。
由于開始加載的YOLOv4預(yù)訓(xùn)練模型的網(wǎng)絡(luò)權(quán)重是在coco數(shù)據(jù)集上訓(xùn)練得到的,coco數(shù)據(jù)集包括80種類別目標(biāo),且該數(shù)據(jù)集檢測目標(biāo)與本文所檢測的飛機(jī)葉片凸臺差異較大,不符合本數(shù)據(jù)集的先驗(yàn)框尺寸。針對這一缺點(diǎn),使用聚類分析的方法改進(jìn)默認(rèn)先驗(yàn)框尺寸。通過對凸臺訓(xùn)練集中已標(biāo)注好的先驗(yàn)框進(jìn)行聚類分析,找到適合尺寸的先驗(yàn)框,修改原始的先驗(yàn)框尺寸,使得特征層產(chǎn)生的先驗(yàn)框尺寸更好地匹配待測目標(biāo)。
K-Means聚類是聚類分析中最常用的方法之一,它是基于點(diǎn)與點(diǎn)距離的相似度來計(jì)算最佳類別歸屬。本文采用k均值聚類算法對飛機(jī)凸臺訓(xùn)練集數(shù)據(jù)進(jìn)行聚類分析,得到對應(yīng)的先驗(yàn)框尺寸。
3.3.1 原數(shù)據(jù)集的制作
本實(shí)驗(yàn)的數(shù)據(jù)集是使用內(nèi)窺鏡從飛機(jī)發(fā)動(dòng)機(jī)內(nèi)部拍攝的葉片凸臺視頻,對視頻進(jìn)行逐幀提取,得到葉片凸臺圖像,對圖像進(jìn)行裁剪及篩選,再使用標(biāo)注工具LabelImg進(jìn)行標(biāo)注,制作本文的數(shù)據(jù)集。
LabelImg是專門為YOLO系列算法設(shè)計(jì)的數(shù)據(jù)集,利用該標(biāo)注工具,手動(dòng)完成矩形框標(biāo)注,得到存儲著坐標(biāo)信息的.xml標(biāo)簽文件,如圖3所示。制作格式為PascalVOC數(shù)據(jù)集格式,一共得到標(biāo)注圖片2613張。
圖3 數(shù)據(jù)集制作過程
3.3.2 數(shù)據(jù)集的改進(jìn)
原算法中檢測的多為固定角度拍攝的目標(biāo),由于本文檢測時(shí)所拍攝的視頻角度不固定,增加了檢測的難度。而針對在訓(xùn)練時(shí)單張圖片訓(xùn)練時(shí)角度單一,魯棒性差的缺點(diǎn),本文使用Mosaic數(shù)據(jù)增強(qiáng)的方法對數(shù)據(jù)集進(jìn)行處理。
Mosaic數(shù)據(jù)增強(qiáng)是一種將4張訓(xùn)練圖片混合成一張的新數(shù)據(jù)增強(qiáng)方法,這樣可以豐富圖像的上下文信息,增強(qiáng)模型的魯棒性。
本文采用的實(shí)驗(yàn)設(shè)備為物理服務(wù)器,Ubuntu操作系統(tǒng),顯卡為GPU GeForce GTX 1080Ti;開發(fā)環(huán)境為Tensorflow1.13,Keras2.1.5,Numpy1.17.4,cuda10.0,cudnn7.4.1.5,python3.7。
本文實(shí)驗(yàn)以2309張分辨率為300*300的凸臺圖像作為訓(xùn)練集,304張作為測試集,初始學(xué)習(xí)率為1e-3,預(yù)熱學(xué)習(xí)率為1e-5,訓(xùn)練共50個(gè)epoches,檢測時(shí)重疊閾值設(shè)為0.5。
4.2.1 本文網(wǎng)絡(luò)模型檢測結(jié)果
本文基于YOLOv4算法,通過使用K-Means算法對本文飛機(jī)發(fā)動(dòng)機(jī)葉片凸臺進(jìn)行目標(biāo)檢測。檢測結(jié)果選取各個(gè)角度的葉片凸臺如圖4(圖中藍(lán)色為檢測框真實(shí)值,綠色為預(yù)測正確的檢測框,紅色為預(yù)測錯(cuò)誤的檢測框)。
圖4 目標(biāo)檢測結(jié)果
4.2.2 先驗(yàn)框修改前后結(jié)果
本實(shí)驗(yàn)使用K-Means聚類分析對模型的先驗(yàn)框尺寸進(jìn)行修改。修改前后的先驗(yàn)框尺寸如表1所示。
表1 改進(jìn)前后先驗(yàn)框尺寸
由上表可以看出,經(jīng)過對本文數(shù)據(jù)集標(biāo)注框的聚類分析,去掉了原本過大和過小尺寸的不適合的先驗(yàn)框。
修改先驗(yàn)框前后檢測結(jié)果示例如圖5,P-R曲線(precision-recall)如圖6,圖中橫坐標(biāo)是召回率,縱坐標(biāo)是模型準(zhǔn)確率,圖中陰影部分的面積可以體現(xiàn)模型性能,面積越大代表模型性能越好。
圖5 修改先驗(yàn)框前后檢測結(jié)果_805.jpg
圖6 修改先驗(yàn)框前后的P-R曲線對比
從修改先驗(yàn)框前后的檢測結(jié)果對比可以看出,模型對凸臺檢測的精確度從76.62%提高到了89.99%,通過調(diào)整先驗(yàn)框尺寸提高了對葉片凸臺的檢測能力,在多角度下的檢測做到了很好的識別效果。而且由于去除了較大的先驗(yàn)框尺寸,使得對與凸臺相似的縫隙的誤檢情況減少,如圖5中對805.jpg的檢測,實(shí)驗(yàn)結(jié)果表明,對先驗(yàn)框尺寸的修改提高了檢測準(zhǔn)確率。
4.2.3 數(shù)據(jù)增強(qiáng)前后結(jié)果
本實(shí)驗(yàn)使用Mosaic方法對數(shù)據(jù)集進(jìn)行數(shù)據(jù)增強(qiáng)。如圖7為數(shù)據(jù)增強(qiáng)處理后結(jié)果。
圖7 Mosaic數(shù)據(jù)增強(qiáng)處理后圖片
將改進(jìn)后的數(shù)據(jù)集投入訓(xùn)練,兩次改進(jìn)實(shí)驗(yàn)結(jié)果如表2,同時(shí)與在相同實(shí)驗(yàn)條件下SSD模型在本數(shù)據(jù)集訓(xùn)練結(jié)果進(jìn)行對比。
表2 實(shí)驗(yàn)結(jié)果對比
從上表實(shí)驗(yàn)結(jié)果可以看出,分別進(jìn)行修改先驗(yàn)框和數(shù)據(jù)增強(qiáng)后模型性能均有明顯提升。當(dāng)疊加兩種改進(jìn)后,在檢測精度(precision)方面,改進(jìn)后的YOLOv4模型相較于原始模型精確度提高了15.85%;在召回率(recall)方面,改進(jìn)后提高了21%;而由于Mosaic數(shù)據(jù)增強(qiáng)并沒有改變先驗(yàn)框的尺寸,所以在平均交并比方面沒有太大的提升。在精度、召回率、平均交并比的對比中,本實(shí)驗(yàn)?zāi)P途黠@好于SSD模型及改進(jìn)SSD模型,由此可以證明,本實(shí)驗(yàn)?zāi)P透舆m合對凸臺的目標(biāo)檢測。
圖8 Mosaic和修改先驗(yàn)框后的P-R曲線
最終改進(jìn)的模型P-R曲線如圖8,與原模型的P-R曲線對比,圖中陰影面積占比顯著增大,這表示改進(jìn)后的模型在召回率增大的同時(shí),精確度仍保持較高的水平,證明改進(jìn)后的YOLOv4模型的性能有一定的提升。
本文針對飛機(jī)發(fā)動(dòng)機(jī)內(nèi)部葉片凸臺的目標(biāo)檢測問題進(jìn)行研究,將最近開源的YOLOv4模型應(yīng)用于對凸臺的檢測系統(tǒng),加入遷移學(xué)習(xí)和Mosaic數(shù)據(jù)增強(qiáng),以調(diào)整先驗(yàn)框尺寸為方向改進(jìn)得到一種適合葉片凸臺檢測的網(wǎng)絡(luò)模型,提高了對葉片凸臺的檢測精度和系統(tǒng)的性能。實(shí)驗(yàn)結(jié)果表明,本文提出的改進(jìn)YOLOv4模型可以有效解決從飛機(jī)發(fā)動(dòng)機(jī)內(nèi)部對葉片凸臺進(jìn)行目標(biāo)檢測的問題。接下來考慮根據(jù)拍攝角度不同對葉片凸臺圖片進(jìn)行分類,以進(jìn)一步提高檢測效果。