任文堅 ,王永紅 ,李春凱 ,石 玗 ,孫忠誠 ,3,秦建剛
1.西安航天發動機有限公司,陜西 西安 710100
2.蘭州理工大學 省部共建有色金屬先進加工與再利用國家重點實驗室,甘肅 蘭州 730050
3.蘭州瑞奇戈德測控技術有限公司,甘肅 蘭州 730010
推力室是液體火箭發動機的重要組成部分,由噴注器、燃燒室和噴管等部分構成,其中噴注器和燃燒室主要通過熔焊工藝進行連接[1]。在火箭發動機實際運行過程中,當推力室室壓較高、推進劑充分燃燒時,推力室頭部溫度較高,若焊縫存在焊漏、裂紋和孔洞等缺陷可能會引起焊縫失效,甚至影響發動機正常運行[2]。因此,研究高效穩定的推力室熔焊縫焊接質量檢測方法具有重要意義。
目前焊縫缺陷識別主要采用X射線檢測技術,但在實際生產中X射線檢測缺陷評定過程仍主要依賴人工識別,存在檢測效率低、檢測結果受主觀因素影響較大、自動化程度低等問題[3-4]。通過數字圖像處理及模式識別等方法實現焊縫缺陷的自動檢測與識別[5-6]可以很大程度上克服人工識別的缺點?;诖?,國內外學者針對X射線焊縫數字化膠片圖像缺陷的檢測與識別展開了大量的研究。羅愛民等人[7]基于改進二叉樹多分類的SVM算法提高了焊縫缺陷分類識別精度。Zhang 等人[8]分別采用基于圖像處理和WGAN處理的數據增強方法來處理缺陷圖像,再通過多模型集成框架將訓練好的CNN圖像結合起來對缺陷進行分類,成功降低了誤檢率。Liu等人[9]基于深度學習提出了一種多尺度特征映射方法,用于低質量焊縫圖像的缺陷識別,通過特征融合模型來融合映射的局部和全局特征,從而提高缺陷識別性能。劉涵等人[10]基于排序點的聚類算法對一定區域內的缺陷和噪聲進行分割并構建焊縫缺陷圖像的樣本庫,通過CNN和Soft‐max分類器相結合的算法實現了缺陷的準確識別。上述研究雖在一定程度上提高了缺陷檢測的可靠性以及自動化程度,但由于成像條件以及算法的復雜性和局限性,在實際應用中仍存在許多問題需要進一步研究。
本文提出了一種基于YOLO V3的推力室熔焊縫數字化膠片圖像缺陷識別方法,對膠片圖像進行預處理并構建數據集樣本,開發了基于深度學習理論的YOLO V3缺陷自識別模型,實現了推力室熔焊縫膠片數字化圖像缺陷的智能識別。
為了將原始X膠片圖像進行數字化以便于后續圖像預處理和深度學習神經網絡模型的構建,選用VIDAR NDT PRO工業膠片數字化掃描儀對1 034張X膠片圖像進行掃描,部分掃描后的數字圖像如圖1所示??梢钥闯?,掃描后的膠片數字化圖像具有以下特點:(1)焊縫缺陷在數字化圖像中的對比度低且占比較?。唬?)掃描后數字化圖像尺寸不一致,這是由于原始膠片尺寸規格不一造成的;(3)單張數字圖像中存在多種不同類型缺陷。

圖1 膠片掃描后數字圖像Fig.1 Digital image after film scanning
考慮到掃描后數字圖像尺寸不一致不利于后續深度學習神經網絡模型的構建以及AI缺陷識別效果,需對掃描后數字圖像進行圖像分割和尺寸歸一化處理。具體流程為:第一步,選定某一尺寸(400×800)作為標準尺寸;第二步,圖像分割與圖像填充操作。將所有數字圖像與標準尺寸做對比,若原始圖像大于標準尺寸,按照標準尺寸將原始圖像分割為若干標準尺寸區域,若部分區域分割完小于標準尺寸則進行圖像邊緣填充,進而保證與標準尺寸的一致性;若原始圖像小于標準尺寸,則將小于標準尺寸的區域進行圖像填充運算保證與原始圖像大小一致。圖像分割與尺寸歸一化算法詳細流程如圖2所示。

圖2 圖像分割與歸一化算法流程Fig.2 Image segmentation and normalization algorithm flow
由于膠片在數字化掃描過程中無法避免會出現信息丟失和噪聲引入,為了盡可能增加圖像中缺陷與背景的對比度并削弱噪聲的干擾,需對尺寸歸一化后的圖像進行圖像降噪、對比度增強以及銳化濾波預處理。
圖像降噪算法采用中值濾波,計算公式為

式中 (x,y)表示集合R中的元素;Sort表示排序;R表示圖像中心點(x0,y0)周圍元素集合;T表示集合R中元素的個數。
圖對比度增強算法采用冪律變換,計算公式為
s(x,y)=c[g(x,y)]γ
式中c為比例因子;γ為伽馬因子,取值范圍[0,1]。
銳化濾波采用拉普拉斯算子作為卷積核對對比度增強后圖像進行銳化濾波,拉普拉斯算子形式如下

中值濾波和冪律變換前后的數字圖像對比如圖3所示,可以看出經過圖像預處理,原始圖像中缺陷輪廓更為明顯。

圖3 預處理前后的數字圖像對比Fig.3 Comparison of digital images before and after pretreatment
通過圖像歸一化和圖像增強處理后共得到了2 650張熔焊縫數字圖像。考慮到2 650張對于后續構建深度學習神經網絡模型而言樣本集過少,為此采用旋轉、平移、翻轉等圖像操作對原始圖像進行了擴增,如圖4所示,經圖像擴增后樣本集的數量為5 600張,為后續建立AI智能識別算法奠定基礎。

