鄒宸瑋,王狄飏
(上海工程技術大學 航空運輸學院,上海 201620)
在工業生產過程以及實驗研究過程中,由于各種不可控的原因造成材料或零部件的損傷和腐蝕等情況,帶來的影響不言而喻,如:導致工業產品不合格,縮短材料或設備使用壽命,因材料或零部件的不合格有可能會產生一系列事故。
近年來,無損檢測技術迅速發展,國內外針對缺陷圖像缺陷檢測的方法層出不窮。孫曉幫[1]等設計基于線掃視覺的自動表面缺陷檢測系統,利用二值計算過濾較小瑕疵,對圖像進行腐蝕,隨后進行膨脹,去除毛刺、孤立點等,實驗表明該方法適用于較為明顯的缺陷,對于內部缺陷或表面不明顯的缺陷檢測效果不佳;韓君利[2]等提出一種基于機器視覺的檢測方法,利用線掃相機自動完成對表面缺陷檢測任務,該方法在檢測的便捷性上有一定的優勢,但重度依賴線性相機;蔡松錢[3]提出一種卷積神經網絡的缺陷檢測方法,首先對網絡參數與結構進行微調,放入圖像,并提取特征部分進行缺陷分類和定位,該方法網絡層數低,對圖像中較小特征的識別效果較差,訓練時間長,精度不高;姚宗偉[4]提出一種使用全卷積神經網絡進行缺陷檢測,但該方法的理解能力不足,模型過于冗余,訓練過程時間長;陳宗仁[5]提出一種基于深度學習的缺陷檢測方法,經過預處理后,利用FCN 網絡訓練多個級聯分類器,結合決策權重,實現缺陷檢測。
利用深度學習進行檢測的方法層出不窮,通過二維時頻圖像進行缺陷檢測較少。本文利用深度學習Resnet 網絡相關方法,能夠準確的對缺陷進行識別與分類,具有訓練時間短,準確率高等特點。
Resnet 網絡是基于卷積神經網絡而提出的[6],其最大的特點在于從輸入到輸出只有一條主線,能夠直觀的保留部分容易被忽略的小感受野目標特征,同時還能解決神經網絡的退化問題,可以實現跨層式的信息傳遞,以這種方式保留更多的細節特征信息,有效的避免由非線性問題引起的衰減。Resnet 網絡加入了對網絡學習和測試起到重要作用的BN(Batch Normalization)層,能夠有效解決梯度爆炸和收斂速度緩慢的問題,在一定程度加快網絡的訓練速度,減少網絡訓練時間。另一方面,加入BN 層能夠起到正則化的作用,再考慮過擬合中Dropout、L2 正則化參數的問題。
神經網絡學習的過程中,當網絡加深到一定層次時,權值梯度彌散較慢,進而造成訓練效果很差。而Resnet 網絡中的殘差結構就是基于這一理念而設計的,該網絡將輸入直接加到輸出中,有效的避免了網絡不斷加深時,非線性函數的衰減問題,殘差結構如圖1 所示。

圖1 殘差結構Fig.1 Residual structure
Resnet 網絡結構靈活,只要適當的修改網絡內的殘差結構塊數量,就能夠起到調整網絡的作用。相較于傳統的卷積神經網絡,Resnet 網絡對網絡權重的波動更為敏感,Resnet 網絡所需的計算量大幅下降,復雜度也進一步降低[7]。具體Resnet 網絡結構如圖2 所示。

圖2 Resnet 網絡結構Fig.2 Resnet network structure
本文對Letnet-5、Alexnet、Resnet18、Resnet34、Mobilenet-V2 等5 種網絡進行了實驗,網絡訓練準確率匯總見表1。Resnet18 與Resnet34 效果較好,網絡訓練的準確率較高,但綜合訓練時間與精度兩個因素,最后選擇Resnet18 網絡與小波變換作為本文的主要網絡和方法。

表1 網絡訓練準確率Tab.1 Network training accuracy %
將時頻圖像作為訓練集進行訓練之前,需提取A 掃波形圖像的數據,隨后將提取出的一維時序數據轉換為二維時頻圖像。
首先進行預處理,預處理包括對數據進行歸一化處理和去噪,主要有極大值抑制、相關性去噪、閾值等去噪方式。閾值去噪的方法計算速度更快且噪聲抑制效果好[8],本文選擇閾值去噪方式,隨后進行波形數據的提取,在波形數據提取過程根據波形變化,若波形變化緩慢,則采用離散小波變換分解(DWT);若波形變化較快,則采用非抽取性小波變換分解(UWT)。
目前,針對一維時序數據轉為二維時頻圖像的方法較多,如短時傅里葉變換(SIFT)、馬爾科夫變遷場(MTF)、格拉姆角場(GAF)、小波變換(WCT)、S 變換等方法[9]。本文采用小波變換將波形圖像中得到的時序數據轉換成二維時頻圖像,隨后放入深度學習網絡模型中進行訓練。
小波變換有較強的數據提取能力,其能量較為集中,能夠在信號中提取到有用的信息。在利用小波變換的過程中,小波基函數尤為重要,其會發生衰減且其長度有限[10]。利用這個特點,使用小波基函數代替三角函數實現傅里葉變換,并按照需求調整小波變換的尺度,得到不同時度的小波,進而實現多分辨率與局部的時頻分析[11]。小波變換的公式(1)[12]:
其中,φ(t)、a、τ分別代表小波母函數、尺度值與偏移量,可以控制小波函數的收縮和平移。
根據需求對小波變換的時頻窗進行調整,對不同特點的信號進行調節,對低頻信號加寬窗,對高頻信號降低窗值。
利用小波變換,將圖3 中的原圖數據轉為一維時序數據并分別轉換為二維時頻圖像,結果如圖4所示。

