?

基于新型深度神經網絡的民機表面缺陷識別

2020-04-09 04:48張德銀陳從翰黃選紅徐志強
計算技術與自動化 2020年1期
關鍵詞:殘差

張德銀 陳從翰 黃選紅 徐志強

摘? ?要:為解決機務人員依靠經驗來對民航飛機的表面缺陷進行識別時易發生誤判的問題,開發了一種用于民機表面的缺陷識別的結合Inception-net和殘差模塊的新型深度神經網絡。首先,通過對各機場的在修飛機表面缺陷進行采樣建立數據集,手段包括使用圖像處理修復不合格圖像、使用數據增強緩解數據類別不平衡、使用立方卷積插值法降采樣保留圖像特征等圖像預處理操作。然后在自建的數據集上對新型深度神經網絡與其他神經網絡進行對比測試。實驗結果表明,新型神經網絡在較少的參數下能夠達到最深的網絡深度,且在自建數據集的測試集上的識別率和查全率分別為74.23%和62.29%,優于進行對比的其他網絡。說明在一定程度上該網絡能夠有效用于民機表面缺陷識別工作中。

關鍵詞:民航飛機;表面缺陷識別;殘差;Inception-net;深度神經網絡

中圖分類號:TP391.4? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?文獻標識碼:A

Investigation of Civil Aviation Aircraft Surface Defects Recognition Based

on Novel Designed Deep Neural Network

ZHANG De-yin,CHEN Cong-han?覮,HUANG Xuan-hong,XU Zhi-qiang

(Aviation Engineering Institute,Civil Aviation Flight University of China,Guanghan,Sichuan 618307,China)

Abstract:A novel designed neural network combining the Inception-net and the residual module is employed to identify surface defects of civil aviation aircraft,in order to solve the problems of that the maintenance crew easy to misjudge surface defects of civil aviation aircraft. Firstly,the data set has been established by sampling surface defects of aircraft from various airlines and overhaul factory. Including the use of image processing methods to repair unqualified images;the use of data enhancement to alleviate the problem of data category imbalance;the use of cubic convolution interpolation to down sample and preserve image features and other operations to image preprocessing data. Secondly,the new designed neural network is compared with other neural networks on self-built data sets. The experimental results show that the new neural network has the deepest network depth with fewer parameters in all tested networks. And the recognition rate and recall rate on the test set are 74.23% and 62.29%,respectively,which is better than other neural networks.It shows that the network can be effectively used for civil aircraft surface defect identification to some extent.

Key words:civil aviation aircraft;surface defect recognition;residual;Inception-net;deep neural network

民航飛機結構由于受到疲勞載荷和腐蝕環境等因素的作用,因而會產生疲勞、腐蝕等損傷缺陷。對于老齡民航飛機而言,這是一個隨著服役時間增加而不斷發展和累積的不可逆損傷過程[1]。剛剛服役的民航飛機表面缺陷并不嚴重,但隨著服役時間的增加以及在運期間所處環境惡劣,飛機受疲勞載荷和腐蝕等因素的影響會越來越嚴重[2]。在飛機服役的中后期,其缺陷損傷會逐漸演化為制約老齡飛機服役的重要因素之一。目前我國對飛機表面缺陷的檢查一直是機務人員靠肉眼定期檢查和航前、過站及航后檢查相結合的方式[3]。定期檢查即按照手冊中的疲勞壽命(包括飛行小時、起落數)和日歷壽命兩項指標,以先到者為準[4]。由于我國對于飛機壽命指標與缺陷防護方面的研究起步較晚,技術基礎比較薄弱,導致相當一部分飛機的檢修時間全憑機務維修人員經驗得出。而航前、過站及航后檢查對于一些明顯的缺陷可以迅速發現,但對于一些不太明顯的缺陷容易遺漏[5]。隨著時間的推移,國內大批的在役飛機已經過半或者是接近服役年限,每年針對這類飛機表面缺陷識別與維護工作耗費了大量的資金與人力[6],需要尋找更加方便快捷的新型飛機表面缺陷識別技術應對此項挑戰。與基于特征的傳統圖像識別技術相比,基于深度神經網絡的圖像識別技術,跳出了對圖像單一特征進行提取的固有思維,轉而對圖像的整體特征進行提取,在識別精度和可靠性方面優于傳統圖像識別技術,因此,基于深度神經網絡的圖像識別技術可考慮用于飛機表面缺陷圖像識別。研究設計了一個結合Inception-net和殘差模塊的新型深度神經網絡,命名為New_dnn,用于民航飛機表面缺陷識別。

