謝盛 魏昕 梁梓銘
摘要:焊接圖像存在著大量的噪聲干擾,對其進行處理是焊縫識別的前提。針對被動視覺焊縫跟蹤系統(tǒng)的圖像去噪問題,提出了基于幀間匹配的去噪方法,通過將旋轉(zhuǎn)不變性二進制描述算法(Oriented FAST and Rotated BRIEF,ORB)與隨機采樣一致性算法(Random Sample Consensus,RANSAC)相結(jié)合,得到兩幀圖像間的單應(yīng)矩陣,并以此對齊兩幀圖像內(nèi)的焊件,采用幀間圖像灰度替換的方式,用焊件圖像替換飛濺區(qū)域得到無飛濺的焊縫圖像。針對角接焊中焊件邊緣直線的干擾,對比了最小二乘法、霍夫變換、RANSAC三種直線擬合算法,結(jié)果表明RANSAC算法在大量錯誤數(shù)據(jù)的干擾下擬合精度可達2個像素,滿足焊縫跟蹤的需求。
關(guān)鍵詞:焊縫跟蹤;被動視覺;角接焊縫;特征匹配;直線擬合
0 前言
基于視覺傳感器的焊縫識別技術(shù)因其方便直觀且信息量大成為研究熱點,相對于主動視覺,被動視覺傳感器具有結(jié)構(gòu)簡單、成本低等優(yōu)勢,但由于被動視覺采用自然光源照明,焊接過程中的強光和飛濺等會給焊縫圖像引入大量的噪聲干擾,如何去除噪聲是實現(xiàn)焊縫跟蹤的首要問題。目前工程上通常采取兩種方式處理:增大激光傳感器的前視距離或加遮擋板,或改善圖像處理軟件算法[1]。在圖像處理算法方面,Wu等[2]對比了高斯濾波器、中值濾波器和維納濾波器在焊縫圖像處理中的效果,驗證了中值濾波可以有效去除焊縫圖像中隨機出現(xiàn)的椒鹽噪聲。Zou等[3]根據(jù)幀間圖像連續(xù)性,提出了一種具有強大的特征表達能力和深度卷積神經(jīng)網(wǎng)絡(luò)的自學(xué)習(xí)功能圖像處理算法,可從含有大量噪聲的圖像中檢測焊縫位置。W.P.Gu等[4]在激光結(jié)構(gòu)光視覺圖像處理中,利用線激光寬度小于12像素,而飛濺、弧光等干擾寬度大于16像素的特性將干擾去除,但該方法有幾率會將焊縫區(qū)域一起去除。Fan等[5]采用兩幀圖像之間的“最小操作”進行飛濺的去除。Li 等[6]通過設(shè)置動態(tài)ROI區(qū)域降低飛濺造成的干擾。文中以激光焊接中被動視覺傳感器采集到的角接焊焊縫圖像為例,詳細介紹了基于幀間匹配的去噪方法流程,同時,對比了最小二乘法、霍夫變換、RANSAC三種算法在有大量錯誤數(shù)據(jù)存在時的焊縫擬合效果。
1 基于幀間匹配的去噪方法
針對窄間隙角接板外部激光焊接,焊縫圖像采集系統(tǒng)采用被動視覺傳感器,相機固定于激光焊槍正前方,焊槍軸線垂直于焊件,焊接方向至左向右,焊接過程中采集的連續(xù)兩幀圖像如圖1所示。由于拍攝有一定時間間隔,圖像中飛濺的位置區(qū)別較大,因此可以通過對比圖像之間像素灰度值將飛濺去除,但由于相機產(chǎn)生了運動,直接進行灰度替換會導(dǎo)致像素區(qū)域不匹配,不僅會破壞原有焊縫細,還會引入不必要的干擾。采用ORB(Oriented FAST and Rotated BRIEF)和RANSAC(Random Sample Cons-ensus)結(jié)合得到圖像間的變換矩陣,將第一幀圖像變換到與第二幀圖像對齊后再進行像素操作,可以在不損失細節(jié)的情況下去除大量飛濺噪聲,再配合中值濾波可以得到很好的去噪效果。
ORB基于oFAST特征檢測和rBRIEF的特征描述子,具有一定的尺度不變性、旋轉(zhuǎn)不變性和抗噪性,速度比常見的SIFT算法快兩個數(shù)量級[7]。通過ORB粗匹配后會有大量的誤匹配出現(xiàn),常用的方法是采用RANSAC算法進行匹配點篩選,并計算出單應(yīng)矩陣。
1.1 oFAST特征檢測
圖像的特征點即為圖像中較為明顯的點。在焊縫圖像中,焊縫邊界點、工件表面的污點、工件邊緣的邊界點、飛濺處的亮點、暗處的黑點均可成為特征點。FAST檢測原理[8]是:在圖像中取一個像素點P,像素值記為Ip,以r為半徑畫圓,判斷圓上的像素點是否連續(xù)n個大于Ip加上閾值t,或者連續(xù)n個小于Ip減去閾值t,若有則該像素點可能為角點。FAST角點檢測原理如圖2所示。
為了減少角點數(shù)量,排除不穩(wěn)定角點,采用非極大值抑制進行篩選,對每個角點計算響應(yīng)得分,以當前特征點為中心,判斷其在給定鄰域內(nèi)是否為最大響應(yīng)得分,若是則保留,不是則抑制。強度響應(yīng)函數(shù)為:
采用灰度質(zhì)心法為FAST算法提取的角點添加方向?qū)傩裕越屈cp為圓心,半徑r范圍內(nèi)的點計算出灰度質(zhì)心C,p與C的連線方向記為角點的方向。
為了使特征具有一定的尺度不變性,運用圖像金字塔,在每層圖像提取FAST特征,為特征點引入尺度屬性σ,并稱之為oFAST。
檢測到的FAST角點及其方向如圖 3所示,其中圓心為特征點坐標,從圓心連接到圓上的線段方向為特征點的方向,圓的半徑為特征點的尺度,可以觀察到圖像中樣件上的表面細節(jié)、焊縫位置的紋理和飛濺均被檢測到作為特征點。
1.2 rBRIEF特征點描述子
BRIEF描述子采用二進制碼串作為描述子向量,相對于SIFT和SURF描述子,在內(nèi)存占用及計算耗時等方面均占優(yōu)勢,但是BRIEF描述子不具有旋轉(zhuǎn)不變性,ORB算法中對BRIEF進行了改進,在計算描述子的過程中引入了特征點的方向,并稱之為rBRIEF。由于BRIEF算法易受噪聲影響,首先對圖像進行高斯平滑處理。具體流程如下[9]:
在平滑處理后的圖像中,以特征點p為中心,取范圍為31×31的窗口,在窗口內(nèi)根據(jù)高斯分布隨機選取n對子窗口,范圍為5×5,分別比較每對子窗口的灰度積分值,可定義一個二進制檢測τ:
1.3 特征點粗匹配
通過ORB算法得到兩幀圖像中的特征點描述子后,采用BruteForce匹配算法,根據(jù)兩幀圖像特征點描述子之間的Hamming距離判斷該特征點是否匹配,當漢明距離小于閾值T時,即認為兩個特征匹配,保留匹配點對,反之則去除匹配點對。但此時的匹配還存在大量的誤匹配點,無法以此正確計算出兩幀圖像間的變換矩陣。
1.4 RANSAC特征點篩選
為了得到兩幀圖像間的最佳變換矩陣H,選擇經(jīng)典的RANSAC算法進行特征點篩選。RANSAC算法采用迭代的方式,從一組包含離群的被觀測數(shù)據(jù)中估算出數(shù)學(xué)模型的參數(shù),在圖像匹配中常用于消除誤匹配,RANSAC算法需要用到單應(yīng)矩陣H(Homography Matrix)。單應(yīng)矩陣H可以用于描述兩幀圖像間的映射關(guān)系,包括平移、旋轉(zhuǎn)和縮放,可定義如下:
其中(x,y)為第一幀圖像的粗配準得到的特征點位置,(x',y')為第一幀圖像的特征點位置。RANSAC算法基本流程為[10]:
(1)通過兩幀圖像粗匹配得到N個待匹配點集,并分別進行坐標歸一化。
(2)由于單應(yīng)矩陣有8個參數(shù),每個點對可以列2個方程,所以需要從N個點里隨機選取4個不共線的點對,并解出H的8個參數(shù)。
(3)將第一幀圖像中余下的N-4個點對根據(jù)H進行變換,根據(jù)變換后的結(jié)果計算兩幀圖像特征點間的歐式距離d=‖HA-A'‖,如果小于設(shè)定的閾值t,則將該點對歸為內(nèi)點。
(4)重復(fù)執(zhí)行步驟(2)和步驟(3)2 000次,記錄每次的內(nèi)點數(shù)量。
(5)選擇內(nèi)點數(shù)量最多的內(nèi)點集合,以該集合對應(yīng)的為最優(yōu)匹配值。
通過以上步驟可以求得第一幀到第二幀的單應(yīng)矩陣H。第一幀圖像到第二幀圖像的精匹配結(jié)果如圖 4所示,可以看出誤匹配點均被去除。
1.5 幀間替換去噪
通過第一幀到第二幀的單應(yīng)矩陣H,可以將第一幀圖像P1中的樣件與第二幀圖像P2中的樣件對齊,即對第一幀圖像中的像素點進行變換:Ai'=HAi,令變換后的第一幀圖像記為P1',需要注意的是:P1'中有部分區(qū)域灰度值是為0的,在替換過程中需要進行篩選。已知焊接過程中拍攝到的飛濺區(qū)域灰度值在240以上,且在兩幀圖像中大多數(shù)飛濺位置不同,令替換后的圖像為P2',像素坐標為(x,y),P1'(x,y)為(x,y)點的灰度值,那么可以通過以下邏輯將飛濺去除:
(1)如果5<P1'(x,y)<240且P1'(x,y)<P2(x,y),則將P1'(x,y)賦值給P2'(x,y)。
(2)其他情況則將P2(x,y)賦值給P2'(x,y)。
通過以上步驟可以得到去除飛濺后的第二幀圖片,如圖5所示,圖像中的大部分飛濺已被去除,且保留了大多數(shù)細節(jié)。文中的圖像處理在ubuntu16.04上完成,CPU為i5-10210u 1.6 GHz,內(nèi)存16G,圖像大小為600×800,幀間匹配去噪算法平均耗時為26 ms。
2 焊縫直線擬合
去除飛濺后的圖像經(jīng)過中值濾波、自適應(yīng)閾值分割、形態(tài)學(xué)處理后得到如圖6所示的二值化焊縫圖像,由于是角接的方式外部焊接,二值化后的圖像中有焊縫及豎直板外側(cè)面邊緣兩條較明顯直線,若要去除外側(cè)邊緣的影響勢必會損失焊縫特征。分別采用最小二乘法、霍夫變換、RANSAC法三種方法進行焊縫擬合實驗。
2.1 最小二乘法
最小二乘法常用于焊縫直線的擬合,原理是[11]:給定數(shù)據(jù)點集C={(x1,y1),(x2,y2),…,(xn,yn)},并給出直線函數(shù)原型:
求出a、b后便可得到擬合直線。將二值圖像中的白色像素點取出組成數(shù)據(jù)點集,采用最小二乘法進行直線擬合,算法平均耗時0.006 ms,結(jié)果如圖7所示,圖7a為數(shù)據(jù)點集的擬合效果,圖7b為與實際焊縫位置的對比。由擬合結(jié)果可見,最小二乘法對全部數(shù)據(jù)點都進行了擬合,所以無法排除焊接樣件側(cè)邊緣的干擾,擬合的位置也向兩直線中間偏離,不適用于此類焊縫的擬合。
2.2 Hough變換
Hough變換是一種常用的直線擬合算法,具有良好的抗噪性能。直線的極坐標方程為:
式中 ρ為原點到直線的距離;θ確定直線的方向。圖像中的每一條直線都可以與一對參數(shù)(ρ,θ)對應(yīng),這個參數(shù)平面稱為霍夫空間。圖像中每條直線對應(yīng)霍夫空間一個點,每個點對應(yīng)霍夫空間一條正弦曲線。在θ取值為(-90°,90°]內(nèi),并以θ和ρ的間隔劃分霍夫空間,給每個劃分的區(qū)域設(shè)置累加器H(ρ,θ),將圖像中的所有像素點映射到參數(shù)空間中[12],累加到對應(yīng)的H(ρ,θ),當H(ρ,θ)的值大于所設(shè)閾值時則認為直線存在,直線方程為:
選取H(ρ,θ)值最大的一條直線作為最終擬合的焊縫直線,效果如圖8所示。經(jīng)過多次實驗發(fā)現(xiàn),處理θ軸分辨率設(shè)為1°時,算法平均耗時為3.3 ms,霍夫變換依舊存在錯檢的情況,且多次出現(xiàn)平均誤差大于10個像素的情況。
2.3 RANSAC直線擬合
RANSAC廣泛應(yīng)用于已知模型的參數(shù)估計問題,對于處理存在野值點的數(shù)據(jù)十分有效,而直線估計是其最簡單的應(yīng)用,基本原理如下:給定數(shù)據(jù)點集,在其中隨機選取兩個點,以此兩點得到一條直線,算出點集中剩余點到該直線的距離,將距離小于設(shè)定距離閾值的點歸為內(nèi)點,重復(fù)若干次隨機選點,得到若干條直線及相應(yīng)的內(nèi)點集合,從中選擇內(nèi)點數(shù)量最多的集合,用最小二乘法擬合此集合內(nèi)的所有內(nèi)點即可得到直線。
將迭代次數(shù)設(shè)置為2 000次,RANSAC直線擬合效果如圖 10所示。經(jīng)過多次實驗對比Hough變換和RANSAC算法,發(fā)現(xiàn)RANSAC算法精度均高于Hough變換,均在 2個像素以內(nèi),即0.21 mm內(nèi),且在錯誤數(shù)據(jù)干擾強弱變化下均有很好的穩(wěn)定性,RANSAC算法平均耗時高于Hough變換,約為8.5 ms。
3 結(jié)論
(1)針對被動視覺的焊縫識別圖像中的飛濺干擾,提出了基于幀間匹配替換的去噪方法,有效地去除了焊接過程中圖像中的飛濺干擾,并且保留完整的焊縫細節(jié),為后續(xù)的焊縫提取、焊縫表面形貌觀察、在線檢測等工作提供了便利。
(2)針對角接焊的焊縫圖像中出現(xiàn)焊件側(cè)邊緣直線干擾情況,分別采用三種不同的直線擬合算法進行焊縫擬合實驗,結(jié)果表明標準最小二乘法不適用于此類焊縫的提取,Hough變換易受到錯誤數(shù)據(jù)的影響,且精度低于10個像素,RANSAC算法穩(wěn)定性優(yōu)于Hough變換,精度為2個像素,RANSAC算法更適合于此類焊縫的擬合。
參考文獻:
[1] 陳華斌,孔萌,呂娜,等. 視覺傳感技術(shù)在機器人智能化焊接中的研究現(xiàn)狀[J]. 電焊機,2017,47(3):1-16.
[2] Wu Q,Lee J,Park M,et al. A Study on Development ofOptimal Noise Filter Algorithm for Laser Vision System in GMA Welding[J]. Procedia Engineering,2014(97):819- 827.
[3] Zou Y,Zhou W. Automatic seam detection and trackingsystem for robots based on laser vision[J]. Mechatronics,2019(63):102261.
[4] Gu W,P X Z. Autonomous seam acquisition and trackingsystem for multi-pass welding based on vision sensor[J].Int. J. Adv. Manuf. Technol.,2013(69):451-460.
[5] Fan J,Jing F,Yang L,et al. A precise seam tracking met-hod for narrow butt seams based on structured light visionsensor[J]. Optics & Laser Technology,2019(109):616-626.
[6] Li X,Li X,Khyam M O,et al. Robust Welding Seam Tra- cking and Recognition[J]. IEEE Sensors Journal,2017,17(17):5609-5617.
[7] Rublee E,Rabaud V,Konolige K,et al. ORB:An efficientalternative to SIFT or SURF:2011 International Conferenceon Computer Vision,2011[C]. IEEE,2011.
[8] Rosten E,Drummond T. Machine Learning for High-SpeedCorner Detection[M]. Berlin,Heidelberg:Springer Berlin Heidelberg,2006:430-443.
[9] Calonder M,Lepetit V,Ozuysal M,et al. BRIEF:Computinga Local Binary Descriptor Very Fast[J]. IEEE Transactionson Pattern Analysis and Machine Intelligence,2012,34(7):1281-1298.
[10] Raguram R,F(xiàn)rahm J,Pollefeys M. Exploiting uncertaintyin random sample consensus,2009[C]. IEEE,2009.
[11] Markovsky I,Van Huffel S. Overview of total least-squaresmethods[J]. Signal Processing,2007,87(10):2283-2302.
[12] 鄧景煜,王玉華,易俊蘭,等. 焊縫圖像多分辨率Hough變換分析[J]. 應(yīng)用激光,2019,39(5):847-851.