李樂榕,于子金
(寶山鋼鐵股份有限公司設備部,上海 201900)
鋼管焊接過程中會產生各種缺陷,比如:裂紋、氣孔、未熔合、未焊透、夾渣等,直接危害到焊接產品的質量,嚴重減低焊接件的機械性能[1],射線檢測是最常用的一種無損檢測方法,利用射線不同程度地透過不透明物體并使底片感光的原理,從中識別出焊縫中是否存在缺陷以及缺陷的位置和大小。
目前X射線圖像識別主要依靠人工進行評定,通過專職的技術人員,對X射線圖像中的焊縫區域一一進行查驗,并進行比對分析,以識別圖像中焊縫區域是否有缺陷。人工評定的缺陷:首先人眼的視覺有局限,達不到機器能夠分辨的灰度級別和目標范圍;其次人工評片的速度有限,很難滿足生產要求;最后人工評片受限于評片人員的主觀經驗,很難保證檢測結果的可靠性[2]。
隨著計算機視覺和深度學習技術的興起,基于卷積神經網絡的圖像識別技術在各行各業中解決了大量實際問題,卷積神經網絡(CNN)與傳統BP神經網絡不同,其直接以圖像為輸入,無需人工提取目標特征,將特征提取轉化為一個自學習過程,并且網絡中每個卷積層的輸出都可以視為網絡自學習到的特征?;谶@些特征,能夠進行更深層次的相似度比較[3],筆者將預處理后的焊縫DCM圖像作為卷積神經網絡的輸入,利用卷積神經網絡良好的容錯、并行以及泛化能力,對常見焊縫缺陷進行特征提取與識別。
本文中收集了寶鋼UOE鋼管廠,近兩年來的X射線探傷焊縫圖像數據,清洗圖像質量不好的數據,并且對焊縫圖片有無缺陷以及缺陷類型進行標識。
圖像預處理是圖像識別過程中的基礎環節,能夠有效消除和降低圖像中因噪聲、光照、背景等因素帶來的影響,使得圖像中的缺陷特征更明顯,從而直接影響模型的學習效果。
由于焊接工藝的復雜性和現場環境的多樣性,焊接過程中會產生各種缺陷,直接危害到焊接產品的質量,對焊接結構的安全性能和使用性能造成極大影響。為了便于后續模型訓練和分析,對收集到的焊縫缺陷數據進行了缺陷類型標識,如表1所示,共分為13種類型缺陷。

表1 鋼管焊縫缺陷類型標識表
由于原始的焊縫DCM圖像存在一定的噪聲,且對比度不高,這對于后續卷積神經網絡的特征提取帶來很大的影響,為了使焊縫缺陷區域更加明顯,采用OpenCV圖像處理函數庫中噪音過濾、平滑增強、閾值處理以及邊緣檢測等算法,對焊縫射線圖像進行圖像預處理[4],如圖1所示,分別研究了幾種圖像預處理算法,對焊縫缺陷圖像進行增強,以便于后續模型能夠更有效的提取缺陷特性[5]。

圖1 預處理后的鋼管焊縫缺陷圖像
卷積神經網絡是圖像識別領域中應用最多的一種神經網絡。包含了一個由卷積層和子采樣層構成的特征抽取器。在卷積神經網絡的卷積層中,一個神經元只與部分鄰層神經元連接。在CNN的一個卷積層中,通常包含若干個特征平面[6](feature Map),每個特征平面由一些矩形排列的的神經元組成,同一特征平面的神經元共享權值,這里共享的權值就是卷積核。卷積核一般以隨機小數矩陣的形式初始化[7],在網絡的訓練過程中卷積核將學習得到合理的權值。共享權值(即卷積核)帶來的直接好處,是減少網絡各層之間的連接,同時又降低了過擬合的風險。
卷積神經網絡有很多經典的網絡結構,包括LeNet、AlexNet、VGG-16、GoogleNet等網絡結構。我們在實驗中搭建神經網絡結構時,分別對每種網絡結構進行訓練和驗證[8]。
為了便于分析,此處僅將焊縫缺陷分為有缺陷和無缺陷兩種類型進行實驗驗證,對寶鋼UOE鋼管廠近兩年多的數據進行梳理,去除無效及圖像質量不好的圖片,共采集有缺陷的圖像3000張,無缺陷合格圖像6000張,共計9000張樣本數據。隨機選取缺陷圖像中的2000張以及無缺陷合格圖像4000張作為訓練集,剩下的作為測試集,用以驗證模型的泛化能力與可靠性。網絡訓練直接以圖像為輸入,將圖像進行進行Resize處理,統一轉化為224*224大小的圖像[9]。在相同的硬件配型條件下,每種網絡模型的訓練次數均設置為30000次,如表2中所示,在相同條件下,VGG-16模型的訓練精度為98%,驗證準確率為92%,好于另外三種模型。