1? ?飛機表面缺陷分類及預處理

通過對國內民用航空公司在役飛機和飛機大修廠里的在修飛機表面缺陷調研、收集了大量民機表面缺陷圖像樣本,并對其進行匯總、分類,選取其中具代表性的缺陷圖片作為樣本集,且最終依據樣本缺陷出現頻繁程度不同,將飛機表面缺陷分為(1)蒙皮掉漆、(2)蒙皮裂紋、(3)螺紋銹蝕、(4)蒙皮變形、(5)蒙皮撕裂等5種缺陷,如圖1所示。圖1中前三種缺陷,包括蒙皮掉漆、蒙皮裂紋、螺紋銹蝕,多由飛行過程中惡劣的工作及自然條件和地面維護不到位等多種因素共同作用引起的;圖1中后兩種缺陷,包括蒙皮變形、蒙皮撕裂,則多由冰雹、鳥擊、飛行員駕駛失誤等因素造成[7]。

(1)蒙皮掉漆? ? ? ? ? ? ? ? (2)蒙皮裂紋? ? ? ? ? ? ? ?(3)螺紋銹蝕

(4)蒙皮變形? ? ? ? ? ? ? ? ? ? (5)蒙皮撕裂

圖1? ?民航飛機表面缺陷分類

在標注樣本的過程中發現由于采集數據時間跨度長、采集人員和采集標準不一致,導致樣本質量參差不齊,不合格樣本數量較多,且樣本種類分布不平均。而由于民航飛機缺陷樣本數量較少且獲取困難,因此對于此問題采用了傳統圖像處理算法對不合格的圖像樣本進行了修復,隨后采用數據增強解決樣本分布不均的問題,最后對所有樣本圖像進行降采樣。其預處理框架如圖2所示。

圖2? ?預處理圖

對于在標注的過程中發現的缺陷樣本,經整理分析后發現絕大部分過的樣本是由圖像純凈度、光照強度和拍攝時失焦造成的采樣模糊。因此對于圖像純凈度問題使用高斯雙邊模糊在保留其邊緣特征的情況下對細微缺陷進行模糊,對于光照問題引起的對比度過低問題使用白平衡算法對圖片進行補償,對于失焦造成的采樣模糊使用拉普拉斯銳化來平滑圖像樣本邊緣[8]。最后將處理后合格的圖像樣本加入到完好的樣本集中并進行數據增強,即通過隨機裁剪、水平翻轉、鏡像等方式,增大數據集中樣本數量較少的分類,使整個樣本集分布保持均衡。最后通過立方卷積插值法進行降采樣,將6000*4000*3的圖片批量resize到299*299*3,其公式如下

F(i + v,j + u) = ■■f(i + row,j + col)

S(row - v)S(col - u)? ? ? ? (1)

S(x) = 1-(a+3)x2+(a+2)x3? ? 0≤x≤1■-4a+8ax-5ax2+ax3? ?1≤x≤2

(2)

立方卷積插值法涉及到目標點周圍4行4列共16個像素點的計算,其式(1)中,v、u代表的行數偏差和列數偏差,i、j代表的是原圖與插值后的圖最接近的映射點,F(i+v,j+u)代表的插值后對應的坐標點,公式(2)中的S(x)為差值公式,差值公式的變化會改變插值效果,圖3為使用不同插值方式的波音737充氧口的降采樣圖片。

(1)最鄰近插值? ? ? ? ? ? ?(2)雙線性插值? ? ? ? (3)立方卷積插值

圖3不同插值方式的降采樣圖片

