SegICP:一種集成深度語義分割和位姿估計的框架
盡管機器人的相關技術近年快速發展,但機器人如何在復雜、真實的場景中實現快速、可靠地感知與任務相關的物體仍然是一項十分具有挑戰性的工作。為了提高機器人系統的感知速度和魯棒性,作者提出了 SegICP,這是一種用于對象識別和位姿估計的集成解決方案。SegICP 結合卷積神經網絡和多假設點云配準,以實現魯棒的像素級語義分割以及相關對象的準確實時 6 自由度姿態估計。該架構在沒有初始解的情況下實現了實時的1 cm 位置誤差和 小于5°的角度誤差。最后在根據運動捕捉生成的帶注釋的基準數據集上完成了SegICP的評估。本文主要貢獻如下:
1)提出一種高度并行化的綜合語義分割和多假設物體姿態估計方法,其單視圖操作精度為1cm。在70-270毫秒(4-14赫茲)的時間內,不需要任何先驗的位姿狀態。
2) 提出一種新的點云配準評價指標,對點云的配準質量進行評分,允許在許多潛在的假設上進行自主和準確的位姿初始化。
3) 提出一個高效的自動數據收集框架,用于通過使用運動捕捉系統獲取帶注釋的語義分割和位姿數據集。
圖1 給定RGB圖像(左)和深度幀,SegICP 方法以像素級別分割對象,并以1 cm位置誤差和小于5°的角度誤差(右)估計每個對象的6 DOF姿態。
1、目前存在的問題
為了在非結構化環境中實現魯棒、自主的操作,機器人必須能夠識別周圍環境中的相關物體和特征,并相應地規劃其運動和交互。
尤其是最近在 DARPA Robotics Challenge和Amazon Picking Challenge等自主操縱挑戰方面的努力取得了顯著成果,使系統能夠感知、推理和與周圍環境進行交互。然而,用于閉環操作任務的現有對象識別和姿態估計解決方案通常具有以下問題:
(1) 在具有部分遮擋的雜亂環境中不魯棒;
(2) 無法實時操作 (<1 Hz);
(3) 不夠準確;
(4) 在沒有較好初始條件的情況下無法獲得高精度。
作者針對這些問題提出了一種新的pipeline,它緊密集成了深度語義分割和基于模型的對象姿態估計,實現了實時姿態估計,中等位姿態誤差為 1 cm 且小于5°。所提的解決方案(SegICP)使用 RGB-D 傳感器在高度并行化的架構中提供場景中所有相關對象的各自位姿(見圖 1)的語義分割。所提方法建立在大量相關工作的基礎上,這些工作致力于機器人移動操作任務及其相關對象的感知。機器人系統必須能夠首先識別與任務相關的實體,并推斷它們的相對姿勢,以最終操縱它們并與之交互。因此,作者在相關工作部分討論了對象識別和姿態估計方面的相關文獻。
2、核心思想
圖2 在雜亂環境中運行的完整 SegICP pipeline。系統檢測物體并估計每個物體的 6-DOF 姿態。右上角的分割圖像中的彩色疊加像素對應于藍色漏斗(紅色)、油瓶(藍色)和發動機(紫色),該圖像由安裝在 PR2 機器人頂部的 Kinect1 檢測。左下角顯示了油瓶對象的選定多假設配準及其各自的對齊分數,該結果用來確定最佳對象姿態。
A總體描述:
在如圖 2 所示的SegICP架構中,RGB幀首先通過 CNN輸出帶有像素級語義對象標簽的圖像。然后使用帶有標記的圖像分割出相應的點云,并為每個檢測到的對象生成單獨的點云。然后使用ICP將每個對象的點云與其完整的點云數據庫模型進行配準,并估計目標對象相對于傳感器的姿態。
其中幾個關鍵環節如下:
B 基于神經網絡的語義分割:
與經典的分割問題相反,該框架特別關注如何在深度圖上生成適當的mask以便進行準確的位姿估計。為了解決這個問題,作者嘗試了多種CNN架構,這些架構均可以完成感興趣對象的語義分割。
通過在兩種不同的CNN架構:SegNet和DilatedNet上的實驗,作者發現 SegICP的最佳適用模型是SegNet,這是一個27層的全卷積神經網絡,具有3000萬個參數。該網絡使用交叉熵標準結合由圖像旋轉、裁剪、水平和垂直翻轉組成的數據增強,對裁剪和下采樣后圖像進行訓練。
C 多假設目標姿態估計:
分割結果用于從場景云中提取每個對象的3D點云。然后使用SegNet預測的每個分割對象的語義標簽,并從對象模型庫中檢索其相應的3D網格模型。網格模型被轉換為點云形式后進行下采樣并針對其各自的分割點云進行配準。
其中,點云配準分為獲取和跟蹤兩個階段。獲取階段的目標是找到每個對象的模型與其對應的場景點云之間的初始最佳對齊。這種對齊用于確定模型的可見側(模型裁剪),并初始化跟蹤階段,其目標是融合相機和機器人運動信息,即使在相機運動期間和遮擋情況下也能保持對物體的準確、實時姿態估計。SegICP使用點對點 ICP算法進行配準。本文的其中一個貢獻就是將模型與場景的對齊度量,用于確定配準和在獲取和跟蹤階段的切換質量。
獲取階段。獲取階段用來找到對象網格模型與當前點云的初始最佳對齊和裁剪。通過以各種方位角和仰角渲染可見對象的模型并裁剪模型以僅保留正面。同時,每個候選物體都在對象場景點云的中間位置進行初始化,以去除分割中的噪點并防止ICP陷入局部最優。
圖3 多假設配準排序示例:(a)中生成的藍色分割塊用于生成(b)中的突出顯示的待裁剪場景點云。(c-e)說明了各種候選模型物體(橙色)與裁剪場景點云(藍色)的配準,以及它們各自的對齊分數。
圖3顯示了分割模型的裁剪例子和它們各自的對齊分數。作者還指出了一些問題,如ICP 擬合得分(歐幾里得誤差得分)和IOU不能有效地區分好的配準和錯誤的配準。相比之下,作者提出的指標解決了高度對稱的物體(例如油瓶)上存在的這些直接缺點。如果任何候選分數高于一個閾值ε,SegICP就會切換到未來幀的跟蹤階段。
跟蹤階段。具有最高對齊分數的候選模型位姿和裁剪用于初始化跟蹤階段。為了使跟蹤過程對對象分割邊界上的缺陷具有魯棒性,通過刪除最新配準模型位姿的邊界框外的點來進一步修剪對象的場景點云。通過配準獲得的位姿用作卡爾曼濾波器中的測量更新,以跟蹤每個對象的6-DoF姿態和速度。通過融合來自機器人可用里程計的已知相機運動,濾波器能夠處理臨時對象遮擋和異常位姿估計。作者提出的對齊度量在擬合上進行評估,以測量當前姿態測量的不確定性并相應地告知卡爾曼濾波器。如果分數低于最小閾值,卡爾曼濾波器會在切換回獲取模式的同時根據里程計計算對象的姿態。
D 自動注釋訓練數據:
作者在由汽車實體(例如發動機、油瓶、漏斗等)組成的室內場景的7500張標記圖像上訓練了SegNet。在這些圖像中,大約三分之二是由人類手工標記(使用LabelMe),而剩下的三分之一是由3D InvestigatorTM動作捕捉(MoCap)系統和放置在相機和物體上的活動標記自動生成(如圖 4所示)。
圖4 動作捕捉系統:(a)使用NDI 3D Investigator 設置動作捕捉系統。作者在RGB-D相機和用于姿態測量的對象上安裝了圓形活動標記。PR2的Kinect1 (b)和 Kinect2 (c)上的標記示例。
考慮到圖像訓練涉及多個傳感器硬件(Microsoft Kinect1、Asus Xtion Pro Live、Microsoft Kinect2 和 Carnegie Robotics Multisense SL),每個硬件又具有不同的分辨率,因此獲得用于分割和位姿估計的大型數據集很困難。為此作者又提出了一個運動捕捉系統來自動注釋圖5中所示的圖像。
圖5 自動運動捕捉注釋:給定輸入的RGB 和深度圖像(頂行),自動以軸角格式標記系統的輸出分割和對象姿態(底行)。
3、實驗環節
作者在數據集上對 SegICP 進行基準測試,該數據集由通過 MoCap 系統獲得的1246個帶注釋的對象位姿組成。
A.語義分割結果:
為了探究分割方法對姿態估計的影響,作者探索了兩種語義分割架構:SegNet和DilatedNet。SegNet是一種計算效率高的自動編碼器-****,用于逐像素語義分割。自編碼器架構對于每像素分類至關重要,因為它可以從每一層的輸出重建輸入,學習如何在最終分類層之前重建輸入。DilatedNet利用擴張的卷積模塊來聚合多尺度上下文信息而不會損失準確性。兩種網絡架構都采用了VGG圖像分類的卷積層,SegNet使用 VGG 層作為其編碼器,而 DilatedNet 將后面的層轉換為擴張的卷積模塊。作者使用在ImageNet上預訓練的VGG-16模型在訓練期間初始化權重。最終用超過7500張帶注釋的圖像(平均epoch時間約為一個小時)的數據集訓練這兩個網絡,并獲得了表1中列出的性能指標。
表1 語義分割網絡的性能
兩種架構之間的一個關鍵區別在于,DilatedNet旨在通過合并擴張卷積模塊來提高召回率,而SegNet似乎可以實現更高精度的測量。兩種網絡的視覺差異如圖6所示,其中SegNet和DilatedNet的輸出顯示為同一場景。需要注意的是,分割的質量會影響點云標記,并對框架中用于對象姿態估計的點到姿態配準方法的性能產生直接影響。盡管如此,作者仍然考慮了一個問題,那就是:更高的分割IOU是否會導致更好的位姿估計?更高的精度?和更高的召回率?并給出相關討論。
圖6 SegNet 和 DilatedNet:給定來自PR2的Kinect1的相同RGB輸入圖像(左),分別輸出兩種網絡的結果(中、右);與DilatedNet相比,SegNet似乎產生更精確的分割。
B.位姿估計結果:
獲取和跟蹤階段。在作者的基準測試中,在獲取階段為每個對象使用了30個模型裁剪的集合,并發現在六核i7-6850K(30線程)上的總體平均運行時間為270毫秒。需要注意的是,這里的時間評估取決于目標物體的數量和機器的CPU。
基準測試。在圖7中,作者說明了在1246個對象姿態注釋的基準數據集上評估SegICP的結果。為了對分割標記對最終姿態估計的影響進行全面分類,作者使用帶注釋的分割和兩個分割網絡架構的輸出運行SegICP。結果表明,與DilatedNet (66%)相比,SegNet實現了更高的性能 (77%)。
同時,作者將誤差超過5厘米和軸角度超過15°的情況歸類為失敗。在成功的場景中,SegICP實現了1 cm的位置誤差和< 5°的角度誤差;這一準確度水平接近所有基準實例的80%。圖7顯示了給定分割的姿態估計誤差的分布。
有趣的是,SegICP的性能與傳感器技術和校準高度相關。當僅考慮466個Kinect1實例(具有更好RGB-D 校準的結構光傳感器)時,SegICP 分別使用來自注釋、SegNet 和 DilatedNet的標記分別實現了90%、73%和72%的成功度量。
圖7 SegICP 姿態估計:不同的神經網絡架構(例如 SegNet 和 DilatedNet)導致的不同分割標記之間的錯誤。
此外,與TOF傳感器(例如 Kinect2)相比,SegICP 在結構光傳感器(例如 Kinect1)上的運行性能似乎更高。作者發現,由于TOF引起的點云變形,具有高度幾何對稱性和具有反射表面的物體(例如油瓶)會導致ICP擬合不佳。圖8說明了這種特殊現象,其中油瓶表面存在較大變形,導致配準不準確。最后,由于該架構使用分割標記來裁剪點云,所以RGB和深度幀的傳感器校準對于準確的姿態估計至關重要。
圖8 點云變形:由于物體表面反射造成的配準錯誤
4、總結
本文提出了一種高度并行化的架構,用于語義分割和準確的位姿估計(1 cm 位置誤差和 <5°的角度誤差)。所提架構最直接的好處是不需要足夠接近解決方案的初始估計,并且本質上是可并行化的,允許實時同時處理多個對象(跟蹤和采集模式分別為70-270毫秒)。此外,作者詳細闡述了一種運動捕捉方法來收集潛在的大量帶注釋的分割和位姿數據集,使該架構能夠快速擴展其他的領域。
同時作者表示,目前正在努力改進感知架構,擴展框架以包含更大的對象集,并將其與非結構化環境中復雜交互的集成任務和運動規劃聯系起來。
備注:作者也是我們「3D視覺從入門到精通」知識特邀嘉賓:一個超干貨的3D視覺學習社區
本文僅做學術分享,如有侵權,請聯系刪文。
*博客內容為網友個人發布,僅代表博主個人觀點,如有侵權請聯系工作人員刪除。