UltraDexGrasp:让双臂灵巧手机器人像人一样「看碟下菜」
🎯 为什么重要:灵巧抓取的瓶颈不在算法,而在「数据」
让双臂 + 灵巧手机器人抓东西听起来简单,做起来极难。原因不是「网络设计不出来」,而是根本凑不到训练数据:
- 真机遥操贵且慢:双臂 + 多指手自由度动辄 40+,一组演示就要熟练操作员几十分钟,要扩到 1000 个物体根本不现实。
- 已有合成数据有短板:RL 训练的专家「一观察对应一动作」,姿态重复且单一;开环优化方法又忽略手臂运动学,抓姿可行但「手过去就撞桌」。
- 双臂协调几乎没人做:以前的大规模数据集(DexGraspNet、Dex1B 等)几乎都是单手;双手策略需要建模协同、防互撞、分配发力,数据生成复杂度跳一档。
UltraDexGrasp 的判断是:与其继续在算法上做微创新,不如把数据生产线打通——从物体导入、抓姿优化、运动规划、到仿真 rollout、再到策略训练,全自动、可扩展。这条线一旦跑通,「数据 = 性能」的 scaling 才真正生效。
💡 核心思想:一条流水线,四种抓法,2000 万帧
核心是一个端到端的合成数据管线,把原本耦合的「抓姿生成 + 轨迹生成」拆成可扩展的两段式:
这套管线的关键设计是四种抓法共用一个统一的优化目标(公式 6):优化变量是双手位姿 + 接触力,约束含关节极限、摩擦锥、手手不穿透等;通过切换「接触点集合」就能产出四种不同抓法。这意味着加新抓法不需要重写管线,只要标定新接触点即可。
🛠️ 策略网络:点云进去,动作出来
有了数据,第二件事是设计一个能吃下点云、能输出双臂 + 双手控制指令的策略。UltraDexGrasp 走的是「简洁但精准」路线,每个设计都对应一个具体问题:
| 设计 | 结构 | 为什么这样选 |
|---|---|---|
| 点云编码 | PointNet++(2 层 set abstraction),FPS 下采样到 2048 → 256 点 | 抓取依赖局部几何(边缘、曲面、孔洞),点云比 RGB 更直接;FPS + kNN 分组保留细粒度 |
| 骨干 | Decoder-only Transformer + 单向注意力(Unidirectional Attn) | 动作 query 只能看场景、不能互相看。消融显示这点值 16 个百分点(68.2% → 84.0%) |
| 动作头 | 不直接回归动作,而是输出截断高斯分布(truncated normal)参数,优化 NLL | 多策略数据本身就是多模态分布(同一物体可能两种抓法都对),回归会被「平均」掉 |
| sim-to-real 桥 | 相机外参标定 + SOR 滤噪 + imaged point cloud(用已知的机器人关节状态仿真渲染出点云补全) | 真机深度相机噪声大、遮挡多,imaged PC 显著缩小 sim-real 域差 |
如果动作 token 之间能互相 attend,模型会走「捷径」——直接把邻近 token 拉成相似值(动作平滑),但这抹掉了「这一步该换抓法了」的切换信号。单向注意力强迫每个动作 token 独立地从场景证据推断,让策略更忠实地反映「物体重,该上双手」这种条件切换。
📊 关键结果:仿真 84%,真机 81%,零样本
| 维度 | 数字 | 对比 |
|---|---|---|
| 数据规模 | UltraDexGrasp-20M:2000 万帧 / 1000 物体 / 4 抓法 | — |
| 仿真平均成功率 | 84.0%(600 物体,含 seen + unseen) | DP3:46.7%;DexGraspNet:58.8%(+25.2 pp,相对 +43%) |
| 未见物体成功率 | 83.4%(几乎不掉点) | 说明泛化,不是死记 |
| 真机平均成功率 | 81.2%(25 物体,零样本 sim-to-real) | DP3:46.7%;DexGraspNet:62.3% |
| 真机最大物体 | 26400 cm³,1095 g | 最小:18 cm³,3.6 g(跨 3 个数量级) |
| 消融:去分布预测 | 73.5%(−10.5 pp) | 证明「分布而非回归」必要 |
| 消融:去单向注意力 | 68.2%(−15.8 pp) | 证明单向注意力是核心设计 |
| 数据 scaling | 1M 帧 → 性能反超数据生成器自身 | 策略学到了比「老师」更好的抓法(闭环 > 开环) |
🌐 在领域中的位置
UltraDexGrasp 是双臂灵巧抓取的第一个大规模数据 + 通用策略闭环。它把抓取从「单手」推进到「双手」、从「单策略」推进到「多策略切换」、从「依赖真机遥操」推进到「纯合成可扩展」。关联:与 DexMimicGen(单臂灵巧操作的数据自动生成)同属「合成数据规模化」一脉,但 UltraDexGrasp 更聚焦抓取本身而非下游操作。
❓ 常见误区
它和 DexGraspNet 是什么关系?是它的升级版吗?
不完全是。DexGraspNet 提供物体资产和「单手抓姿候选」,是 UltraDexGrasp 的输入之一。但 UltraDexGrasp 的核心贡献在后面:双手协调优化、四策略统一管线、闭环策略训练。DexGraspNet 在论文里其实是一个 baseline(58.8% 成功率),远低于 UltraDexGrasp 的 84%。
纯合成数据,sim-to-real 真的能 81%?
能,但有「秘诀」:(1) imaged point cloud——把已知的机器人状态渲染成点云补到观察里,避免真机深度相机的噪声和遮挡;(2) 关节阻抗随机化缩小动力学差距;(3) 物理验证只保留真能抬起 0.17m 持续 1s 的轨迹,过滤「假成功」。
四种抓法是怎么让网络「知道何时用哪种」的?
不是显式分类器选择,而是隐式由物体几何决定。训练数据里小物体配两指/三指抓法、大物体配双手抓,策略从点云里学到「尺寸 → 抓法」的映射。论文 Fig.1 真机展示就是同个策略在不同物体上自动切换。
2000 万帧是不是「数据越多越好」的无底洞?
暂时不是。Fig.5 显示性能随数据量单调上升,1M 帧时策略反超数据生成器,到 20M 帧仍在涨。但论文没给「饱和点」的拐点,所以下一步可能是跨 embodiment 扩展(换手、换臂)而非继续堆同质数据。