在圖3中,通過對同一張圖片使用(1)最鄰近插值法、(2)雙線性插值法、(3)立方卷積插值法得到的不同降采樣圖像在這里可以明顯看出相比于最鄰近插值法和線性插值法,使用立方卷積插值法得到的圖像保留了更多細節和紋理信息,故選擇立方卷積插值法對圖像進行降采樣,以此降低降采樣造成的圖像精度損失,而且降采樣極大的縮減了深度神經網絡的計算量,并且增大了卷積核的感受野,讓同樣大小的卷積核能夠在更大的圖像范圍上進行特征提取,降低網絡欠擬合風險。

2? ?新型深度神經網絡結構設計

2.1? ?新型深度神經網絡的網絡結構

Inception Net網絡是由Google brain團隊設計的一個經典的網絡結構,首次出現是在2014年的LSVRC(ImageNet Large Scale Visual Recognition Challenge)比賽中 [9]。而殘差網絡是由微軟亞洲研究院于2015年發布深度卷積神經網絡,其優勢在于殘差模塊的引入能夠很好解決網絡由于深度過深而帶來的梯度退化問題[10]。因此本文研究設計了在Inception Net的基礎上,引入殘差思想的一個新型深度神行網絡。網絡結構如圖4所示。圖4中,New_dnn由47層組成,主要包括7個卷積層、2個池化層、10個Inception Module、1個全局平均池化層、1個Dropout層以及一個softmax層。

圖4? ?New_dnn網絡結構圖

具體設計流程如下,首先通過7個卷積和池化層將輸入的飛機缺陷圖片縮小到35*35*192,其目的為降低空間,提高樣本的深度。接下來通過10個Inception Module將35*35*192的圖像壓縮成一個8*8*2048的tensor,隨后又經過兩個卷積層卷積后通過一個size為8*8*1024的池化層,輸出一個1*1*1024的tensor。最終通過一個softmax完成對輸入目標的分類。同時由于New_dnn網絡深度過深,為了改善網絡的性能、防止網絡過擬合在網絡結構中添加殘差模塊和dropout失活單元。

2.2? ?Inception模塊

Inception Module來自于Google的Inception Net,其思想來源于Network In Network即在大的網絡中依然存在小的網絡結構[11],以圖5block1 Model1為例。

圖5? ?block1 model1內部結構圖

圖5中block1 Model1結構有4條分支,從右到左開始,第一分支為通道數64,size為1*1卷積核的卷積層;第二分支為size為3*3的平均池化層,再連接一個size為1*1,輸出通道為32的卷積層;第三分支為64通道size為1*1的卷積層,其后連接一個96通道的size為3*3的卷積層;第四分支為48通道的1*1卷積再接上一個64通道的5*5卷積。最后將4個分支輸出在深度上合并,其深度之和為64+64+96+32=256,即block1 Model1的最終tensor輸出為35*35*256。其余的Inception Module在結構上大同小異,其目的都是在壓縮輸入圖像的同時進一步的提高網絡深度。

2.3? ?殘差模塊

殘差模塊最早出現于2015年提出的殘差深度神經網絡,其核心思想是將前層的信息越過中間層而直接映射到后層,以解決網絡深度過深導致的梯度退化的問題。其具體結構如圖6所示。

圖6? ?殘差模塊結構圖

在圖6中網絡上一層的輸出X經過兩層卷積后輸出為F(X),然后將X直接與卷積后的輸出相加得到了F(X)+X作為下一層的輸入[12]。理論上過來說,網絡層數越高訓練效果越好,但是當網絡層數過深的時候,多次的卷積操作會導致梯退化問題,使得訓練結果反而不如淺層神經網絡。在新設計的深度神經網絡中由于深度達到了47層,梯度退化問題不可避免,而通過多個殘差模塊的添加,可以很好的解決由于網絡深度過高而導致的梯度退化問題。

2.4? ?Dropout失活單元和全局平均池化

