梁立鵬,陸永華,譚 杰
(1.南京航空航天大學 機電學院,江蘇 南京 210016;2.國營錦江機器廠,四川 成都 610000)
隨著現代化智能制造技術的發展,自動化焊接得到了越來越廣泛的應用[1].由于視覺傳感器具有測量信息豐富、精度高且無接觸的特點[2],被廣泛應用于自動化焊接的焊縫跟蹤系統中,其中基于結構光的視覺傳感器是最常用的一種傳感器[3].在焊縫自動跟蹤過程中,對焊前坡口焊縫位置的精準、高效定位是其關鍵技術[2,4],會嚴重影響自動化焊接的質量和效率.而在實際焊接工作現場,由于焊接過程中存在大量弧光、光斑、反射噪聲等干擾,實現焊縫跟蹤變得十分困難,如何從采集圖像中去除噪聲,準確提取坡口焊縫的特征點是亟待解決的首要問題[5].提取圖像感興趣點(Region of Interest,ROI)后進行配準預處理可大大減少圖形處理的復雜度[6].
在焊縫圖像預處理方面,蔡志勇等[7]利用小波變換檢測信號邊緣的優勢,提出了基于小波變換的V型坡口光條提取算法,能有效抵抗弧光的干擾,但其算法實現復雜,運行效率有待提高.常用的預處理操作還有圖像濾波、邊緣檢測等[8].角點檢測方法主要分為基于灰度圖像與基于輪廓曲線的方法[9],其中基于灰度圖像的角點檢測主要考慮像素鄰域點的灰度變化,如Harris角點檢測法[10]、Shi-Tomasi角點檢測法等[11].基于輪廓曲線的角點檢測主要依據輪廓曲率的變化,主要有基于曲率尺度空間(Curvature Scale Space,CSS) 的角點檢測算法[12]、斜率分析法以及基于斜率變化的尖銳度角點檢測法[13]等.趙亞利等[14]提出的角點檢測算法不同于僅利用邊緣輪廓的傳統角點檢測器,其結合了邊緣像素灰度信息,并采用自適應全局閾值,避免了角點的誤判,該算法的檢測性能較優,對噪聲具有穩健性.Huang等[15]在識別不同焊接接頭類型的基礎上對檢測焊縫特征點進行了研究.
針對復雜焊縫圖像特征點的提取,本文提出一種基于ROI開窗和多尺度空間卷積運算的圖像預處理方法,并結合開運算和小連通域去除,差異化地消除噪聲的干擾,提取出二值化光條紋.首先采用幾何中心法(Geometric Center Method,GCM)細化光條紋,獲得單像素寬的坡口焊縫光條,再利用局部窗口在圖像上移動分析光條曲率變化,初步定位焊縫角點,進行光條區域劃分,然后采用自適應寬度的二次加權重心法分段提取光條中心線,最后根據直線相交法和最小距離法提取出精確的焊縫特征點.
金屬表面大部分比較光滑,但磨削切割時會產生細微的表面紋理,激光投射于坡口焊縫上往往會發生不同程度的鏡面反射和漫反射,使得采集圖像上除了調制后的光條紋,還會存在較多的噪聲,與此同時噪聲的特性也與光條紋邊緣特性相近,簡單的圖像預處理算法很難有效濾除噪聲、準確還原光條信息.因此,本文采用基于ROI開窗的圖像預處理算法提取二值化光條.
采集的一幅V型坡口光條圖像如圖1(a) 所示,光條部分為左右水平光條、左右坡口光條以及中央水平光條;噪聲部分主要為反射光噪聲、漫射光噪聲以及孤點噪聲.將光條圖像劃分為左、中、右3個ROI區域,大致如圖1 中虛線框所示.

(a) 圖像各部分含義
光條圖像水平累加灰度值的分布情況如圖1(b) 所示,灰度累加值最大的一行(如圖1(b) 中的①號線所示)即為光條紋中心位置,然后在此位置上下延展一定寬度即可完成左右ROI區域的劃分.根據左右ROI區域可確定中央坡口區域的上邊界,下邊界采用從下至上按行檢索獲取灰度極大值像素點確定.
根據上述定位方法提取出的3個ROI區域如圖2 所示,通過ROI區域劃分,可以將光條與距離較遠的噪聲部分分隔開,不僅明顯去除了一定的干擾信息,更利于差異化分離光條與噪聲,而且顯著減少了圖像預處理過程中的計算量.

圖2 V型坡口光條圖像ROI區域Fig.2 ROI of the V-groove stripe image
受光條圖像中噪聲、反射光斑的影響,若直接進行圖像分割,會將噪聲和光斑誤當做灰度值較高的光條.因此,本文在對光條紋與噪聲形態學差異分析的基礎上,提出了一種基于光條形態特征的線狀空間卷積與圖像差分相結合的圖像增強方法.該方法采用不同尺度的卷積運算后進行圖像差分操作,使噪聲和光斑更加顆粒化.


