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