馬雨嫣,朱 冰
(西安石油大學 電子工程學院,西安 710065)
受焊接工藝的影響,焊接過程中焊接器件受到來自外部環(huán)境和各種非人為因素的干擾,時常會導致焊縫中出現(xiàn)密集氣孔、橫向或縱向裂紋、夾渣等各種難以預測的焊接缺陷[1]。這些缺陷可能會導致結(jié)構(gòu)失效,甚至造成危險的事故。針對上述問題,必須定期對焊接器件的焊縫進行無損檢測,避免安全隱患的發(fā)生。X 射線檢測因為其檢測速度快、檢測范圍廣泛、成像較為直觀的特點,被廣泛應用于工業(yè)生產(chǎn)中。在實際無損檢測過程中,X 射線檢測圖像存在對比度不高、圖像缺陷邊緣模糊、圖像噪聲多、背景起伏較大等缺點,會導致傳統(tǒng)的缺陷檢測方法很難從檢測圖像中提取出對比度較低的目標缺陷[2-3]。
傳統(tǒng)缺陷分割方法常利用圖像自身表現(xiàn)出來的灰度和空間信息進行分割。文獻[4]提出了一種結(jié)合全局和局部閾值技術(shù)的射線檢測圖像分割方法。文獻[5]提出了一種基于圖像中每個像素的鄰域像素灰度統(tǒng)計特性的對比度增強方法。上述2 種方法都可以檢測出較明顯的缺陷,但對細小裂紋這類缺陷的檢測上存在局限性。文獻[6]研究了基于X 射線圖像的石油鋼管焊縫缺陷檢測識別方法,此方法改進了閾值分割方法的局限性,采用基于排序點的聚類算法(ordering points to identify the clustering structure,OPTICS)對小面積缺陷進行分割,該算法不但滿足實時性要求,且對輸入?yún)?shù)不敏感,能夠?qū)崿F(xiàn)對任意形狀大小缺陷和噪聲的準確分割。上述的缺陷分割算法僅對特定類型的缺陷達到較理想的提取效果,在對邊緣模糊、噪聲較大的焊縫照片進行處理時難以保證正確識別率。
脈沖耦合神經(jīng)網(wǎng)絡(PCNN)不同于傳統(tǒng)的神經(jīng)網(wǎng)絡,不需要訓練過程即可實現(xiàn)模式識別、圖像分割、目標分類。因此,PCNN 網(wǎng)絡非常適合實時圖像處理環(huán)境。由于射線檢測圖像自身存在對比度低、噪聲多的特點,采用PCNN 網(wǎng)絡進行圖像分割的過程中很易受到干擾,導致分割效果不佳。圖像視覺顯著性模型可以結(jié)合圖像的局部特性,快速定位圖像的感興趣區(qū)域。將經(jīng)過顯著性檢測得到的缺陷顯著圖作為PCNN 網(wǎng)絡的輸入圖像,會增強PCNN 網(wǎng)絡的魯棒性,提高缺陷分割準確度??紤]到射線圖像無顏色特征并且亮度特征不明顯的特點,從統(tǒng)計學角度出發(fā),采用基于全局對比度的顯著性檢測算法(LC)計算像素的全局對比度并構(gòu)造顯著圖,該算法簡單,能夠較好地確定焊縫圖像中感興趣區(qū)域的邊界。
針對射線檢測圖像特點,本文提出一種新的缺陷分割算法。首先,利用視覺顯著性模型快速定位圖像中的顯著區(qū)域,再結(jié)合PCNN 算法實現(xiàn)對焊縫檢測圖像分割。此算法取得了較好的分割效果,具有較好的普適性和魯棒性。
Eckhorn 在1990年根據(jù)貓的大腦皮層同步脈沖發(fā)放現(xiàn)象[7]的研究,得到了哺乳動物神經(jīng)元模型,對該模型進行一些改進,就得到脈沖耦合神經(jīng)網(wǎng)絡模型,簡稱為PCNN 模型。PCNN 模型是由眾多神經(jīng)元相互鏈接形成的一種動態(tài)多參數(shù)非線性神經(jīng),一個PCNN 神經(jīng)元主要由接受部分、調(diào)整部分和脈沖產(chǎn)生部分組成。經(jīng)典PCNN 模型參數(shù)較多、網(wǎng)絡系數(shù)確定較為困難。為了實現(xiàn)更好地適應圖像處理的要求,在具有相同功能的前提下,本文使用一種簡化后的改進PCNN 模型[8]進行進一步的研究。
式中:Iij[n]表示外部刺激;Fij[n]表示第(i,j)個神經(jīng)元第n 次輸入;Lij[n]為連接輸入;Uij[n]為內(nèi)部活動項;Tij[n]為動態(tài)閾值;Yij[n]為當前神經(jīng)元的脈沖輸出;β 為連接系數(shù);w 為連接矩陣的元素;νL為連接幅度常數(shù);αT為閾值衰減系數(shù);νT為閾值幅度常數(shù)。
LC 算法由Zhai 等于2006年提出,該方法基于計算像素P 在整個圖像上的全局對比度。
式中:I 是圖像像素集;S 是與原圖等尺寸的顯著性圖。它能夠均勻地突出圖像整體的顯著性區(qū)域,較好地定義顯著目標的邊界,并能有效忽略噪聲和塊效應的高頻成分。
本算法結(jié)合LC 和PCNN,算法流程如圖1 所示。本算法將式(6)得到的灰度顯著圖作為簡化的PCNN模型的輸入,由于PCNN 模型迭代次數(shù)的不確定性,利用最小交叉熵準則確定最優(yōu)迭代次數(shù)和最佳分割圖像,提取出焊縫缺陷。
圖1 算法流程Fig.1 Algorithm flow chart
輸入:LC 得到的最終灰度顯著圖
輸出:焊縫缺陷區(qū)域
(1)第一次迭代時,按照式(1)外部刺激Iij[n]等于神經(jīng)元的內(nèi)部活動項U;
(2)此時,若外部刺激Iij[n]大于閾值Tij[n],則根據(jù)式(5)神經(jīng)元脈沖輸出Yij[n]為1,否則為0;
(3)與此同時,動態(tài)閾值Tij[n]急劇增大,并按照式(4)隨每次迭代過程呈指數(shù)形式遞減;
(4)在之后的迭代過程中,被激活的神經(jīng)元通過與鄰域內(nèi)相似神經(jīng)元的連接作用激勵鄰域神經(jīng)元,按照式(2)形成連接輸入L;
(5)若鄰域某一神經(jīng)元的內(nèi)部活動項U 大于當前閾值Tij[n],則被PCNN 捕獲激活;
(6)每次迭代,PCNN 產(chǎn)生一個脈沖序列Y;
(7)根據(jù)最小交叉熵過程,求取一個PCNN 的迭代次數(shù)n 和最佳閾值,而與其對應輸出的脈沖序列構(gòu)成的二值圖像,即最佳分割結(jié)果。
實驗所采用焊縫檢測圖像數(shù)據(jù)集來源于實際工業(yè)生產(chǎn)中,圖像分辨率不同,尺寸不一。
為驗證本文算法的有效性,在MATLAB 平臺上對焊縫檢測圖像數(shù)據(jù)庫中252 張焊縫檢測圖像進行了實驗計算,并計算結(jié)果的混淆矩陣(confusion matrix),將其作為客觀評價標準。
參數(shù)初始設置:神經(jīng)元反饋矩陣F、耦合連接矩陣L、神經(jīng)元內(nèi)部狀態(tài)矩陣U、神經(jīng)元迭代輸出矩陣Y 初始化時設為0 矩陣。迭代條件:圖像所有像素被激活。
焊縫缺陷主要分為氣孔、橫向或縱向裂紋、夾渣、未焊透、未融合、咬邊。按影像特征可以分為線形缺陷(裂紋、未焊透、條狀夾渣、未熔合等)和圓形缺陷(氣孔,球狀夾渣等)兩大類[9]。在射線檢測圖像中,不同類型的缺陷對表現(xiàn)的影像特征各異,如圖2所示。
圖2 射線焊透檢測圖像(含各種焊接缺陷)Fig.2 Diagrams for X-ray weld defect(various welding defects)
為驗證算法的有效性,本文針對多組焊縫缺陷檢測圖像進行仿真實驗,均獲得了較好的實驗結(jié)果。限于篇幅,本文只給出5 幅具有代表性圖像的仿真結(jié)果,它們分別為橫向裂紋缺陷圖像、縱向裂紋缺陷圖像、氣孔缺陷圖像、夾渣缺陷圖像以及咬邊缺陷圖像。圖3 為實驗的仿真結(jié)果。
從圖3 可以看到,本文算法獲取到的分割結(jié)果,充分提取了焊縫檢測圖像中的缺陷細節(jié)信息,具有較好的視覺效果。對于圓形缺陷分割效果最佳,對邊緣模糊、對比度低、背景變化較大的線形缺陷分割效果較好。受檢測圖像質(zhì)量的影響,對于質(zhì)量較低、噪聲較多的線形缺陷圖像分割效果有待提升。
圖3 焊縫缺陷及其分割結(jié)果Fig.3 Weld defects and their segmentation results
利用圖1 所提算法,對焊縫檢測圖像數(shù)據(jù)集內(nèi)252 張焊縫圖像進行了實驗計算,計算結(jié)果的混淆矩陣(confusion matrix)如表1 所示。
表1 基于本文分割算法分割效果表Tab.1 Confusion matrix of combined defect segmentation algorithm
從客觀評價指標上看,本文算法準確率達到82.9%,可以分割出大多數(shù)情況下的缺陷,這是在算法和參數(shù)完全無人工調(diào)整的情況下獲得。
為了驗證本文方法的優(yōu)越性,從焊縫檢測圖像數(shù)據(jù)集中選取了40 張各種缺陷圖像,分別采用本文方法與大津法(Otsu)和傳統(tǒng)PCNN 圖像分割算法進行對比。圖4 給出了部分實驗結(jié)果。
圖4 不同算法的對比效果Fig.4 Comparison of partial detection results by different methods
由圖4 可以看出,傳統(tǒng)分割算法易受噪聲的干擾,對于圖片質(zhì)量低的圓形缺陷可以粗略定位出感興趣區(qū)域,缺陷內(nèi)部細節(jié)缺失,邊緣不清晰,無法完整地分割出缺陷,對于線形缺陷的定位不準確,分割效果差。本文方法得到的感興趣區(qū)域定位準確,邊緣清晰,噪聲小,對于線形缺陷也具有很好的魯棒性和適用性。
實驗還與2 組參考文獻中的算法進行對比,將參考文獻[10]、[11]作為對比組,其中文獻[10]首先應用Sobel 算子對焊縫圖像進行處理,然后再利用Otsu對算法圖像的ROI 區(qū)域進行分割。文獻[11]應用Otsu 算法,確定目標與背景間最大方差,以此作為PCNN 網(wǎng)絡初始閾值,再通過改進的PCNN 網(wǎng)絡進行圖像分割。對比結(jié)果如圖5 所示。
圖5 算法對比結(jié)果Fig.5 Algorithm comparison results
圖5 中,對比了文獻[10]、文獻[11]中的相應圖像處理結(jié)果,可以看出在圖(b)、圖(c)中,在圖像質(zhì)量欠佳的密集型圓形缺陷時無法獲得理想的分割效果,對比圖(d)分割效果較好,本文的方法要優(yōu)于文獻[10]和文獻[11]的方法,具有更強的普適性,分割結(jié)果更理想。
圖5 控制程序流程Fig.5 Flow chart of control program
考慮到無損檢測圖像具有對比度低、缺陷邊緣模糊、噪聲大等特點,且包含缺陷的區(qū)域通常僅在射線圖像中占較小的面積。本文提出了一種新型缺陷分割算法,該算法結(jié)合了視覺顯著性模型與PCNN網(wǎng)絡,改善了傳統(tǒng)分割算法的不足,充分利用了PCNN網(wǎng)絡在圖像分割的優(yōu)勢。從實驗結(jié)果可以看出,該方法具有較強的普適性,對于各類缺陷的分割結(jié)果較好,但是對于具有較強噪聲的線形缺陷的分割,本文方法得到的結(jié)果不是很理想,還需要進一步的研究。