王家晨,王新房
(西安理工大學 自動化與信息工程學院,陜西 西安 710048)
基于ButterWorth濾波的X射線鋼管焊縫缺陷檢測方法
王家晨,王新房
(西安理工大學 自動化與信息工程學院,陜西 西安 710048)
焊縫缺陷檢測是保證焊接質量的重要環節,隨著工業的高速發展和迫切需求,基于X射線焊縫缺陷自動檢測技術得到了廣泛的研究,但是由于成像方式,以及鑄件材質等客觀因素的影響,X 射線圖像存在噪聲多、對比度低、背景亮度不均勻、焊縫邊緣模糊等問題,使得利用計算機進行焊縫缺陷自動檢測的準確率不太理想。針對這一問題,提出了一種基于ButterWorth濾波的鋼管焊縫缺陷檢測方法。首先利用傅里葉變換將圖像的時域信息變換到頻域,之后對圖像的頻域信息進行高通濾波,提取出圖像中的高頻缺陷信息,再對其進行傅里葉反變換,從而將缺陷信息凸出,最后利用閾值分割成功提取出缺陷,并對提取出的缺陷結果進行處理,有效地降低了漏檢率和誤檢率。與其他傳統檢測算法相比,它對缺陷類型不敏感,具有較好的適應性和通用性。
焊縫缺陷;自動檢測;高通濾波;圖像處理
隨著科學技術的飛速發展,焊接作為先進制造業中的一種基本工藝方法,已被廣泛應用于航空、航天、核工業、能源交通、石油化工及建筑和機械等各個工業部門。對于焊接結構件來說,焊縫質量很大程度上決定了結構件的使用壽命。但是在焊接過程中,往往由于焊接工藝參數的不穩定,或者結構件焊接應力變形等諸多不良因素的存在,使得焊縫中不可避免地出現諸如氣孔、裂紋、夾渣、未融合、咬邊、未焊透及燒穿等缺陷,這些焊縫缺陷的存在,不僅影響了焊縫的美觀,而且更嚴重的是直接導致焊接結構件的失效,甚至引起危險的脆斷,帶來極大的經濟損失。因此,為了保證焊接結構件的質量以及各行業使用過程中的安全,防止事故的發生,焊后對焊縫缺陷的準確檢測就變得尤為重要。
為了確保在焊接過程中結構件產品不出現問題,就必須要對其中的焊縫進行無損檢測。X射線檢測作為無損檢測的一種常用技術,已經成為檢測焊接缺陷的重要手段。目前大多數企業的X射線探傷檢測仍以人工評定方式為主,人工評定本身易受個人自身經驗和主觀標準不一致的影響,并且人工評定勞動強度大,工作效率低。因此,迫切需要提高焊縫X射線檢測的自動化水平,降低漏檢率和誤檢率。本文根據某石油鋼管廠的實際需求,提出了一種基于高通濾波的焊縫缺陷檢測方法。
獲取焊縫X射線圖像的器件主要分為X射線成像、圖像采集和計算機處理三個部分。具體的X射線焊縫缺陷自動檢測硬件系統如圖1所示。

