論文導讀:DAGDiff——在擴散過程中直接引導雙臂抓取走向力穩定、不碰撞
Md Faizal Karim, Vignesh Vembar, Keshab Patra, Gaurav Singh, K Madhava Krishna · 2025原文連結
一句話讀懂這篇論文
人搬螢幕時,兩隻手會自然放在螢幕兩側相對的位置,讓力和力矩平衡。之前的雙臂抓取方法大多是「先選兩個區域、各自生成單臂抓取、再湊成一對」,選區域靠的是「挑最遠的兩塊」或「問視覺語言模型」,選錯了整對抓取就不穩。DAGDiff 直接把兩個抓取當成一個整體一起去噪,並在去噪過程中用兩個分類器的梯度推一把:一個把抓取對推向力平衡,一個把抓取推離物體表面避免穿模。結果模型自己學會找出適合雙臂抓取的區域組合。
論文資訊卡
- 標題:DAGDiff: Guiding Dual-Arm Grasp Diffusion to Stable and Collision-Free Grasps
- 作者:Md Faizal Karim、Vignesh Vembar、Keshab Patra(共同一作)、Gaurav Singh、K Madhava Krishna
- 機構:IIIT Hyderabad 機器人研究中心、Brown University
- 發表:ICRA 2026(arXiv 2509.21145)
- 專案頁:dag-diff.github.io/dagdiff(提供推論程式)
- 定位:同團隊 CGDF 的延伸。CGDF 只能在指定區域生成抓取,雙臂配對靠啟發式;DAGDiff 讓雙臂穩定性直接進入生成過程
問題背景
抓取生成領域大多聚焦在單臂:建立「物體 + 經物理模擬驗證的抓取」配對資料集,再用編碼器—解碼器做監督學習。近年擴散模型因為擅長建模多模態分佈,成為抓取生成的熱門框架,可以在整個物體上、或在指定部位上生成多樣的高品質抓取。
但這些方法延伸到雙臂有三個困難:
- 沒有雙臂穩定性的機制:單臂方法只保證每個抓取各自穩定,兩個合起來不一定平衡。窮舉所有配對太貴,簡單延伸單臂方法往往得到不穩的結果
- 沒有明確處理碰撞:生成的抓取經常穿進物體表面,物體越大、形狀越複雜越嚴重。提高點雲或隱空間的解析度可以改善,但運算量大增,而且仍不保證無碰撞
- 區域選擇很難:
- 「挑最遠兩個區域」這種啟發式,在那兩塊區域本身不適合抓時就會失敗
- 用視覺語言模型(VLM)判斷部位,受限於 VLM 的 3D 和物理理解能力不足
- 而且可抓的區域常常沒有語意名稱(一個水桶的「左下側邊緣」叫什麼?),沒有可靠的依據能預測
既有的雙臂方法:
| 方法 | 做法 | 限制 |
|---|---|---|
| DA2、DG16M | 在網格上密集取單臂抓取,對所有配對做雙臂力封閉檢查 | 需要完整網格、窮舉配對,無法用在真實感知 |
| CGDF | 部位引導擴散,在點雲最遠的兩個區域生成抓取再配對 | 仍是兩個單臂提案的組合,沒有強制聯合穩定 |
| UniDiffGrasp | 用 GPT-4V + VLPart 找兩個部位,再用 CGDF 生成 | 同上,且依賴語意分割 |
| DualAfford | 協作 affordance 學習,第二個夾爪以第一個為條件生成 | 需要物體類別專屬訓練,流程複雜 |
方法
問題定義
給定物體點雲 ,生成 對力封閉穩定且不碰撞的平行夾爪抓取:
一對抓取可不可行由兩件事共同決定:每個抓取是否與物體表面穩定、不碰撞地接觸;以及兩個抓取合起來是否滿足雙臂力封閉條件。
雙臂 SE(3) 擴散
沿用 SE3Diff 的公式,延伸到兩個姿態。定義雙臂的對數與指數映射:
是垂直串接。這樣擴散就在 中進行。
能量模型:學一個純量能量地景 ,去噪向量場是能量的負梯度:
這跟分數式擴散等價,但能量值可以直接拿來排序抓取候選:能量越低,越像是真的貼在物體上的抓取,而不是飄在空中。
前向擴散:
逆向擴散(Langevin 式更新):
損失:預測向量場與正規化雜訊之間的 L1:
分類器引導:為什麼需要
單純在雙臂設定下訓練擴散模型泛化很差,因為沒有任何明確的約束要求生成的抓取對是穩定的。作者採用分類器引導擴散:在每一步逆擴散加入分類器對數概似的梯度,把生成推向具有特定性質的樣本。
兩個分類器:
- 力封閉分類器 :預測抓取對滿足力封閉的機率
- 碰撞分類器 :預測抓取對與物體碰撞的機率
兩者都用二元交叉熵訓練:
表示這對抓取是否力封閉; 分別標示兩個抓取各自是否碰撞。總訓練目標:
推論時把分類器梯度加到原本的分數上:
是一個預設門檻,碰撞引導只在去噪後段才開啟——前期抓取還在空中亂飄,沒必要做碰撞修正。實作上總共 步,最後 50 步做碰撞修正,因為到那時大部分抓取都已收斂到可行區域,只剩一小部分稍微穿進物體表面。
模型架構
特徵編碼(沿用 CGDF):
- VN-PointNet 抽取對 SO(3) 等變的逐點特徵
- 多平面投影 + UNet 骨幹,得到三個 2D 特徵平面
- 用一組固定查詢點雲 ,經雙臂抓取姿態轉換得到 ,代表抓取在物體上的局部區域
- 在特徵平面上雙線性內插取出 的特徵,彙整後送進以擴散步 為條件的特徵編碼器 ,同時輸出特徵向量和查詢點的 SDF(作為幾何監督)
三個輸出頭:
| 輸出頭 | 輸出 | 角色 |
|---|---|---|
| 能量頭 | 純量能量 | 擴散骨幹。訓練時教模型把雜訊樣本推向低能量;推論時提供基本的生成動態 |
| 力封閉頭 | 抓取對力封閉的機率 | 跟能量頭一起訓練,讓生成過程直接跟物理穩定性的監督綁在一起。推論時梯度把生成推向雙臂穩定區域 |
| 碰撞頭 | 任一夾爪與物體點雲相交的機率 | 在編碼器、能量頭、力封閉頭收斂後才訓練,專門偵測細微碰撞而不干擾生成目標。推論後段用梯度把抓取推離碰撞 |
為什麼碰撞修正不直接用模型預測的 SDF?因為可微分的碰撞偵測本身不簡單,SDF 梯度也不保證能有效修正抓取。
三個頭分工合作:能量頭負責生成多樣且物理合理的抓取,力封閉頭負責聯合穩定,碰撞頭負責幾何有效性。這讓 DAGDiff 不再把雙臂抓取當成兩個獨立單臂提案的組合。
實驗設定
- 資料集:DG16M,4,143 個物體,每個物體約 2,000 個經改良力封閉評估驗證的正負雙臂抓取。隨機切出 400 個物體做測試,其餘訓練。另外自行取樣抓取姿態並檢查碰撞,建立碰撞/非碰撞資料,只用來訓練碰撞頭
- 每個物體網格均勻取 1000 個點當輸入點雲;每次隨機初始化一批雙臂抓取,跑 250 步去噪
比較方法:
- 最遠區域法:CGDF(在點雲最遠的兩區域生成抓取再配對)、VCGS(變分式約束抓取生成,同樣設定)
- VLM 區域法:UniDiffGrasp(GPT-4V + VLPart 選部位,再用 CGDF 生成);作者另外改用 RoboBrain 2.0 7B(具身推理模型)預測邊界框或關鍵點當區域,稱為 RoboBrainGrasp-BB 和 RoboBrainGrasp-KP
- Affordance 法:DualAfford。因為它需要複雜的類別專屬訓練,沒有在本文資料集上重訓,而是反過來讓 DAGDiff 零樣本測 DualAfford 的抓取任務物體
評估指標:
- FCE(力封閉評估):依 DG16M 的公式,檢查施加的接觸力在摩擦和夾爪力限制下,能否抵抗任意外部力旋量。這是理論上的穩定性保證,也是主要指標
- GSR(抓取成功率):Isaac Gym 中把自由浮動的夾爪放到預測位置、閉合、開重力,物體被抬到指定高度且穩定就算成功
- GCR(碰撞率):最終姿態與物體幾何相交的比例,越低越好
實驗結果
| 方法 | FCE (%) ↑ | GSR (%) ↑ | GCR (%) ↓ |
|---|---|---|---|
| DAGDiff | 60.14 | 72.50 | 15.10 |
| CGDF | 35.14 | 56.25 | 30.55 |
| VCGS | 16.85 | 23.36 | 74.73 |
| UniDiffGrasp | 10.10 | 31.68 | 59.90 |
| RoboBrainGrasp-KP | 9.80 | 27.85 | 66.30 |
| RoboBrainGrasp-BB | 7.12 | 27.81 | 70.26 |
| DAGDiff(DualAfford 物體,零樣本) | 56.45 | 68.80 | 18.59 |
| DualAfford(論文數據) | – | 54.33 | – |
- 最遠區域法(CGDF、VCGS)在 FCE 和 GSR 上表現差,因為它們把區域選擇跟穩定性脫鉤。VCGS 又只用全域形狀表示,所以碰撞率高達 74.73%
- VLM 區域法全部指標都差:語意預測的區域常常太粗或放錯位置,3D 與物理推理能力有限,抓取落在不適合的地方
- DualAfford 是每個類別各自訓練的模型,DAGDiff 用單一模型零樣本測試,GSR 仍比它高
- 整體來說,DAGDiff 的穩定性和成功率約為其他方法的兩倍,碰撞率降低一半以上
定性比較中可以看到各方法的典型失敗:
- CGDF 和 VCGS 的最遠區域啟發式常選到物理上不相容的區域,例如水桶上有一個夾爪被迫放到抓不穩的底部角落;就算選到可抓區域(椅子、凳子),兩手的配置也需要過大或不平衡的接觸力
- RoboBrain 方法預測的邊界框太粗、關鍵點常落在空中(例如凳子內部)
- UniDiffGrasp 在部位名稱模糊時(例如水桶)會退化成隨便切兩半,生成不穩的抓取
- DAGDiff 不靠啟發式或語意標籤,直接根據物理約束找出穩定、不碰撞的雙臂抓取
消融實驗
| 變體 | FCE (%) | GSR (%) | GCR (%) |
|---|---|---|---|
| DAGDiff 完整版 | 60.14 | 72.50 | 15.10 |
| 拿掉力封閉頭 | 24.94 | 30.06 | 16.85 |
| 拿掉碰撞頭 | 50.01 | 55.67 | 23.50 |
| 力封閉頭事後訓練 | 32.37 | 46.42 | 18.36 |
- 拿掉力封閉頭:只靠能量頭的去噪目標,FCE 和 GSR 大幅下降。能量頭本身無法可靠地捕捉雙臂穩定性;力封閉頭因為明確訓練來區分穩定與不穩定的抓取對,它的梯度才能提供精確有意義的引導
- 拿掉碰撞頭:碰撞率從 15.10% 升到 23.50%,抓取跟物體表面的接觸不正確,連帶拖累 FCE 和 GSR。其他兩個頭無法強制避免碰撞
- 力封閉頭事後訓練:先訓練編碼器和能量頭、凍結後再單獨訓練力封閉頭,FCE 和 GSR 都明顯下降。因為編碼器沒機會適應分類目標,力封閉頭只拿到弱特徵、給出差的引導。結論是力封閉頭不是即插即用的模組,必須跟編碼器一起訓練,才能學到具穩定性意識的表示
真實世界實驗
異質雙臂系統:一支 UFactory xArm7 加一支 xArm6 Lite,用 AprilTag 校正,兩台 Intel RealSense D455 相機拍攝,點雲用 ICP 融合後送進模型,生成的抓取只保留運動學可達的。
| 物體 | 托盤 | 水桶 | 醬汁鍋 | 平底鍋 | 無人機 |
|---|---|---|---|---|---|
| 成功 | 6/10 | 8/10 | 7/10 | 6/10 | 5/10 |
模型完全用合成資料訓練,直接在真實點雲上零樣本生成抓取。大部分執行成功,失敗主要來自點雲重建損失了細節,導致生成錯誤的抓取。
限制與未來方向
作者自陳的限制:
- 假設輸入是完整且已分割的物體點雲,真實場景通常只有部分觀測
- 沒有考慮閉鏈運動學——兩支手臂同時抓住同一個物體後,手臂 + 物體形成一個閉合的運動鏈,移動時兩邊必須協調
- 擴散需要多步迭代,推論速度受限
未來方向是延伸到部分觀測、做更全面的真實世界評估。
影響與定位
DAGDiff 的核心觀點是:穩定性和碰撞可以透過分類器訊號直接引導擴散過程,比外掛區域偵測或物體先驗更有效。這讓雙臂抓取從「兩個單臂抓取的組合」變成「一個聯合生成問題」。
把 CGDF 和 DAGDiff 放在一起看,可以看出這條路線的演進:
| CGDF | DAGDiff | |
|---|---|---|
| 生成空間 | SE(3),單一抓取 | SE(3) × SE(3),抓取對 |
| 區域怎麼來 | 外部指定(最遠點、語言分割) | 模型自己從引導訊號學會 |
| 雙臂穩定性 | 沒有明確處理 | 力封閉分類器梯度引導 |
| 碰撞 | 靠能量隱式處理 | 碰撞分類器在去噪後段修正 |
| 訓練資料 | DA2 | DG16M |
相關論文推薦
- 論文導讀:CGDF——用擴散模型在大型複雜物體的指定區域生成雙臂抓取——DAGDiff 的前作與比較基準
- 論文導讀:Mobile ALOHA——低成本全身遙操作,學會雙臂移動操作——用模仿學習做雙臂操作的另一條路線
- 論文導讀:GraspNet-1Billion——雜亂場景、6 自由度、10 億筆抓取標註的通用抓取基準——力封閉解析標註的單臂版本
參考資料
- Karim, M. F., Vembar, V., Patra, K., Singh, G., & Krishna, K. M. (2025). DAGDiff: Guiding Dual-Arm Grasp Diffusion to Stable and Collision-Free Grasps. arXiv:2509.21145
- 專案頁:dag-diff.github.io/dagdiff
- Karim, M. F. et al. (2025). DG16M: A Large-Scale Dataset for Dual-Arm Grasping with Force-Optimized Grasps. arXiv:2503.08358
相關術語
訂閱 RoboTech Lab 電子報
每週一封,整理新的教學、論文導讀與機器人業界動態。隨時可以取消訂閱。