范 荻,金守峰,陳 蓉,高 磊
(西安工程大學 機電工程學院,陜西 西安 710048)
裝配機器人[1]是柔性自動化生產(chǎn)系統(tǒng)中的核心,零件的識別與定位[2]是裝配中必不可少的一步,因為裝配機器人的普遍應用,精度問題受到了越來越多的關注,如果目標工件或者工作環(huán)境發(fā)生改變,機器人將無法及時適應這些變化,導致目標工件的抓取失敗,在很大程度上降低了裝配機器人的靈活性和生產(chǎn)率.隨著視覺傳感器及計算機視覺理論的發(fā)展,具有視覺感知的工業(yè)裝配機器人成為高端制造裝備的核心,是引領制造方式變革的重要手段[3-4].Connolly提出了機器視覺的先進性以及在生產(chǎn)裝配系統(tǒng)中的應用方式[5-6];張建中等將視覺定位技術(shù)應用到機器人裝配系統(tǒng)中,以便于解決機器人裝配的自動定位問題[7];Golnabi等在關于如何構(gòu)建基于機器視覺的系統(tǒng)中取得了一定的成果[8];張小潔等通過機器視覺實現(xiàn)了對零件圖像的顏色識別[9]; Sinkar[10]等結(jié)合人工神經(jīng)網(wǎng)絡、SIFT算法和歐氏距離完成了對作業(yè)目標的識別;惠記莊等采用SURF算法提取特征點,通過BRISK 算法進行描述并計算其相似度,再利用MSAC 算法進行二次精匹配來識別作業(yè)目標工件[11].
由于裝配的作業(yè)過程復雜,工業(yè)現(xiàn)場的光照變化、復雜的背景,裝配工件的尺寸、形狀多樣性等因素對作業(yè)目標的識別、定位造成的干擾是工業(yè)裝配機器人進一步發(fā)展的瓶頸.因此,本文給出一種基于SURF算法的作業(yè)目標識別定位方法,該方法采用SURF算法提取作業(yè)目標的特征點,通過具有旋轉(zhuǎn)不變性的FREAK描述子對提取的特征點進行特征描述,采用最近鄰的漢明距離得到初次匹配.針對漢明距離在粗匹配過程中由于噪聲等外界影響所造成的偽匹配,采用RANSAC算法進行二次精匹配.根據(jù)最佳匹配特征點確定作業(yè)目標的質(zhì)心坐標,利用系統(tǒng)標定關系求解出作業(yè)目標的實際位置.實現(xiàn)裝配機器人對作業(yè)目標的快速、魯棒性識別與定位.
SURF算法將圖像與高斯二階微分模板的濾波轉(zhuǎn)化為對積分圖像的加減運算,選取圖像I中的一個點(x,y),則定義該點σ尺度的Hessian矩陣為
(1)
式中:Lxx(x,σ)是高斯函數(shù)二階偏導數(shù)與圖像中像素點灰度值的二維卷積;Lxy(x,σ)與Lyy(x,σ)的意義與之相似.
將9×9設置為最小尺度空間值對圖像進行濾波處理,檢測σ=1.2的高斯二階微分濾波和斑點,可將矩陣的行列式簡化為
Det(Happrox)=DxxDyy=(0.9Dxy)2.
(2)
式中:Dxx,Dxy和Dyy為模板與圖像進行卷積后的結(jié)果;Det(Happrox)表示點x周圍區(qū)域的盒子濾波的響應值.
SURF算法針對不同尺寸盒子濾波模板與積分圖像計算Hessian矩陣行列式的響應圖像,再對響應圖像采用3D鄰域非極大值抑制,由此構(gòu)建出金字塔模型,從而獲得不同尺度的斑點.比較Hessian 矩陣的特征點與該點為中心的3D尺度空間的其他26個值,再利用插值計算尺度空間及圖像空間,即可得到穩(wěn)定的特征點位置和尺度值.
對提取的特征點采用FREAK描述子進行描述,FREAK描述符是模擬人類視網(wǎng)膜的結(jié)構(gòu)提出的一種算法,采用更接近人眼視覺系統(tǒng)的采樣模型來接收圖像信息,其描述子由采樣點對的強度比較結(jié)果級聯(lián)組成,形成二進制位串描述子[12].定義F為提取的某個特征點的FREAK描述符,則:
(3)
(4)
為保證FREAK描述子具有旋轉(zhuǎn)不變性,需要對提取的特征點增加方向信息,采用45個距離較長且對稱的采樣點計算其梯度,定義特征點方向為
(5)
計算2個關鍵點之間的漢明距離,采用最近鄰漢明距離進行相似性度量[13].則2個特征描述子之間的漢明距離為
(6)
K1=x0x1…x225,K2=y0y1…y225.
(7)
式中:K1,K2是2個特征點描述子;x與y的值為0或1;?表示異或邏輯運算.D(K1,K2)越大,說明2個特征描述子相似程度越低.
作業(yè)目標的模板如圖1所示,對如圖2所示的裝配機器人獲取的現(xiàn)場圖進行目標識別,匹配的結(jié)果如圖3所示.
圖 1 模板 圖 2 作業(yè)目標圖 Fig.1 Template Fig.2 Job goal map
由圖3可知,漢明距離在粗匹配過程中因為噪聲等外界干擾造成的偽匹配引起誤差,降低了匹配精度.因此通過RANSAC算法進行二次精匹配,RANSAC 算法通過對樣本的初始數(shù)據(jù)集構(gòu)建模型,從而對全部數(shù)據(jù)進行正確的篩選,具有較強的魯棒性,能夠很好地去除誤匹配,獲得正確的匹配點對集.二次精匹配的結(jié)果如圖4所示.
圖 3 匹配結(jié)果 圖 4 二次精匹配結(jié)果 Fig.3 Matching results Fig.4 Secondary fine matching results
圖 5 裝配機器人及各坐標系的關系Fig. 5 Relationship between the robot and the coordinate system
具有視覺感知的裝配機器人如圖5所示,裝配機器人為平面關節(jié)式的四自由度SCARA機器人,負載為3 kg,驅(qū)動方式為步進、伺服電機混合驅(qū)動,執(zhí)行機構(gòu)為氣動手抓;視覺系統(tǒng)為AVT-GE1050相機,分辨率為1 024×1 024,配有25mm光學鏡頭,光源為LED白色環(huán)形光,將相機安裝在機器人手臂末端,與執(zhí)行機構(gòu)互不干涉;作業(yè)目標的傳送裝置為步進電機加諧波減速器驅(qū)動的360°旋轉(zhuǎn)的工作臺.系統(tǒng)采用PC機作為上位機控制端與相機相連,將采集的作業(yè)目標圖像進行處理.下位機為開源開發(fā)板Arduino mega 2560R3,用來控制機器手臂完成對作業(yè)目標的動作.
本文采用單目手眼視覺系統(tǒng),如圖5所示.其中x-y-z為機器人基坐標系,xe-ye-ze為末端執(zhí)行器坐標系,xc-yc-zc為相機坐標系,xw-yw-zw為標定板坐標系.各坐標系之間的相對位姿可由T4,X,Tc3個轉(zhuǎn)換矩陣來表達,通過機器人控制器獲取末端相對基坐標系的轉(zhuǎn)換矩陣T4;通過手眼標定獲取相機坐標系相對于末端坐標系的轉(zhuǎn)換矩陣X;通過圖像像素坐標計算標定板坐標系相對相機坐標系的轉(zhuǎn)換矩陣Tc,由此作業(yè)目標的位姿為
T=T4·X·Tc.
(8)
以小孔成像為相機的基本模型,采集不同方向的10×10黑白棋盤格圖像作為平面標定模板,通過Matlab標定工具箱標定,得到相機的內(nèi)參數(shù)矩陣為
(9)
同時得到徑向畸變系數(shù)為kx=-0.044 1,ky=0.029 0.
由于相機的外部參數(shù)是對應于不同方向的標定模板在相機坐標系中的位置描述,通過手眼標定基本方程式AX=XB得到機器人視覺系統(tǒng)的手眼關系為
(10)
作業(yè)目標定位是在識別基礎上判定目標的準確坐標位置,一般采用目標的質(zhì)心坐標來表征其位置信息[14].對如圖1所示的目標模板圖像進行圖像預處理,采用Canny算子得到目標的邊緣輪廓信息,在運用形態(tài)學算法進行背景填充與標簽運算,最后得到模板圖像的質(zhì)心坐標,如圖6所示.
(a) 圖像增強 (b) 邊緣檢測 (c) 背景填充 (d) 目標定位圖 6 模板定位Fig. 6 Template positioning
根據(jù)模板圖像與目標圖像之間的關系,本文采用四參數(shù)仿射模型計算仿射變換參數(shù), 其變換矩陣為
(11)
式中:s為尺度變化參數(shù);tx為x方向的平移量;ty為y方向的平移量;θ為旋轉(zhuǎn)角度.
模板圖像上點(xp,yp)與目標圖像上點(xp,yp)之間的映射關系為
(12)
設m11=m22=scosθ,m13=tx,m12=-m21=ssinθ,m23=ty則有
(13)
由式(15)可知,對6個位置數(shù)進行求解,[m11,m12,m13,m21,m22,m23]至少需要3對匹配點,假設模板圖像與作業(yè)目標圖像所提取的特征點集P和Q相對應的匹配點分別為(pi,pj)和(qa,qb),則擬合最小二乘法得到仿射變換中6個最佳參數(shù)[15].
(14)
定義的均方差IRMSE為
(15)
根據(jù)得到的模板圖像的質(zhì)心坐標位置,結(jié)合仿射變換模型參數(shù)帶入式(13)中計算目標圖像中作業(yè)目標的質(zhì)心坐標位置,如圖7所示.
另取一組如圖8所示模板圖像進行定位實驗,結(jié)果如圖9所示.在獲得作業(yè)目標質(zhì)心圖像坐標后,根據(jù)2.2節(jié)的標定關系,代入到式(8)中計算得到作業(yè)目標質(zhì)心的世界坐標,與裝配機器人示教得到的實際坐標值進行比較,各坐標如表1所示.由表1可知,計算的作業(yè)目標質(zhì)心的世界坐標誤差控制在1.0 mm以內(nèi),消耗的時間控制在0.3 s以內(nèi).
圖 7 作業(yè)目標的質(zhì)心坐標 圖 8 模板圖像 圖 9 定位結(jié)果 Fig.7 Center-of -mass coordinate of the job target Fig.8 Template image Fig. 9 Positioning results
組數(shù)質(zhì)心圖像坐標xy世界坐標的計算值/mmxyz世界坐標的實際值/mmxyz第一組27836387324743-2106318752-2104第二組23586604288816-2106283808-2103
(1) 以四自由度SCARA機器人與AVT-GE1050工業(yè)相機構(gòu)建了具有視覺感知的裝配機器人系統(tǒng),給出了一種將SURF算法、FREAK算法、漢明距離以及仿射變換相結(jié)合的匹配識別與定位方法,解決工業(yè)復雜環(huán)境下作業(yè)目標圖像的識別與定位問題,該方法在忽略幾何畸變的情況下,對作業(yè)目標具有較好的識別和定位精度.
(2) 通過SURF算法提取特征點以及FREAK特征描述子,利用漢明距離度量相似性,對最近鄰的漢明距離存在偽匹配特征點采用RANSAC算法進行二次精匹配,在一定程度上提高了特征點的速度和匹配精度.
(3) 通過模板圖像與目標圖像之間變換關系,建立四參數(shù)仿射變換模型,根據(jù)模板圖像的質(zhì)心坐標與仿射變換參數(shù)獲得目標的質(zhì)心坐標,結(jié)合機器人視覺系統(tǒng)的標定參數(shù)得到目標質(zhì)心的位姿,定位誤差不超過1.0 mm,為機器人的抓取、裝配提供目標的位置信息.
參考文獻(References):
[1] 黃文明,呂智.裝配機器人視覺定位系統(tǒng)的研究[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] 張嘉易,劉揚,郝永平,等.面向微裝配的零件識別定位方法研究[J].制造業(yè)自動化,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] 劉明周,馬靖,張淼,等.基于機器視覺的機械產(chǎn)品裝配系統(tǒng)在線作業(yè)方法[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].機電工程,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] 張小潔,張文新.基于機器視覺的零件顏色識別系統(tǒng)[J].西安工程大學學報,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的目標識別匹配與定位方法研究[J].長安大學學報(自然科學版),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] 葉志堅,王福龍.基于FREAK和RANSAC算法改進的圖像特征點匹配[J].廣東工業(yè)大學學報,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] 戴雪梅,郎朗,陳孟元.基于改進ORB的圖像特征點匹配研究[J].電子測量與儀器學報,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++的雙目機器人織物抓取系統(tǒng)設計[J].西安工程大學學報,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] 楊镠,郭寶龍,李雷達,等.基于圖像幾何特征點的仿射參數(shù)估計算法研究[J].計算機科學,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.