圖4 圖像擴增Fig.4 Image amplification
為實現液體火箭發動機推力室熔焊縫缺陷的智能識別,提出采用基于YOLO V3的深度學習神經網絡算法來開發AI熔焊縫缺陷智能識別系統。
在建立的數字圖像樣本集中隨機抽取了3 000張作為模型訓練的圖像樣本訓練集,200張作為圖像測試集用于評價深度學習模型的泛化能力。為了后續訓練基于YOLO V3深度學習神經網絡模型,對圖像樣本集中的熔焊縫缺陷進行了人工標注,缺陷標注圖像如圖5所示。

圖5 典型缺陷人工標注Fig.5 Manual marking of typical defects
設計的深度學習神經網絡模型為YOLO V3網絡,網絡架構如圖6所示。YOLO V3主要由三部分組成:Backbone骨干網絡結構的Darknet-53網絡、特征匯總的FPN網絡和分類回歸輸出網絡,各塊網絡結構如圖7所示。其中,Darknet-53網絡主要功能是提取原圖片信息,分別提取為32*32的大型感受野(共13*13個),16*16的中型感受野(共26*26個),以及8*8的小型感受野(共52*52個),分別用于提取大型、中型以及小型特征信息。之后將提取的信息傳入FPN網絡中進行匯總,并用分類回歸網絡對圖片每部分進行分類計算。

圖6 Darknet-53結構Fig.6 Structure of Darknet-53

圖7 特征匯總及分類回歸網絡結構Fig.7 Feature summary and classification regression network structure
該網絡損失函數為網絡各部分損失函數之和,總表達式為

其中,目標檢測框回歸損失函數采用均方誤差損失函數,類別和置信度損失函數采用交叉熵損失函數。在反向傳播過程中,所使用的優化算法為Momentum。設小批量隨機梯度為gt,學習率為λt,時間步t的自變量為xt。在t=0時,創建速度變量v0,并將其元素化為0。在時間步t>0時,對每次迭代的步驟做如下修改:

式中 參數γ滿足0≤γ≤1。在γ=0時,Momentum等價于小批量隨機梯度下降。
基于Python編程語言環境和Tensorflow平臺編寫了YOLO V3算法神經網絡模型,并在Intel Core i7 6700K+GTX 1080的電腦上對模型進行訓練。
網絡四種損失函數曲線如圖8所示。四種損失函數曲線都符合如下趨勢:網絡在訓練集和測試集上的損失函數曲線變化趨勢相同,都表現為在前期訓練輪次中網絡損失函數下降較快,之后下降速度逐漸減慢,曲線趨于平緩,并逐漸收斂于一個較小值,且收斂值相近,說明網絡性能及擬合泛化程度良好。但二者仍存在部分差異,表現為:網絡在訓練集上訓練時曲線下降較為平滑,但在測試集上訓練時在訓練集損失函數曲線附近劇烈波動,后期波動幅度減小,逐漸逼近收斂于訓練集損失函數曲線收斂值。該差異說明網絡對訓練集樣本的擬合優度上升與網絡泛化性能的提升并非同步,但隨著網絡擬合優度的增加,網絡泛化性能呈現提升趨勢,且最終逼近擬合優度。

圖8 損失函數曲線Fig.8 Loss function curve
為了驗證所構建YOLO V3深度學習神經網絡AI缺陷識別模型用于識別膠片數字化圖像中熔焊縫缺陷的準確性以及泛化能力,利用測試集(200張數字圖像)對其進行了測試,YOLO V3模型自動識別的熔焊縫缺陷如圖9所示。

圖9 自動識別的典型缺陷Fig.9 Automatic identification
通過比對AI模型自識別結果和人工識別結果來評估所建立YOLO V3算法的識別準確性和泛化能力。主要通過漏檢率、誤判率和準確率三個技術指標來評估,三個技術指標的計算為

通過比對測試集中200張數字圖像發現,所建立的AI缺陷自識別模型對于氣孔類缺陷的漏檢率為2.3%,誤判率為3.3%,準確率為94.4%;未熔合類缺陷的漏檢率為1.4%,誤判率為2.8%,準確率為95.8%;未焊透類缺陷的漏檢率為3.2%,誤判率為3.6%,準確率為93.2%;裂紋類缺陷的漏檢率為5.2%,誤判率為4.4%,準確率為90.4%。相比較而言,AI缺陷智能識別模型對于裂紋類缺陷的識別準確性與泛化能力明顯低于氣孔、未熔合、未焊透等三類缺陷,這主要是兩方面原因造成:一是裂紋類缺陷較其他類型缺陷樣本數量較小;二是部分裂紋類缺陷的人工標注存在一定爭議,導致訓練集中存在錯誤樣本。對于上述問題可通過進一步增加裂紋類樣本數量、提高人工標注的準確性來提升模型泛化能力。
(1)設計基于深度學習神經網絡的YOLO V3算法模型能夠用于液體火箭發動機推力室熔焊縫膠片數字化圖像缺陷的智能識別與分類,且分類準確性均高于90%。
(2)所建立AI模型對于裂紋類缺陷識別準確性相對較低是由于樣本集過少,且部分樣本人工標注存在爭議。
(3)綜合文中漏檢率、誤判率和準確率三個評價指標來看,缺陷漏判對于該檢測技術在實際工程應用而言存在一定的安全隱患,為了解決現有模型漏檢率相對較高的問題,后續進一步增加訓練樣本,并在模型輸出結果中增加置信度判斷指標,對于置信度相對較低的膠片采用人工二次核查,以此來避免缺陷漏判,進而保證檢測質量。