邢志偉,李龍浦,侯翔開(kāi),施亞中,王 浩
(1.中國(guó)民航大學(xué)a.電子信息與自動(dòng)化學(xué)院;b.航空工程學(xué)院;c.工程技術(shù)訓(xùn)練中心,天津 300300;2.北京飛機(jī)維修工程有限公司西南航線中心,成都 610202)
葉片作為航空發(fā)動(dòng)機(jī)的關(guān)鍵性部件,其健康狀態(tài)直接影響飛機(jī)的運(yùn)行安全。航空發(fā)動(dòng)機(jī)葉片在工作時(shí)面臨高溫、高壓、表面壓力分布不均等惡劣環(huán)境,極易造成葉片損傷。由于航空發(fā)動(dòng)機(jī)自身的結(jié)構(gòu)約束,目前發(fā)動(dòng)機(jī)葉片維護(hù)主要由基于孔探技術(shù)的人工目視檢查完成。由于受經(jīng)驗(yàn)主導(dǎo)、人為忽視等因素影響,誤檢和漏檢時(shí)有發(fā)生,因此,提高葉片損傷智能檢測(cè)能力是航空發(fā)動(dòng)機(jī)葉片損傷檢測(cè)的重要研究方向。
Dyrwal 等[1]針對(duì)航空發(fā)動(dòng)機(jī)渦輪葉片微裂紋檢測(cè)提出了非線性空氣耦合熱超聲技術(shù),且在檢測(cè)復(fù)雜元件損傷時(shí)顯示出較高的靈敏度,為非接觸式檢測(cè)航空發(fā)動(dòng)機(jī)渦輪葉片損傷提供了熱成像系統(tǒng)的有效替代方案;Tiwari 等[2]通過(guò)對(duì)超聲波導(dǎo)波信號(hào)進(jìn)行細(xì)化,完成了對(duì)風(fēng)力渦輪機(jī)葉片不同位置脫黏性缺陷的識(shí)別和表征,具有較好的實(shí)驗(yàn)效果;文獻(xiàn)[3-6]分別采用渦流檢測(cè)傳感器技術(shù)、柔性電磁傳感器技術(shù)、葉片單元模態(tài)應(yīng)變能分析技術(shù)、小波變換及SUSAN 邊緣檢測(cè)技術(shù)對(duì)葉片表面損傷進(jìn)行檢測(cè),并取得了良好的檢測(cè)效果。上述研究都是基于傳統(tǒng)的損傷檢測(cè)理論,其應(yīng)用范圍相對(duì)較小,無(wú)法滿足多目標(biāo)的損傷檢測(cè)需求。隨著人工智能技術(shù)的發(fā)展,基于卷積神經(jīng)網(wǎng)絡(luò)[7-9](CNN,convolutional neural network)的多目標(biāo)損傷檢測(cè)方法越來(lái)越受到關(guān)注,在光纖損傷檢測(cè)、下水管道缺陷檢測(cè)、鐵路接觸網(wǎng)緊固件缺陷檢測(cè)等領(lǐng)域應(yīng)用廣泛。這得益于CNN 良好的移植性和數(shù)據(jù)挖掘性,由于其允許新的數(shù)據(jù)可以隨時(shí)加入到數(shù)據(jù)集中,從而不斷優(yōu)化檢測(cè)效果。文獻(xiàn)[10-11]使用卷積神經(jīng)網(wǎng)絡(luò)對(duì)采集到的風(fēng)力渦輪機(jī)葉片圖像進(jìn)行損傷檢測(cè),減少了渦輪機(jī)的維護(hù)和檢查時(shí)間,但是該方法僅對(duì)損傷進(jìn)行分類且只檢測(cè)到部分損傷,無(wú)法對(duì)葉片損傷的部位進(jìn)行定位。除了使用卷積神經(jīng)網(wǎng)絡(luò),張維亮等[12-13]分別利用概率神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)了航空發(fā)動(dòng)機(jī)葉片損傷圖像目標(biāo)區(qū)與背景區(qū)的分割,為快速識(shí)別損傷提供了有力手段,然而在損傷識(shí)別過(guò)程中還需將特征參數(shù)輸入其他識(shí)別網(wǎng)絡(luò),增加了任務(wù)的工作量和復(fù)雜度。
針對(duì)上述研究存在的不足,提出基于更快區(qū)域卷積神經(jīng)網(wǎng)絡(luò)(Faster R-CNN,F(xiàn)aster region-based convolutional neural network)模型進(jìn)行發(fā)動(dòng)機(jī)葉片的損傷檢測(cè)。損傷特征提取方面使用ZF(Zeiler-Fergus)網(wǎng)絡(luò)對(duì)Faster R-CNN 進(jìn)行改進(jìn),不僅可以更加準(zhǔn)確地識(shí)別損傷類型,還能降低漏檢率,極大減輕相關(guān)人員工作強(qiáng)度。
根據(jù)實(shí)際孔探檢測(cè)需要,采用Faster R-CNN 模型進(jìn)行目標(biāo)檢測(cè)。Faster R-CNN 模型由兩部分組成:區(qū)域推薦網(wǎng)絡(luò)(RPN,region proposal network)候選框提取模塊和Fast R-CNN 檢測(cè)模塊,其模型結(jié)構(gòu)如圖1 所示。首先,使用ZF 卷積神經(jīng)網(wǎng)絡(luò)在原始孔探圖像上進(jìn)行特征提取,通過(guò)卷積層、最大池化層、標(biāo)準(zhǔn)化層等層級(jí)生成原圖像的特征圖(feature map);然后將特征圖輸入?yún)^(qū)域推薦網(wǎng)絡(luò)(RPN)模塊篩選出建議區(qū)域;接著將生成的建議區(qū)域和原圖像的特征圖送到Faster R-CNN 中形成感興趣區(qū)域池化層(ROI pooling layer),經(jīng)過(guò)全連接層后產(chǎn)生感興趣區(qū)域特征向量;最后分別經(jīng)過(guò)Softmax 函數(shù)分類和邊界框回歸進(jìn)行位置精修產(chǎn)生葉片損傷類別和概率以及損傷所在位置。
圖1 Faster R-CNN 模型Fig.1 Faster R-CNN model
ZF 網(wǎng)絡(luò)是一種深度學(xué)習(xí)模型,具有可視化不同網(wǎng)絡(luò)層的功能,且在圖像分類方面優(yōu)于其他主流圖像分類模型,因此,選用該網(wǎng)絡(luò)進(jìn)行航空發(fā)動(dòng)機(jī)葉片損傷圖像特征提取。ZF 網(wǎng)絡(luò)體系結(jié)構(gòu)如圖2 所示,其中前5 層均包含卷積層(convolution layer,簡(jiǎn)稱conv),最后兩層則包含全連接層、失活層、激活層(rectified linear unit incentive layer,簡(jiǎn)稱relu)和標(biāo)準(zhǔn)化層(normalization layer,簡(jiǎn)稱norm)等(圖中省略了失活層、激活層和標(biāo)準(zhǔn)化層)。在第1 層卷積層(conv1)中有96 個(gè)尺寸為7×7,步長(zhǎng)(卷積核每次移動(dòng)的像素距離)為2的卷積核,然后是激活層1(relu1)、標(biāo)準(zhǔn)化層1(norm1)和池化層1(pool1),其中池化層的池化窗口為5×5,步長(zhǎng)為2;第2 層網(wǎng)絡(luò)結(jié)構(gòu)類似于第1 層;第3、4、5 層中卷積層后均為激活層,但第5層在激活層后還有1個(gè)池化層5(pool5)。ZF 網(wǎng)絡(luò)各層的參數(shù)如表1 所示(全連接層等層除外)。取前5 個(gè)卷積層作為RPN和Faster R-CNN 檢測(cè)模塊的共享卷積層,將第5 層最大池化層作為Faster R-CNN 檢測(cè)模塊中感興趣區(qū)域池化層。
圖2 ZF 網(wǎng)絡(luò)體系結(jié)構(gòu)圖Fig.2 Architecture diagram of ZF network
表1 ZF 網(wǎng)絡(luò)各層參數(shù)表Tab.1 Parameter table of ZF network layers
為了更加準(zhǔn)確地提取葉片損傷特征,相較于原來(lái)的ZF 網(wǎng)絡(luò),在conv5 層的末尾添加另外3 個(gè)卷積層,接著是池化層,如圖3 所示。由于卷積運(yùn)算的目的是提取輸入的不同特征,添加卷積層可以對(duì)更多的邊緣、角和線條等損傷特征進(jìn)行更詳盡的提取,從而提高模型的識(shí)別精度。此外,在添加的3 個(gè)卷積層上應(yīng)用384 個(gè)尺寸為3×3 的卷積核,其步長(zhǎng)為1。在池化層應(yīng)用3×3 的池化窗口,其步長(zhǎng)為2。對(duì)于超參數(shù),在共享網(wǎng)絡(luò)的conv1 中將卷積核的尺寸由7×7 變?yōu)?×5;在conv2 中將卷積核尺寸由5 × 5 變?yōu)? × 3;在pool2 中,將池化窗口的步長(zhǎng)變?yōu)?,改進(jìn)網(wǎng)絡(luò)各層的參數(shù)如表2 所示(全連接等層除外)。這里取前8 個(gè)卷積層作為RPN 和Faster R-CNN 檢測(cè)模塊的共享卷積層,將第8 層最大池化層作為Faster R-CNN 檢測(cè)模塊中感興趣區(qū)域池化層。
圖3 改進(jìn)的ZF 網(wǎng)絡(luò)體系結(jié)構(gòu)圖Fig.3 Architecture diagram of improved ZF network
表2 改進(jìn)的ZF 網(wǎng)絡(luò)各層參數(shù)表Tab.2 Parameter table of improved ZF network layers
在卷積層中,卷積核與圖像局部陣列做卷積運(yùn)算,直到順次遍歷完整個(gè)圖像陣列后完成一次特征提取。卷積后的輸出寬度W2、高度H2和深度D2計(jì)算如下
式中:W1和H1分別為輸入的寬度和高度;K為卷積核的個(gè)數(shù);F為卷積核的寬度(等于高度);S為步長(zhǎng);P為0 填充的數(shù)量。
卷積操作后為了提取在不同位置和規(guī)模上特征的變化,同時(shí)聚合不同特征映射的響應(yīng)往往需要進(jìn)行池化操作。根據(jù)池化方式不同,池化層分為平均池化(mean-pooling)、最大池化(max-pooling)以及隨機(jī)池化(stochastic-pooling)等。為了更多地保留葉片損傷的紋理信息,選用最大池化。最大池化層具有平移不變性、擴(kuò)大感受范圍等特性。池化后的輸出寬度W3、高度H3和深度D3計(jì)算如下
式中:D1為輸入的深度;R為池化窗口的寬度(等于高度)。
Faster R-CNN 模型根據(jù)已有發(fā)動(dòng)機(jī)葉片損傷數(shù)據(jù)集采用端到端(end-to-end)的4 步交替訓(xùn)練,在每個(gè)隨機(jī)梯度下降迭代中,前向傳播階段生成建議區(qū)域得到各層參數(shù)及損失函數(shù);反向傳播階段通過(guò)有監(jiān)督調(diào)優(yōu)得到權(quán)值更新及超參數(shù)優(yōu)化。
通過(guò)若干個(gè)輸入特征圖Yl-1,i分別和卷積核進(jìn)行運(yùn)算并組合得到第l個(gè)卷積層的第j個(gè)特征圖Yl,j,即
式中:f(·)為ReLu 激活函數(shù),即f(x)=max(0,x);bl,j為Yl,j的偏置;wl,i為Yl,j第i個(gè)輸入特征圖的權(quán)重。
由于卷積過(guò)程中存在相互重疊的部分,從而造成了信息的冗余,而池化層進(jìn)行下采樣可以減少輸入數(shù)據(jù)的空間大小。因此,采用在激活之后通過(guò)最大池化操作,即取來(lái)自輸入像素陣列的子陣列的最大值,這可以在減少計(jì)算負(fù)荷的同時(shí)防止過(guò)擬合以及保留有用信息。最大池化操作為
在反向傳播學(xué)習(xí)過(guò)程中進(jìn)行超參數(shù)的更新,卷積層神經(jīng)元權(quán)值由第t次到t+1 次的更新為
最大池化層更新神經(jīng)元權(quán)值為
式中:λ 為學(xué)習(xí)速率;E表示有C種類別、訓(xùn)練樣本為N個(gè)的網(wǎng)絡(luò)模型整體樣本方差代價(jià)函數(shù),表示為
式中tn,k和yn,k為第n個(gè)訓(xùn)練圖像對(duì)應(yīng)的第k維真實(shí)標(biāo)簽和實(shí)際輸出標(biāo)簽。
損失函數(shù)通常為
如果建議區(qū)域與實(shí)際區(qū)域之間的交并比(IoU,intersection of union)超過(guò)閾值0.7,則認(rèn)為該建議區(qū)域是正訓(xùn)練樣本;如果建議區(qū)域與實(shí)際區(qū)域之間的重疊率低于閾值0.3,則認(rèn)為該建議區(qū)域是負(fù)訓(xùn)練樣本。使用多任務(wù)損失函數(shù)訓(xùn)練建議區(qū)域,具體公式為
式中:i為錨框的索引;pi為錨框i預(yù)測(cè)為某種發(fā)動(dòng)機(jī)葉片缺陷的概率;pi*為錨框i為實(shí)際葉片缺陷的標(biāo)簽,當(dāng)錨框標(biāo)識(shí)出真實(shí)的葉片損傷時(shí),pi*=1,否則pi*= 0;ti=(tx,ty,tw,th)表示預(yù)測(cè)邊界框中心坐標(biāo)及寬高值的向量;ti*為真實(shí)邊界框?qū)?yīng)的向量;Ncls和Nreg為兩個(gè)標(biāo)準(zhǔn)化因子,由平衡參數(shù)θ 加權(quán),令Ncls=256,Nreg=2 400,平衡參數(shù)[14]θ=10;Lcls(pi,pi*)=-log[pi pi*+(1-pi*)(1-pi)]表示兩個(gè)類別(目標(biāo)與非目標(biāo))的對(duì)數(shù)分類損失函數(shù);Lreg(ti,ti*)=smoothL1(ti-ti*)表示回歸損失,其中為魯棒損失函數(shù)。
在訓(xùn)練過(guò)程中RPN 采用反向傳播(BP,back-propagation)和隨機(jī)梯度下降(SGD,stochastic gradient descent)進(jìn)行端到端訓(xùn)練,設(shè)置動(dòng)量為0.9、權(quán)值衰減為0.000 5、學(xué)習(xí)速率λ 為0.001,雖然衰減權(quán)值很小,但可以有效減小模型的訓(xùn)練錯(cuò)誤概率。
選取某航空公司機(jī)務(wù)維修孔探數(shù)據(jù)作為數(shù)據(jù)集,數(shù)據(jù)集中出現(xiàn)頻次最多的4 種典型損傷類型如圖4所示。初始數(shù)據(jù)集為500 張分辨率為640×480 的發(fā)動(dòng)機(jī)葉片圖像,經(jīng)過(guò)數(shù)據(jù)增強(qiáng)操作后容量擴(kuò)大到2 000張。實(shí)驗(yàn)基于Ubuntu 16.04 LTS 系統(tǒng),采用Pytorch 深度學(xué)習(xí)框架構(gòu)建航空發(fā)動(dòng)機(jī)葉片損傷檢測(cè)網(wǎng)絡(luò)。
圖4 孔探數(shù)據(jù)集中4 種典型損傷類型Fig.4 Four typical damage types in borescope dataset
為了對(duì)比改進(jìn)ZF 網(wǎng)絡(luò)與原始ZF 網(wǎng)絡(luò)的性能,從已有數(shù)據(jù)集分別隨機(jī)抽取1 000、1 500、2 000 張圖片組成子數(shù)據(jù)集A、B、C。在選取數(shù)據(jù)集時(shí)以盡量滿足各種損傷類型數(shù)量基本一致的原則,其中在子數(shù)據(jù)集中選取75%的圖片作為訓(xùn)練集、10%作為驗(yàn)證集、15%作為測(cè)試集,然后在各測(cè)試集上分別使用兩種模型進(jìn)行訓(xùn)練及驗(yàn)證,ZF 網(wǎng)絡(luò)改進(jìn)前后識(shí)別結(jié)果對(duì)比如圖5所示。
圖5 ZF 網(wǎng)絡(luò)改進(jìn)前后識(shí)別結(jié)果對(duì)比Fig.5 Comparison of recognition results before and after ZF network improvement
圖5 中左側(cè)為原始ZF 網(wǎng)絡(luò)的識(shí)別結(jié)果,右側(cè)為改進(jìn)ZF 網(wǎng)絡(luò)后的識(shí)別結(jié)果。從圖5 中可以看出,改進(jìn)后在識(shí)別準(zhǔn)確性、識(shí)別數(shù)量和識(shí)別精度方面有較大提高,但也存在誤檢情況。
機(jī)器學(xué)習(xí)中常用的衡量目標(biāo)分類的評(píng)價(jià)指標(biāo)有:PR(precision-recall)曲線、丟失率(MR,missing rate)、平均精度(AP,average precision)、平均精度均值(MAP,mean average precision)。
精確度P 越高表示檢測(cè)結(jié)果的正確性越高,召回率R 越高表示在檢測(cè)的正樣本中假的負(fù)樣本比例越小,其計(jì)算公式表示為
式中:TP為真的正樣本,表示正確檢測(cè)為損傷的數(shù)量;FP為假的正樣本,表示將非損傷檢測(cè)為損傷的數(shù)量;FN為假的負(fù)樣本,表示將損傷檢測(cè)為非損傷的數(shù)量。
丟失率MR 越低表示檢測(cè)過(guò)程中丟失的檢測(cè)目標(biāo)越少,計(jì)算公式表示為
平均精度和平均精度均值計(jì)算公式分別為
將數(shù)據(jù)集A、B、C 基于原始與改進(jìn)ZF 網(wǎng)絡(luò)建立模型并進(jìn)行性能評(píng)估,結(jié)果如表3 所示。采用改進(jìn)ZF網(wǎng)絡(luò)較原始ZF 網(wǎng)絡(luò)在每個(gè)數(shù)據(jù)集模型得到的PMAP均有一定程度提升,最高可達(dá)5.5%。檢測(cè)的平均精度PAP也得到了相應(yīng)增加,最高可達(dá)11.2%??赡苁怯捎陬~外添加的卷積層可從輸入圖像提取更準(zhǔn)確的特征信息,更小的卷積核可以在卷積過(guò)程中保留更多的有用特征,更小的步長(zhǎng)可以在池化過(guò)程中防止重要特征信息的丟失。
表3 原始ZF 網(wǎng)絡(luò)與改進(jìn)ZF 網(wǎng)絡(luò)性能評(píng)估Tab.3 Performance evaluation on original and improved ZF models
各種損傷的PR 曲線如圖6 所示,從圖6 中可以看出,隨著召回率的增加,精確度在遞減,可能是由于隨著置信度閾值的增加,模型預(yù)測(cè)假的負(fù)樣本越來(lái)越少,而假的正樣本越來(lái)越多。由于航空發(fā)動(dòng)機(jī)葉片損傷識(shí)別的目的在于識(shí)別和定位葉片上的缺陷以了解葉片健康狀況,所以希望有更少的缺陷被忽略,因此,精確度相對(duì)召回率更重要。此外,從圖6 中還可以發(fā)現(xiàn)改進(jìn)ZF 網(wǎng)絡(luò)的PR 曲線高于使用相同數(shù)據(jù)集訓(xùn)練的原始網(wǎng)絡(luò)的PR 曲線,這就說(shuō)明改進(jìn)ZF 網(wǎng)絡(luò)在檢測(cè)航空發(fā)動(dòng)機(jī)葉片損傷方面有更高的檢測(cè)精度。但在某些情況下也存在一些準(zhǔn)確性波動(dòng),如圖5(d)中改進(jìn)ZF 網(wǎng)絡(luò)識(shí)別結(jié)果也出現(xiàn)明顯錯(cuò)誤,這是因?yàn)槟繕?biāo)的形狀、顏色以及明暗對(duì)比強(qiáng)度都會(huì)影響模型的檢測(cè)精度。
圖6 原始與改進(jìn)ZF 網(wǎng)絡(luò)檢測(cè)不同損傷的PR 曲線Fig.6 PR curves of original and improved ZF networks for detecting different damages
不同損傷的丟失率曲線如圖7 所示。從圖7 可看出,丟失率隨著每張圖片中假的正樣本所占比例的增加而降低,且每個(gè)損傷類型使用相同數(shù)據(jù)集訓(xùn)練的改進(jìn)網(wǎng)絡(luò)丟失率曲線通常低于原始網(wǎng)絡(luò)的丟失率曲線,表明使用改進(jìn)ZF 網(wǎng)絡(luò)相比原始ZF 網(wǎng)絡(luò)發(fā)現(xiàn)更多的缺陷。
圖7 原始與改進(jìn)ZF 網(wǎng)絡(luò)檢測(cè)不同損傷的丟失率曲線Fig.7 Missing rate curves of original and improved ZF networks for detecting different damages
針對(duì)航空發(fā)動(dòng)機(jī)葉片損傷識(shí)別,提出了基于Faster R-CNN 模型的改進(jìn)ZF 網(wǎng)絡(luò)以實(shí)現(xiàn)孔探圖像中損傷目標(biāo)的精準(zhǔn)檢測(cè),改進(jìn)ZF 網(wǎng)絡(luò)相較于原始ZF 網(wǎng)絡(luò)的平均精度均值有明顯提高。但改進(jìn)ZF 網(wǎng)絡(luò)在提高檢測(cè)精度的同時(shí)會(huì)降低檢測(cè)速度,影響檢測(cè)效率。
為了能夠?qū)崿F(xiàn)葉片損傷的近似實(shí)時(shí)檢測(cè)及增加對(duì)微缺陷的召回率,在后續(xù)工作中將考慮對(duì)網(wǎng)絡(luò)結(jié)構(gòu)作優(yōu)化調(diào)整,同時(shí)在RPN 檢測(cè)模塊考慮增加尺度為64 px 的錨框,并進(jìn)一步通過(guò)優(yōu)化非極大值抑制機(jī)制減少區(qū)域推薦的數(shù)量。