?

基于圖像形態學的焊縫區域提取與對比度提升技術

2024-03-15 06:25劉驍佳趙耀邦羅志強
中國材料進展 2024年2期
關鍵詞:像素點X射線算子

劉 歡,劉驍佳,趙耀邦,王 寧,羅志強,危 荃

(上海航天精密機械研究所,上海 201600)

1 前 言

鋁板焊接后焊縫內存在裂紋、氣孔等缺陷,使用X射線成像方法進行缺陷檢測是一種重要檢測手段。由于X射線的成像方式、焊接材質、焊接方法等客觀因素的影響,圖像中焊縫區域與背景區域的像素值分布相似,焊縫區域對比度較低,不利于觀察焊縫區域的缺陷,因此,提升焊縫區域的對比度成為有效檢測焊縫缺陷的前提[1-3]。X射線成像中焊縫區域在整副圖像中占比較低,若對整副圖像進行對比度提升處理則數據量冗余且含有大量噪聲,對比度提升效果較差,因此可先確定焊縫區域后再進行對比度提升處理。確定焊縫位置后,主要在焊縫區域中進行缺陷檢測和識別,忽略圖像中大多數無關區域,這將極大減少系統處理時間,為焊縫缺陷智能化和快速化檢測實際應用提供基礎。但由于X射線圖像存在噪聲多、焊縫區域邊緣模糊等問題,因此如Sobel、Canny等傳統的基于邊緣檢測的方法[4,5]應用于焊縫區域提取時效果較差。并且由于焊縫缺陷可能位于熱影響區內,現有方法多為提取焊縫邊緣,會導致提取位置遺漏;同時由于X射線成像焊縫區域的對比度低、亮度分布不均勻,基于不同區域類間方差原理的局部自適應閾值法[6-8]提取焊縫區域效果同樣欠佳,并且當圖像數據集較大,大多數焊縫提取方法難以針對所有圖像都有較好的效果。因此針對現有方法存在的局限,本文提出一種自動提取焊縫區域并提高焊縫區域對比度的方法,提取焊縫位置區域并提升對比度,可解決大批量的X射線成像中焊縫區域難提取、對比度低的問題,提高識別可靠性,為后續焊縫區域的自動化缺陷檢測提供基礎。

2 焊縫區域對比度提升技術

通過X射線圖像采集裝置,收集多張不同厚度、不同位置、邊緣形態各異的鋁板焊縫圖像,如圖1所示,圖1a~1e分別為焊縫不同位置、不同X射線源強度下獲取的X射線圖像。由圖1可知,焊縫所在區域與背景區域像素值較為接近,焊縫區域對比度較低。

圖1 典型鋁板X射線圖像Fig.1 Typical X-ray image of aluminum plate

焊縫區域內像素值梯度變化比背景區域劇烈,據此焊縫區域特性,以圖1a中焊縫為例,首先進行焊縫區域的提取,再進行像素值線性變換,提升對比度,整體流程如圖2所示。

圖2 焊縫區域對比度提升流程圖Fig.2 Flow chart of contrast improvement in weld area

2.1 雙邊濾波去噪處理

首先需對圖像進行去噪處理,本研究使用雙邊濾波方法去除噪聲,在盡量保留圖像細節特征的條件下對目標圖像的噪聲進行抑制,達到保邊去噪的目的。雙邊濾波同時考慮像素點的空域信息和值域信息,濾波器各權重系數大小ω是定義域核和值域核的乘積。

濾波器的定義域核計算公式如式(1):

(1)

其中,(i,j)是當前被卷積像素的坐標點,(k,l)是鄰域像素的坐標點,σd是高斯函數的標準差。濾波器的值域核計算公式如式(2):

(2)

其中,vi,j是當前被卷積坐標(i,j)的像素值,vk,l是其鄰域坐標(k,l)的像素值,σr是雙邊濾波器的標準差。定義域核與值域核相乘得到濾波器加權系數ω,如式(3):

ω(i,j,k,l)=

(3)

由公式(1)可知,定義域核d(i,j,k,l)由像素點之間的距離決定,像素點距離越遠權重系數大小ω越小。由公式(2)可知,值域核r(i,j,k,l)由像素點差值決定,像素點差值越小權重系數大小ω越大。因此當圖像中像素值變化較小時,此時值域核r(i,j,k,l)接近于1,定義域核d(i,j,k,l)起主要作用。當圖像中像素值變化較大時值域核r(i,j,k,l)權重較大,較好地保留了圖像的邊緣信息。為保證雙邊濾波處理時定義域核和值域核的均衡性,可將標準差σr和σd數值設置為相同,原始X射線圖像使用雙邊濾波器去噪后所得圖像如圖3。

圖3 對原始圖像進行雙邊濾波所得圖像Fig.3 Image obtained by bilateral filtering of the original image

2.2 水平方向邊緣檢測