Dropout失活單元是一種簡單卻相當有效的防止神經網絡過擬合的手段,通常會被放置在網絡的后部[13]。其原理為通過對部分神經元的隨機失活,達到降低網絡過擬合,增強網絡魯棒性的目的。

全局平均池化層也是一種簡單卻相當有效的降低網絡參數量的手段[14]。即是使用size為前層長*同樣寬*前層深的池化層對前層的輸出進行池化,最終得到一個1*1*前層深度的輸出,已達到代替全連接層,降低網絡參數量的目的。

3? ?New_dnn網絡訓練步驟

深度神經網絡訓練過程的本質就是利用模型和輸入數據來求出推理值,利用損失函數對推理值與損失值之間的差距進行描述,然后通過優化器來最小化損失函數,而損失函數的更新反過來也對模型中的參數進行了更新,直到其滿足精度要求或達到設定的迭代次數。圖7為New_dnn網絡的訓練流圖。

圖7? ?New_dnn的訓練流圖

由圖7可知,輸入的數據采用的是batch批量的形式,首先把數據集中的標簽部分分別送入softmax_cross主分類和aux_loss輔助分類當中。再把數據集中的圖像部分送到New_dnn中,通過卷積運算來得到預測值和輔助預測值。其中預測值來自新設計的神經網絡的最后一個平均池化層,輔助預測值來自block2 model4四條支路的深度結合。隨后調用Softmax[15]回歸將預測值處理為一個概率分布,其公式如下。

hθ(xi) = p(yi = 1)|xi;θp(yi = 2)|xi;θp(yi = k)|xi;θ =

■exp(θ1Txi)exp(θ2Txi)exp(θkTxi)? ? ? ? (3)

在式(3)中P(yi = 1)到P(yi = k)代表的是樣本圖像從1類到k類的概率,θ代表的是模型參數,并通過每一類的概率除以所有概率之和的方式,來對輸出做歸一化。由此可以看出softmax回歸輸出的是一個包含所有類概率且概率之和為1的列矩陣,這個矩陣即為預測值。

得到網絡的預測值之后,利用損失函數來計算標簽與預測值之間的距離差,即損失值[16]。在新New_ dnn網絡選擇的是交叉熵損失函數,其公式如下。

H(P,Q) = -■P(x)logQ(x)? ? ? ? (4)

P(X)代表的是標簽,Q(X)代表的是預測值,H(P,Q)代表的是標簽與預測值之間的概率分布距離,H(P,Q)越小,即代表標簽與預測值概率分布越接近,說明二者一致的可能性越高。

隨后調用的RMSprop[17]單步優化器來對損失值進行了優化。其公式如下:

g(n) = ρg(n - 1) + (1 - ρ)(■)? ? ? ? (5)

x(n + 1) = x(n) - ■■? ? ? ? (6)

式(5)中ρ為超參數,式(6)中ε為超參數,用來控制每次迭代學習率的大小。而ε是為了防止步長為0導致的迭代停滯,ρ是一個趨近于1的值一般設置為0.9,ε為一個極度小的值一般設置為10e-10,學習率為η,該值一般根據訓練結果調整。通過調用RMSprop單步優化器在每一次迭代中對參數進行更新,更新的步長由η、ε和式(6)中的g(n)所控制。

以上即為New_dnn迭代一輪的所有流程。而迭代總次數和模型參數的更新則由圖4中的global_step和train_op分別控制來完成。當迭代總次數達到設定值時,模型停止迭代,整個網絡的訓練完成。

4? ?網絡訓練與驗證

4.1? ?實驗平臺與數據集

為了實現New_dnn對民航飛機的表面缺陷識別而搭建的試驗平臺配置為:影馳的RTX2070顯卡,8GB版本;系統平臺為Ubuntu18.04;訓練平臺為TensorFlow1.12。

關于數據集,至今為止,市面上并沒有任何公開的關于飛機表面缺陷的數據集,可供網絡訓練與驗證。因此決定采用自建數據集對不同網絡進行訓練的方式,并以訓練結果作為網絡優劣的評價標準。自建數據集的樣本分布如表1所示。

表1? ?不同樣本類別在數據集中的分布情況表

