陸苗,王化明,邰鳳陽,朱雄偉,易文韜
(南京航空航天大學(xué) 機(jī)電學(xué)院,江蘇 南京 210016)
基于視覺的焊縫引導(dǎo)和跟蹤技術(shù)是未來智能化焊接技術(shù)的主要發(fā)展方向,而焊縫粗定位是實(shí)現(xiàn)焊縫精準(zhǔn)引導(dǎo)和跟蹤的前提[1-2]。目前基于視覺的焊縫粗定位方法主要包括常規(guī)立體視覺法、在線模型匹配法、視覺伺服控制法、線激光傳感器掃描法等。
常規(guī)立體視覺方法[3-5]在實(shí)施過程中需多次調(diào)整相機(jī)位置,且存在一定的盲目性,需要較多的先驗(yàn)性工作。在線模型匹配法[6]需預(yù)先知道焊縫形式,對焊件周邊環(huán)境要求較高且智能獲取焊縫的二維信息。視覺伺服控制法[7]需連續(xù)人工干預(yù),根據(jù)圖像處理結(jié)果調(diào)整機(jī)器人位姿逼近焊縫,操作較為繁瑣。線激光傳感器掃描法[8]分為人工示教掃描、從三維模型中提取路徑掃描兩種,均存在操作繁瑣、耗時長、掃描過程的安全性難以保證等問題。
針對以上問題,本文提出一種基于單目立體視覺的焊縫粗定位方法。通過沿焊縫布置發(fā)光條以削弱周圍環(huán)境對粗定位方法的限制;通過控制機(jī)械臂帶動相機(jī)精確移動,避免常規(guī)雙目立體視覺的多相機(jī)位姿標(biāo)定和立體視覺標(biāo)定過程。求取方法簡單、高效,對環(huán)境的適應(yīng)性得到提高。
焊縫粗定位的目的是在焊接實(shí)時引導(dǎo)和跟蹤前確定某條焊縫相對機(jī)器人的位姿,焊縫的定位與坡口形式無關(guān),因此可用數(shù)學(xué)曲線來描述焊縫模型。焊縫在機(jī)器人基坐標(biāo)系下的位姿包括平移和旋轉(zhuǎn)兩部分,用齊次變換來表示則為
(1)
其中:[n1,n2,n3]T、[O1,O2,O3]T、[a1,a2,a3]T分別為x、y、z方向的旋轉(zhuǎn)變換矢量;[t1,t2,t3]T為平移交換矢量,共包含6個獨(dú)立參數(shù)。粗定位的目標(biāo)即確定所有未知參數(shù)的值。
基于單目立體視覺的焊縫粗定位系統(tǒng)包括單目相機(jī)、機(jī)器人和目標(biāo)焊件,其中單目相機(jī)負(fù)責(zé)視覺圖像的采集、機(jī)器人系統(tǒng)由機(jī)器人本體和控制箱組成,用來控制機(jī)器人帶動相機(jī)運(yùn)動。
系統(tǒng)工作示意圖如圖1所示,{B}為機(jī)器人基坐標(biāo)系,{E}為機(jī)器人末端坐標(biāo)系,{Ci}、{Cj}分別為i、j位置處的相機(jī)坐標(biāo)系。根據(jù)相機(jī)小孔成像原理,空間點(diǎn)P(X,Y,Z)在i、j兩個位置處相機(jī)的成像點(diǎn)分別為Pi(ui,vi)、Pj(uj,vj),則滿足以下方程:
圖1 焊縫粗定位視覺系統(tǒng)示意圖
(2)
其中Mi、Mj分別為相機(jī)在i、j位置處的投影矩陣。
相機(jī)標(biāo)定的目的是利用空間物體上點(diǎn)的三維坐標(biāo)與它在圖像上對應(yīng)點(diǎn)之間的對應(yīng)關(guān)系來確定相機(jī)內(nèi)、外部參數(shù)。采用張正友平面標(biāo)定[9],具體標(biāo)定步驟如下:
1)固定單目相機(jī)位置不變;
2)在相機(jī)視野范圍內(nèi),任意移動和轉(zhuǎn)動標(biāo)定板,控制相機(jī)拍攝15張左右的標(biāo)定板圖像;
3)檢測和標(biāo)記所有標(biāo)定板圖像的特征點(diǎn);
4)求解單目相機(jī)內(nèi)外參數(shù)矩陣。
標(biāo)定得到的具體相機(jī)參數(shù)如表1所示。
表1 單目相機(jī)標(biāo)定結(jié)果
手眼標(biāo)定的目的是獲取機(jī)器人坐標(biāo)系和相機(jī)坐標(biāo)系的關(guān)系,從而將視覺識別的結(jié)果轉(zhuǎn)移到機(jī)器人坐標(biāo)系中[9]。焊縫粗定位視覺定位系統(tǒng)采用眼在手上(eye-in-hand)的布置形式[10],具體標(biāo)定步驟如下:
1)在相機(jī)視野范圍內(nèi)固定合適大小的標(biāo)定板;
2)控制相機(jī)以不同的姿態(tài)獲取15~20張標(biāo)定板圖像,并記錄對應(yīng)的機(jī)械臂末端位姿矩陣;
3)根據(jù)標(biāo)定板圖像、機(jī)械臂末端位姿矩陣、相機(jī)標(biāo)定參數(shù),求解方程AiX=XBi。其中X為相機(jī)坐標(biāo)系到末端坐標(biāo)系的轉(zhuǎn)換矩陣;Ai和Bi分別為相機(jī)、機(jī)械臂末端坐標(biāo)系運(yùn)動前、后的轉(zhuǎn)換矩陣。
坐標(biāo)系轉(zhuǎn)換矩陣可分解為旋轉(zhuǎn)矩陣R和平移矩陣t兩部分,可將AiX=XBi方程分解整理為下式:
(3)
其中:Rx、tx為待求參數(shù);Ra、ta為相機(jī)坐標(biāo)系兩次運(yùn)動前后的參數(shù),可通過標(biāo)定相機(jī)外參矩陣求出;Rb、tb為機(jī)器人末端坐標(biāo)系兩次運(yùn)動前后的參數(shù),可從機(jī)器人控制器讀取。
基于單相機(jī)的立體視覺測量技術(shù)來實(shí)現(xiàn)焊縫粗定位的流程包括:
1)控制機(jī)器人以兩個不同位姿采集焊縫發(fā)光條圖像,并記錄對應(yīng)的機(jī)器人末端坐標(biāo)系位姿矩陣;
2)提取焊縫發(fā)光條圖像中心線;
3)根據(jù)立體視覺三維重建模型重建焊縫點(diǎn)、直線或圓弧焊縫。
使用二維零均值離散高斯函數(shù)式(4)作為平滑濾波器對圖像進(jìn)行平滑去噪,在盡量保留圖像細(xì)節(jié)特征的條件下抑制圖像噪聲。
(4)
對高斯濾波后的發(fā)光條圖像采用基于局部的自適應(yīng)圖像分割算法進(jìn)行分割。該算法通過對圖像按列掃描求出每列的最大灰度值gmax,并根據(jù)發(fā)光條圖像的灰度直方圖設(shè)定偏移量ΔT,對每列像素值進(jìn)行如下操作:
(5)
其中f(x,y)、g(x,y)分別為分割處理前、后圖像在當(dāng)前像素點(diǎn)(x,y)的灰度值。
使用灰度質(zhì)心法提取發(fā)光條的亞像素級中心坐標(biāo)。將灰度值作為質(zhì)量處理,按行或者列遍歷圖像,以灰度質(zhì)心點(diǎn)來代表該截面發(fā)光條中心點(diǎn)位置,用公式表示如下:
(6)
其中:y為圖像每列中心點(diǎn)的縱坐標(biāo)值;g(x,y)為點(diǎn)(x,y)處的灰度值。
為了進(jìn)一步提高發(fā)光條中心坐標(biāo)提取的精度,在按式(6)初步提取出發(fā)光條各截面中心坐標(biāo)后,通過計(jì)算相鄰中心點(diǎn)間的斜率,根據(jù)斜率突變來判定提取的中心點(diǎn)是否存在較大的偏離,若提取出的中心點(diǎn)偏離較大,則根據(jù)前后像素點(diǎn)的斜率對該點(diǎn)進(jìn)行優(yōu)化,調(diào)整該點(diǎn)位置。提取效果圖如圖2所示。
圖2 焊縫中心線提取效果圖
焊縫可由多個離散點(diǎn)連接而成,因此在獲取發(fā)光條圖像起終點(diǎn)像素坐標(biāo)的基礎(chǔ)上,基于立體視覺空間點(diǎn)重建模型(圖3)可計(jì)算出發(fā)光條的起點(diǎn)、終點(diǎn)空間坐標(biāo)。焊縫粗定位視覺系統(tǒng)在控制相機(jī)以兩次不同位姿獲取同一焊縫發(fā)光條圖像的過程中,考慮發(fā)光條自身厚度d對焊縫粗定位z向精度的影響,設(shè)定世界坐標(biāo)系與相機(jī)位于位姿1時的相機(jī)坐標(biāo)系重合,并盡量保持此位姿下的相機(jī)與焊縫所在平面垂直,對世界坐標(biāo)系下焊縫的z向進(jìn)行修正,則有
圖3 空間點(diǎn)三維重建模型
(7)
經(jīng)機(jī)器人控制器獲取相機(jī)運(yùn)動前后的末端位姿矩陣,結(jié)合手眼標(biāo)定和相機(jī)內(nèi)參矩陣,可確定相機(jī)在兩次位姿下的投影矩陣,記作M1、M2,則有:
(8)
(9)
展開并整理式(7)、式(8)可獲得有關(guān)空間點(diǎn)Pw的線性方程:
(10)
由最小二乘法求解式(10)計(jì)算出像素點(diǎn)對應(yīng)的世界坐標(biāo)Pw(Xw,Yw,Zw),根據(jù)式(7)對Zw進(jìn)行修正,并利用下式求取焊縫點(diǎn)在機(jī)器人基坐標(biāo)系下的坐標(biāo):
(11)
確定焊縫起終點(diǎn)坐標(biāo)信息后,基于立體視覺模型的線重建方法[11]可獲得焊縫空間直線和圓弧方程,三維重建模型如圖4所示。
圖4 空間直線和圓弧三維重建模型
空間直線和圓弧的三維重建等同于求解兩空間平面和錐面的交線問題。假設(shè)S1、S2分別為空間直線或圓弧S在兩次不同位姿相機(jī)上的投影,通過最小二乘法擬合中心點(diǎn)求得Si、Sj的方程,可表示為:
(12)
其中:u1(u1,v1,1)為成像直線或圓弧S1、S2上點(diǎn)的齊次坐標(biāo);S1、S2為成像直線或圓弧S1、S2方程系數(shù)構(gòu)成的對稱矩陣。
由空間點(diǎn)投影關(guān)系式(8)、式(9)結(jié)合式(12)可得:
(13)
通過求解式(13)即可獲得直線和圓弧焊縫的空間方程。
圖5 發(fā)光條中心線提取結(jié)果圖
通過人工示教機(jī)器人跟蹤焊縫,記錄焊縫點(diǎn)坐標(biāo)并擬合獲取焊縫空間方程作為實(shí)際測量結(jié)果。將基于焊縫粗定位視覺系統(tǒng)計(jì)算出焊縫起點(diǎn)、終點(diǎn)坐標(biāo)和空間方程與實(shí)際測量結(jié)果進(jìn)行對比,如表2、表3所示。
表2 起點(diǎn)、終點(diǎn)坐標(biāo)值對比 單位:mm
表3 焊縫曲線方程對比
將坐標(biāo)點(diǎn)的計(jì)算值與測量值在x、y、z三個方向的平均偏差E和計(jì)算點(diǎn)與測量點(diǎn)間的平均距離D作為衡量焊縫粗定位精度的指標(biāo),如下式:
(14)
(15)
坐標(biāo)的計(jì)算值與測量值在三個方向的平均偏差約為1.27 mm,計(jì)算坐標(biāo)與測量坐標(biāo)的平均距離約為2.031 mm。實(shí)驗(yàn)表明,該方法能夠?qū)崿F(xiàn)焊縫跟蹤前的粗定位,可以滿足一定的精度要求。
本文提出了一種基于通用雙目測量模型的單目雙工位三維測量方法來實(shí)現(xiàn)焊縫粗定位。沿著焊縫布置發(fā)光條,控制單目相機(jī)以兩個不同位姿采集圖像,利用灰度質(zhì)心法提取發(fā)光條圖像中心線,基于立體視覺模型重建焊縫特征點(diǎn)和焊縫空間方程,獲得焊縫在機(jī)器人基坐標(biāo)系的粗定位信息。
該方法通過沿焊縫布置發(fā)光條,有效降低了環(huán)境噪聲對圖像處理的影響,提高了粗定位方法的精度和適應(yīng)性,可滿足焊縫跟蹤前的粗定位需求。