周海宇,劉興德,蔚芳鑫,盧添燁,刁建超
(1.吉林化工學(xué)院 信息與控制工程學(xué)院,吉林 吉林 132022;2.吉林化工學(xué)院 機(jī)電工程學(xué)院,吉林 吉林 132022)
目前,視覺識(shí)別測量技術(shù)廣泛應(yīng)用于工件的幾何參數(shù)識(shí)別中.作為一種非接觸式測量技術(shù)[1],采集速度快和識(shí)別精度較高,大大減少人為因素對(duì)測量結(jié)果產(chǎn)生的誤差,在測量領(lǐng)域發(fā)揮著舉足輕重的作用.L型板作為汽車裝配夾具中的支撐部件,不僅規(guī)格多、需求量大,而且對(duì)搭接與焊接精度有一定要求,傳統(tǒng)人工篩選與焊接不能滿足現(xiàn)代化生產(chǎn)加工,視覺識(shí)別測量就顯得尤為重要.
雙目立體視覺是機(jī)器視覺的一種重要形式[2].雙目立體視覺仿照人類雙眼的工作原理,主要由兩個(gè)型號(hào)相同的相機(jī)、鏡頭、光源以及視覺控制系統(tǒng)搭建而成,同一時(shí)間內(nèi)對(duì)待測目標(biāo)進(jìn)行數(shù)字圖像獲取,并基于視差原理建立待測目標(biāo)在兩幅圖像中對(duì)應(yīng)的特征關(guān)系,通過特征點(diǎn)的位置偏差獲取待測目標(biāo)的三維信息[3].文章基于雙目視覺模型對(duì)L型板的幾何參數(shù)進(jìn)行獲取.首先對(duì)雙目相機(jī)標(biāo)定,得到左右相機(jī)的內(nèi)、外參數(shù),然后用Sobel邊緣檢測算法進(jìn)行邊緣提取,最后利用三角測量原理提取特征點(diǎn)三維坐標(biāo),計(jì)算出L型板的幾何參數(shù).
雙目立體視覺利用兩臺(tái)相機(jī)分別對(duì)同一個(gè)待測物體進(jìn)行拍攝,利用三角測量原理來獲取待測物體的三維坐標(biāo).雙目視覺測量原理如圖1所示.
從圖1可知,待測量目標(biāo)點(diǎn)為P點(diǎn);XLOLYL和XrOrYr分別是兩個(gè)相機(jī)所在位置的坐標(biāo)系;P1和P2點(diǎn)分別為待測點(diǎn)P在兩個(gè)相機(jī)圖像坐標(biāo)系上的投影點(diǎn).
要明確世界坐標(biāo)系、相機(jī)坐標(biāo)系、圖像坐標(biāo)系、像素坐標(biāo)系之間的關(guān)系,才能夠測得待測點(diǎn)的實(shí)際三維坐標(biāo)[4].四者關(guān)系如圖2所示.
圖2 坐標(biāo)系轉(zhuǎn)換
首先,需要知道圖像坐標(biāo)系和像素坐標(biāo)系之間的相互轉(zhuǎn)化關(guān)系,其表達(dá)式如下:
(1)
其中,(u,v,1)為投影點(diǎn)在像素坐標(biāo)系上的齊次坐標(biāo),單位為pixel;(x,y,1)為投影點(diǎn)在圖像坐標(biāo)系上的齊次坐標(biāo),單位為mm;(u0,v0)為相機(jī)光軸在像素坐標(biāo)系上的位置坐標(biāo);dy與dx分別為每個(gè)像素在縱軸y和橫軸x上的物理尺寸.
其次,相機(jī)坐標(biāo)系與圖像坐標(biāo)系之間的透視投影關(guān)系就是小孔成像原理,其用矩陣形式表達(dá)如下:
(2)
其中,(xca,yca,zca,1)為待測點(diǎn)目標(biāo)點(diǎn)P在相機(jī)坐標(biāo)系上的齊次坐標(biāo),單位為m;f為相機(jī)等效焦距.空間中的被測物體決定相機(jī)的擺放位置,引入世界坐標(biāo)系作為基準(zhǔn)坐標(biāo)系.因?yàn)槭澜缱鴺?biāo)系和攝像機(jī)坐標(biāo)都是左手坐標(biāo)系,所以其不會(huì)發(fā)生形變[5].而在保證不會(huì)發(fā)生形變的情況下,剛體變換能夠確定兩種坐標(biāo)系之間的關(guān)系,即通過旋轉(zhuǎn)矩陣R和平移矩陣t實(shí)現(xiàn),其表達(dá)式為:
(3)
其中,(xwo,ywo,zwo,1) 是P點(diǎn)在世界坐標(biāo)系下的齊次坐標(biāo),單位為m;R為3×3的旋轉(zhuǎn)矩陣;t為三維平移列向量.
將式(1)、(2)、(3)聯(lián)立,即可得到待測目標(biāo)點(diǎn)在世界坐標(biāo)系和像素坐標(biāo)系之間的相互轉(zhuǎn)換關(guān)系,轉(zhuǎn)換表達(dá)式如下:
Mip·Mep·Xw=M·Xwo,
(4)
其中,Mip為相機(jī)的內(nèi)部參數(shù)矩陣,由f/dx、f/dy、u0、v0共同決定;Mep為相機(jī)的外部參數(shù)矩陣,由旋轉(zhuǎn)矩陣R和平移矩陣t決定;Xwo為帶測點(diǎn)在世界坐標(biāo)系下的齊次坐標(biāo);M為3×4的投影矩陣,由內(nèi)部參數(shù)矩陣Mip和外部參數(shù)矩陣Mep相乘得到.
由于本系統(tǒng)是雙目視覺,待測點(diǎn)P分別在左右相機(jī)上的投影點(diǎn)為PL、PR,其投影轉(zhuǎn)換關(guān)系為:
(5)
(6)
將(5)、(6)式中各自的zcL和zcR消去,得到的線性表達(dá)式為:
(7)
(8)
將式(7)和(8)聯(lián)立,便可求得待測目標(biāo)點(diǎn)P的三維坐標(biāo)(xwo,ywo,zwo).
相機(jī)標(biāo)定是獲取圖像三維信息的重要環(huán)節(jié).常用的標(biāo)定法可見表1.
表1 標(biāo)定方法
張正友相機(jī)標(biāo)定法,是一種應(yīng)用廣泛的標(biāo)定方法[6].該標(biāo)定法介于傳統(tǒng)標(biāo)定法和自標(biāo)定法之間,使用打印的平面棋盤格,并采集多幅圖像進(jìn)行標(biāo)定,既克服了傳統(tǒng)標(biāo)定法標(biāo)定物精度要求高的缺點(diǎn),相比較自標(biāo)定法來說,也提高了精度,便于操作,魯棒性、可行性和實(shí)用性好[7].因此張正有相機(jī)標(biāo)定法被廣泛應(yīng)用于相機(jī)標(biāo)定過程中.
本次實(shí)驗(yàn)采用海康公司的相機(jī)進(jìn)行標(biāo)定與測量,硬件選型可見表2.
表2 硬件選型
左右相機(jī)同時(shí)采集18組不同姿態(tài)的棋盤格圖片,然后對(duì)相機(jī)進(jìn)行標(biāo)定,標(biāo)定得到相機(jī)的內(nèi)部參數(shù)與旋轉(zhuǎn)、平移矩陣.標(biāo)定結(jié)果可如下展示.
左相機(jī)的內(nèi)部參數(shù)矩陣為:
右相機(jī)的內(nèi)部參數(shù)矩陣為:
旋轉(zhuǎn)矩陣和平移矩陣分別為:
實(shí)際測量的工件為待焊接的L型板,待焊接的L型板由底板、背板、肋板3部分組成,待焊接的L型板三維模型如圖3(a)所示.
(a)L型板三維模型
(b)L型板實(shí)際待測點(diǎn)圖3 L型板
本次測量的內(nèi)容是對(duì)L型板邊緣幾何參數(shù)以及3條焊縫長度的測量,焊縫的識(shí)別測量是本次研究的重點(diǎn).L型板待測點(diǎn)如圖3(b)所示.其中,AB點(diǎn)距離為背板長度,DE點(diǎn)、DF點(diǎn)、CD點(diǎn)距離分別是3條焊縫的長度.由于待測量特征點(diǎn)位于實(shí)際拍攝圖像中上方位置,可以獲取這些特征點(diǎn)進(jìn)行三維坐標(biāo),從而得到L型板的幾何參數(shù).
相機(jī)拍攝到的照片,不能直接用于獲取圖像特征點(diǎn)信息,因?yàn)閳D像的對(duì)比度、噪聲、特征點(diǎn)樣本分布不均勻等因素影響成像質(zhì)量,需要對(duì)圖像進(jìn)行預(yù)處理才能得到理想的圖像特征信息[8].例如,圖像信息中存在大量噪聲,這些噪聲會(huì)影響我們對(duì)圖像的信息判斷,所以在消除噪聲的同時(shí),最大程度保留圖像輪廓與邊緣信息對(duì)后續(xù)圖像處理有重大作用.
邊緣檢測的原理是檢測相鄰的幾個(gè)點(diǎn)像素值之間的變化率,相當(dāng)于對(duì)圖像強(qiáng)度函數(shù)求導(dǎo)[9].常用的邊緣檢測算法有:Roberts邊緣檢測算法、Sobel邊緣檢測算法、Prewitt邊緣檢測算法與Canny邊緣檢測算法.其中,Canny邊緣檢測算法不容易受噪聲影響,通過對(duì)上、下限閾值的設(shè)置能有效檢測出弱邊緣[10].但是該檢測算法必須設(shè)置合適的上、下限閾值,才能對(duì)圖像進(jìn)行邊緣檢測,而且對(duì)于其他圖像必須重新設(shè)置閾值,在操作過程中增大了工作量與實(shí)驗(yàn)難度.Canny算法對(duì)L型板的邊緣檢測效果如圖4(a)所示.
(a)Canny檢測效果
(b)Sobel檢測效果圖4 邊緣檢測
Sobel算法是通過離散微分方法求取圖像邊緣的邊緣檢測算法[11].相比較其他算法,Sobel算法簡單而快速,可以對(duì)圖像進(jìn)行水平方向檢測或豎直方向檢測,也可以兩個(gè)方向都檢測,提高了算法靈活性,而且對(duì)規(guī)則工件進(jìn)行邊緣檢測時(shí),Sobel邊緣檢測算法更加適用.Sobel算法對(duì)L型板的邊緣效果如圖4(b)所示.
其中,從圖4(a)Canny檢測效果來看,由于被檢測件表面存在銹蝕和加工紋理,圖像濾波去除噪聲的同時(shí),也會(huì)丟失一部分關(guān)鍵特征點(diǎn),造成圖像邊緣不連續(xù),為后續(xù)的坐標(biāo)測量帶來麻煩;從圖4(b)Sobel檢測效果來看,外圍邊緣較清晰,內(nèi)部焊縫區(qū)域也能得到很好地識(shí)別,所以采用Sobel算法對(duì)L型板圖像進(jìn)行邊緣檢測.
選擇Sobel算法對(duì)L型板的檢測效果圖進(jìn)行坐標(biāo)獲取,其坐標(biāo)值可見表3.
表3 特征點(diǎn)坐標(biāo)
得到特征點(diǎn)的世界坐標(biāo)后,就可以求得兩個(gè)特征點(diǎn)之間的實(shí)驗(yàn)長度,并與實(shí)際長度進(jìn)行對(duì)比,判斷實(shí)驗(yàn)數(shù)據(jù)是否滿足本次研究需要.其中L型板背板邊緣長度對(duì)比可見表4.L型板焊縫長度對(duì)比可見表5.
表4 L型板背板邊緣長度對(duì)比
表5 L型板焊縫長度對(duì)比
L型板按背板長度分為200、250和300 mm 3種類型,通過視覺測量背板邊緣長度,確定L型板型號(hào).由表4可知,AB點(diǎn)之間的實(shí)驗(yàn)長度為284.489 899 mm,即L型板背板邊緣實(shí)驗(yàn)長度,與實(shí)際長度之間的誤差為-0.810 101 mm,誤差率為0.28%,所以在誤差允許的情況下,對(duì)于其他型號(hào)的L型板,同樣適用,可以確定出L型板類型.
由表5可知,3條L型板焊縫實(shí)際長度與實(shí)驗(yàn)長度最大誤差為DF之間的距離(-0.454 779),最小誤差為CD點(diǎn)之間的距離(-0.070 873),對(duì)DE焊縫來說,誤差為+0.450 057 mm,與DF點(diǎn)之間的誤差相差不多,但是誤差率高于DF點(diǎn),這是由于左右相機(jī)對(duì)DE點(diǎn)之間焊縫采集信息少于DF,特征信息不完整造成的.對(duì)于L型板焊接工藝,采用焊絲直徑為Φ1.2 mm,焊縫實(shí)驗(yàn)測量誤差小于0.6 mm即可滿足焊接要求.
雖然實(shí)驗(yàn)測得的背板邊緣長度和焊縫長度能夠滿足實(shí)驗(yàn)要求,但是實(shí)驗(yàn)結(jié)果存在一定誤差,主要原因有:一是圖像處理存在缺陷,不能保證同一個(gè)特征點(diǎn)在兩臺(tái)相機(jī)上的坐標(biāo)是相互對(duì)應(yīng)的;二是標(biāo)定板采用打印的棋盤格,打印誤差會(huì)給左右相機(jī)的內(nèi)、外參數(shù)造成影響;三是兩臺(tái)相機(jī)雖然是同一種型號(hào),但是不能保證性能完全相同.
本文基于雙目視覺模型對(duì)L型板幾何參數(shù)進(jìn)行測量,獲取L型板背板邊緣長度與焊縫長度數(shù)據(jù).實(shí)驗(yàn)測得背板邊緣長度誤差率小于0.5%,焊縫長度最大誤差率為0.48%.實(shí)驗(yàn)數(shù)據(jù)表明,該測量算法簡單,圖像邊緣信息較為完整,能夠識(shí)別L型板類型和測量出焊縫長度,并滿足基于工業(yè)機(jī)器人的復(fù)雜角焊縫智能船形焊接技術(shù)研究與應(yīng)用項(xiàng)目關(guān)于圖像信息獲取的要求.
利用該算法測得數(shù)據(jù)還存在一定誤差,可以對(duì)圖像處理算法進(jìn)一步優(yōu)化,減少相機(jī)標(biāo)定過程中人為因素對(duì)結(jié)果產(chǎn)生的影響,從而實(shí)現(xiàn)更加精確的測量.