趙鵬宇,王宗彥,何曉,丁培燎
中北大學機械工程學院;山西省起重機數(shù)字化設(shè)計工程技術(shù)研究中心
為增強機器人的自動化水平,將視覺技術(shù)與機器人技術(shù)進行融合已成為工程技術(shù)領(lǐng)域的研究熱點。李志昂等[1]提出了基于SURF算法與RGB顏色空間結(jié)合的目標識別算法,實現(xiàn)對顏色不同的字體塊抓取。宋薇等[2]提出了基于工業(yè)零件CAD模型,采用單攝像機完成立體匹配的抓取方法。梅江平等[3]提出了一種基于圓特征單目視覺的定位方法,并與傳送帶標定結(jié)合,提高了并聯(lián)機器人對動態(tài)目標的定位精度和抓取效率。
Delta并聯(lián)機器人重復定位精度高,運行穩(wěn)定,目前在食品藥品工業(yè)的分揀和包裝等領(lǐng)域廣泛應用[4-6]。將其與機器視覺技術(shù)融合,可克服傳統(tǒng)機器人分揀靈活性低的缺點,加強Delta并聯(lián)機器人的自動化水平[6]。工業(yè)生產(chǎn)環(huán)境噪聲大、干擾強,導致傳統(tǒng)機器視覺目標識別算法的準確性下降,分析SIFT(尺度不變特征變換)、SURF(加速版的魯棒性特征)、ORB等特征提取方法和Grabcut、Onecut等圖像分割方法[7-11],提出了一種基于ORB特征匹配與Onecut圖像分割方法結(jié)合的目標識別定位算法,消除Onecut算法需人機交互的缺點及圖像中的噪聲干擾,提高了目標識別的準確性。
本文通過標定Delta機器人、傳送帶及相機,得到目標的空間坐標,進行準確的抓取操作,并將ORB算法和Onecut算法結(jié)合,實現(xiàn)了免交互的Onecut分割算法。
Delta并聯(lián)機器人識別抓取系統(tǒng)可分為兩部分:視覺系統(tǒng)識別定位待分揀物和機器人控制末端執(zhí)行器進行抓取操作。為了使Delta機器人靈活運動,充分發(fā)揮工作空間大的優(yōu)勢和視覺系統(tǒng)的性能,采用末端開環(huán)的機器人系統(tǒng)搭建方法,在機器人工作空間外且垂直于傳送帶表面的位置安裝攝像機,防止攝像機干擾Delta機器人的工作[12](見圖1)。
圖1 系統(tǒng)結(jié)構(gòu)
為了準確得到物體位姿信息,需標定工業(yè)相機,消除畸變影響。手眼標定攝像機和機器人后,建立攝像機坐標與機器人坐標之間的關(guān)系。
工業(yè)相機標定是相機將物體的三維信息轉(zhuǎn)換成圖像中二維信息的過程,以此確定相機的內(nèi)外參數(shù)。此過程涉及4個坐標系的轉(zhuǎn)換:世界坐標系OW經(jīng)平移旋轉(zhuǎn)轉(zhuǎn)換到相機坐標系OC;相機坐標系OC投影變換后到圖像坐標系;圖像坐標系轉(zhuǎn)換到像素坐標系。從相機坐標系到圖像坐標系構(gòu)成了相機的外參,從圖像坐標系到像素坐標系構(gòu)成了相機的內(nèi)參。本文基于OpenCV進行相機標定,選用6mm×9mm和15mm×15mm棋盤格,內(nèi)參標定結(jié)果見表1。
表1 Opencv標定結(jié)果
圖2 傳送帶-機器人標定
(1)
(2)
(3)
(4)
最終得到相機坐標系的坐標O1進入機器人工作空間后的坐標O2為
(5)
由式(5)可得到相機坐標與機器人坐標間的關(guān)系,完成手眼標定。
通過ORB算法識別圖像中的目標物體,基于免交互Onecut圖像分割算法分割物體,通過Canny邊緣檢測算法檢測物體外輪廓,最后定位物體質(zhì)心。
ORB(Oriented FAST and Rotated BRIEF)算法基于FAST算法并結(jié)合改進的BRIEF描述子,運算速度是傳統(tǒng)sift算法的百倍。步驟如下:
(1)縮放圖像,得到不同尺度的圖像,之后進行FAST特征點檢測,匹配不同尺度的圖像,解決ORB沒有尺度不變性的問題。
(2)利用圖像的矩改進FAST算法,確定特征點方向,特征點領(lǐng)域范圍的p+q階幾何矩見式(6),其中f(i,j)為鄰域內(nèi)(i,j)點的像素值,質(zhì)心坐標見式(7),通過幾何中心與質(zhì)心連線的向量得到的特征點鄰域方向見式(8)。
(6)
(7)
θ=arctan(m01/m10)
(8)
(3)對圖像進行高斯濾波,利用BRIEF描述子計算特征點的描述子。在特征點鄰域附近取若干點,比較每個點的灰度值,轉(zhuǎn)換成二進制數(shù)為
(9)
式中,p(x),p(y)為隨機特征點的灰度值。
利用二進制編碼可得特征描述子為
(10)
上述特征描述子未解決旋轉(zhuǎn)不變性的問題,需通過特征點旋轉(zhuǎn)描述子解決,設(shè)特征點鄰域若干點對應矩陣為S,利用特征點領(lǐng)域方向的旋轉(zhuǎn)矩陣Rθ進行計算,有
(11)
具有旋轉(zhuǎn)不變特性的描述子變換為
gn(p,θ)=fn(p)|(xi,yi)∈Sθ
(12)
根據(jù)特征點間的漢明距離比較兩個特征點間的相似度,漢明距離是將一個二進制串變換為與另外一個等長的二進制串所需替換的次數(shù),漢明距離越小,特征點越相似。利用ORB進行特征匹配的效果分別見圖3和圖4。
圖像分割是將圖像中的目標與背景分離,目前常見的圖像分割方法有基于閾值的分割方法、基于邊緣的分割方法及基于區(qū)域的分割方法等。前兩者分割精度易受圖像噪聲的影響,后者的計算速度過慢?;趫D論的圖像分割方法分割精度高,Boykov Y.等[13]提出了基于Graphcut算法分割灰度圖像,Rother C.等[11]在此基礎(chǔ)上提出了基于Grabcut算法的彩色分割,Onecut分割算法是GrabCut算法的改進。Onecut摒棄Grabcut算法的迭代過程,通過一次圖割獲得最優(yōu)分割結(jié)果,大幅加快了算法速度。
圖3 ORB特征匹配效果1
圖4 ORB特征匹配效果2
Onecut算法通過顏色直方圖對前景和背景建立能量模型,可表示為
(13)
對前兩項熵函數(shù)的最小化,求解能量函數(shù)的前景與背景重疊像素的最小值。
Onecut算法表觀重疊懲罰的公式為
(14)
在Onecut算法中需矩形包圍前景,矩形外為背景,通過一次圖割實現(xiàn)目標分割,可表示為
(15)
傳統(tǒng)Onecut算法需手動選擇矩形包圍范圍,實際機器人抓取應用中此過程需自動進行。ORB識別圖像后,檢索物體框的四個頂點,得出其在x,y方向的最大最小坐標分別為max_cols,min_cols,max_rows,min_rows;Onecut算法矩形框的左上角頂點坐標為(min_cols,min_rows),矩形長為max_cols-min_cols,矩形寬為max_rows-min_rows。矩形框包圍及分割效果見圖5和圖6。
圖5 物體1初始化矩形框及分割效果
圖6 物體2初始化矩形框及分割效果
圖像分割后,背景中的劃痕和反光等已被消除,很好地分割出目標物體。為進一步獲取物體的位置信息,對外輪廓進行Canny邊緣檢測,輪廓信息清晰完整,無噪點干擾,計算其中心點,效果見圖7和圖8。
圖7 物體1外輪廓及其中心點
圖8 物體2外輪廓及其中心點
如圖9和圖10所示,采用Opencv3.4.11視覺庫和Visual studio2019進行開發(fā)設(shè)計,采用??迪鄼C采集圖像。實驗時,Delta機器人的三條主動臂回到初始位置,將物體放在傳送帶上,運動到相機視場中時相機對其拍照并處理。繼續(xù)運行傳送帶,當物體到達Delta機器人工作空間后,機器人進行抓取操作。
圖9 實驗環(huán)境
圖10 絕對值編碼器
實驗中,傳送帶速度為20mm/s,將物體1放置在傳送帶上進行六組實驗,分別從傳送帶的中間及兩邊進入,記錄Delta機器人的抓取位置,并與理論位置對比,計算誤差,實驗結(jié)果見表2。
表2 多位置抓取結(jié)果
由表2可知,理論位置與實際抓取位置的最大誤差均在2mm內(nèi),與進入傳送帶的位置無關(guān),滿足物體的抓取要求,證明本文的目標識別算法與標定方法的正確性。
因Delta并聯(lián)機器人運行速度快、重復定位精度高,目前已成為研究的熱點方向。為提升工業(yè)生產(chǎn)的工作效率,將Delta并聯(lián)機器人系統(tǒng)與機器視覺相結(jié)合。
本文對機器視覺系統(tǒng)標定方法進行了研究,通過研究圖像處理方法提出了基于ORB特征匹配與Onecut算法相結(jié)合的目標識別定位方法,經(jīng)實驗驗證了該算法的有效性。但在實驗中發(fā)現(xiàn),該算法的處理速度較慢,當傳送帶速度升高時,抓取準確性會降低,后續(xù)還需對算法改進,使其滿足高速的要求。