在圖像形成過程中,由于圖像中圖形紋理、顏色的不同而導致圖像的像素值發生突變,從而形成了整副圖像的邊緣。通過上文分析可知,焊縫區域的像素值梯度變化比背景區域劇烈,因此可利用焊縫邊緣信息進行焊縫位置的提取。邊緣是通過檢查每個像素的鄰域并對其像素變化進行量化,這種像素變化的量化相當于微積分里連續函數中方向導數或者離散數列的差分[9]。

本研究使用Scharr算子進行邊緣檢測,Scharr算子為一階離散微分算子,可獲得數字圖像的一階梯度[10-12],其算子臨近待計算像素的算子權重更大,能計算出更小的梯度變化,因此精確度更高。Scharr算子是在一個坐標軸方向上進行非歸一化的高斯平滑,在另一個坐標軸方向上進行差分處理。本研究根據焊縫擺放位置,設定在水平方向上進行差分處理,獲得圖像在水平方向上的邊緣信息,所用Scharr算子模板如式(4):

(4)

原圖像與Scharr算子進行卷積運算后,某一像素點(i,j)處的像素值可用式(5)表達:

(5)

由于使用Scharr算子進行卷積運算后,圖像中某一點的數值將可能出現負數的情況,為處理數值方便,本研究將Scharr算子處理后的負數設置為0,此時檢測出的邊緣僅保留像素由小到大變化的一側,雙邊濾波所得圖像經Scharr算子檢測水平邊緣后所得圖像如圖4所示。

圖4 雙邊濾波圖像進行水平方向邊緣檢測Fig.4 Horizontal edge detection of bilateral filtered images

2.3 形態學開運算操作

經Scharr算子檢測水平邊緣所得圖像中存在麻點狀像素點,本研究使用形態學開運算操作去除此干擾信息。圖像開運算可以去除圖像中的噪聲,消除較小連通域,保留較大連通域,同時能夠使兩塊連接不緊密的連通域分離。圖像開運算是對圖像進行先腐蝕、后膨脹的過程,本研究中腐蝕和膨脹過程中采用相同的結構元素。腐蝕操作時取結構元素形狀覆蓋范圍內最小值作為圖像中該位置的輸出像素值,而膨脹操作時取結構元素形狀覆蓋范圍內最大值作為圖像中該位置的輸出像素值。常用的結構元素有矩形、橢圓和十字交叉,本研究中結構元素選取為矩形,水平方向邊緣檢測所得圖像經開運算處理后所得圖像如圖5所示。

圖5 水平方向邊緣檢測所得圖像開運算處理Fig.5 Open operation processing of images obtained from horizontal edge detection

2.4 焊縫區域提取

第1步:獲取形態學開運算后圖像中每一像素點的像素值,統計每一行中所有像素點像素值的代數和,則第i行所有像素點的像素值的代數和由式(6)計算:

(6)

其中,m和n分別為圖像行數和列數,vi,j為開運算后圖像在第i行、第j列的像素值。為便于觀察結果,可將開運算所得圖5中像素點值之和按水平方向進行投影,可得圖像每一行像素點像素值相加值的大小顯示,如圖6所示。

圖6 像素值之和水平投影Fig.6 Horizontal projection sum of pixel values

第2步:確定X射線圖像中焊縫所在位置的行數,設置布爾標識符flagWhite、flagBlack,其初始狀態為0;同時設置變量colForword、colBehind分別用來記錄圖6中像素值之和不為0區域的起始行數和終止行數數值,其初始狀態為0;并新建線性列表List用于儲存所有像素值之和不為0區域的像素值總和大小,列表List1用于儲存所有像素值之和不為0區域的起始行數值,列表List2用于儲存所有像素值之和不為0區域的終止行數值,List、List1、List2初始狀態為空。

第3步:從第1行開始,判斷圖6中此行像素值之和是否為0,若像素值之和為0則置colForword為當前行數大小,置flagWhite=0,flagBlack=1。

第4步:行數每次增加1,若像素值之和為0則colForword加1,直到此行像素值之和不為0,此時置flagWhite=1,flagBlack=0;行數依然每次增加1,若此行像素值之和不為0,此時flagWhite、flagBlack布爾值不變;直到此行像素值之和為0,此時置colBehind為當前行數大小減1。

第5步:計算colForword行至colBehind行的像素值總和大小sum,將sum儲存至List列表,將colForword儲存至List1列表,colBehind儲存至List2列表。

第6步:重置colForword為當前行數大小,置flagWhite=0,flagBlack=1;并重復第4步至第5步直到圖像中最后一行,將不為0區域的像素值總和大小、colForword、colBehind行數數值分別存儲至List、List1、List2列表。

第7步:獲取列表List中元素最大值summax,則summax所對應列表List1、List2中colForword、colBehind行數位置即為焊縫起始行和終止行,由此確定了X射線圖像中焊縫位置區域。

為了避免圖像處理過程中引起的焊縫邊緣數據丟失,可設定單邊誤差大小h,則最終確定焊縫在X射線原始圖像中第colForword-h行至colBehind+h行的位置。如圖7中設定h為30個像素大小,即設定離colForword、colBehind各30個像素點的寬度作為有效區域,在X射線原始圖像中可標注出焊縫區域。