圖3 原圖數據Fig.3 Original drawing data

圖4 二維時頻圖像Fig.4 Two dimensional time-frequency image
本文將數據集5 個類型的圖像以8 ∶2 的比例分為訓練集與驗證集。用Resnet18 網絡,對優化器的選取與學習率參數進行選擇,以篩選出適合的最優參數。
實驗樣件的缺陷分為裂紋、腐蝕、劃痕、油漬、夾雜等5 種,分別用標號1-5 對上述5 種缺陷進行表示。對實驗樣本中的各個缺陷類型進行多次采樣,獲取對應缺陷的A 掃描樣本數據集。隨即提取數據,并將其轉為二維時頻圖像,并對時頻圖像數據進行擴充,最后進行訓練。
(1)利用超聲相控陣探傷儀對缺陷檢測樣本進行檢測,得到A 掃圖像數據;
(2)提取波形圖上數據;
(3)將提取到的一維時序數據進行小波變換,轉為二維時頻圖像;
(4)將所采集的數據進行數據擴充,利用本文的網絡進行訓練,得到訓練模型;
(5)對模型中參數進行微調,避免過擬合、訓練精度低等情況。
選用Resnet18 網絡,將SGD 與Adam 兩種優化器作為實驗變量,選擇3 種學習率learning rate(lr)即0.000 1、0.001、0.01 分別進行訓練。設定每輪訓練次數Epoch 為200,每批樣本大小Batch size 為16,利用小波變換得到二維時頻圖像,訓練曲線圖如圖5~圖10 所示。

圖5 SGD+lr=0.000 1 訓練曲線圖Fig.5 SGD+lr=0.0001 training curve

圖6 SGD+lr=0.001 訓練曲線圖Fig.6 SGD+lr=0.001 Training Curve

圖7 SGD+lr=0.01 訓練曲線圖Fig.7 SGD+lr=0.01 training curve

圖8 Adam+lr=0.000 1 訓練曲線圖Fig.8 Adam+lr=0.0001 training curve

圖9 Adam+lr=0.001 訓練曲線圖Fig.9 Adam+lr=0.001 training curve

圖10 Adam+lr=0.01 訓練曲線圖Fig.10 Adam+lr=0.01 training curve
由圖5~圖10 可知,使用不同的優化器與學習率,訓練準確率有所差異,所有方式的訓練準確率均大于78.32%,效果較為良好,但有的訓練曲線圖的振蕩較為明顯,擬合度較差,采用Adam 優化器,學習率為0.01 的情況下尤為明顯;利用SGD 優化器,學習率為0.0001 時,準確率最高。不同優化器與學習率對應的最高準確率見表2。

表2 兩種優化器對應不同學習率的最高準確率Tab.2 Maximum accuracy of two optimizers corresponding to different learning rates
通過表2 與不同組合的訓練曲線圖,可以得出結論:本文Resnet18 網絡采用SGD 優化器,學習率參數設置為0.000 1 時,效果最好,最高準確率能夠達到98.90%。
將驗證集中每種類型圖像各選取5 張,對其進行識別與類型檢測,得到具體某張圖像的類別以及其對應的概率見表3,可見各類型檢測效果較好,識別率較高,能夠較為準確的識別出圖像所對應的類型。

表3 識別概率Tab.3 Recognition probability
本文采用準確率(Accuracy)、查準率(Precision)、召回率(Recall)作為模型的評價指標。Accuracy代表模型預測正確的樣本比例;Precision表示預測正確的正樣本準確率;Recall也叫查全率,旨在找到實際為正的樣本中多少被預測正確。
計算公式(2)~式(4):
其中,TP為正樣本中被正確識別的數量;FP為誤報的負樣本數量;TN為負樣本中被正確識別的數量;FN為漏報的正樣本數量。
經計算求得整個模型的準確率、查準率和召回率,分別為98.90%、99.25%、98.60%。
本文提出一種基于A 掃缺陷識別的多任務深度學習方法,將超聲相控陣A 掃檢測的缺陷圖像,經過小波變換轉換為二維時頻圖像,利用Resnet 網絡對5 種類型缺陷進行準確識別。