圖1 X射線焊縫缺陷自動檢測硬件系統示意圖
其中,計算機處理部分是焊縫缺陷自動檢測的核心部分,它主要分為三個環節:(1)焊縫圖像預處理;(2)焊縫區域提?。?3)缺陷檢測分割。
由于實際工作現場諸多因素的影響,導致采集到的X射線焊縫圖像均存在信噪比低、背景起伏大、對比度低等缺點,給后續的缺陷提取工作造成了很大的困難,所以圖像預處理是非常必要的。通過對實際X射線焊縫圖像噪聲類型的研究,筆者采用了均值濾波進行降噪[1-2],并取得了很好的效果。
均值濾波是指在圖像上對目標像素設定一個模板,該模板包括了其周圍的臨近像素,再用模板中的全體像素的平均值來代替原來像素值。設原圖像為f(i,j),窗口大小為(2k+1)×(2l+1),則均值濾波處理后的輸出圖像g(i,j)可表示為:
(1)
經過大量實驗表明,采用3×3的模板進行均值濾波后,噪聲信號的干擾得以有效的抑制。
為減少在圖像處理時計算機的運算量,提高運算效率,首先需要將焊縫圖像中焊縫邊界提取出來,這樣,在后續的缺陷檢測過程中只需檢測焊縫邊界內的圖像即可,如此可避免進行全圖檢測,大大提高檢測效率。
邊緣檢測的基本原理是將圖像中灰度值(梯度)變化較大的點檢測出來,然后再將這些點連接起來,構成若干線條,進而得到圖像的邊緣信息。常用的邊緣檢測算子有Sobel算子、Roberts算子、Canny算子等。Sobel算子具有很好的邊緣檢測特性,但易檢測出偽邊緣;Roberts算子在檢測水平和垂直邊緣時具有很好的效果,但對噪聲敏感;Canny算子具有很好的邊緣檢測性能,故本文采用Canny算子[3-4]進行邊緣信息提取。如圖2(a)是一個典型的焊縫圖像,從中可以看到焊縫邊緣整體上是規則的,因此可用兩條直線近似地表示焊縫邊界,基于此,本文采取了如下的解決方案:首先采用Canny算子提取出邊緣信息,然后利用霍夫變換在檢測直線中具有較好效果的這一特性,以此來檢測焊縫邊緣處的直線,并且把垂直和水平的直線過濾掉,最后將檢測到的直線經過最小二乘擬合,最終得到焊縫邊界如圖2(b)所示。具體的算法步驟如下:
(1)對原始焊縫圖像F進行平滑濾波處理,得到圖像F1;
(2)利用Canny算子對圖像F1進行邊緣檢測,得到圖像F2;
(3)對圖像F2利用霍夫變換檢測直線,將檢測結果存放在集合S1中;
(4)對集合S1中的直線進行過濾,濾除長度太短、接近平行或垂直的直線,將過濾后的結果存放在集合S2中;
(5)在集合S2中找到最左邊的直線LL和最右邊的直線RL,由此可估計得到近似中線ML,以近似中線ML為界,對集合S2中的直線進行二次過濾,此次過濾需要過濾掉與中線ML相交或距離中線ML太近的直線,將過濾后的結果存放在集合S3中;
(6)將集合S3中的直線以中線ML為基準分為左右兩部分,分別為集合SL和集合SR;
(7)分別對集合SL和集合SR中的直線進行最小二乘擬合,左邊的集合SL經過擬合最終得到焊縫的左邊界EL,右邊的集合SR經過擬合最終得到焊縫的右邊界ER。

圖2 邊緣檢測前后圖像
如前文所述,如果把鋼管焊縫X射線圖像信號從空間域變換到頻域,就可以從頻域角度來分析圖像信號的特征。從頻域角度來看,焊縫圖像上的邊緣、缺陷等細節信息均屬于高頻成分,分布在頻譜的邊緣,因此可以通過高通濾波[5]的方法,使所感興趣的邊緣、缺陷等細節高頻成分通過,而使圖像的背景等低頻成分得到抑制,以此來提取出缺陷信息。目前已經提出的高通濾波方法有很多種,例如理想高通濾波法、ButterWorth高通濾波法、高斯高通濾波法、指數高通濾波法等。
本文采用了ButterWorth高通濾波法將高頻成分信息提取出來。
ButterWorth濾波器是模擬濾波器的一種,具有單調下降的幅頻特性,而且具有通頻帶內的頻率響應曲線為最大限度平坦,而在阻頻帶處則逐漸下降為零的特點。
ButterWorth低通濾波器的幅度平方函數為:

(2)
其中N為濾波器階數,Ωc為截止頻率。下面給出高通濾波處理步驟及處理結果,如圖3所示。具體的處理步驟為:
(1)用(-1)x+y乘以輸入圖像各像素值,以將圖像頻譜原點移動到頻譜圖中心;
(2)計算圖像的DFT,得到F(u,v);
(3)用ButterWorth高通濾波函數H(u,v)乘以F(u,v),得到處理結果G(u,v);
(4)計算濾波后的IDFT;
(5)取IDFT變換結果中的實部;
(6)用(-1)x+y乘以IDFT變換結果的實部,得到處理后的結果。

