引言
近年來,視覺引導工業(yè)機器人作業(yè)成為學者研究的熱點,尤其是在機器人抓取、安裝等方面應用廣泛,其原理是經視覺技術進行三維重建后,實現(xiàn)對物體的位姿識別和定位。精確的位姿識別能有效提高機器人抓取準確性,而目前的三維測量精度和速度仍處于探索研究的過程中。一般位姿主要包括旋轉和平移兩種狀態(tài),目前常用的位姿計算方法主要有深度學習和點云配準等。其中,深度學習依賴大量樣本且訓練耗時太長,難以推廣應用。點云配準是基于模板點云與目標點云之間的相似特征點,求出旋轉平移矩陣,將兩個點云轉換到同一個坐標系下,得到匹配參數后利用手眼標定參數計算出機械手抓取位姿,能夠大幅縮短運行時間,提高配準精度。本系統(tǒng)采用雙目加投影儀的視覺檢測方法,通過處理獲取三維點云數據,得到物體位姿信息,最后引導機械手對目標物體進行抓取,提高匹配與抓取精度。
1定位抓取系統(tǒng)方案設計
搭建的定位抓取系統(tǒng)主要由兩個相機、一個DLP4500投影儀、龍門架、機器人及通信設備等組成。在實驗平臺中,為更好地捕獲圖像,通常把投影儀放置在兩個相機之間,并調整好兩個相機的角度,滿足兩個相機視野的公共視場,使得圖像采集盡可能一致,整體實驗搭建情況如圖1所示。
1一機器人:2一吸盤:3一投影儀:4一相機:5一傳送帶:6一異構件。
圖1實驗系統(tǒng)
整個定位抓取方案包含了雙目結構光三維重建與點云處理的整體流程,主要步驟如下:
(1)相機標定:首先左右相機同時采集10~15張標定板圖片,完成相機標定,得到雙目相機的內外參數以及像素誤差。
(2)三維重建:左右相機分別采集帶有正弦光柵的12張圖片,基于三頻四步外差法以及相位校正對相位展開獲得左右相位圖,對相位圖進行極線校正后完成相位匹配,得到待測物的視差圖。根據視差圖計算每個點的深度信息,獲得Z坐標,再計算出每個點的X、Y坐標,以點云的形式表達出來并保存,完成三維重建。
(3)點云處理與位姿估計:對三維重建的點云進行濾波處理、關鍵點提取,利用FPFH特征直方圖求取點與鄰域點之間的法線相互關系,完成點云配準后得到齊次矩陣,矩陣包含旋轉矩陣和平移矩陣。
(4)抓取:完成手眼標定得到工件坐標系與相機坐標系的轉換矩陣,結合位姿估計得到的物體與相機的關系矩陣,得出機器人與待抓取結構件的位姿關系,控制機器人移動到計算得到的位置完成抓取。
整體流程如圖2所示。
2系統(tǒng)標定
2.1相機標定
相機標定的目的是獲得相機的內外參數和畸變參數,求出世界坐標系與像素坐標系之間的關系,常用的標定方法是張正友標定法[4]。雙目標定與單目標定的不同之處在于雙目標定除了需要單目標定的參數外,還有兩個相機之間的相對位置關系。一般都是以左相機為坐標參考系,得出右相機相對于左相機的旋轉、平移關系。
左右相機的位置關系如下:
聯(lián)合式(1)(2)可得:
求得相機的外參數為:
雙目標定流程圖如圖3所示,由于相機是朝下放置,光源在上方,所以對于標定板的反光具有一定的要求,選擇了反光較弱的陶瓷材質標定板。將標定板放置在實驗平臺上,通過平面旋轉、移動和傾斜與平臺呈現(xiàn)一定角度的標定板,在雙目相機的視野范圍內,拍攝15~20張圖片。
使用MATLAB的標定工具箱,角點識別標定板完成單目標定與雙目標定。得到的雙目標定各參數結果如表1、表2所示。
2.2手眼標定
采用Tsai-Lenz算法,將標定板固定在機械手末端,放置于相機視野范圍內,移動機械手末端使標定板呈現(xiàn)不同的位姿并完成圖像采集,手眼標定系統(tǒng)示意圖如圖4所示。
圖4手眼標定系統(tǒng)示意圖
分別定義7CR、7PC、7MR、7PM為機械臂基座坐標系R與相機坐標系C、相機坐標系C與標定板坐標系P、機械臂基座坐標系R與機械臂末端執(zhí)行器坐標系M、機械臂末端執(zhí)行器坐標系M與標定板坐標系P之間的轉換關系。
建立4個坐標系之間的運動方程:
7PC可以通過相機標定得到,移動帶有標定板的機械臂,使標定板在相機視野范圍內,根據相機內參系數計算出外部參數,最后得到在相機坐標系下的標定板位姿信息。7MR通過獲取機械臂各關節(jié)的參數和求解運動方程可得。所以,手眼標定主要求解7CR和7PM的參數。
機械臂基座坐標系R與相機坐標系C的關系是保持不變的,標定板固定在機械臂末端,所以機械臂末端執(zhí)行器坐標系M與標定板坐標系P也保持不變,因此求解的7CR和7PM實際上是不變的矩陣。
由式(6)可知,標定板移動為任何姿態(tài)7PM都是固定值。
拍攝n次不同位姿的標定板圖像,可得如下方程組:
整理方程組,用X代替7CR,可得:
式(8)用于求解AX=XB,AX主要與R和M有關,XB主要與C和P有關。最后將問題轉換成求解旋轉、平移矩陣,即完成手眼標定。得到的標定誤差如表3所示。
3三維重建
異構件的三維重建整體流程如圖5所示,首先對左右相機采集不同姿態(tài)的標定板圖片,完成相機標定。
其次將正弦光柵投影到異構件表面,并利用左右相機獲取圖像,如圖6所示。
根據捕捉到的圖像分別進行包裹相位的計算,完成相位校正和極線校正,通過相位匹配計算得到異構件的視差圖,最后結合雙目系統(tǒng)求解得到異構件的三維點云,完成三維重建,如圖7所示。
4位姿估計與定位抓取
為能高效率地實現(xiàn)位姿估計,完成定位,將流程分成兩個部分,模板點云采用離線操作,場景點云的位姿矩陣計算則利用在線部分的三維重建與模板點云進行配準。位姿估計流程圖如圖8所示。
實驗方法步驟:
(1)建立離線模板點云庫,重建不同的異構件點云,將重建效果好的點云經過處理后導入模板庫。
(2)重建場景點云后完成點云預處理,并對其進行歐式距離的聚類分割,根據抓取的優(yōu)先順序導入對應的模板,使用SAC-IA+ICP完成配準,配準誤差最小的即為匹配成功對。
(3)獲取位姿估計信息,即機器人的抓取位姿。在得到點云配準的旋轉、平移矩陣后與手眼標定矩陣結合,計算得到待抓取物體與工件坐標系的位姿關系,將該關系的位姿矩陣寫入Rapid語言,機器人根據獲取到的位姿信息移動到指定位置,將待抓取物吸附后移動到指定放置地點。
4個異構件在相機視野范圍內隨意分散擺放,經過三維重建、點云預處理、點云分割及點云配準后,得到圖9所示點云分割結果圖和圖10所示點云配準示意圖。
根據配準結果獲取抓取位姿后,控制機器人完成抓取。多種類異構件的抓取示意圖如圖11所示。
5結語
本文以異構件為研究對象對整個測量系統(tǒng)的關鍵技術進行研究,搭建雙目結構光系統(tǒng),利用該系統(tǒng)獲得帶有場景的點云數據,通過點云處理得到的位姿估計結果引導機械臂完成抓取,驗證了整體方案設計的可行性。