表2 不同神經網絡模型訓練及驗證準確率對比情況
最終我們選擇了如表2中的VGG-16網絡作為識別焊管缺陷圖像的神經網絡模型,并對該模型內部參數進性適當優化[10],將其應用到現場進性實驗驗證。
我們將設計訓練好的模型部署到寶鋼鋼管廠復檢實驗室進行驗證,將模型預測結果和人工評片結果進行對比分析,比較兩者之間的差異,以及對存在的誤檢情況進行詳細的分析。
2018年8月20日將該模型部署到寶鋼鋼管廠復檢操作室進行測試,缺陷識別結果統計畫面如表4所示。此處統計了2018年8月20日到2018年11月18日三個月的射線圖像人工評片結果與實驗系統的預測結果的差異,統計缺陷漏檢和誤檢情況。表中每行分別為每周收集的全部鋼管焊縫圖像樣本數,誤檢樣本數(誤檢樣本數是模型預測結果和人工評片結果不一致的鋼管焊縫圖像樣本數)以及漏檢樣本數(漏檢樣本數指模型將有缺陷的樣本判定為無缺陷的樣本數),從表中可以看出,最高的一周漏檢樣本為4,后續將會對誤檢的樣本以及漏檢樣本進行詳細的分析。模型部署到現場實驗測試,表4中將每周的運行運行情況進行了統計,每周的運行情況統計如下所示:

表3 現場試驗測試中人工評片和模型預測結果對比統計表

10/22-10/28 1115 1082 33 648 466 0 437 10/29-11/04 1405 1364 40 724 681 0 641 11/05-11/11 1348 1312 35 921 427 1 395 11/12-11/18 1263 1228 35 846 417 2 386
“漏檢”指的是將人工評片結果存在缺陷的樣本識別為合格樣本的情況。本文中對上述實驗測試過程中的每一周的漏檢圖像進行詳細分析如表4所示,漏檢情況主要分以下幾種:

表4 漏檢情況分析表
(1)射線圖像中的缺陷不明顯;
(2)新缺陷(沒有在之前的訓練樣本出現過);
(3)缺陷位置不在機器識別圖像的區域內等。
筆者針對表4中所統計出的漏檢情況,進行了詳細的分析,后面再次將這些漏檢圖像作為訓練樣本讓模型再次學習,對模型的缺陷識別區域進行限定,對模型進行優化。后續采用優化后的模型對探傷圖片進行識別,原有漏檢圖片已經能夠識別,真正實現了漏檢率為0。
現場試驗過程中,對每周的誤檢圖像按照缺陷類型做了分類如表5所示,由于篇幅限制此處僅展示了3周的誤檢圖像分析情況。從表5中可以看出,誤檢的圖像主要分以下幾種:凹坑或壓痕導致的誤檢、飛濺導致的誤檢、氣孔或夾渣或夾珠導致的誤檢、咬邊或未熔合或未焊透導致的誤檢以及實際誤檢情況。

表5 誤檢情況分析表
誤檢的詳細原因可以分為以下幾種情況:凹坑或壓痕導致的誤檢、飛濺導致的誤檢、氣孔或夾渣或夾珠導致的誤檢、咬邊或未熔合或未焊透導致的誤檢、實際誤檢。如圖2所示,分別對幾種誤檢情況進行介紹,其中只要“飛濺”這個誤檢經過和焊管廠工藝人員溝通確認,不需要模型識別出來以外,其他除實際誤檢以外的圖像,都可以作為缺陷情況報出。因此該套模型的實際誤檢僅為如表5中所示的飛濺類型,最大誤檢率僅為2.6%。

圖2 誤檢圖像分析圖
本文針對寶鋼UOE焊管廠焊縫缺陷自動識別的需求,基于卷積神經網絡圖像識別原理,采用VGG-16深度學習模型框架實現對焊縫缺陷的自動識別。該算法直接將經過預處理后的X射線焊縫圖像作為輸入向量,利用深度學習模型獲取其缺陷特征,從而有效避免了人為主觀因素對識別結果造成的不良影響。通過對該模型進行兩個月的現場實際測試數據統計,對于明顯的缺陷能夠實現100%的識別,實現無漏檢;對于焊縫圖像中的飛濺類缺陷,雖然在和焊管工藝人員溝通后飛濺不作為焊縫缺陷,但仍對作業人員有一定的提示作用。目前該模型僅在固定機組進行試驗,還不能完全覆蓋所有鋼管焊縫類缺陷,后續仍需不斷完善,不斷完善缺陷樣本庫,使該模型的對于鋼管焊縫缺陷識別更穩定準確。通過實驗分析和實際應用可知,該模型建立的思想與方法能廣泛應用于各種類型部件缺陷的識別項目中,對焊接缺陷自動檢測技術的工程應用有一定的參考價值。