圖3 高通濾波前后圖像
經過上述高通濾波之后,缺陷信息已經被完整地凸顯出來,如果將此結果直接用于后續的缺陷分割中,這顯然是不可取的。因為從頻域角度來看,焊縫圖像上的邊緣、缺陷等細節信息均屬于高頻成分,雖然缺陷信息被完整地凸顯出來,但是邊緣信息同樣作為高頻成分也一并被凸顯出來(如圖3(b)所示),而實際中焊縫邊緣并不屬于缺陷,因此若直接將高通濾波后的結果用于后續的缺陷分割中必然會引起較多的誤檢。所以,需要在高通濾波后的基礎之上采取相應的措施以剔除焊縫邊界帶來的干擾。
由于在實際生產中,缺陷信息大部分都存在于焊縫的內部位置,因此可以將焊縫邊界部分視為背景信息,對其不予檢測。基于此,筆者設計了如下的解決方案:首先以上文中提取出的焊縫左右邊界為基準,分別將左右邊界沿水平方向向內部縮進3~5個像素(即左邊界向右縮進,右邊界向左縮進),形成兩條新的左右焊縫邊界,然后在新的左右邊界內進行缺陷分割提取,如此便可剔除真實邊界所帶來的干擾。
焊縫圖像經過高通濾波后,邊緣和缺陷等細節信息已經完全凸顯出來,接下來,只需在焊縫邊界內將缺陷分割提取出來即可。
4.4.1分割方法介紹
圖像分割[6]經常用在數字灰度圖像中提取目標物體,它主要分為兩大類:一是基于空間灰度閾值的分割方法;二是空間域增長分割方法。本文采用了第一類灰度閾值分割方法[7],灰度閾值分割就是先確定一個處于圖像灰度取值范圍之中的灰度閾值,然后將圖像中各個像素的灰度值都與這個閾值相比較,并根據比較結果將對應的像素劃為兩類,像素的灰度值大于閾值的劃為一類,像素的灰度值小于閾值的劃為另一類(灰度值等于閾值的像素可歸入這兩類之一)。
要想把焊縫圖像中的缺陷信息從背景中完整地分割出來,確定一個合適的閾值就顯得尤為關鍵。若閾值選得過高,這勢必會影響分割出來的缺陷的大小和形狀,甚至有些不明顯的缺陷點容易被誤歸為背景,造成漏檢。反之若閾值選得過低,則容易引起誤檢。目前已經提出的閾值選取方法有很多種,例如最大類間方差法、最大熵值法、最小誤差法和簡單統計法等。
4.4.2缺陷分割
經過對各種閾值選取方法的試驗,本文采取了迭代閾值分割法對圖像進行閾值分割,從而成功有效地將缺陷分割出來。
迭代閾值分割[8]的原理是首先選擇一個近似的閾值作為估計計算的初始閾值,然后進行閾值分割,產生子圖像,并根據子圖像的灰度特性選取新的閾值,經過多次迭代之后,平均灰度值將趨向于真值。迭代閾值分割的具體算法步驟如下:
(1)選取一個初始閾值

(3)
其中,Zmin、Zmax分別表示圖像中灰度值的最小值和最大值。
(2)利用Tk將圖像分成小于Tk和大于Tk的兩組:R1和R2,并計算它們的灰度均值Z1和Z2:

(4)

(5)
其中,f(i,j)是圖像中點(i,j)的灰度值,N1、N2分別為R1和R2中的像素個數。
(3)計算新的閾值Tk+1

(6)
(4)如果Tk+1=Tk則結束,否則k=k+1,轉步驟(2)。
4.4.3分割結果進一步處理
經過上述閾值分割方法,即可得到缺陷與背景的二值化圖像,其中缺陷信息灰度值為255,背景信息灰度值為0。但是經過仿真可以發現,由于采集過程中某些不確定性因素或者成像面板上的壞點造成了采集到的焊縫圖像上有些許灰度值極高的離散斑點,這些斑點在經過閾值分割后同樣被分割出來,從而會引起誤檢,因此需要將閾值分割后的結果進行進一步處理,消除這些斑點引起的誤檢。
通過大量仿真研究,本文設計了如下的解決方案:將閾值分割后的缺陷結果視為一個個的連通域,然后計算每個連通域內包含的像素個數。已知容易引起誤檢的離散斑點所包含的像素相比于真實的缺陷所包含的像素是非常少的,因此,可以確定一個像素閾值,如果某個連通域內所包含像素個數低于此像素閾值,那么就認為該連通域為“偽”缺陷,反之則認為是真實缺陷。最后將“偽”缺陷過濾,保留真實缺陷。
下面給出最終的各種缺陷類型提取分割結果圖,如圖4所示。

