李會軍,瞿孝昌,葉 賓
(中國礦業(yè)大學(xué)信息與控制工程學(xué)院,江蘇徐州 221116)
在真實(shí)的非結(jié)構(gòu)化環(huán)境中,如何確定形態(tài)各異的未知物體的六自由度(6–DOF)抓取位姿是機(jī)器人抓取動作的關(guān)鍵,其受到夾爪模型、抓取目標(biāo)信息、環(huán)境感知和抓取規(guī)劃等多方面因素的制約.現(xiàn)有抓取檢測方法根據(jù)對數(shù)據(jù)操作的不同通常分為兩大類:基于模型驅(qū)動的方法和基于數(shù)據(jù)驅(qū)動的方法[1].這些方法的最終目標(biāo)都是在給定一個對象(或一堆不同對象)以及基本的環(huán)境約束條件下,尋找一個抓取位姿,使其抓取性能最大化[2].經(jīng)典的模型驅(qū)動抓取檢測方法十分依賴于已知的對象模型、接觸信息和物理屬性等先驗(yàn)知識[1].文獻(xiàn)[3]首次提出了力封閉(force closure)約束條件的概念.在此基礎(chǔ)上,發(fā)展出力平衡(force balance)[4]等其他判斷抓取穩(wěn)定性的指標(biāo).這些方法的目標(biāo)大都是找到一組穩(wěn)定的力封閉來抓住已知的對象[5],由于給出了對象的模型,抓取方法主要是基于目標(biāo)檢測和物體的位姿估計(jì)[6–7].但這種方法在確定抓取位姿時計(jì)算量較大,很難應(yīng)用到實(shí)際生產(chǎn)中[8].針對上述問題,文獻(xiàn)[9–12]采用了基于單階段(one stage)思想的數(shù)據(jù)驅(qū)動抓取檢測方法,對未知物體的視覺數(shù)據(jù)執(zhí)行單階段回歸操作,擬合出抓取矩形框的參數(shù).但是相比于處理回歸問題,CNN在處理分類問題方面性能更優(yōu)[13],因此文獻(xiàn)[14–18]采用了基于雙階段(two stage)思想的抓取檢測方法,即遵循“先采樣,后評估”的原則,對采樣到的抓取候選利用CNN等方法分類評估.這些方法主要以2D的RGB圖像或2.5D的深度圖作為輸入,幾乎沒有模型考慮3D幾何信息[19],因此這些方法只能將抓取約束為與圖像平面平行的3–DOF定向矩形框,限制了抓取的多樣性.
最近出現(xiàn)的一些方法開始考慮利用3D數(shù)據(jù)(如,體素、點(diǎn)云等)實(shí)現(xiàn)完整的6–DOF抓取操作[20–21].文獻(xiàn)[1]提出了一種體素卷積神經(jīng)網(wǎng)絡(luò)(3D CNN)用于對24種預(yù)定義的6–DOF抓取位姿進(jìn)行分類評估,但耗時較長.文獻(xiàn)[20]提出了一種基于點(diǎn)云的抓取檢測方法(grasp pose detection in point clouds,GPD),GPD根據(jù)點(diǎn)云局部表面法線和主曲率方向構(gòu)建了一個Darboux框架,完成更加密集的采樣,并通過將點(diǎn)云投影到2D平面上再輸入到CNN中評估抓取性能,當(dāng)輸入點(diǎn)云總體稀疏時,GPD會出現(xiàn)嚴(yán)重的過擬合和性能下降現(xiàn)象[21].此外這種采樣方式依賴表面法線,由于當(dāng)采樣點(diǎn)位于點(diǎn)云的邊緣時,估計(jì)表面法線具有一定的難度,因此GPD無法沿著諸如杯子、盤子或碗的邊緣之類的薄壁結(jié)構(gòu)生成穩(wěn)定的抓取候選[22].
為了解決直接從點(diǎn)云中獲取未知物體抓取位姿的難題,本文提出了一種基于點(diǎn)云特征的6–DOF抓取位姿檢測方法.算法流程如圖1所示,主要包括抓取位姿采樣、優(yōu)化和評估3個模塊.采樣模塊根據(jù)未知物體點(diǎn)云的基本幾何信息(例如,表面法線、曲率和主軸等)生成豐富的抓取候選.優(yōu)化模塊利用力平衡等方法沿3個方向優(yōu)化這些候選,實(shí)現(xiàn)高質(zhì)量采樣.評估模塊采用可直接處理點(diǎn)云的ConvPoint模型評估樣本,得分最高的抓取將被執(zhí)行.仿真和實(shí)際抓取實(shí)驗(yàn)表明,該方法抓取成功率高、魯棒性強(qiáng),并且可以有效地拓展到真實(shí)環(huán)境中其他形狀的未知物體.
圖1 抓取檢測流程Fig.1 Process of grasp detection
本文的主要貢獻(xiàn)包括:
1) 抓取位姿采樣相比于先前的方法[6,22],不需要對物體精確分割或識別,并且可以沿薄壁結(jié)構(gòu)的邊緣生成GPD[20]無法發(fā)現(xiàn)的力封閉抓取候選.此外針對GPD方法中樣本冗余、計(jì)算量大等缺點(diǎn),采用力平衡等優(yōu)化方法代替局部網(wǎng)格搜索,實(shí)現(xiàn)高質(zhì)量采樣.
2) 抓取位姿評估網(wǎng)絡(luò)是以3D點(diǎn)云作為輸入,相比于以往的方法,不需要將點(diǎn)云投影到2D平面[20]或者轉(zhuǎn)換成3D體素[1],可以充分利用物體的3D幾何信息.
給定一個任意位姿的未知對象(或一堆不同對象)和基本的環(huán)境約束條件下,抓取位姿采樣算法的目的是找到一組抓取位姿候選集合G,使其均勻地分布在物體表面的可抓住部分.本文根據(jù)不同情況共使用了兩種不同的采樣方式:基于法線的采樣方法和基于曲率的采樣方法.
為了方便分析,將所有的空間量都設(shè)定在相機(jī)坐標(biāo)系Fc中.這里令由相機(jī)感知到關(guān)于未知物體的一組原始點(diǎn)云數(shù)據(jù)為C∈R3×n,其中n為C中點(diǎn)的個數(shù).令機(jī)械臂末端夾爪坐標(biāo)系為Fg,則6–DOF抓取位姿,即夾爪在Fc下的位姿可以表示為g=(d,r)∈R6,其中d=(x,y,z)∈R3和r=(rx,ry,rz)∈R3分別代表夾爪坐標(biāo)系Fg相對于相機(jī)坐標(biāo)系Fc發(fā)生的3–DOF位移和3–DOF旋轉(zhuǎn),x,y和z為沿對應(yīng)軸位移距離,rx,ry和rz為繞對應(yīng)軸旋轉(zhuǎn)的歐拉角.抓取位姿候選集合G={g0,g1,g2,···,go?1},其中o為樣本個數(shù).抓取位姿g對應(yīng)的抓取性能指標(biāo)為Q(g,C).
本文僅考慮平行兩指夾爪,為了方便分析夾爪與物體之間接觸區(qū)域的復(fù)雜幾何結(jié)構(gòu)特征,需要簡化模型.如圖2所示,以夾爪底部中心點(diǎn)(即抓取點(diǎn))為坐標(biāo)原點(diǎn)O,夾爪與物體的接近方向?yàn)閄軸正方向,夾指張開方向?yàn)閅軸正方向,Z軸正方向可通過右手坐標(biāo)系法則確定,從而建立夾爪坐標(biāo)系Fg來表示6–DOF抓取,則抓取位姿檢測問題就轉(zhuǎn)換為Fg的建立問題.其中夾爪閉合區(qū)域(夾爪的兩夾指從完全張開位置移到完全閉合位置所掃過的區(qū)域)的長寬高分別為l,w和h.
圖2 6–DOF抓取表示Fig.2 6–DOF grasp representation
基于法線的抓取位姿采樣方法步驟如下:
步驟1獲取點(diǎn)云表面采樣點(diǎn).首先通過點(diǎn)云預(yù)處理的方法去除C中的背景和噪聲,令預(yù)處理之后的點(diǎn)云為C′ ∈R3×n′,其中n′為C′中點(diǎn)的個數(shù).之后隨機(jī)均勻采樣m個點(diǎn).m與生成的抓取位姿候選數(shù)量成正比,選取較大的m可以提高樣本數(shù)量,但也會增加計(jì)算量,本文選取m=0.1n′.
步驟2計(jì)算每個采樣點(diǎn)對應(yīng)的法線和主軸向量.然后利用基于八叉樹空間劃分的半徑內(nèi)近鄰搜索算法(neighbors within radius search)找到每個采樣點(diǎn)的近鄰點(diǎn),從而獲取每個采樣點(diǎn)對應(yīng)的局部鄰域點(diǎn)云.對于每個局部鄰域點(diǎn)云,使用主元分析(principal component analysis,PCA)來提取其幾何信息.構(gòu)建點(diǎn)云協(xié)方差矩陣Mc(p)如下:
其中:Br(p)代表采樣點(diǎn)p對應(yīng)的局部鄰域點(diǎn)云,b為其中一點(diǎn),k和pc分別為局部鄰域點(diǎn)云Br(p)的點(diǎn)的個數(shù)和3D中心坐標(biāo).然后計(jì)算矩陣Mc(p)最小、最大特征值對應(yīng)的特征向量n和s.則向量n和s分別為點(diǎn)云Br(p)在點(diǎn)p處的法線和主軸向量的平滑估計(jì).令相機(jī)視角點(diǎn)的空間坐標(biāo)為pv,通過轉(zhuǎn)換n方向滿足條件
使其統(tǒng)一指向相機(jī)視角點(diǎn)的反方向.
步驟3確定夾爪坐標(biāo)系X軸和原點(diǎn)O.夾爪在實(shí)現(xiàn)抓取的過程中需要避免與物體發(fā)生碰撞,因此需要考慮夾爪的模型約束.如圖2所示,以點(diǎn)p處表面法線向量n的方向?yàn)閄軸正方向,并設(shè)置距離點(diǎn)p的X軸反方向d處為坐標(biāo)原點(diǎn)O.其中d ∈(0,l),即偏移距離不超過夾爪的長,這里默認(rèn)d=0.25l,第3節(jié)執(zhí)行抓取位姿優(yōu)化時會根據(jù)不同情況修改d值.
步驟4確定夾爪坐標(biāo)系Y軸和Z軸.由于與物體主軸正交的抓取比隨機(jī)采樣的抓取更穩(wěn)定[25],因此根據(jù)點(diǎn)p處的主軸向量s來確定Y軸.主軸向量s與X軸向量n之間的外積為其公垂向量,并以該公垂向量方向?yàn)閅軸正方向,最后Z軸可以根據(jù)右手坐標(biāo)系法則確定.令ex,ey和ez分別為X軸、Y軸和Z軸正方向上的單位向量,則
從而構(gòu)建采樣點(diǎn)p所對應(yīng)的第1類夾爪坐標(biāo)系Fg(p),并以此作為夾爪的初始位姿,如圖3(a)所示.
基于物體表面法線的抓取位姿采樣方法可以生成大量穩(wěn)定的抓取候選.但是當(dāng)采樣點(diǎn)位于點(diǎn)云的邊緣時,估計(jì)表面法線具有一定的難度,因此這種采樣方式無法沿著諸如杯子、盤子或碗的邊緣之類的薄壁結(jié)構(gòu)生成穩(wěn)定的抓取候選.本文提出的基于曲率的抓取采樣方法以最小曲率軸向量為夾爪的接近方向,且不依賴于法線信息,可以在點(diǎn)云邊緣處生成穩(wěn)定抓取候選.
基于曲率的抓取位姿采樣與基于法線的方法類似.首先對于每個局部鄰域點(diǎn)云Br(p)構(gòu)建矩陣Mn(p)如下:
其中n(b)表示在點(diǎn)b處的表面法線向量,并根據(jù)式(2)使其統(tǒng)一指向規(guī)定的正方向.然后計(jì)算矩陣Mn(p)最大特征值對應(yīng)的特征向量v.則向量v為采樣點(diǎn)p處的較小主曲率軸的平滑估計(jì).最后與基于法線的采樣算法不同的是,該方法以最小曲率軸向量v的方向?yàn)閄軸正方向,此時夾爪夾指與抓取物體接觸面的擬合程度最高,夾指對物體施加的作用力能夠最大程度地均勻作用在物體上.坐標(biāo)原點(diǎn)O,Y軸和Z軸方向的確定與第2.1節(jié)的方法相同,從而構(gòu)建采樣點(diǎn)p所對應(yīng)的第2類夾爪坐標(biāo)系Fg(p),如圖3(b)所示.
圖3 抓取位姿采樣Fig.3 Grasp pose sampling
對于任意位姿的未知物體,雖然上述抓取位姿采樣算法生成了大量的抓取候選,但是由于在采樣過程中并沒有考慮到評估抓取性能的指標(biāo),因此每一個采樣點(diǎn)對應(yīng)的穩(wěn)定抓取候選只是良好的抓取,而非該點(diǎn)對應(yīng)的局部最優(yōu)抓取.此外,抓取候選中也包含了少數(shù)的不穩(wěn)定抓取,這些不穩(wěn)定抓取可能接近穩(wěn)定抓取[22].因此需要使用一種優(yōu)化方法優(yōu)化原始的抓取候選,從而提高抓取魯棒性,實(shí)現(xiàn)高質(zhì)量采樣.具體來說,在給定采樣點(diǎn)p對應(yīng)的抓取位姿g和抓取物體點(diǎn)云數(shù)據(jù)C的條件下,在點(diǎn)p鄰域內(nèi)尋找一個齊次變換矩陣T∈R4×4,使得Q(g?,C)>Q(g,C),其中g(shù)?=gT∈R6代表g經(jīng)過T變換之后的抓取位姿.
對于第2節(jié)獲取的每一個抓取位姿候選,本文使對應(yīng)的夾爪坐標(biāo)系Fg(p)按順序分別沿其X軸方向、Z軸方向和繞X軸方向優(yōu)化,根據(jù)不同的抓取性能指標(biāo)確定變換矩陣,將變換之后的抓取位姿作為原始候選的優(yōu)化結(jié)果.
力平衡是一種由力封閉[3]發(fā)展而來新的抓取檢測算法,在力封閉的基礎(chǔ)上,該方法根據(jù)夾爪與物體接觸面輪廓分析評估抓取的穩(wěn)定性[4].由于夾爪坐標(biāo)系Fg(p)的X軸方向點(diǎn)云因遮擋無法反映完整輪廓信息,因此選擇Fg(p)的Y OZ平面進(jìn)行力平衡分析,利用這種評估指標(biāo)沿Fg(p)的Z軸方向細(xì)化原始的抓取位姿,優(yōu)化步驟如下:
步驟1生成Fg(p)鄰域內(nèi)新的抓取候選.首先以第2節(jié)中獲取的Fg(p)作為初始搜索位置,并沿著其Z軸方向以?z的步長位移,生成新的抓取候選,如圖4所示.令Tz∈R4×4為對應(yīng)的齊次變換矩陣,則新的夾爪坐標(biāo)系可表示為Fg(p)Tz,且
圖4 鄰域內(nèi)新的抓取候選生成Fig.4 Generation of new grasps in the neighborhood
其中n ∈{0,±1,±2,···}.令在Fg(p)領(lǐng)域內(nèi)生成抓取候選集為G(p).這里?z反映了沿Z軸方向優(yōu)化精度,n反映了生成新的抓取候選數(shù)量,本文選取?z=h,n={0,±1,±2}.
步驟2提取投影點(diǎn)云的輪廓.然后將相機(jī)坐標(biāo)系中的點(diǎn)云轉(zhuǎn)換到獲取的坐標(biāo)系Fg(p)Tz中.利用直通率波的方法保留夾爪閉合區(qū)域內(nèi)點(diǎn)云Ce,如圖4中的品紅色的點(diǎn)云所示.將點(diǎn)云Ce投影到Fg(p)Tz的Y OZ平面上,獲取投影點(diǎn)云.采用基于凹包(concave hull)的邊緣檢測算法提取投影點(diǎn)云的輪廓,圖5中藍(lán)色點(diǎn)為提取結(jié)果.
步驟3擬合輪廓直線.使用最小二乘法對投影點(diǎn)云輪廓左右兩邊的抓取接觸邊界分別進(jìn)行直線擬合,獲取的擬合直線用z=Ky+B表示,K和B值可以通過下式求出:x
其中n為需要擬合的點(diǎn)的個數(shù),圖5中紅色直線為擬合結(jié)果.根據(jù)K值求出兩條擬合直線之間的夾角δ.
圖5 Y OZ平面力平衡計(jì)算Fig.5 Computation of the force balance on Y OZ plane
步驟4計(jì)算Y OZ平面上的力平衡.在力平衡方法中[4],抓取接觸邊界擬合直線之間的夾角越小,即δ越小,抓取穩(wěn)定性越高,最優(yōu)的抓取應(yīng)該在兩條平行的直線上,因此選擇δ最小的抓取作為原始抓取位姿的優(yōu)化結(jié)果.具體地,根據(jù)式(6)求出領(lǐng)域候選集G(p)中每個抓取對應(yīng)的δ,并求出其中最小值δ?=min{δ0,δ1,δ2,···,δo?1},其中o為G(p)中抓取候選的個數(shù).令為δ?對應(yīng)的變換矩陣,則Fg(p)沿其Z軸方向的優(yōu)化結(jié)果為.
如圖6(a)展示了鉗子抓取候選使用該優(yōu)化方法前后的效果對比.優(yōu)化之前Fg(p)位于鉗子的尖端,此時δ約為30°,當(dāng)夾爪閉合時物體很容易脫落.優(yōu)化之后Fg(p)沿其Z軸位移,當(dāng)移動到6(a)中右圖所示的位置時,δ約為0°,抓取穩(wěn)定性更高.
繞夾爪坐標(biāo)系Fg(p)的X軸優(yōu)化步驟如下:
步驟1抓取接觸建模.本文使用的執(zhí)器為平行二指夾爪,根據(jù)對心抓取(antipodal grasp)[3]約束條件可知,當(dāng)夾爪與物體的兩接觸點(diǎn)連線(即夾指作用力所在直線)位于對應(yīng)的摩擦圓錐(friction cone)內(nèi)部時,滿足力封閉約束條件,夾爪可以穩(wěn)定抓取物體.如圖5所示為接觸點(diǎn)之間的簡化力封閉,其中A1和A2分別為夾指與物體表面的接觸點(diǎn),a1和a2分別為對應(yīng)的摩擦圓錐.但是滿足對心抓取條件的抓取方式有多種,每個抓取的魯棒性并不相同.在實(shí)際應(yīng)用中由于機(jī)械臂定位和傳感器檢測的誤差,導(dǎo)致魯棒性較小的抓取候選可能會轉(zhuǎn)化為不穩(wěn)定抓取,例如圖5直線A1A2雖然在摩擦圓錐內(nèi),但與摩擦圓錐a1中心軸(即接觸點(diǎn)的表面法線)夾角較大,當(dāng)外界存在一定的干擾時,抓取極有可能會失敗.
步驟2構(gòu)建目標(biāo)函數(shù).為了提高抓取候選的魯棒性,通過最小化夾指作用力與法線夾角絕對值之和的方的方法繞Fg(p)的X軸方向來對原始的抓取候選進(jìn)行優(yōu)化,從而使每個夾指作用力盡可能沿其對應(yīng)的法線方向.構(gòu)建目標(biāo)函數(shù)如下:
其中:α為將原始夾爪坐標(biāo)系Fg(p)按照右手法則繞X其軸旋轉(zhuǎn)的角度,M為接觸點(diǎn)個數(shù),θ(α)為夾指作用力與表面法線的夾角,且θ ∈(?90°,90°].根據(jù)幾何分析可知,θ(α)也等于第3.1節(jié)獲取的抓取接觸邊界擬合直線與夾爪坐標(biāo)系Z軸的夾角.
步驟3計(jì)算變換矩陣.令Tα ∈R4×4為抓取候選繞Fg(p)的X軸方向優(yōu)化的齊次變換矩陣,則
如圖6(b)中左右兩部分分別為噴霧瓶抓取候選優(yōu)化前后的效果對比.優(yōu)化之前每個θ(α)大小約為15°,當(dāng)存在定位或檢測誤差時,該抓取可能會轉(zhuǎn)化為不穩(wěn)定抓取.經(jīng)過優(yōu)化之后Fg(p)繞其X軸方向旋轉(zhuǎn),當(dāng)外界存在干擾時,作用力很難偏移到摩擦圓錐外,抓取魯棒性更高.
此外對于碰撞(包括夾爪指尖與桌面背景的碰撞),將Fg(p)沿其X軸的反方向位移(即增大d),直到碰撞消失.如果在夾爪閉合區(qū)域中點(diǎn)的個數(shù)為0,或者運(yùn)動距離超過設(shè)定的閾值(本文根據(jù)初始的d=0.25l設(shè)定閾值為0.75l),則中止此過程,如圖6(c)中左右兩部分分別為多個紙盒抓取候選優(yōu)化前后的效果對比.優(yōu)化之前由于設(shè)定的偏移d較小,導(dǎo)致了抓取候選與另一個紙盒發(fā)生碰撞.優(yōu)化之后該碰撞消失.
圖6 抓取位姿優(yōu)化Fig.6 Grasp pose optimization
對每一個抓取候選使用上述的抓取優(yōu)化方法,則經(jīng)過優(yōu)化之后的抓取候選集合可以表示為
為了獲取抓取候選集G?中最優(yōu)的抓取位姿,需要一個端對端的抓取性能評估網(wǎng)絡(luò),使其可以在給定抓取位姿g和抓取物體點(diǎn)云數(shù)據(jù)C的條件下根據(jù)一個性能指標(biāo)Qε(g,C)∈{0,1}評估抓取性能,其中ε為該評估網(wǎng)絡(luò)的參數(shù),0和1代表抓取標(biāo)簽.由于機(jī)器人需要與3D空間中的物體進(jìn)行交互,因此精確和精細(xì)的3D視覺分析對于成功抓取至關(guān)重要.受CNN在各種3D計(jì)算機(jī)視覺任務(wù)中成功應(yīng)用的啟發(fā),采用了可以直接處理3D點(diǎn)云的卷積神經(jīng)網(wǎng)絡(luò)ConvPoint[23]來評估抓取候選.最后從模型庫YCB[24]中生成大規(guī)模抓取數(shù)據(jù)集來訓(xùn)練該評估網(wǎng)絡(luò).YCB所有對象模型都是由現(xiàn)實(shí)世界中的物體經(jīng)過相機(jī)掃描生成的.通過使用現(xiàn)實(shí)的對象模型,表明該抓取檢測方法可以拓展到實(shí)際抓取中.
為了生成抓取數(shù)據(jù)集,需要執(zhí)行采樣和標(biāo)注兩個步驟.從模型庫YCB中選擇不同類別共180個對象,包括盒子、圓柱體、碗、和杯子等,并生成不同單視角下的觀測點(diǎn)云.根據(jù)第2節(jié)與第3節(jié)的方法從觀測點(diǎn)云中采樣以獲取抓取樣本.然后在實(shí)際的機(jī)器人抓取實(shí)驗(yàn)中驗(yàn)證抓取的可行性來標(biāo)注樣本,機(jī)器人根據(jù)抓取樣本對物體執(zhí)行抓取操作,并根據(jù)抓取是否成功來為樣本分配標(biāo)簽.將抓取性能指標(biāo)定義為
其中:γ(單位:m)為機(jī)器人在1 min之內(nèi)將物體抓起的最大高度,t(單位:s)為抓取之后執(zhí)行預(yù)先設(shè)置的夾爪搖擺動作,物體未從夾爪中脫落所持續(xù)的時間.
與RGB圖像相反,3D點(diǎn)云是無序且沒有結(jié)構(gòu)的數(shù)據(jù).因此大多數(shù)為圖像開發(fā)的機(jī)器學(xué)習(xí)方法無法直接移植到點(diǎn)云上.ConvPoint通過將連續(xù)卷積核替代離散卷積核,用于直接處理點(diǎn)云.該卷積運(yùn)算與離散卷積類似,但與其他點(diǎn)云CNN只輸入點(diǎn)云空間域值不同的是,該模型綜合考慮了空間域和特征域值.如圖7所示為基于ConvPoint的抓取性能評估網(wǎng)絡(luò),Cin和Cout分別為輸入和輸出通道.最終的卷積運(yùn)算輸出u可以表示為
圖7 基于ConvPoint的抓取性能評估網(wǎng)絡(luò)結(jié)構(gòu)Fig.7 Architecture of grasp quality evaluation network based on ConvPoint
其中:β為偏移量,X={(pj,xj)}為點(diǎn)云輸入,K={(ci,wi)}為卷積核,pj和ci代表空間域值,xj和wi為特征域值,|X|和|K|分別為X和K的基數(shù),且|X|=|K|.φ為幾何權(quán)重函數(shù),將φ函數(shù)應(yīng)用于{pj ?ci},即空間點(diǎn)與卷積核元素之間相對位置的集合,來滿足點(diǎn)云的變換不變性,并利用一個簡單的多層感知機(jī)(multilayer perceptron,MLP)學(xué)習(xí)獲取權(quán)重函數(shù)φ.最后采用求和函數(shù)作為對稱函數(shù)提取特征,以滿足點(diǎn)云的排列不變性.整個卷積層包括:輸入點(diǎn)云采樣,對每個采樣點(diǎn)使用k-d樹獲取其局部領(lǐng)域點(diǎn)云,并輸入到上述卷積操作提取點(diǎn)云特征.
為了將抓取位姿g和抓取物體點(diǎn)云數(shù)據(jù)C相關(guān)聯(lián),將夾爪封閉區(qū)域內(nèi)部的點(diǎn)云Ce作為評估網(wǎng)絡(luò)的輸入,從而將點(diǎn)云轉(zhuǎn)換到統(tǒng)一的夾爪坐標(biāo)系中,消除由不同相機(jī)引起的歧義[21].在輸入到網(wǎng)絡(luò)之前,還需要對Ce預(yù)處理,包括:舍棄其中點(diǎn)的數(shù)量少于50的樣本、上采樣/下采樣為750個點(diǎn)、歸一化和中心化.通過網(wǎng)絡(luò)的傳遞,點(diǎn)云Ce在經(jīng)過5層上述連續(xù)卷積操作之后,逐漸減少點(diǎn)云輸出點(diǎn)的數(shù)量,增加輸出通道數(shù),最后將提取的點(diǎn)云特征輸入到全連接層(fully connected layers,FC)中用于對抓取候選性能進(jìn)行分類評估.
使用第4.2節(jié)獲得的抓取數(shù)據(jù)集來訓(xùn)練抓取性能評估網(wǎng)絡(luò),每批訓(xùn)練數(shù)據(jù)都包含50%的成功抓取樣本與50%的失敗抓取樣本.為了擴(kuò)充數(shù)據(jù),向點(diǎn)云Ce添加隨機(jī)偏移,但仍將所有點(diǎn)保持在夾爪封閉區(qū)域內(nèi).使用修正線性單元(rectified linear unit,ReLU)作為神經(jīng)元的激活函數(shù),并在每個激活函數(shù)之前插入批歸一化層(batch normalization,BN)加速網(wǎng)絡(luò)的收斂,減小過擬合.利用2分類交叉熵?fù)p失函數(shù)L優(yōu)化整個評估網(wǎng)絡(luò)
其中:y為樣本的2進(jìn)制標(biāo)簽,表示抓取是否成功,q代表模型預(yù)測樣本屬于對應(yīng)標(biāo)簽的概率.
為評估提出的抓取位姿檢測算法的有效性,分別在仿真和機(jī)器人實(shí)際抓取實(shí)驗(yàn)中進(jìn)行測試.仿真實(shí)驗(yàn)中,從力封閉率和魯棒性[26]兩個指標(biāo)定量評估本文的抓取候選采樣方法,并通過消融實(shí)驗(yàn)探究抓取優(yōu)化算法的效果.實(shí)際抓取實(shí)驗(yàn)中,在兩種抓取條件下驗(yàn)證本文方法能否有效推廣到實(shí)際環(huán)境中任意位姿的未知物體.實(shí)驗(yàn)所用硬件配置如表1所示.
表1 硬件配置Table 1 Hardware configuration
利用力封閉率和魯棒性兩個指標(biāo)定量評估抓取采樣方法,其中力封閉率Rf=,n0與n1分別為原始樣本和力封閉抓取總數(shù).此外,在實(shí)際應(yīng)用中,機(jī)械臂定位和相機(jī)感知的不準(zhǔn)確可能會影響最終的抓取成功率,因此引入一個魯棒性得分來評估生成抓取候選的魯棒性.對于抓取候選集中每一個力封閉抓取,通過將3–DOF 隨機(jī)位移?d和3–DOF隨機(jī)旋轉(zhuǎn)?r應(yīng)用于該抓取模擬非結(jié)構(gòu)化環(huán)境中的不準(zhǔn)確,創(chuàng)建錯誤抓取樣本.考慮到夾爪的靜摩擦系數(shù)和抓取對象的平均尺 寸,本 文 選 取?d ∈[?8°,8°],?r ∈[?10 mm,10 mm],則魯棒性得分Rr=,其中n2與n3分別為添加隨機(jī)變換之后樣本和力封閉抓取總數(shù).
消融實(shí)驗(yàn)中,從YCB模型庫中選擇13個常見物體并在不同視角下生成共92個的觀測點(diǎn)云,其中也包括完整的模型點(diǎn)云.測試結(jié)果如圖8所示,可以看出,在使用抓取優(yōu)化技術(shù)之后,生成的抓取候選集相比于不使用樣本優(yōu)化,其力封閉率提高了13.14%,魯棒性得分提高了12.92%.這主要是由于在對抓取候選進(jìn)行優(yōu)化時,使每個夾指作用力方向與對應(yīng)的摩擦圓錐中心軸夾角盡可能小,當(dāng)外界存在干擾時,作用力很難偏移到圓錐外,這驗(yàn)證了提出的抓取優(yōu)化算法能夠有效提高抓取樣本的整體性能.與GPD方法相比,優(yōu)化之前本文的抓取候選集魯棒得分有所降低,這主要是由于GPD為了提高抓取候選的覆蓋率,對符合條件的樣本繞對應(yīng)Fg的X軸執(zhí)行局部網(wǎng)格搜索,一定程度上提高了魯棒性抓取所占比例,但計(jì)算量較大.本文使用第3節(jié)的優(yōu)化方法替代這種搜索,如圖8所示在使用抓取優(yōu)化之后其抓取候選集力封閉率提高了14.33%,魯棒性得分提高了10.44%,這表明本文生成的抓取樣本性能更高.用真實(shí)的機(jī)器人執(zhí)行這些抓取將會有更高的抓取性能,因?yàn)楦兄妥ト《ㄎ坏牟粶?zhǔn)確仍將導(dǎo)致成功的抓取.
圖8 抓取位姿采樣對比Fig.8 Comparison of grasp pose sampling
為了驗(yàn)證提出的抓取方法能否有效推廣到抓取非結(jié)構(gòu)化環(huán)境中的未知物體,綜合評估抓取方法的性能,在兩種抓取條件下進(jìn)行實(shí)驗(yàn):單物體抓取和多物體抓取.所有的實(shí)驗(yàn)都是使用一個桌面級機(jī)械臂7bot來完成的,該機(jī)械臂配有一個平行兩指夾爪.此外,由于使用的中科行智3D結(jié)構(gòu)光相機(jī)是單一且固定式的,因此實(shí)驗(yàn)輸入的點(diǎn)云為單視角點(diǎn)云,這對于抓取更具挑戰(zhàn)性.抓取對象中除了盒子、螺絲刀和噴霧瓶等結(jié)構(gòu)簡單且主軸明顯的物體外,還包括外形復(fù)雜且不規(guī)則的常用物品,例如鉗子、碗和馬克杯等,且訓(xùn)練集中不包含這些物體的實(shí)際點(diǎn)云信息,即為未知物體.整個抓取環(huán)境和抓取對象如圖9所示.
圖9 機(jī)器人實(shí)驗(yàn)配置Fig.9 Settings of robotic experiments
考慮到不同的實(shí)驗(yàn)環(huán)境可能會帶來不同的實(shí)驗(yàn)結(jié)果,分別在單物體和多物體抓取兩種不同的實(shí)驗(yàn)條件下對不同位姿的對象或?qū)ο蠹M(jìn)行抓取檢測.對于硬件配置,該實(shí)驗(yàn)適用于任意可以生成3D數(shù)據(jù)的深度傳感器(如Kinect)以及多自由度機(jī)械臂(如ABB/IRB-120),但不適用于除二指夾爪以外的執(zhí)行器.
單物體抓取:對于如圖9所示中的每個抓取對象,以任意位姿放置在機(jī)器人有效工作區(qū)域內(nèi),使相機(jī)能夠無障礙地觀察到物體.每個物體進(jìn)行10輪抓取測試,根據(jù)式(13)判斷抓取是否成功.該實(shí)驗(yàn)考慮最終的抓取成功率Rs=,即成功抓取數(shù)量n5占總抓取數(shù)量n4的百分比.此外,為了檢驗(yàn)本文方法的執(zhí)行效率,對于GPD和本文方法都能成功抓取的上述一組實(shí)驗(yàn),分別記錄其檢測算法運(yùn)行時間,并取平均值作為實(shí)驗(yàn)結(jié)果.這里的運(yùn)行時間指從抓取候選生成到分類獲取最優(yōu)抓取所用時間,不包括數(shù)據(jù)加載和預(yù)處理時間.如表2所示展示了兩種不同的方法對單個物體的抓取結(jié)果.從表中可以看出,在抓取成功率方面,相比于GPD,本文方法平均成功率更高,這種優(yōu)勢在馬克杯等外形復(fù)雜的物體上更加明顯,其中一個主要原因是本文的抓取采樣方法生成了更多類型的抓取候選.如圖10所示展示了兩種方法在真實(shí)環(huán)境中馬克杯上生成的抓取候選(兩種方法均勻采樣點(diǎn)的個數(shù)均為200),本文的方法在馬克杯邊緣處生成了GPD 無法發(fā)現(xiàn)的抓取樣本.在執(zhí)行效率方面,本文方法的檢測效率相比于GPD有了顯著的提升,約為0.72 s.這主要是由于GPD對符合條件的樣本被動地執(zhí)行一個局部二維網(wǎng)格搜索,雖然提高了抓取候選數(shù)量(幾千個),但計(jì)算量較大.本文以第3節(jié)優(yōu)化方法代替這種搜索生成少而優(yōu)的樣本(幾百個).機(jī)器人部分單物體抓取結(jié)果如圖11所示,其中左圖表示檢測到的最優(yōu)抓取位姿,右圖表示機(jī)器人實(shí)際執(zhí)行最優(yōu)抓取動作.
圖10 生成抓取可視化Fig.10 Visualization of generated grasps
圖11 機(jī)器人單目標(biāo)抓取Fig.11 CRobotic grasp for single object
表2 單物體抓取實(shí)驗(yàn)對比Table 2 Comparison of single object grasping experiments
多物體抓取:從如圖9所示的抓取物體中隨機(jī)選擇2–4個物體作為抓取對象集,并將這些物體以隨機(jī)位姿放到機(jī)器人工作區(qū)域內(nèi).共選擇4 組不同的抓取對象集,每組進(jìn)行5 次抓取實(shí)驗(yàn).為了檢驗(yàn)抓取方法對多物體的適用性,使用成功率和完成率作為評估指標(biāo),其中完成率Rc=,即機(jī)器人從對象集中成功移除物體數(shù)量n7占對象集物體總數(shù)量n6的比例.由于抓取對象集中物體的數(shù)量會影響最終的抓取時間,并且不同機(jī)器人執(zhí)行抓取動作效率也不相同,因此多物體抓取實(shí)驗(yàn)不考慮最終執(zhí)行時間.如表3所示展示了兩種不同的抓取方法對多物體的抓取結(jié)果,從表中可以看出本文的抓取方法與GPD相比,成功率提高了10.83%,完成率提高了18.75%,表明本文提出的抓取檢測方法對于抓取真實(shí)環(huán)境中的多物體具有更高的適用性.
本文針對非結(jié)構(gòu)化環(huán)境中任意位姿的未知物體,提出了一種基于點(diǎn)云特征的機(jī)器人6–DOF抓取位姿檢測方法.該方法首先根據(jù)點(diǎn)云的基本幾何信息生成抓取候選,并利用力平衡等方法優(yōu)化樣本,提高了候選的多樣性和魯棒性,實(shí)現(xiàn)了高質(zhì)量采樣.然后采用可直接處理點(diǎn)云的CNN評估抓取候選,相比于以往的方法,不需要將點(diǎn)云投影到2D平面或者轉(zhuǎn)換成3D體素,有效地避免了當(dāng)點(diǎn)云稀疏時CNN出現(xiàn)的過擬合和性能下降等問題.通過仿真和實(shí)際抓取實(shí)驗(yàn)表明,該方法抓取成功率高、魯棒性強(qiáng),對于真實(shí)環(huán)境中任意位姿的單物體和多物體均具有實(shí)用性.
相比于以往的抓取檢測方法,本文方法存在2個缺點(diǎn):首先該方法由于不需要執(zhí)行目標(biāo)檢測,因此可能會將多個物體視為單個對象進(jìn)行抓取檢測,這種現(xiàn)象對于堆疊物體和大口徑的執(zhí)行器來說更加常見.在未來的工作中可以利用目標(biāo)分割與推移等方法防止機(jī)器人同時抓取多個物體.其次該方法以3D點(diǎn)云作為輸入,數(shù)據(jù)量較大,還不能完全做到目標(biāo)的實(shí)時抓取,減少抓取候選生成時間以及點(diǎn)云CNN的輕量化是本文需要進(jìn)一步研究的工作.