肖揚,高煒欣,,鄧國浩
(1.西安石油大學 電子工程學院,西安,710065;2.西安石油大學 陜西省油氣井測控技術重點實驗室,西安,710065)
小徑管結構在油氣地面裝置中的應用十分廣泛.在焊接過程中,受外部環(huán)境和焊接條件的影響,其焊縫區(qū)域不可避免的產生諸如:氣孔,裂紋,夾渣和焊瘤等缺陷[1].這些缺陷不僅影響工件的外觀,還會影響工件的結構強度和性能.更嚴重的是,缺陷會對工件使用者造成一些潛在的安全隱患[2-4].因此,焊縫質量檢測是焊接過程結束后的一道關鍵環(huán)節(jié).無損檢測技術可以在不影響被檢測對象性能的基礎上探測物體在制造與使用過程中的缺陷問題[5-6].在施工現場的檢測流程中,主要采用無損檢測方式作為焊縫缺陷的檢測方法.
小徑管焊縫缺陷的無損檢測方法主要包括超聲檢測和射線檢測.其中,超聲相控陣檢測技術可以檢測缺陷的高度和埋深,且具有高精度和環(huán)保的特點,成為當前小徑管缺陷檢測領域的研究熱點.基于超聲檢測的方法,江野等人[7]將超聲相控陣檢測技術應用于奧氏體異種鋼薄壁小口徑管道對接焊縫的裂紋檢測.陳小明等人[8]探究了將超聲相控陣檢測技術應用于蛇形管高壓加熱器超小徑管焊縫檢測的可行性.
近年來,伴隨射線檢測技術逐漸成熟,部分學者也試想將射線檢測技術應用于小徑管焊縫缺陷檢測中.Xie等人[9]將超聲相控陣檢測和射線檢測對小徑管焊縫缺陷的檢測效果進行對比,結果表明射線檢測對體積型缺陷的檢測更為精準,檢測結果更直觀且可永久保存.賈瀟等人[10]的研究也表明在對缺陷類型的判別上,射線檢測更具有優(yōu)勢.然而,目前未見基于射線檢測技術實現小徑管焊縫缺陷檢測的相關算法和文獻.
綜上所述,該文從射線檢測的角度出發(fā),針對小徑管結構,通過兩步分割獲取感興趣區(qū)域(the region of interest,ROI),提取缺陷疑似局部圖像(suspected defect region,SDR),構造字典矩陣數學模型并分析了字典矩陣原子數對識別精度的影響,最終確定了具體的原子數,使用字典矩陣對數據庫中的圖像進行檢測,驗證了所提方法的可行性,在驗證過程結束后,對部分缺陷識別錯誤的原因進行可能性分析.
實際工業(yè)生產中,小徑管的X射線檢測圖像如圖1所示,圖1(b)為小徑管在雙壁雙影橢圓透照下的圖像,圖1(c)為小徑管在雙臂雙影垂直透照下的圖像.垂直透照下,小徑管焊縫圖像對于面積型缺陷的檢出率較高,且面積型缺陷如裂紋等對焊管的危害性相比于氣孔等缺陷更大,故選取垂直透照下的小徑管圖像作為研究對象.
圖1 小徑管X射線圖像Fig.1 X-ray image of small diameter tube.(a) original image;(b) elliptical image with tilt radiography;(c) overlapping image with vertical radiography
由圖1可知,射線圖像包含背景區(qū)域和小徑管區(qū)域,缺陷存在于小徑管中的焊縫區(qū)域.由于焊縫圖像在采集時會受到光照和表面反射的影響,所以背景存在一些較暗的陰影區(qū)域[11],陰影區(qū)域像素值范圍與小徑管區(qū)域相差較大,可以通過圖像分割的方式提取小徑管區(qū)域.部分小徑管射線圖像表現為低對比度,分割時要求算法具有較強的魯棒性,且實際的小徑管射線圖像都具有高噪聲的特點,分割算法應具有良好的降噪效果.
X射線焊縫圖像背景起伏,背景區(qū)域的存在既降低算法的運行速度,又對缺陷識別產生干擾.因此,提取ROI區(qū)域是進一步實現缺陷識別的重要中間環(huán)節(jié).從原始圖像可知,焊縫區(qū)域處于小徑管區(qū)域內,難以通過分割算法直接提取焊縫區(qū)域.故采用兩步分割的方法,即先提取小徑管區(qū)域,再從小徑管區(qū)域圖像中提取焊縫區(qū)域.具體的圖像分割算法流程如下.
1.2.1 小徑管區(qū)域提取
(1) 圖像增強與降噪:利用Gamma變換增強小徑管X射線圖像 S 得到圖像 S1,使用中值濾波和均值濾波算法對圖像S1進 行降噪處理得到圖像S2.
(2) 二值化:使用Ostu分割S2得到二值圖像B1.
(3) 獲取小徑管區(qū)域連通域:使用種子填充法提取 B1中所有連通域區(qū)域,并用模板匹配算法對每個連通域進行處理,含有模板 T的連通域即為小徑管區(qū)域L.
(4) 獲取小徑管區(qū)域圖像:利用小徑管區(qū)域連通域 L的 外接矩形獲得對應原圖 S2的小徑管區(qū)域,記為M1.
1.2.2 焊縫區(qū)域提取
(1) 二值化:使用Ostu分割圖像 M1得到二值圖像B2.
(2) 獲取最大連通域:使用種子填充法提取圖像 B2連通域,對比連通域面積,將小于最大面積的連通域設定為背景區(qū)域,處理后的圖像記為B3.
(3) 統(tǒng)計圖像 B3每列像素的平均值,若平均值超過一定閾值,記此列為焊縫子列,所有焊縫子列的組合區(qū)域即為感興趣焊縫區(qū)域ROI.
為驗證小徑管焊縫分割算法的合理性,使用某石油公司提供的焊接數據庫對小徑管X射線圖像進行ROI提取試驗.數據庫中共有3 535張現場實拍圖像,通過上述方法對3 535張圖像進行分割試驗,結果表明有3 487張圖像可以準確提取ROI,有效分割率為98.6%,剩余48張圖像識別錯誤經檢查原因為質量很差不具有分割意義或中心標記與管道邊緣嚴重重合.分割試驗過程中,所提方法表現出良好的魯棒性,對對接接頭焊口圖像和馬鞍形焊口圖像的ROI分割都表現出良好的效果分別如圖2和圖3所示.
圖2 ROI區(qū)域提取算例1Fig.2 ROI extraction example 1.(a) original image;(b)segmented image
圖3 ROI區(qū)域提取算例2Fig.3 ROI extraction example 2.(a) original image;(b)segmented image
分割過程中,即使部分圖像質量較差或者圖像中管道區(qū)域有彎曲如圖4和圖5所示,分割算法也可以準確分割.
圖4 ROI區(qū)域提取算例3Fig.4 ROI extraction example 3.(a) original image;(b)segmented image
圖5 ROI區(qū)域提取算例4Fig.5 ROI extraction example 4.(a) original image;(b)segmented image
小徑管焊縫區(qū)域內缺陷類型較多,不同類型的缺陷具有不同的特征,對焊管的危害性也不同.因此,在缺陷的識別過程中,不僅要確定是否為缺陷,還要精準判定缺陷的類型.圓形缺陷和線形缺陷是小徑管焊縫區(qū)域內最為常見和危害性較大的兩類缺陷,噪聲是缺陷識別過程中的干擾因素,將三者作為識別對象可有效覆蓋大部分缺陷類型.利用文獻[12]中的灰度密度聚類算法可獲得焊縫區(qū)域內圓形缺陷,線形缺陷和噪聲所對應的SDR圖像.圖6為SDR示意圖,圖中的外切矩形區(qū)域為疑似缺陷的外切矩形,擴展5個像素點后的區(qū)域為SDR.按其方法提取出的部分SDR如圖7所示.SDR面積較小,傳統(tǒng)基于特征提取的方法難以獲得圖像的顯著特征,識別過程中容易誤判一些細小缺陷.稀疏字典學習可通過稀疏系數直接識別SDR類型,避免了特征提取過程,在小徑管焊縫缺陷識別過程中具有獨特優(yōu)勢.
圖6 SDR示意圖Fig.6 SDR diagram
圖7 疑似局部圖像事例Fig.7 Example of suspected defect region.(a) SDR of round defects;(b) SDR of linear defects;(c) SDR of noise
稀疏字典學習是從龐大數量的樣本中找出最具代表性的原子組成字典,并用字典中的原子對樣本進行稀疏描述[13].設y為待檢測樣本,稀疏字典學習的表達式為
式中:D=[d1,d2,···,dk]∈Rm×k,表示字典矩陣中的原子數為k;X=[x1,x2,···,xi,0,0,···]∈Rk×n,表示待檢測樣本y可 由n個k維列向量線性表示.
小徑管焊縫缺陷字典矩陣中,原子是由SDR的像素點按照列優(yōu)先的原則逐列排列而成,表示為
式中:Cd表示圓形缺陷原子數;Ld表示線形缺陷原子數;Nd表 示噪聲原子數.稀疏系數X中的非0系數與待檢測圖像類別有關,與類別無關的系數表示為0.對X的求解可等效為求2范數最小化問題,即
式(3)可等效為
可使用正交匹配追蹤(orthogonal matching pursuit,OMP)算法求解式(4),得到矩陣X的1個廣義解.
1.3.1 構建字典矩陣模型
在小徑管焊縫缺陷識別過程中,可通過學習的方式獲得字典矩陣D,學習過程等效為求解下式
式中:Y為訓練樣本矩陣;ε為 矩陣X的稀疏性.
小徑管X射線焊縫圖像SDR可分為圓形SDR,線形SDR和噪聲SDR共3類.相同類型SDR具有一定的相似性,不同類型SDR表現出不同的特征,可以認為特定種類的SDR可由特定字典進行稀疏描述.因此,只需分別構建3種SDR的特定字典并進行組合,即可實現字典矩陣D的構建,D的 形式如式(2)所示.若類別數為C,可通過式(6)求解特定種類SDR對應的字典矩陣DK.
式中:YK為第K類訓練樣本;XK為第K類的稀疏系數.字典矩陣D可表示為
式(6)雖可求解矩陣DK,但并未對DK中的原子數進行限制.實際構成D時,訓練樣本可能較多,此時k值較大,較大的k值雖有利于對更加多元化的數據進行表示,但也會增加不同缺陷類型原子間的相關性.若D中的原子完全正交,則僅需少量原子就可覆蓋缺陷的全部特征,極大地減少可行解的數量.鑒于此,該文從小徑管X射線焊縫圖像缺陷識別的唯一性和實時性角度出發(fā),提出一種以不同類型缺陷原子相關性最小為目標的小徑管焊縫缺陷字典矩陣學習模型,即
式中:Θ為所有樣本的集合,P∈{圓形SDR,線形SDR,噪聲SDR},其中Pi表示對應類型原子區(qū)域的第i列元素,如當P為圓形SDR原子時,Pi表示圓形SDR原子區(qū)域的第i列元素,其余變量與式(6)相同.
式(8)中,字典矩陣D和 稀疏編碼矩陣X均為未知量,可以使用K均值奇異值分解(K-SVD)算法,先確定D后 計算X,再固定X更新D的方式交替更新求解.
1.3.2 字典矩陣求解
利用K-SVD算法求解字典矩陣的算法流程如圖8所示,算法運行前需預先設定字典矩陣的原子個數k.圖8中,mink取值為20,maxk取值為80.若k值過小則無法完整描述SDR的特征,k值過大則使類間相似性原子增多,字典冗余性增大.再考慮到要將3種缺陷類型的字典矩陣通過式(7)進行組合,故將各缺陷類型字典矩陣原子數的最大值設為80.
圖8 K-SVD算法流程圖Fig.8 The schematic diagram of K-SVD
確定3種缺陷的字典后,按照圓形缺陷、線形缺陷、噪聲的順序將原子進行排序,記錄此時字典矩陣中圓形缺陷原子數Cd,線形缺陷原子數Ld和噪聲原子數Nd.對任意測試樣本y,在D確定后可根據式(1)求解稀疏系數X,根據X中非0系數的分布可以判定測試樣本的缺陷類型,判別方法如式(9)、式(10)和式(11)所示.若滿足式(9)判定為圓形缺陷,滿足式(10)判定為線形缺陷,滿足式(11)判定為噪聲.
學習過程中,可能會出現因訓練樣本不同導致3種缺陷字典中的原子數互不相同的情況.為探究這種因素的影響,設計了1個k值為80的字典,字典中圓形缺陷SDR設定為50,線形缺陷SDR設定為25,噪聲SDR設定為5,利用此字典進行識別試驗.結果表明,X中的圓形缺陷段系數具有明顯優(yōu)勢,識別結果傾向于判定為圓形缺陷.將3種缺陷SDR數量對調,識別效果沒有明顯變化.當3種缺陷SDR分別設定為27,27和26時,從識別結果看3種缺陷的識別率沒有明顯差別.因此,為獲得更好的識別效果,應保證組合后字典矩陣中各缺陷SDR大致持平,故令Cd=Ld=Nd=k.
該文試驗條件為Inter Core i7-9700、NIDIA GeForce GTX 1660、16GB內存、64位Windows操作系統(tǒng)、Visual Studio 2019,PyCharm2022.1.2.為驗證所提算法的有效性,對某石油鉆采公司提供的小徑管X射線圖像進行識別試驗,數據集為3 535幅,大小為900像素 × 1 200像素的焊縫圖像.在獲取數據集后,利用該文提出的圖像分割算法分割數據集圖像,提取缺陷SDR并將SDR歸一化為15 ×15的模板,保存在SDR數據庫中.隨機提取SDR數據庫中的40%構建字典矩陣,其余60%用以驗證字典矩陣分類的有效性.在對分類模型的性能進行描述時,選取混淆矩陣中的準確率A,召回率R,精準率P和F1-score共4項指標,計算方式依照文獻[12],選取準確率A作為衡量分類模型性能的主要指標.
根據圖8的K-SVD算法求解字典矩陣的算法分別求解圓形缺陷字典矩陣DC、線形缺陷字典矩陣DL和噪聲字典矩陣DN,并依據式(7)構成小徑管X射線焊縫缺陷字典矩陣D.不同原子數下,字典矩陣D的識別率和3種缺陷原子間的互相關性如圖9所示.
圖9 缺陷識別率和不同類原子互相關性Fig.9 Defect recognition rate and the correlation of different kinds of atoms
從圖9可知,不同類型原子間的互相關性 μ隨k值增大而增大.當k=57時,字典矩陣D的缺陷識別率達到最大值為97.2%,當k在一定范圍內繼續(xù)增大時,缺陷識別率在97%上下小幅震蕩,在k值為58,59,62和64時識別率也可達到最大值,若k值增大到80附近,此時識別率因字典冗余性過大有所降低.綜上所述,從識別實時性以及不同類原子間互相關性最小兩個角度考慮,應在保證識別率的前提下使k值盡可能小.
選取k=57作為最佳原子數,此時字典矩陣D的原子數為171.使用字典矩陣D分別對圓形缺陷和線形缺陷的測試樣本進行識別,圓形缺陷識別率為97.4%,線形缺陷識別率為96.7%,分類結果如表1所示,表1中混淆矩陣的4項指標為所有缺陷相對噪聲.實際試驗中還發(fā)現一些未能正確識別的缺陷SDR,這些SDR或缺陷區(qū)域面積極小,或缺陷顏色較淺.該文統(tǒng)計了未正確識別SDR的缺陷區(qū)域面積dS歸一化后和灰度跨度Pr,正確識別SDR的缺陷區(qū)域面積dS的統(tǒng)計結果與未正確識別SDR的缺陷區(qū)域面積dS的統(tǒng)計結果對比如圖10所示.正確識別的SDR的灰度跨度Pr的統(tǒng)計結果與未正確識別SDR的灰度跨度Pr的統(tǒng)計結果對比如圖11所示.由于數據量過小的原故,目前試驗結果無法證明缺陷面積對識別準確率的影響,但從圖11可知,正確識別的SDR與未正確識別的SDR在灰度跨度上具有明顯差異,未正確識別的SDR灰度跨度普遍低于43.究其原因,該文認為當圖像灰度跨度低于43時,缺陷與背景間對比度較低,稀疏系數X中的非0值分布分散,因此識別時易產生誤判.數據庫中也存在部分SDR表現出具有其它缺陷的圖像特征,這種類型的缺陷在分類時更容易出錯,對這種難以分類的SDR還需進行更加深入的研究.所提算法包括ROI區(qū)域分割,SDR提取和缺陷識別共3個步驟,在算法運行過程中,步驟一耗時遠大于步驟2和步驟3.從系統(tǒng)實時性考慮,應使用GPU對步驟1進行加速,以處理1幅圖像為例,平均加速效果如表2所示.
表1 測試分類結果Table 1 The results of test classification
表2 算法加速效果Table 2 Algorithm acceleration effect
圖10 SDR面積對比Fig.10 The area comparison of SDR
圖11 SDR灰度跨度對比Fig.11 Gray span contrast of SDR
隨著計算機和人工智能的發(fā)展,許多學者從傳統(tǒng)的主觀提取X射線焊縫圖像特征,轉向用自動學習的方式提取X射線焊縫圖像特征[14-15].近年來,深度學習的發(fā)展也使越來越多的學者將各種不同的深度學習模型應用到自己的研究當中并取得優(yōu)異的成果.為了證明所提算法的優(yōu)越性,將相同數據集在VGG16,GoogleNet,ResNet18和YoLo V3共4個網絡模型上進行測試對比,結果如表3所示.
表3 性能對比Table 3 Performance comparison
從表3可以看出所提算法相比于一些深度學習模型對焊縫缺陷的檢測精度更高,這可能是由于缺陷面積相對于圖像過小導致深度學習模型無法提取有效特征的緣故,而稀疏字典學習由于不需要提取特征,因此相比于深度學習模型而言在解決小面積對象分類問題上更有優(yōu)勢.從檢測速度的角度出發(fā),所提算法檢測速度較慢,在之后的研究中可嘗試通過深化程序的并行程度或者結合基于深度模型的圖像分割方法加快檢測速度.
(1) 采用兩步圖像分割法可準確提取出小徑管焊縫圖像感興趣ROI,極大降低了提取SDR和缺陷分類的成本.經過并行加速后,該分割方法在實際應用中是快速有效的,ROI分割時間降低為1.12 s,有效分割率達到98.6%.
(2)與深度學習方法相比,通過稀疏字典學習的方式對焊縫缺陷進行識別避免了特征提取的難題,學習成本更低,計算速度更快,準確率也更高,在實踐中展現出了巨大的優(yōu)越性.
(3)字典矩陣僅需較小的原子數就可以達到很高的缺陷識別準確率,即使學習過程完成,也可隨時將典型缺陷原子加入字典,最終形成過完備字典.