吳建聰 魏昕 王顥 汪永超 蒙禹舟
摘要:針對槽罐車內壁焊縫背景影響缺陷分割的問題,提出一種基于邊緣檢測的方法提取出焊縫區(qū)域。對槽罐車內壁圖像進行灰度化、高斯濾波去噪等預處理;用Canny算子獲取到焊縫的邊緣細節(jié),采用一系列形態(tài)學處理方法把焊縫邊緣連接成一個區(qū)域,并用最大面積法去除周圍噪聲,初步提取到焊縫區(qū)域;求焊縫區(qū)域的最小外接矩形,將最小外接矩形的四個頂點坐標用到槽罐車焊縫原圖像,提取出完整的焊縫區(qū)域;采用“ 旋轉法 ”解決傾斜焊縫的提取問題。
關鍵詞:槽罐車;邊緣檢測;焊縫提取;最小外接矩形
中圖分類號:TG409? ? ? 文獻標志碼:A? ? ? 文章編號:1001-2003(2021)07-0093-06
DOI:10.7512/j.issn.1001-2303.2021.07.18
0? ? 前言
槽罐車是一種用來裝汽油、甲苯、硫酸、液氨等危險化學品的常壓金屬罐車。在長期的使用下,槽罐車的罐體會留下安全隱患:一是因為罐體金屬內壁會被所運輸?shù)奶厥饨橘|腐蝕;二是因為槽罐車在行駛過程中罐內介質不斷沖擊罐體,罐內細小缺陷被逐漸放大。因此,槽罐車投入使用后必須進行定期檢驗。槽罐車定期檢驗需要對槽罐車內壁進行外觀檢查,通常由工作人員進罐檢驗。按照檢驗流程,在工作人員進罐檢驗之前要先對罐體進行清洗,清洗后罐內介質氣體濃度達到一定標準方可進罐。目前,槽罐車罐體清洗需要先對槽罐車進行蒸汽蒸罐處理,再由清洗人員進罐清洗[1]。蒸汽蒸罐不僅耗時長,排放的汽體還會污染環(huán)境。人工清洗不僅對清洗人員的身體健康造成影響,操作不當極易發(fā)生安全事故。
為補充甚至取代人工檢測槽罐車缺陷,可采用機器視覺的方法獲取槽罐車內部圖像,通過分析圖像來識別缺陷。由文獻[2]可知,槽罐車內部缺陷主要在防波板與罐體的焊接處,原因是焊接處應力集中,被不斷沖擊后,焊縫處的細小缺陷容易擴展。因此,槽罐車缺陷檢測的重點是罐內焊縫處。為降低焊縫圖像的背景區(qū)域對缺陷提取的影響,文中將焊縫從焊縫圖像中提取出來,方便后續(xù)的缺陷提取。
一些學者已對焊縫提取進行了研究。沈禎杰[3]通過平均灰度值選擇法獲取金屬罐焊縫的水平中心大概位置,并以此位置往兩邊擴展一定距離初步提取焊縫,通過求焊縫的質心位置確定焊縫的核心區(qū)域。此方法只適用于與背景灰度值差異明顯的焊縫。何銀水等人[4]以圖像的亮度信息和方向信息作為初級視覺特征, 通過閾值分割和最近鄰域聚類提取激光焊焊縫輪廓信息。閾值分割比較適用于分割出激光焊中黑暗背景下白色的焊縫。劉端飛[5]通過邊緣檢測提取焊縫邊緣,并采用連接、膨脹、細化等方法獲取到單一的焊縫圖像。此方法難以適應高噪聲的焊縫圖像。文中將針對槽罐車焊縫的低對比度、高噪聲問題,提出一種基于邊緣檢測槽罐車焊縫提取方法。
1 焊縫圖像預處理
通過檢測平臺獲取的槽罐車內壁圖像為帶噪聲的彩色圖像,采用圖像灰度化和圖像去噪對原圖像進行預處理,便于后續(xù)圖像處理。
1.1 圖像灰度化
本文獲取到的槽罐車內壁圖像為彩色圖像。槽罐車內壁為金屬表面,彩色圖像與灰度圖像視覺差別不大,但彩色圖像相對于灰度圖像會大大增加圖像處理的計算量與難度。因此,需要將原圖像進行灰度化處理,將彩色圖像轉化為灰度圖像。
對槽罐車罐壁圖像灰度化處理,結果如圖1所示,可以看出灰度圖對原圖改變不大,只失去原圖的少量信息。
1.2 圖像去噪
圖像噪聲是指圖像中妨礙觀察的一些不必要的數(shù)據(jù)信息,圖像噪聲會影響完整焊縫的提取。
目前常用的去除噪聲方法包括均值濾波、高斯濾波和中值濾波[6]。分別采用這三種方法對圖1b進行圖像去噪,各濾波方法的去噪結果如圖2所示。
由于圖像噪聲較少,圖像去噪的效果難以用主觀視覺分辨。因此,采用客觀評價方法來評價去噪效果??陀^評價指標通常包括均方誤差MSE和峰值信噪比PSNR[7],MSE值越小或PSNR值越大,表示去噪效果越好。計算圖2中3張圖像的MSE和 PSNR值,結果如表1所示。由表1可知,高斯濾波去噪方法的MSE值最小,PSNR值最大,在這三種去噪方法中去噪效果最好。
2 邊緣檢測及形態(tài)學處理
2.1 焊縫圖像閾值分割
為了將焊縫提取出來,首先采用閾值分割方法。閾值分割的原理是選定一個將圖像區(qū)域分開的閾值T,當圖像中的灰度值大于T,則令灰度值為1;當圖像中的灰度值小于T,則令灰度值為0。對圖2b進行閾值分割,結果如圖3所示。
由圖3可知,閾值分割難以提取出槽罐車圖像中的焊縫區(qū)域,并且焊縫區(qū)域周圍還存在大量噪聲。閾值分割無法提取出焊縫的原因有兩個:一是因為光線在金屬罐壁上發(fā)生反射,產生光照不均;二是焊縫與非焊縫區(qū)域都為金屬材質,兩者的灰度值相差不大。
2.2 焊縫圖像邊緣檢測
槽罐車焊縫圖像具有焊縫區(qū)域紋理細節(jié)較多而非焊縫區(qū)域光滑的特點。針對該特點,選擇邊緣檢測的方法分別提取焊縫。圖像的邊緣細節(jié)在像素的體現(xiàn)就是邊緣兩端的像素灰度值相差較大,也就是灰度值發(fā)生突變。邊緣檢測就是利用數(shù)學里的梯度工具檢測灰度突變的位置及程度,以此提取出邊緣細節(jié)[8]。
選擇優(yōu)秀的Canny算子[9]對圖2b進行邊緣檢測,獲取圖像中焊縫的邊緣細節(jié),邊緣檢測結果如圖4所示。
2.3 形態(tài)學膨脹
由圖4可知,邊緣細節(jié)沒有連接在一起形成一個區(qū)域,而且焊縫邊緣周圍存在一些噪聲。采用形態(tài)學膨脹和形態(tài)學腐蝕方法將焊縫邊緣連接成一個區(qū)域,形態(tài)學膨脹的作用就是放大圖像中的像素,擴大圖像中區(qū)域的范圍。對圖4進行形態(tài)學膨脹操作,結果如圖5所示。
由圖5可知,白色的焊縫區(qū)域內存在一些黑色孔洞。擴大形態(tài)學膨脹的范圍固然可以封閉一些孔洞,但同時也會放大焊縫周圍的噪聲甚至與焊縫區(qū)域連接在一起。采用基于集合膨脹、求補和交集的算法[10],對圖5進行孔洞填充處理,結果如圖6所示。
2.4 形態(tài)學腐蝕
由圖6可以看出焊縫的孔洞基本被填滿,焊縫區(qū)域基本顯示出來。但是由于圖像經過膨脹,所以得到的焊縫區(qū)域要比原圖更大。采用形態(tài)學腐蝕方法縮小焊縫區(qū)域至原圖大小。
對圖6進行形態(tài)學膨脹處理,結果如圖7所示,焊縫區(qū)域明顯縮小,與原圖焊縫區(qū)域相符。
3 選取最大面積區(qū)域
由圖7可知,焊縫區(qū)域周圍還有許多噪聲。為了將焊縫區(qū)域單獨提取出來,必須去除周圍的噪聲。由于主要檢測對象是焊縫,拍攝的圖像主要就是邊緣細節(jié)較多的焊縫區(qū)域和邊緣細節(jié)較少的罐壁背景區(qū)域。因此,焊縫區(qū)域一般都是邊緣檢測處理后面積最大的區(qū)域。將圖像中各區(qū)域分隔開來,選取面積最大的區(qū)域,即提取出焊縫區(qū)域。
3.1 分隔區(qū)域
在圖像中,每一個像素的相鄰像素是4個,包括對角線方向的像素則有8個,這種關系稱為四鄰接和八鄰接。如圖8所示,黑色三角形為中心像素,黑色圓圈為中心像素的鄰接像素。
如果像素點間相互是鄰接關系,則稱像素點之間是連通的。如果像素點M與N連通,像素點N與P連通,則稱M與P也連通。在視覺上看來,同一個區(qū)域的像素點之間是連通的。因此,可以通過判斷像素點間是否連通的方法來分隔各個區(qū)域。文中通過八鄰接來判斷像素點之間是否連通,從而將圖像分成不同的區(qū)域。對圖7進行區(qū)域分隔,結果如圖9所示,不同的區(qū)域間用不同的顏色區(qū)分。
3.2 計算區(qū)域像素值
由于焊縫區(qū)域為各區(qū)域中面積最大的區(qū)域,為去除噪聲,只選取最大面積區(qū)域。計算各區(qū)域中的像素點的個數(shù)作為各區(qū)域的面積之值,選取其中面積值最大的區(qū)域,即可提取出焊縫區(qū)域。選取圖9中面積最大的區(qū)域,結果如圖10所示??梢钥闯?,只有焊縫區(qū)域部分被提取出來,去除了周圍所有的噪聲。
4 焊縫提取
由圖10可知,圖中白色焊縫區(qū)域形狀不規(guī)則,不能包含完整的焊縫。本節(jié)的目的是通過求出包含焊縫區(qū)域的最小外接矩形來提取焊縫。
4.1 最小外接矩形
某個二維圖像的最小外接矩形是指在二維坐標系中能夠包含該二維圖像的邊與坐標軸平行的矩形。二維圖像的最小矩形求取步驟如下:
(1)將圖像轉化為矩陣后,按行方向查找,找到第一次出現(xiàn)像素點的位置,記為A點。找到最后一次出現(xiàn)像素點的位置,記為C點。
(2)按列方向查找,第一次出現(xiàn)像素點的位置,記為B點。找到最后一次出現(xiàn)像素點的位置,記為D點。
(3)過A點和C點分別畫一條平行于行方向的直線,過B點和D點分別畫一條平行于列方向的直線。這4條直線的4個交點便是該二維圖像的最小外接矩形的4個頂點,由此得到最小外接矩形,如圖11所示。
圖11中的A、C點分別為行方向上第一次和最后一次出現(xiàn)像素點的位置,B、D點分別是列方向上第一次和最后一次出現(xiàn)像素點的位置。圖中的虛線矩形便是圖中黑色區(qū)域的最小外接矩。求圖10焊縫區(qū)域的最小外接矩形,結果如圖12所示。
記錄圖12中白色焊縫區(qū)域的4個頂點坐標位置,按坐標提取圖1b中對應的最小外接矩形z位置,便提取到了焊縫,如圖 13所示。
4.2 最小面積外接矩形
圖13顯示提取出了完整的焊縫區(qū)域,減少了大量的背景區(qū)域,效果良好。但是,如果圖像中的焊縫區(qū)域有所傾斜,得到的焊縫區(qū)域便會包含大量的背景。圖14a是傾斜焊縫,圖14b是通過獲取最小外接矩形得到的焊縫區(qū)域,可以看出圖14b包含了大量的背景。
為解決傾斜焊縫提取的背景區(qū)域過大問題,采取“ 旋轉法 ”[11]來提取傾斜焊縫區(qū)域。在經過最大面積選擇,獲取到基本的焊縫區(qū)域的情況下,“ 旋轉法 ”的操作步驟如下:
(1)以圖像的中心點為旋轉中心,將圖像旋轉一個小角度α=180°/k(k為整數(shù)),求旋轉后焊縫區(qū)域的最小外接矩形。計算外接矩形的像素點個數(shù)作為此外接矩形的面積,并記下相對應的旋轉角度。
(2)在(1)的基礎下重復步驟(1),以此類推,直到圖像被旋轉180°為止。
(3)將以上每次旋轉后的最小外接矩形的面積從小到大進行排列,選擇最小面積的最小外接矩形。此最小外接矩形對應的便是傾斜焊縫區(qū)域包含背景最少的位置。
對圖14a進行預處理后用“ 旋轉法 ”獲取最小面積的最小外接矩形并提取對應焊縫區(qū)域,結果如圖15所示。
5 結論
(1)對圖像灰度化處理,采用均值濾波、高斯濾波、中值濾波方法對灰度圖像去噪,其中高斯濾波的去噪客觀評價最高。
(2)采用Canny算子獲取到焊縫邊緣細節(jié),并通過形態(tài)學膨脹、孔洞填充、形態(tài)學腐蝕方法將焊縫邊緣連成區(qū)域。
(3)分隔圖像區(qū)域,選取區(qū)域中的最大面積區(qū)域達到去除其他噪聲的效果,初步提取到焊縫。
(4)通過求最小外接矩形方法的進一步獲取到完整焊縫。采用“ 旋轉法 ”提取到傾斜焊縫圖像的焊縫,基本不包含非焊縫區(qū)域。
參考文獻:
嚴敏,鐘勇,昝軍,等.危險化學品運輸槽罐車清洗技術研究與應用[J].工業(yè)安全與環(huán)保,2019,45(7):40-43,101.
張軍,李惠意,閻石,等.淺談危險品常壓罐車檢驗中常見缺陷及其成因[J].廣州化工,2013,41(3):128-129,147.
沈禎杰. 基于機器視覺的金屬制罐焊縫缺陷檢測系統(tǒng)研究[D].江蘇:江南大學,2014.
何銀水,孔萌,陳華斌,等.基于視覺注意機制的機器人厚板焊接焊縫輪廓的識別[J].焊接學報,2015,36(12):51-55,115.
劉端飛. 基于機器視覺的不銹鋼箱體的焊縫識別與跟蹤研究[D].山東:青島科技大學,2019.
常寧赫. 非局部均值濾波去除圖像高斯噪聲的研究[D].陜西:西安電子科技大學,2015.
楊光義. 圖像質量評價及其在圖像去噪中的應用研究[D].湖北:武漢大學,2018.
Saket Bhardwaj,Ajay Mittal. A Survey on Various Edge Detector Techniques[J]. Procedia Technology,2012(4):220-226.
呂彥誠. 圖像邊緣檢測及模式識別技術研究[D].黑龍江:哈爾濱工業(yè)大學,2019.
岡薩雷斯.數(shù)字圖像處理(第三版)[M].阮秋琦,等,譯.北京:電子工業(yè)出版社,2011.
基于機器視覺的紙尿褲缺陷檢測研究[D].福建:華僑大學,2020.