范 荻,金守峰,陳 蓉,高 磊
(西安工程大學(xué) 機(jī)電工程學(xué)院,陜西 西安 710048)
裝配機(jī)器人[1]是柔性自動(dòng)化生產(chǎn)系統(tǒng)中的核心,零件的識(shí)別與定位[2]是裝配中必不可少的一步,因?yàn)檠b配機(jī)器人的普遍應(yīng)用,精度問(wèn)題受到了越來(lái)越多的關(guān)注,如果目標(biāo)工件或者工作環(huán)境發(fā)生改變,機(jī)器人將無(wú)法及時(shí)適應(yīng)這些變化,導(dǎo)致目標(biāo)工件的抓取失敗,在很大程度上降低了裝配機(jī)器人的靈活性和生產(chǎn)率.隨著視覺(jué)傳感器及計(jì)算機(jī)視覺(jué)理論的發(fā)展,具有視覺(jué)感知的工業(yè)裝配機(jī)器人成為高端制造裝備的核心,是引領(lǐng)制造方式變革的重要手段[3-4].Connolly提出了機(jī)器視覺(jué)的先進(jìn)性以及在生產(chǎn)裝配系統(tǒng)中的應(yīng)用方式[5-6];張建中等將視覺(jué)定位技術(shù)應(yīng)用到機(jī)器人裝配系統(tǒng)中,以便于解決機(jī)器人裝配的自動(dòng)定位問(wèn)題[7];Golnabi等在關(guān)于如何構(gòu)建基于機(jī)器視覺(jué)的系統(tǒng)中取得了一定的成果[8];張小潔等通過(guò)機(jī)器視覺(jué)實(shí)現(xiàn)了對(duì)零件圖像的顏色識(shí)別[9]; Sinkar[10]等結(jié)合人工神經(jīng)網(wǎng)絡(luò)、SIFT算法和歐氏距離完成了對(duì)作業(yè)目標(biāo)的識(shí)別;惠記莊等采用SURF算法提取特征點(diǎn),通過(guò)BRISK 算法進(jìn)行描述并計(jì)算其相似度,再利用MSAC 算法進(jìn)行二次精匹配來(lái)識(shí)別作業(yè)目標(biāo)工件[11].
由于裝配的作業(yè)過(guò)程復(fù)雜,工業(yè)現(xiàn)場(chǎng)的光照變化、復(fù)雜的背景,裝配工件的尺寸、形狀多樣性等因素對(duì)作業(yè)目標(biāo)的識(shí)別、定位造成的干擾是工業(yè)裝配機(jī)器人進(jìn)一步發(fā)展的瓶頸.因此,本文給出一種基于SURF算法的作業(yè)目標(biāo)識(shí)別定位方法,該方法采用SURF算法提取作業(yè)目標(biāo)的特征點(diǎn),通過(guò)具有旋轉(zhuǎn)不變性的FREAK描述子對(duì)提取的特征點(diǎn)進(jìn)行特征描述,采用最近鄰的漢明距離得到初次匹配.針對(duì)漢明距離在粗匹配過(guò)程中由于噪聲等外界影響所造成的偽匹配,采用RANSAC算法進(jìn)行二次精匹配.根據(jù)最佳匹配特征點(diǎn)確定作業(yè)目標(biāo)的質(zhì)心坐標(biāo),利用系統(tǒng)標(biāo)定關(guān)系求解出作業(yè)目標(biāo)的實(shí)際位置.實(shí)現(xiàn)裝配機(jī)器人對(duì)作業(yè)目標(biāo)的快速、魯棒性識(shí)別與定位.
SURF算法將圖像與高斯二階微分模板的濾波轉(zhuǎn)化為對(duì)積分圖像的加減運(yùn)算,選取圖像I中的一個(gè)點(diǎn)(x,y),則定義該點(diǎn)σ尺度的Hessian矩陣為
(1)
式中:Lxx(x,σ)是高斯函數(shù)二階偏導(dǎo)數(shù)與圖像中像素點(diǎn)灰度值的二維卷積;Lxy(x,σ)與Lyy(x,σ)的意義與之相似.
將9×9設(shè)置為最小尺度空間值對(duì)圖像進(jìn)行濾波處理,檢測(cè)σ=1.2的高斯二階微分濾波和斑點(diǎn),可將矩陣的行列式簡(jiǎn)化為
Det(Happrox)=DxxDyy=(0.9Dxy)2.
(2)
式中:Dxx,Dxy和Dyy為模板與圖像進(jìn)行卷積后的結(jié)果;Det(Happrox)表示點(diǎn)x周?chē)鷧^(qū)域的盒子濾波的響應(yīng)值.
SURF算法針對(duì)不同尺寸盒子濾波模板與積分圖像計(jì)算Hessian矩陣行列式的響應(yīng)圖像,再對(duì)響應(yīng)圖像采用3D鄰域非極大值抑制,由此構(gòu)建出金字塔模型,從而獲得不同尺度的斑點(diǎn).比較Hessian 矩陣的特征點(diǎn)與該點(diǎn)為中心的3D尺度空間的其他26個(gè)值,再利用插值計(jì)算尺度空間及圖像空間,即可得到穩(wěn)定的特征點(diǎn)位置和尺度值.
對(duì)提取的特征點(diǎn)采用FREAK描述子進(jìn)行描述,FREAK描述符是模擬人類(lèi)視網(wǎng)膜的結(jié)構(gòu)提出的一種算法,采用更接近人眼視覺(jué)系統(tǒng)的采樣模型來(lái)接收?qǐng)D像信息,其描述子由采樣點(diǎn)對(duì)的強(qiáng)度比較結(jié)果級(jí)聯(lián)組成,形成二進(jìn)制位串描述子[12].定義F為提取的某個(gè)特征點(diǎn)的FREAK描述符,則:
(3)
(4)
為保證FREAK描述子具有旋轉(zhuǎn)不變性,需要對(duì)提取的特征點(diǎn)增加方向信息,采用45個(gè)距離較長(zhǎng)且對(duì)稱(chēng)的采樣點(diǎn)計(jì)算其梯度,定義特征點(diǎn)方向?yàn)?/p>
(5)
計(jì)算2個(gè)關(guān)鍵點(diǎn)之間的漢明距離,采用最近鄰漢明距離進(jìn)行相似性度量[13].則2個(gè)特征描述子之間的漢明距離為
(6)
K1=x0x1…x225,K2=y0y1…y225.
(7)
式中:K1,K2是2個(gè)特征點(diǎn)描述子;x與y的值為0或1;?表示異或邏輯運(yùn)算.D(K1,K2)越大,說(shuō)明2個(gè)特征描述子相似程度越低.
作業(yè)目標(biāo)的模板如圖1所示,對(duì)如圖2所示的裝配機(jī)器人獲取的現(xiàn)場(chǎng)圖進(jìn)行目標(biāo)識(shí)別,匹配的結(jié)果如圖3所示.
圖 1 模板 圖 2 作業(yè)目標(biāo)圖 Fig.1 Template Fig.2 Job goal map
由圖3可知,漢明距離在粗匹配過(guò)程中因?yàn)樵肼暤韧饨绺蓴_造成的偽匹配引起誤差,降低了匹配精度.因此通過(guò)RANSAC算法進(jìn)行二次精匹配,RANSAC 算法通過(guò)對(duì)樣本的初始數(shù)據(jù)集構(gòu)建模型,從而對(duì)全部數(shù)據(jù)進(jìn)行正確的篩選,具有較強(qiáng)的魯棒性,能夠很好地去除誤匹配,獲得正確的匹配點(diǎn)對(duì)集.二次精匹配的結(jié)果如圖4所示.
圖 3 匹配結(jié)果 圖 4 二次精匹配結(jié)果 Fig.3 Matching results Fig.4 Secondary fine matching results
圖 5 裝配機(jī)器人及各坐標(biāo)系的關(guān)系Fig. 5 Relationship between the robot and the coordinate system
具有視覺(jué)感知的裝配機(jī)器人如圖5所示,裝配機(jī)器人為平面關(guān)節(jié)式的四自由度SCARA機(jī)器人,負(fù)載為3 kg,驅(qū)動(dòng)方式為步進(jìn)、伺服電機(jī)混合驅(qū)動(dòng),執(zhí)行機(jī)構(gòu)為氣動(dòng)手抓;視覺(jué)系統(tǒng)為AVT-GE1050相機(jī),分辨率為1 024×1 024,配有25mm光學(xué)鏡頭,光源為L(zhǎng)ED白色環(huán)形光,將相機(jī)安裝在機(jī)器人手臂末端,與執(zhí)行機(jī)構(gòu)互不干涉;作業(yè)目標(biāo)的傳送裝置為步進(jìn)電機(jī)加諧波減速器驅(qū)動(dòng)的360°旋轉(zhuǎn)的工作臺(tái).系統(tǒng)采用PC機(jī)作為上位機(jī)控制端與相機(jī)相連,將采集的作業(yè)目標(biāo)圖像進(jìn)行處理.下位機(jī)為開(kāi)源開(kāi)發(fā)板Arduino mega 2560R3,用來(lái)控制機(jī)器手臂完成對(duì)作業(yè)目標(biāo)的動(dòng)作.
本文采用單目手眼視覺(jué)系統(tǒng),如圖5所示.其中x-y-z為機(jī)器人基坐標(biāo)系,xe-ye-ze為末端執(zhí)行器坐標(biāo)系,xc-yc-zc為相機(jī)坐標(biāo)系,xw-yw-zw為標(biāo)定板坐標(biāo)系.各坐標(biāo)系之間的相對(duì)位姿可由T4,X,Tc3個(gè)轉(zhuǎn)換矩陣來(lái)表達(dá),通過(guò)機(jī)器人控制器獲取末端相對(duì)基坐標(biāo)系的轉(zhuǎn)換矩陣T4;通過(guò)手眼標(biāo)定獲取相機(jī)坐標(biāo)系相對(duì)于末端坐標(biāo)系的轉(zhuǎn)換矩陣X;通過(guò)圖像像素坐標(biāo)計(jì)算標(biāo)定板坐標(biāo)系相對(duì)相機(jī)坐標(biāo)系的轉(zhuǎn)換矩陣Tc,由此作業(yè)目標(biāo)的位姿為
T=T4·X·Tc.
(8)
以小孔成像為相機(jī)的基本模型,采集不同方向的10×10黑白棋盤(pán)格圖像作為平面標(biāo)定模板,通過(guò)Matlab標(biāo)定工具箱標(biāo)定,得到相機(jī)的內(nèi)參數(shù)矩陣為
(9)
同時(shí)得到徑向畸變系數(shù)為kx=-0.044 1,ky=0.029 0.
由于相機(jī)的外部參數(shù)是對(duì)應(yīng)于不同方向的標(biāo)定模板在相機(jī)坐標(biāo)系中的位置描述,通過(guò)手眼標(biāo)定基本方程式AX=XB得到機(jī)器人視覺(jué)系統(tǒng)的手眼關(guān)系為
(10)
作業(yè)目標(biāo)定位是在識(shí)別基礎(chǔ)上判定目標(biāo)的準(zhǔn)確坐標(biāo)位置,一般采用目標(biāo)的質(zhì)心坐標(biāo)來(lái)表征其位置信息[14].對(duì)如圖1所示的目標(biāo)模板圖像進(jìn)行圖像預(yù)處理,采用Canny算子得到目標(biāo)的邊緣輪廓信息,在運(yùn)用形態(tài)學(xué)算法進(jìn)行背景填充與標(biāo)簽運(yùn)算,最后得到模板圖像的質(zhì)心坐標(biāo),如圖6所示.
(a) 圖像增強(qiáng) (b) 邊緣檢測(cè) (c) 背景填充 (d) 目標(biāo)定位圖 6 模板定位Fig. 6 Template positioning
根據(jù)模板圖像與目標(biāo)圖像之間的關(guān)系,本文采用四參數(shù)仿射模型計(jì)算仿射變換參數(shù), 其變換矩陣為
(11)
式中:s為尺度變化參數(shù);tx為x方向的平移量;ty為y方向的平移量;θ為旋轉(zhuǎn)角度.
模板圖像上點(diǎn)(xp,yp)與目標(biāo)圖像上點(diǎn)(xp,yp)之間的映射關(guān)系為
(12)
設(shè)m11=m22=scosθ,m13=tx,m12=-m21=ssinθ,m23=ty則有
(13)
由式(15)可知,對(duì)6個(gè)位置數(shù)進(jìn)行求解,[m11,m12,m13,m21,m22,m23]至少需要3對(duì)匹配點(diǎn),假設(shè)模板圖像與作業(yè)目標(biāo)圖像所提取的特征點(diǎn)集P和Q相對(duì)應(yīng)的匹配點(diǎn)分別為(pi,pj)和(qa,qb),則擬合最小二乘法得到仿射變換中6個(gè)最佳參數(shù)[15].
(14)
定義的均方差I(lǐng)RMSE為
(15)
根據(jù)得到的模板圖像的質(zhì)心坐標(biāo)位置,結(jié)合仿射變換模型參數(shù)帶入式(13)中計(jì)算目標(biāo)圖像中作業(yè)目標(biāo)的質(zhì)心坐標(biāo)位置,如圖7所示.
另取一組如圖8所示模板圖像進(jìn)行定位實(shí)驗(yàn),結(jié)果如圖9所示.在獲得作業(yè)目標(biāo)質(zhì)心圖像坐標(biāo)后,根據(jù)2.2節(jié)的標(biāo)定關(guān)系,代入到式(8)中計(jì)算得到作業(yè)目標(biāo)質(zhì)心的世界坐標(biāo),與裝配機(jī)器人示教得到的實(shí)際坐標(biāo)值進(jìn)行比較,各坐標(biāo)如表1所示.由表1可知,計(jì)算的作業(yè)目標(biāo)質(zhì)心的世界坐標(biāo)誤差控制在1.0 mm以?xún)?nèi),消耗的時(shí)間控制在0.3 s以?xún)?nèi).
圖 7 作業(yè)目標(biāo)的質(zhì)心坐標(biāo) 圖 8 模板圖像 圖 9 定位結(jié)果 Fig.7 Center-of -mass coordinate of the job target Fig.8 Template image Fig. 9 Positioning results
組數(shù)質(zhì)心圖像坐標(biāo)xy世界坐標(biāo)的計(jì)算值/mmxyz世界坐標(biāo)的實(shí)際值/mmxyz第一組27836387324743-2106318752-2104第二組23586604288816-2106283808-2103
(1) 以四自由度SCARA機(jī)器人與AVT-GE1050工業(yè)相機(jī)構(gòu)建了具有視覺(jué)感知的裝配機(jī)器人系統(tǒng),給出了一種將SURF算法、FREAK算法、漢明距離以及仿射變換相結(jié)合的匹配識(shí)別與定位方法,解決工業(yè)復(fù)雜環(huán)境下作業(yè)目標(biāo)圖像的識(shí)別與定位問(wèn)題,該方法在忽略幾何畸變的情況下,對(duì)作業(yè)目標(biāo)具有較好的識(shí)別和定位精度.
(2) 通過(guò)SURF算法提取特征點(diǎn)以及FREAK特征描述子,利用漢明距離度量相似性,對(duì)最近鄰的漢明距離存在偽匹配特征點(diǎn)采用RANSAC算法進(jìn)行二次精匹配,在一定程度上提高了特征點(diǎn)的速度和匹配精度.
(3) 通過(guò)模板圖像與目標(biāo)圖像之間變換關(guān)系,建立四參數(shù)仿射變換模型,根據(jù)模板圖像的質(zhì)心坐標(biāo)與仿射變換參數(shù)獲得目標(biāo)的質(zhì)心坐標(biāo),結(jié)合機(jī)器人視覺(jué)系統(tǒng)的標(biāo)定參數(shù)得到目標(biāo)質(zhì)心的位姿,定位誤差不超過(guò)1.0 mm,為機(jī)器人的抓取、裝配提供目標(biāo)的位置信息.
參考文獻(xiàn)(References):
[1] 黃文明,呂智.裝配機(jī)器人視覺(jué)定位系統(tǒng)的研究[J].機(jī)電技術(shù),2015(2):19-22.
HUANG W M,LYU Z.Research on the vision system of assembly robot[J].Electromechanical Technology,2015(2):19-22.
[2] 張嘉易,劉揚(yáng),郝永平,等.面向微裝配的零件識(shí)別定位方法研究[J].制造業(yè)自動(dòng)化,2015,37 (7):38-40.
ZHANG J Y,LIU Y,HAO Y P,et al.Study on the method of parts identification for micro-assembly[J].Manufacturing Automation,2015,37 (7):38-40.
[3] STIPANCIC T,JERBIC B,CURKOVIC P.A context-aware approach in realization of socially intelligent industrial robots[J].Robotics and Computer-Integrated Manufacturing,2016,37(C):79-89.
[4] 劉明周,馬靖,張淼,等.基于機(jī)器視覺(jué)的機(jī)械產(chǎn)品裝配系統(tǒng)在線作業(yè)方法[J].計(jì)算機(jī)集成制造系統(tǒng),2015,21(9):2343-2353.
LIU M Z,MA J,ZHANG M,et al.Online operation method for assembly system of mechanical products based on machine vision[J].Computer Integrated Manufacturing System,2015,21(9):2343-2353.
[5] CONNOLLY C.Using machine vision in assembly applications[J].Assembly Automation,2003,23(3):233-239.
[6] CONNOLLY C.Machine vision advances and applications[J].Assembly Automation,2009,29(2):106-111.
[7] 張建中,何永義,李軍.機(jī)器人裝配視覺(jué)定位應(yīng)用研究[J].機(jī)電工程,2011,28(8):934-937.
ZHANG J Z,HE Y Y,LI J.Application research of vision-location in robotic assembly equipment[J].Journal of Mechanical & Electrical Engineering,2011,28(8):934-937.
[8] GOLNABI H,ASADPOUR A.Design and application of industrial machine vision systems[J].Robotics and Computer-Integrated Manufacturing,2007,23(6):630-637.
[9] 張小潔,張文新.基于機(jī)器視覺(jué)的零件顏色識(shí)別系統(tǒng)[J].西安工程大學(xué)學(xué)報(bào),2012,26(4):490-493.
ZHANG X J,ZHANG W X.Components color recognition system based on machine vision[J].Journal of Xi′an Polytechnic University,2012,26(4):490-493.
[10] SINKAR S V,DESHPANDA A M.Object recognition with plain background by using ANN and SIFT based features[C]//International Conference on Information Processing.Pune:IEEE,2016:575-580.
[11] 惠記莊,羅麗,楊永奎,等.基于SURF-BRISK的目標(biāo)識(shí)別匹配與定位方法研究[J].長(zhǎng)安大學(xué)學(xué)報(bào)(自然科學(xué)版),2016,36(3):93-101.
HUI J Z,LUO L,YANG Y K,et al.Research on location algorithm and target recognition matching based on SURF-BRISK[J].Journal of Chang′an University (Natural Science Edition),2016,36(3):93-101.
[12] 葉志堅(jiān),王福龍.基于FREAK和RANSAC算法改進(jìn)的圖像特征點(diǎn)匹配[J].廣東工業(yè)大學(xué)學(xué)報(bào),2017,34(6):37-42.
YE Z J,WANG F L.Feature points matching in images based on improved FREAK and RANSAC[J].Journal of Guangdong University of Technology,2017,34(6):37-42.
[13] 戴雪梅,郎朗,陳孟元.基于改進(jìn)ORB的圖像特征點(diǎn)匹配研究[J].電子測(cè)量與儀器學(xué)報(bào),2016,30(02):233-240.
DAI X M,LANG L,CHEN M Y.Research on image feature point matching based on improved ORB algorithm[J].Journal of Electronic Measurement and Instruments,2016,30(2):233-240.
[14] 李鵬飛,朱鵬飛,張蕾,等.基于HALCON和VC++的雙目機(jī)器人織物抓取系統(tǒng)設(shè)計(jì)[J].西安工程大學(xué)學(xué)報(bào),2016,30(6):772-777.
LI P F,ZHU P F,ZHANG L,et al.Fabric garbbing robot of binocular vision system design based on HALCON and VC++mixed programming[J].Journal of Xi′an Polytechnic University,2016,30(6):772-777.
[15] 楊镠,郭寶龍,李雷達(dá),等.基于圖像幾何特征點(diǎn)的仿射參數(shù)估計(jì)算法研究[J].計(jì)算機(jī)科學(xué),2009,36(6):279-281.
YANG L,GUO B L,LI L D,et al.Research on evaluation of affine estimation using image feature points[J].Computer Science,2009,36(6):279-281.