由表1可知樣本集劃分為訓練集、驗證集和測試集,并且在預處理時將其相互獨立開來,確保樣本不會互相影響。其中用訓練集對神經網絡進了訓練,用驗證集來驗證網絡在的性能,用測試集測試網絡的泛化能力。

4.2? ?網絡訓練過程

使用自建的數據集對New_dnn進行訓練,網絡以0.0005的學習率訓練75個epoch(將數據集完整訓練一輪為1個epoch),并在10小時45分鐘后停止迭代,訓練結果如圖9所示。

(1) New_dnn的損失函數? ? ? ? ? ? ? ?(2) New_dnn的識別率

圖9? ?New_dnn網絡的損失函數與識別率

圖9是使用matplotlibAPI通過調用訓練日志文件來記錄和生成的損失函數和準確率圖。由此生成了圖9(1)的New_dnn的損失函數圖,和圖9(2)的New_dnn的模型準確率圖。其中圖9(1)的縱坐標為模型訓練的損失值,圖9(2)的縱坐標為模型訓練的精度,兩圖的橫坐標都為模型的迭代次數,“——”曲線指的是訓練集的損失和準確率,“—”曲線代表驗證集的損失和準確率。由此可以觀察到,訓練集的損失函數從12開始,隨著迭代次數的增加而不斷降低,驗證集的損失函數從2.1開始,隨著迭代次數的增加而不斷下降,當模型迭代到75個epoch后,訓練集的損失函數在0.17左右震蕩,驗證集的損失函數在1.2左右震蕩,與之相對應的是訓練集的準確率從30%上升到了95%,驗證集的準確率從23%上升到了76%。

4.3? ?評價標準

為了更加全面的評價模型的綜合性能,除了采用識別準確率和參數量外,還引入了機器學習中查全率這一評價標準[18]。引入參數量,可以直觀的比較各個網絡的計算規模,和計算時間。參數量越大的網絡對設備要求越高,計算時間越長。而查全率指的是,被正確分類的樣本數占因當被正確分類的樣本數之比,其公式如下。

R = ■? ? ? ? (7)

在公式(7)中,TP指的是真正例,即分類為正例,實際也是正例的樣本數量,FN為假反例,即本來為正例,卻被分為反例得的樣本數。當準確率和查全率都比較高的時候,則認為該網絡具有較好的識別性能。

5.4? ?不同網絡的結構與識別結果對比

為保證實驗結果真實可靠,所有網絡都使用自建樣本集進行試驗;其試驗過程如下,利用訓練集訓練網絡,利用驗證集來調節參數、優化模型,過多次驗證后,選取驗證集上性能最好的模型用于測試集預測。模型結構與測試集結果對比如表2所示。

表2? ?不同模型結構與測試集結果對比表

由表2可以清楚地看出New_dnn除了在查全率上低于RES_net的65.33%外,準確率和查全率指標都高于其他網。而New_dnn的網絡深度達到了47層,但沒有出現梯度消失的現象,正確率反而有所上升,說明網絡在殘差模塊的幫助下確實起到了解決梯度退化、消除過擬合的作用。在訓練參數上面New_dnn的網絡深度最深,但參數量卻只有4000萬遠遠少于VGG_net的1.4億個,只是ALEX_net的6000萬參數量的三分之二,說明了Inception_Module的加入,確實能夠在加深網絡深度的情況下,極大地減少參數量。

6? ?結? ?論

