Open Source Robotics

精選高品質的開源機器人專案、工具與軟體,推動機器人社群向前發展。

FlingBot: The Unreasonable Effectiveness of Dynamic Manipulation for Cloth Unfolding

作者: Huy Ha, Shuran Song · CoRL 2021

授權條款

  • 開放取用
  • 論文: CC BY 4.0

以下內容皆依據論文全文,依其 CC BY 4.0 授權條款使用;圖表已標示作者。

一句話摘要

一台雙臂機器人以自監督方式學習該在揉皺布料的哪裡抓取,以執行固定的抓取—拉伸—甩動動作,在覆蓋率與步數上勝過準靜態的取放(pick & place)。

為何重要

這篇論文顯示,單一個學習而得的高速基元就能在少數幾次動作內攤開布料、處理比可觸及範圍更大的布料,並從矩形轉移到 T 恤。真實系統以第二台 RGB-D 相機而非力感測器來偵測布料是否已拉直,訓練訊號則來自俯視相機的遮罩,讓硬體保持簡單。

問題

多數布料攤平系統採用單臂準靜態動作,例如取放(pick & place),在嚴重揉皺的布料上需要大量互動,也無法處理比手臂可觸及範圍更大的布料。以角、邊或皺褶為依據的啟發式方法,在這些關鍵點被遮擋、看不見,或在非方形布料上根本不存在時就會失敗。

提出的方法

FlingBot 固定一個雙臂運動基元(在兩點由上往下捏取,抬升到 0.30 m 並拉緊,以 1.4 m/s 向前甩出 0.70 m,往回拉 0.50 m,放下),只學習要抓在哪裡;抓取以一個中心像素、一個角度與一個寬度來參數化,讓手臂順序與抓取寬度的限制保持線性且彼此獨立。一個價值網路在 12 個旋轉與 8 個尺度下(空間動作圖),針對俯視影像逐像素預測覆蓋率增量;它在以 PyFleX 為基礎的自製模擬器中以自監督方式訓練,再於兩支真實的 UR5 手臂上微調。

關鍵見解

  • 把拉伸與甩動動作固定下來,學習就簡化成選擇兩個抓取點;另外學習甩動速度(FlingBot-S)並沒有帶來顯著改善。
  • 以中心、介於 [−90°, 90°] 的角度與寬度來參數化雙臂抓取,可讓左右手臂順序與手臂間距的限制變成線性且彼此獨立。
  • 透過空間動作圖運用平移、旋轉與尺度的等變性是關鍵:直接迴歸抓取參數(Fling-Reg)在一般矩形上只達到 +0.3% 的覆蓋率增量。
  • 策略經由反覆試誤,學會抓取看得見的角與邊,或藉由甩動讓它們露出來,而這正是早期啟發式方法以人工設計的策略。
  • 甩動擴大了實際可觸及的範圍,因此比手臂可觸及範圍更大的布料仍然可以攤開。

主要結果

  • 模擬,一般矩形(最終 / 增量覆蓋率):FlingBot 為 91.9% / +63.1%,相較於 Pick&Place 53.0 / +24.2、Pick&Drag 58.0 / +29.2 與 Stretch&Drag 77.2 / +48.4。
  • 在模擬中,對新的一般矩形布料,於 3 次動作內覆蓋率超過 80%。
  • 超出可觸及範圍的大矩形:最終覆蓋率 79.2%,增量覆蓋率 +52.0%,約為準靜態基準(+24.8%、+27.1%、+23.1%)的兩倍。
  • 訓練時未見過的 T 恤:模擬中最終覆蓋率 93.3% / 增量覆蓋率 +46.8%。
  • 真實的雙 UR5 系統,每種布料類型 10 個測試回合:一般矩形、大矩形與襯衫的最終覆蓋率分別為 81.9%、88.5% 與 89.2%,Pick&Place 則為 43.2%、38.4% 與 42.7%;微調讓一般布料的覆蓋率從 69.8% 提高到 81.9%。
  • 每個甩動基元的中位時間為 16.7 s,取放則為 8.8 s,兩者另有 2.5 s 與 2.9 s 的額外負擔。

限制

  • 更複雜、以目標為條件的布料任務(例如摺疊)仍有待未來研究,作者建議結合動態與準靜態動作以及布料姿態估測來處理。
  • 實驗使用全黑的工作區與無紋理的彩色布料,以便產生遮罩;任意紋理則需要額外的分割或背景相減。
  • 真實世界的結果是每種布料類型 10 個測試回合的平均,並且濾除了真實世界中的抓取失誤。
  • 一次甩動比一次取放耗時更久(中位數 16.7 s 對 8.8 s),儘管需要的動作較少。
  • 真實系統仰賴一塊 2 英吋的橡膠墊與橡膠夾爪指套來協助捏取,而訓練到收斂在一張 GTX 1080 Ti 上約需 6 天。

對領域的影響

榮獲 CoRL 2021 最佳系統論文獎,所列引用數為 229。作者透過專案頁面釋出程式碼、模擬環境、資料與實驗影片,其中包括一個以 PyFleX 為基礎、可載入任意布料網格的自製模擬器。

摘要

高速的動態動作(例如甩動或拋擲)在我們與可變形物體的日常互動中扮演關鍵角色,它們提升了我們的效率,並有效擴大我們實體上可觸及的範圍。然而,過去多數研究處理布料操作時只採用單臂準靜態動作,面對困難的初始布料組態需要大量互動,而且布料的最大尺寸受到機器人可觸及範圍的嚴格限制。在本研究中,我們以所提出的自監督學習框架 FlingBot,展示動態甩動動作在布料攤平上的有效性。我們的方法針對雙臂系統,從視覺觀測中學習如何使用抓取、拉伸與甩動基元,將一塊織物從任意初始組態攤開。最終系統在新的布料上於 3 次動作內達到超過 80% 的覆蓋率,能攤開比系統可觸及範圍更大的布料,而且儘管只用矩形布料訓練,仍能推廣到 T 恤。我們也在真實世界的雙臂機器人平台上微調 FlingBot,其布料覆蓋率的增幅達到準靜態基準的 4 倍以上。FlingBot 的簡潔,加上相對於準靜態基準的優越效能,證明了動態動作在可變形物體操作上的有效性。

連結

  • arXiv 2105.03655: https://arxiv.org/abs/2105.03655
  • DOI 10.48550/arXiv.2105.03655: https://doi.org/10.48550/arXiv.2105.03655
  • PDF: https://proceedings.mlr.press/v164/ha22a/ha22a.pdf
  • 程式碼: https://github.com/columbia-ai-robotics/flingbot
  • 專案頁面: https://flingbot.cs.columbia.edu/

本網站需要 JavaScript 才能正常運作。請啟用 JavaScript 以瀏覽我們的開源機器人專案。