李 鑫,李彩紅,張 正
(長安大學 工程機械學院,陜西 西安 710064)
近年來,在工業、農業、軍事和家庭服務等領域機器人抓取技術得到了快速發展。人們期望智能機器人能與環境互動,更好地擴展機器人的應用范圍。在大多數情況下,人們通過分析物體并觀察場景可以快速、準確地抓取物品。然而,對于機器人而言,由于物體和場景的不確定性,實現自主抓取非常具有挑戰性。機器人系統主要包括抓取檢測、抓取規劃和抓取控制等三個模塊。抓取檢測是從機器人傳感器提供的信息或信號中確定抓取姿勢的能力。抓取檢測直接影響到隨后抓取規劃和抓取控制的具體實現。
本文提出一種基于點云的抓取位姿檢測方法,并搭建仿真平臺,驗證了該方法的可行性和穩定性。
如圖1所示,本文的機器人系統主要由UR10機械臂、D435i RGBD深度相機、AG-95二指夾持器等組成。

圖1 機器人系統
通過MoveIt建立UR10機械臂的抓取規劃和控制系統,使用KDL庫進行正逆運動學求解和路徑插值。通過OMPL運動規劃器中的RRT算法進行軌跡規劃,以 action 的信息形式發布,Gazebo訂閱這些軌跡信息實現對UR10機械臂關節的控制。
機器人抓取系統感知、規劃、控制等模塊和對應實現的ROS節點如圖2所示,各個節點之間通過發布和訂閱話題進行通信。Node2訂閱Topic1獲得場景點云,然后對抓取目標識別定位,將識別結果通過Topic2發布;Node3訂閱Topic2,進行抓取位姿檢測,生成穩定的抓取位姿,并將結果通過Topic3發布。Node4訂閱話題Topic3通過RRT算法進行軌跡規劃,通過MoveIt 對Gazebo場景中UR10機械臂進行控制。當到達指定的抓取點時,反饋到位信息,然后控制二指夾持器進行抓取。

圖2 節點通信機制
本文提出的抓取位姿檢測方法通過分析抓取場景中的點云信息,生成六自由度抓取位姿,實現機械手的多方位穩定且有效的抓取。
平行夾持器可等效為圖3所示結構,幾何參數為Θ=(θl,θd,θw,θt),其中,θl為夾爪的深度,θd為夾爪兩指的最大開口寬度,θw為夾爪手指與物體接觸的夾持寬度,θt為夾爪手指的厚度,兩指閉合過程中掃過的立體空間為B(h)。

圖3 二指夾持器


圖4 末端夾持器坐標系

圖5 目標點云采樣
本文通過虛擬相機獲取Gazebo場景點云,使用均值濾波去除噪聲,然后經RANSAC算法分割桌面點云。
點云的法線近似于估計表面的一個相切面法線,然后轉換成一個最小二乘法平面擬合估計問題。計算點云每個點pi的法線對應于協方差矩陣C最小特征值的特征向量。
(1)
C·Vj=λj·Vj,j∈{0,1,2}
(2)
其中,pc表示最近鄰點的坐標,k作為離點pi最近的k個點,Vj為第j個特征向量,λj表示C的第j個特征值。
本文通過對目標點云進行均勻采樣確定初始抓取點集合。法線的正方向通過相機視點Pv確定。取滿足ni·Vi>0條件的方向為正。
在抓取位姿搜索之前,需建立夾爪坐標系F(G)和采樣點局部坐標系F(p)的位姿關系,如圖6所示。F(G)的Xg軸與F(p)的v1軸反向平行,Yg與v2軸反向平行,Zg與v3軸同向平行,且F(G)原點Og與F(p)原點Op在Xg方向上距離為θl。

圖6 坐標系位姿關系
為獲得更多潛在可行的候選抓取位姿,在每個采樣點坐標系F(p)下,沿v1旋轉方向進行單維度搜索,v2作為起始方向,每次旋轉20°,共旋轉6次,在不與場景點云Cscene和待抓取物體點云Ctag發生碰撞的前提下,然后將夾持位姿沿v1負向移動x*,確定抓取位姿后,提取夾持器內部點云C(h)。
抓取位姿搜索策略如算法1所示,在每個采樣點處,確定初始抓取位姿F(G),如圖7所示。設z、x分別為夾持器坐標原點Og和采樣點Op沿v3和v1方向的距離。此時抓取位姿為h(z,x,F(p)),設置單位搜索步長為Δz。抓取位姿搜索需滿足以下條件。

圖7 候選位姿生成

圖8 夾爪內部點云Ccls

圖9 PointNet網絡結構
條件1:夾持器模型與場景點云Cscene和待抓取物體點云Ctag發生碰撞,即B(h)∩(Cscene,Ctag)=?;
條件2:夾持器閉合區域Ch需要存在待抓取物體的點云的點,即C(hz,x*,p)∩C≠?。

算法1輸入:目標點云C,采樣點局部坐標系F(p),夾持器深度θl 輸出:候選抓取位姿集H,夾持器閉合區域點云c1:H=?,hz,x,p=B(h(z,x,F(p)))2:for0:Δθ:23π do3:Search hz,x,p4:if B(hz,x,p)∩(Cscene,Ctag)=?5:x?=maxx∈R such that B(hz,x?,p)∩(Cscene,Ctag)=?6:If C(hz,x?,p)∩C≠?7:H=H∪h(z,x?,F(p))8:end if9:end if10:end for
通過位姿搜索擴充了很多的候選抓取位姿,如果采用傳統分析方法對抓取位姿進行度量的話,導致計算復雜且實時性較差。因此,我們通過PointNet搭建抓取質量評估網絡,對候選位姿進行優選,輸出質量較高的多個位姿。
網絡的輸入為候選位姿對應的夾爪內部點云Ccls,經T-Net(3×3)網絡的點云空間變換實現數據對齊,通過兩層的MLP模型進行64維特征提取,接著經T-Net(64×64)網絡對提取出來的深層特征進行對齊,解決點云變換不變性的問題。然后利用三層感知機(64,128,1024)提取每個點的1024維特征,經過最大池化層變成1×1024的全局特征,這些全局特征輸入三層的全連接網絡,最后經L-SoftMax分類器輸出較高得分的抓取位姿。
將YCB數據集提供的真實點云模型作為待抓取物體,選擇YCB數據集中的47個物體模型生成350k個樣本,樣本內包含夾爪閉合區域內的點云Ccls和對應的抓取質量評分Gscore。本文通過力封閉指標和GWS指標得到數據集中的每個抓取位姿的抓取質量評分Gscore,以此來訓練抓取質量評估網絡。


圖10 機械手和相機之間的位姿關系

圖11 抓取檢測流程

圖12 仿真實驗平臺

針對機器人抓取中未知物體的單視角或完整點云,提出了一種抓取位姿檢測和抓取位姿評估兩步走的位姿檢測方法。然后基于ros在Gazebo場景中搭建了仿真實驗平臺,并進行抓取實驗,可以實現場景中任意目標的放置任務,驗證了提出的抓取位姿檢測方法的可行性。