針對飛機表面缺陷檢測問題,提出了使用深度神經網絡來對飛機表面缺陷進行識別的方法來取代人工繞機檢查。設計了一個47層的新型深度神經網絡命名為New_dnn,用于飛機表面缺陷圖像識別。該網絡通過引入Inception Module、全局平均池化等手段,有效降低了網絡中的參數量;通過引入了殘差模塊、和Dropout失活單元,解決由于網絡深度過深而導致的梯度消失問題,防止網絡過擬合。最終得到了一個性能較為優異的新型深度神經網絡用于民航飛機表面缺陷識別。為了解決民航飛機表面缺陷樣本獲取困難、沒有公開數據集的問題,通過對各地區機場走訪、調研,收集缺陷樣本圖片制作數據集,并通過一些傳統的圖像處理手段,對樣本進行預處理,改善訓練集樣本分布。并最終將該樣本集用于新型深度神經網絡的訓練。通過對比多種神經網絡在自建的數據集進行訓練的結果,驗證了New_dnn與在自建數據集的可靠性。實驗結果顯示New_dnn在自建數據集的測試集上的識別率和查全率分別為74.23%和62.29%,證明網絡具有較高的識別率和泛化能力,在一定程度上能夠滿足機務工作中對民航飛機表面缺陷的識別。

參 考 文 獻

[1]? ? 張祺. 預腐蝕航空鋁合金疲勞失效及壽命預測研究[D]. 天津:中國民航大學,2018.

[2]? ? 張天宇,何宇廷,李昌范,等. 鹽霧加速腐蝕與沿海大氣環境的腐蝕等效關系研究[J].機械強度, 2018,40 (03):596—601.

[3]? ? 張中波. 民機機體蒙皮劃痕的應力分析及處理方法研究[J]. 西安航空學院學報,2018,36 (05):3—7.

[4]? ? 李念宗.淺析飛機結構的一些疲勞破壞問題[J]. 中國設備工程,2019(02):29—30.

[5]? ? 李忠良,魏麟,劉曄璐.飛機外表面地檢設備圖像處理技術初探[J]. 航空維修與工程,2018(05) :56—58.

[6]? ? 盧翔,陳卓,黃江博,等. 虛擬環境下民機繞機目視檢查優化設計[J]. 飛機設計,2017,37(06):69—74.

[7]? ? 李忠良.大型運輸機外表面缺陷圖像處理技術應用研究[D].廣漢:中國民用航空飛行學院,2018.

[8]? ? 胡江濤. 基于機器視覺的飛機鉚釘尺寸測量和缺陷檢測系統的研究[D].西安:陜西科技大學,2017.

[9]? ? REHMAN A,NAZ S,RAZZAK M I,et al. Automatic visual features for writer identification:a deep learning approach[J]. IEEE Access,2019,13(99):1—1.

[10]? JIANG W,ZHANG L. Geospatial data to images:a deep-learning framework for traffic forecasting[J]. 清華大學學報:自然科學版:英文版,2019,24(1):52—64.

[11]? LIN M,CHEN Q,YAN S. Network in network[J]. arXiv preprint arXiv:1312.4400,2013:13—26.

[12] MARIF W,FAROOQ A B,SADUF A,et al. Supervised Deep Learning in Face Recognition[J]. Advances in Deep Learning. 2020,21(31):19—24.

[13]? SRIVASTAVA N,HINTON G,KRIZHEVSKY A,et al. Dropout:a simple way to prevent neural networks from overfitting[J]. Journal of Machine Learning Research,2014,15(1):1929—1958.

[14]? HAO F,SAURABH G,FORREST I. From captions to visual concepts and back[J]. Proc of CVPR,2015,475(2354):3126.

[15]? LECUN Y,BENGIO Y,HINTON G. Deep learning[J]. Nature,2015,521(7553):436.

[16]? YANG W,WANG W,ZHANG X,et al. Light weight feature fusion network for single image super-resolution[J]. IEEE Signal Processing Letters,2019,26(4):538—542.

[17]? BENGIO Y,SIMARD P,FRASCONI P. Learning long-term dependencies with gradient descent is difficult[J]. IEEE Trans Neural Netw,2002,5(2):157—166.

[18]? HUANG Y,ZHAO L. Review on landslide susceptibility mapping using support vector machines[J]. CATENA,2018,165(12):520—529.

猜你喜歡
殘差
智能屬性融合算法在教學系統當中的應用
關于運動軟件的使用對大學生運動量影響計量分析
基于二階自相關過程殘差控制圖的改進
基于MVU降維的捕捉數據自動分割
測量數據的殘差分析法
連續型過程的二元殘差T2控制圖
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合