圖3 左、右ROI區域豎直方向空間卷積核Fig.3 Vertical spatial convolution kernel of left and right ROI
將M1分別與左、右ROI圖像進行卷積運算,光條紋被進一步增強,并仍保持水平延展的特性;而ROI噪聲區域內灰度值較大的像素點被增強,灰度值偏低的暗部像素點被進一步削弱,使得該區域變得離散化、顆粒化,圖像增強結果如圖4 所示.

圖4 光條圖像ROI區域M1卷積結果Fig.4 M1 convolution result of stripe image ROI


圖5 中央ROI區域多尺度空間卷積核Fig.5 Different spatial convolution kernels of central ROI
圖6(a) 所示為M2模板與中央ROI圖像進行卷積運算的結果,可以看出,由于該區域內的左、右坡口光條具有一定斜率,上述卷積模板同樣適用于坡口光條的增強,在保留了坡口光條的像素灰度值信息的同時,擴大了水平光條與周圍光斑在形態上的差異.

圖6 光條圖像中央ROI區域圖像增強結果Fig.6 Image enhancement result of central ROI
此外,對于中央ROI圖像,該區域內噪聲面積更大且與光條形態更為接近,所以本文還對噪聲的豎直方向進行了增強,使其形態更加離散化,構建的水平空間卷積模板為1×5型矩陣M3,如圖5(b) 所示.
將M3與中央ROI區域進行卷積運算,結果如圖6(b) 所示,然后用M2卷積結果與M3卷積結果進行圖像差分,其二值化分割圖像如圖6(c) 所示,可見圖像差分后使得噪聲顆粒更為細小,并維持了坡口光條連續性、均勻性分布的特點,使光條與噪聲之間的差異凸顯.
由于圖像中噪聲連通面積相對光條而言在數量級上差距顯著,因此,本文采用形態學開運算與基于輪廓查找的微小連通域去除相結合的方法去除干擾噪聲.
首先對圖像增強后的各ROI進行5×5的形態學開運算,圖7(a) 所示為中央ROI開運算結果,可見開操作在保證連續的光條紋不受影響的同時,能夠去除絕大多數的噪聲顆粒,但仍有一些小面積的噪聲連通域存在.基于輪廓查找的微小連通域去除法:查找出二值化光條圖像中的全部輪廓,并獲取各輪廓面積,通過設定輪廓面積閾值去除微小的噪聲連通域,去噪效果如圖7(b) 所示.采用本文圖像預處理算法對V型坡口光條圖像進行預處理的結果如圖7(c) 所示,可見該算法效果顯著,能夠準確提取出完整的二值化光條.

(a) 開運算結果
本文對二值化光條圖像采用幾何中心法對光條紋進行細化,提取出光條紋的像素級中心線,結果如圖8(a)所示.然后依據細化后的V型坡口光條的形態學變化特征,在單像素寬的V型坡口光條基礎上,定位出圖8(b)中所標識角點.

圖8 單像素V型坡口光條Fig.8 Single-pixel V-groove stripe
對于A′(F′)和C′(D′)角點,僅需遍歷像素點獲取x坐標、y坐標極值像素點即可,G′(H′)角點則為距離C′(D′)角點最近的像素點,實現算法均比較簡單.對于B′(E′)角點的提取,本文采用的算法原理如圖9 所示.

圖9 光條紋第一對角點B′(E′)提取原理示意圖Fig.9 The extraction principle of the corners B′(E′)
設一移動矩形窗口(如圖中實線框所示)的寬度為2a+1,位于窗口中心處的像素點記為中心像素點Pc,該點坐標為(c,y(c)),其左右兩側均有a個像素點(如圖中虛線框所示).窗口從光條紋邊界點A′(F′)開始移動,本文的移動方向為從左向右(從右向左),步長為S.分別求取窗口內中心點Pc左右兩側光條的平均斜率kl、kr,計算表達式為


窗口每移動一個步長,便計算獲得平均斜率kl和kr,為了表征中心點左右兩側光條紋的形態差異(即曲率變化),本文引入斜率的絕對變化量Δk, Δk由平均斜率kl和kr求得,即
Δk=|kl-kr|.(3)
如圖10 所示,當中心點Pc左右兩側的光條紋無明顯變化,Δk較小趨近于0;當中心點Pc左右兩側光條紋變化十分顯著,對于V型坡口光條來說,即為左右兩側光條近乎垂直,則Δk趨近于無窮大.因此,通過絕對變化量Δk就可以定量地分析出光條曲率的變化.