圖4 各種缺陷分割結果
本文算法首先采用均值濾波的方法,消除了系統的隨機噪聲,提高了圖像的清晰度,改善了圖像質量。隨后,采用Canny邊緣檢測算子與霍夫變換相結合的算法有效并準確地提取出了焊縫邊緣,進而提取了檢測的有效區域,提高了檢測效率。最后采用ButterWorth高通濾波的方法凸顯出了缺陷信息,并且采用迭代閾值的方法將缺陷分割出來。為了使最終分割結果更加精確化,降低誤報率和漏報率,對閾值分割結果做了進一步處理。
在兩年多的時間里,在實驗室和工廠現場應用本文提出的算法進行了上百次實驗,結果證明該算法的重復性和可靠性較好,尤其針對焊縫內部的缺陷效果更佳。同時,筆者針對某石油鋼管廠的實際需求,開發了一套焊縫缺陷自動檢測系統,并將該方法運用到檢測系統中去,通過大量測試后已在實際生產過程應用。
當然,該算法還有些許不足之處:雖然本文算法對焊縫內部的缺陷檢測效果較好,但是由于在缺陷分割過程中剔除了焊縫邊緣,使得有些靠近焊縫邊緣處的缺陷不容易被檢測到,在這方面還有待深入研究。
[1] 邵家鑫, 都東, 朱新杰,等. 基于X射線數字化圖像處理的雙面焊焊縫缺陷檢測[J].焊接學報,2010,31(11):21-24.
[2] 林果, 劉桂華. 基于主成分分析的熒光磁粉檢測缺陷識別技術[J]. 微型機與應用, 2016, 35(1):85-87.
[3] 張震, 馬駟良, 張忠波,等. 一種改進的基于Canny算子的圖像邊緣提取算法[J]. 吉林大學學報(理學版),2007, 45(2):244-248.
[4] 黃劍玲, 鄭雪梅. 一種改進的基于Canny算子的圖像邊緣提取算法[J]. 計算機工程與應用,2008, 44(25):170-172.
[5] 王蓉.圖像增強算法實現[D].武漢:長江大學, 2014.
[6] 李余錢, 蘇光大. 基于鄰域處理器自適應圖像分割高速實現[J]. 電子技術應用, 2016, 42(2): 99-101.
[7] 孫怡, 孫洪雨, 白鵬,等. X射線焊縫圖像中缺陷的實時檢測方法[J]. 焊接學報, 2004, 25(2):115-118.
[8] 張果,李曉娟,張憲.基于迭代閾值和形態學的圖像邊緣檢測[J].微計算機信息,2007,23(27):298-299,137.
Automatic detection of weld defects in X-ray based on ButterWorth filtering
Wang Jiachen, Wang Xinfang
(College of Automation and Information Engineering, Xi’an University of Technology,Xi’an 710048, China)
Weld defect detection is a key link to ensure the quality of welding. With the rapid development of industry and urgent demand, the automatic detection technology of weld defects based on X-ray has been widely studied. However, because of the imaging methods, and the influence of casting material and other objective factors, X-ray image has many problems, such as noise background, low contrast, brightness uneven, and weld edge blur, which make the automatic detection accuracy of weld defects is not very ideal. For this problem, a new method , the weld defect detection algorithm based on ButterWorth filter, is proposed in this paper. Firstly ,it uses the Fourier transform to transform the time domain information of the image into the frequency domain, then carries on the high-pass filtering to the frequency domain information of the image, and extracts the high frequency information of defects in the image, then transforms it in inverse Fourier transform, and highlights the defect information. Finally, using the method of threshold segmentation to extract the defects successfully, and further processing on the extracted results to reduce the false detection rate. Compared with other traditional detection algorithms, it is not sensitive to defect types, so it has better adaptability and versatility.
weld defects; automatic detection; high pass filtering; image processing
TP274.51
A
10.19358/j.issn.1674- 7720.2017.23.006
王家晨,王新房.基于ButterWorth濾波的X射線鋼管焊縫缺陷檢測方法[J].微型機與應用,2017,36(23):21-24.
2017-05-14)
王家晨(1993-),通信作者,男,碩士研究生,主要研究方向:控制工程。E-mail:414961362@qq.com。
王新房(1952-),男,博士,教授,主要研究方向:系統工程,控制理論。