圖7 焊縫區域位置提取后標注Fig.7 Marking of the position of the weld seam area after extraction

2.5 焊縫區域對比度提升

由于X射線原始圖像中對比度較低、亮度分布不均勻,焊縫區域像素值較為集中,因此本研究采用像素值線性變換的方法,提高焊縫區域的對比度情況。經線性變換后輸出圖像中某點的像素值oi,j可用式(7)表達:

(7)

其中,原圖像中焊縫區域像素值范圍為[vmin,vmax],輸出圖像中焊縫區域像素值范圍為[omin,omax],通常omin、omax設定為當前圖像深度位數下像素值最小值和最大值,經線性變換處理后的圖像如圖8所示。

3 結果與討論

為驗證本方法的魯棒性和準確性,對11 150張X射線圖像進行測試。X射線成像設備可輸出8位、12位、16位的灰度圖像,由于8位灰度圖像讀取速度快、程序運行占用內存空間小,因此為快速和大批量驗證本文算法的有效性,文中采用8位灰度圖像進行處理,依次使用去噪、邊緣檢測、形態學操作、焊縫區域提取、線性變換處理方法,采用Visual Studio 2015進行程序編寫,對圖像進行批量處理,開發了焊縫區域對比度自動提升的處理程序,圖9所示為對典型鋁板X射線圖像進行處理所得結果。由圖9可知,本方法可自動提升亮度分布不均、對比度低的焊縫區域的對比度。將本方法與Median-filtering[4]、Canny[5]、Adaptive-threshold[6]、Susan[13]這4種方法進行對比,所有方法均采用濾波去噪、邊緣檢測、開運算進行處理,如圖10所示。對比5組實驗結果可知,本方法比其他方法更適用于邊緣模糊、噪聲較多、亮度分布不均勻的X射線圖像的焊縫區域提取,提取的冗余區域更小,可更準確提取焊縫區域。根據單邊誤差大小h的不同對11 150張X射線原始圖片的測試結果準確率如表1所示。由表1可知,單邊誤差大小設置為30個像素時,即可得到準確率100%的焊縫提取有效區域。相較于陳強等[13]提出采用Susan算法將焊縫上下邊緣單邊60個像素點大小作為有效區域,本方法提高了焊縫提取的準確率和魯棒性,減小了誤差范圍。

表1 準確率測試結果

圖9 X射線圖像(a~e)以及雙邊濾波(a1~e1)、邊緣檢測(a2~e2)、開運算(a3~e3)、對比度提升(a4~e4)處理后的焊縫圖像Fig.9 X-ray images (a~e) and weld seam images processed by bilateral filtering (a1~e1),edge detection (a2~e2),open operation (a3~e3),and contrast enhancement (a4~e4)

圖10 傳統方法與本文方法結果對比:(a) 本方法,(b) Median-filtering,(c) Canny,(d) Adaptive-threshold,(e) Susan Fig.10 Comparison between the results of the traditional method and the method in this paper:(a) the method in this paper,(b) Median-filtering,(c) Canny,(d) Adaptive threshold ,and (e) Susan

對典型鋁板X射線原始圖像和線性變換后圖像中焊縫區域的像素值進行統計,計算X射線原始圖像和線性變換圖像焊縫區域的均值和標準差,所得結果如表2所示??芍?,原始X射線圖像中焊縫區域像素值主要聚集在范圍很小的一個區域里,所以導致其對比度較低。對原始圖像焊縫區域的像素值進行線性變換后,圖像焊縫區域的像素值平均擴大了4.13倍,像素值數據的波動性更大,分布更為離散,因此提高了焊縫區域的對比度,使圖像細節看起來更加清晰。

表2 焊縫區域像素值均值和標準差結果

4 結 論

(1)針對于亮度分布不均、對比度低的焊縫區域,提出一種基于圖像形態學的焊縫區域提取與對比度提升方法,使用雙邊去噪、邊緣檢測、形態學操作、焊縫區域提取、線性變換處理,當設置單邊誤差大小為30個像素時,可自動準確提取到準確率100%的焊縫位置區域。

(2)線性變換后的圖像較原有圖像焊縫區域圖像像素值標準差平均擴大了4.13倍,像素值范圍擴大從而提升了其對比度。

(3)使用Visual Studio 2015編寫程序,用該方法對11 150張圖像進行批處理,驗證了該方法的準確性和魯棒性,為后續焊縫區域內缺陷提取或焊縫動態跟蹤提供了可靠保證。

猜你喜歡
像素點X射線算子
“X射線”的那些事兒
實驗室X射線管安全改造
擬微分算子在Hp(ω)上的有界性
各向異性次Laplace算子和擬p-次Laplace算子的Picone恒等式及其應用
虛擬古生物學:當化石遇到X射線成像
一類Markov模算子半群與相應的算子值Dirichlet型刻畫
基于5×5鄰域像素點相關性的劃痕修復算法
基于canvas的前端數據加密
基于逐像素點深度卷積網絡分割模型的上皮和間質組織分割
Roper-Suffridge延拓算子與Loewner鏈
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合