(a) 無明顯變化
當Δk大于閾值km時,該中心點可能是所要定位的角點,將其作為備選角點存入容器Vec中,然后移動窗口,本文步長S設置為1個像素;重復上述操作,將符合條件的中心點存入Vec中;通過對坡口光條圖像特征的分析,本文認為當中心點與已提取光條邊界點A′的y坐標之差大于20個像素時,不可能再出現滿足條件的角點,窗口停止繼續移動.
最后,通過非極大值抑制篩選出真正的角點.在存放備選角點的容器Vec中找到斜率絕對變化量Δk最大時的中心點,則該點就是滿足條件的角點B′(E′),即
PB(E)=Pc(max(Δk)), (Pc(Δk)∈Vec).(4)
采用分段式精確提取特征點的方式,即根據初步檢測出的像素級角點,對V型光條紋進行區域的劃分,結果如圖8(b) 所示,然后分段提取其亞像素級光條中心線,在此基礎上提取出V型坡口光條的亞像素特征點.
基于自適應寬度的二次加權重心法提取激光條紋亞像素中心點的計算原理如圖11 所示.首先,通過掃描二值化光條紋的邊界獲得激光條紋每個橫截面的寬度wi和光條灰度圖中第i列的像素集合G(i,y),然后采用式(5)計算出光條紋每列中心點的坐標,如圖中Pi所示,圖中的圓點即為提取出的亞像素級中心點.根據wi和第i列的像素集合G(i,y)計算出光條各截面中心點的坐標


圖11 基于自適應寬度的二次加權重心法原理圖Fig.11 Schematic diagram of the quadratic weighted grayscale centroid method based on adaptive width

光條特征點的亞像素坐標提取采用直線相交法和最小距離法,直線相交法用于光條紋存在連續兩段直線的情況,當光條紋特征點相對孤立時則采用最小距離法.實現原理如圖12 所示,對于B,E特征點,即為中心線l1與l2,l4與l5的交點;對于C,D,G和H特征點,則為中心線l2,l3和l4上與初步定位的角點C′,D′,G′和H′距離最近的點.

圖12 亞像素特征點提取原理示意圖Fig.12 Schematic diagram of sub-pixel feature points extraction
為了驗證本文算法的實現效果,搭建基于線結構光視覺檢測系統,如圖13 所示,其由線激光器、電荷耦合器件(Charge-Coupled Devices,CCD)工業相機、夾具模塊、實驗檢測臺和計算機組成.

圖13 線結構光視覺檢測系統Fig.13 Vision detection system based on linear structure light
分別采用中值濾波、直方圖均衡化、Log變換法以及本文預處理算法對V型坡口光條圖像進行噪聲去除,然后通過Otsu閾值分割提取二值化光條,實驗結果如圖14 所示.可以看出,一般的圖像預處理流程很難將噪聲和光條部分區別開,而本文處理算法能夠有效濾除噪聲,提取出完整的二值化光條.

圖14 不同圖像預處理算法提取的二值化光條圖像Fig.14 Binary stripe images extracted by different image preprocessing algorithms
采用本文算法對V型坡口光條進行特征點檢測的結果圖像如圖15 所示,直線段為提取出的光條中心線,實心圓點即為特征點.

圖15 光條中心提取及特征點提取結果Fig.15 Extraction result of stripe center-line and feature points
為了驗證本文算法的有效性和準確性,將所提方法與現有的角點檢測算法進行對比,檢測結果如圖16 所示.

圖16 不同角點檢測算法提取角點結果Fig.16 Extraction results of different corner detection algorithms
為了客觀評價不同算法的角點檢測效果,本文采用誤檢率、漏檢率、正確角點定位誤差以及運行時間4項指標進行評價,其中正確角點定位誤差為正確角點與人工標記角點之間的平均距離,誤檢率為錯誤角點數占需檢測角點數的比重,評價結果如表1 所示.從表1數據可知,本文算法的角點檢測正確率明顯高于其他算法,誤檢率與漏檢率均為0,角點定位誤差僅為0.50 pixel,檢測準確性較高,可見本文算法對V型坡口焊縫特征點的檢測更加有效.在角點檢測的效率上,本文算法的運行時間為31 ms,略長于基于尖銳度算法,但相比Harris算法效率提升60%,仍然具有較高的實時性.此外,上述對比算法檢測角點僅為像素級,而本文算法最終提取出亞像素特征點,算法的精確性得到了進一步的提高.

表1 不同角點檢測算法評價結果Tab.1 Evaluation result of different corner detection algorithms
針對復雜坡口焊縫圖像中噪聲去除、特征點提取的難題,本文提出基于ROI開窗的圖像預處理方法,有效去除了光斑、噪聲的干擾,并準確提取出二值化光條.在檢測出焊縫角點基礎上采用變寬限二次加權重心法分段提取光條中心線以及焊縫特征點,進一步提高了特征點提取的精度.本文算法的檢測準確率達100%,遠高于其它角點檢測算法,并且檢測效率比傳統角點檢測方法提升至少60%.焊縫特征點提取的目的是為了實現空間幾何尺寸的視覺檢測,因此,在下一步的研究中將會完成系統標定,獲取焊縫實際幾何尺寸的測量并完成系統精度檢測實驗與分析.