这篇笔记用来描述 2025年 发表在arxiv上的一篇有关VLA领域的论文。使用3D点云+传统规划算法作为基底生成数据。
写在最前面
为了方便你的阅读,以下几点的注意事项请务必了解:
- 该系列文章每个字都是我理解后自行翻译并写上去的,可能会存在笔误与理解错误,如果发现了希望读者能够在评论区指正,我会在第一时间修正错误。
- 阅读这个系列需要你有基础的VLA、VLM相关基础知识,有时候我会直接使用英文名词,因为这些词汇实在不容易找到符合语境的翻译。
- 原文可能因为版面限制存在图像表格与段落不同步的问题,为了更方便阅读,我会在博文中重新对图像表格进行排版,并做到引用图表的文字下方就能看到被引用的图表。因此可能会出现一张图片在博客中多处位置重复出现的情况。
- 对于原文中的图像,我会在必要时对图像描述进行翻译并附上我自己的理解,但如果图像描述不值得翻译我也不会强行写上去。
Basic Information
- 论文标题:DemoGen: Synthetic Demonstration Generation for Data-Efficient Visuomotor Policy Learning
- 原文链接:https://arxiv.org/abs/2502.16932
- 发表时间:2025年02月24日
- 发表平台:arxiv
- 预印版本号:[v1] Mon, 24 Feb 2025 07:50:01 UTC (28,286 KB)
- 作者团队:Zhengrong Xue, Shuying Deng, Zhenyang Chen, Yixuan Wang, Zhecheng Yuan, Huazhe Xu
- 院校机构:
- Tsinghua University;
- Shanghai Qi Zhi Institute;
- Shanghai AI Lab;
- 项目网站:https://demo-generation.github.io
- GitHub仓库:https://github.com/TEA-Lab/DemoGen
Abstract
视觉运动策略在机器人操作中显示出巨大的前景,但通常需要大量人工收集的数据才能有效执行。推动高数据需求的一个关键因素是其有限的空间泛化能力,这需要包含不同配置进行大量数据收集。在这项工作中,作者提出了 DemoGen,一种用于自动生成演示的低成本、纯合成方法。DemoGen 每个任务仅使用一个人工采集的演示,通过将演示的动作轨迹调整到新的对象配置来生成空间增强的演示。利用 3D 点云作为模态并通过 3D 编辑重新排列场景中的主体来合成视觉画面。通过实验认为,DemoGen 显著提高了各种现实世界操作任务的策略性能,即使涉及到可变形物体、灵巧手末端执行器、双手平台等具有挑战性的场景中也表现出其适用性。此外,DemoGen 可以进行扩展以激活在训练分布以外的功能,包括抗干扰和避障。
1. Introduction
视觉运动策略学习已被证明在机器人操控任务方面具有出色的能力,但它通常需要大量人工采集的数据。SOTA方法通常需要数十到数百次演示才能在复杂任务上取得一定成功,例如在披萨上涂抹酱汁或用灵巧的手制作卷饼。更复杂、更长远的任务可能需要数千次演示。
先前方法对数据量要求较大的一个关键因素是其有限的空间泛化能力,即便使用预训练或 3D 视觉编码器结合的模型,在视觉运动策略上也表现出有限的空间理解能力,通常局限于演示配置附近的区域。这种限制需要对在新位置上的对象进行重新数据采集,直到演示配置充分覆盖整个桌面工作空间。这造成了一个悖论:虽然实现灵巧操作的关键动作集中在一小部分接触目标的片段中,但人类的很大一部分精力都花在教机器人接近自由空间中的物体上。
减少冗余人力的一个潜在解决方案是用自动演示生成取代繁琐的重新放置和采集程序上。MimicGen
及其后续扩展等最新研究已提出通过基于交互的对演示轨迹分段生成演示。然后,将这些以对象为中心的片段转换并插入到所需空间增强配置的执行计划中。然后通过机器人上的开环配置执行生成的计划,以验证其正确性并同时捕获策略训练所需的视觉观察。
尽管在仿真中取得了成功,但将 MimicGen
式策略应用于现实环境却受到机器人部署成本高昂的阻碍,这些成本几乎与采集真实演示一样昂贵。另一种方法是通过仿真到现实的转移进行部署,尽管弥合仿真到现实之间的差距仍然是机器人技术面临的一项重大挑战。
在本研究中,作者引入了 DemoGen
,这是一个数据生成系统,可以无缝插入仿真和物理世界中的策略学习工作流程。考虑到机器人部署的高成本是实际部署的一大障碍,DemoGen
采用了完全合成的方案,可以高效地将生成的计划实例化为可用于策略训练的空间增强演示。
对于动作生成,DemoGen
通过结合任务和运动规划 (TAMP) 的技术开发了 MimicGen
策略,类似于最近发布的 SkillMimicGen
中的做法。具体来说,将源轨迹分解为在 空间中移动的运动段 和 接触对象操作的技能段。在生成过程中,技能段将根据增强对象配置进行整体转换,并通过运动规划重新规划运动段,以在转换后连接相邻的技能段。
在处理完动作后,核心挑战是如何在不依赖机器人部署的情况下获得空间增强的视觉观察。虽然最近的一些研究利用视觉基础模型来机器人操作任务中主体和背景的外观,但这些技术并不直接适用于修改图像中对象的空间位置,因为 2D 生成模型通常缺乏对 3D 空间关系(例如透视变化)的感知 。
DemoGen
采用了更直接的策略:它选择点云作为观察模态,并通过 3D 编辑合成增强的视觉观察。关键点在于点云本身存在于 3D 空间中,可以轻松操作以反映所需的空间增强。生成增强点云观察简化为识别与物体或机器人末端执行器相对应的点簇,然后在应用生成的动作演示中使用的相同空间变换。值得注意的是,该策略也适用于接触丰富的技能段,因为接触的部分被视为统一变换的内聚簇。此外,人工处理的点云准确反映了底层的物理过程,从而最大限度地减少了真实观察和合成观察之间的视觉差距。
实验证明了使用 DemoGen
生成的数据集上训练视觉运动策略的有效性,数据集仅来自每个任务中收集的一个人的演示。为了评估 DemoGen
对空间泛化的影响,作者还将物体放置在末端执行器工作范围内的整个桌面工作空间中。
在进行了大量的真实世界实验后,结果表明 DemoGen
可以成功部署在单臂和双手平台上,执行使用平行夹持器和灵巧手末端执行器、第三人称和第一人称观察视角、一系列刚体和可变形/流体物体的任务。同时,使用 DemoGen
生成一条演示轨迹的成本仅为 0.01 秒的计算时间。在如此低的成本下,DemoGen
显著提高了策略性能,推广到未演示的配置,并在 8 个真实世界任务中实现了 74.6% 的平均水平。此外,作者证明了 DemoGen
框架下的扩展可以进一步使模仿学习具备获得的分布外泛化能力,例如抗干扰和避障。代码和数据集已经在Github上开源:https://github.com/TEA-Lab/DemoGen;
2. Related Works
A. Visuomotor Policy Learning
以扩散策略及其衍生技术为代表,视觉运动策略学习是指模仿学习方法,即以端到端的方式直接从视觉观察中学习预测动作的能力。端到端学习是一把双刃剑,它的灵活性使视觉运动策略能够从人类演示中学习灵巧的技能,不仅限于刚体拾取和放置。然而,由于缺乏结构化的技能原语,这些策略本质上仍然是数据密集型的。
庞大的数据需求与机器人数据采集高昂成本之间的矛盾促使人们越来越关注以数据为中心的研究。这些努力包括更高效的数据收集系统、大规模数据集的协作收集、数据扩展的证明研究。DemoGen
并非通过纯人力进行扩展,而是旨在表明合成数据生成可以帮助节省大量人力。
B. Data-Efficient Imitation Learning
数据高效的模仿学习方法试图从少量演示中获得操作策略,通常以任务和运动规划 (TAMP) 的原理为基础,同时结合模仿学习来替换 TAMP 流程中的某些组件。一种常见的方法是学习末端执行器的拾取和放置姿势。整个轨迹由运动规划工具包生成,然后以开环方式执行。一些方法通过学习估计环境中被操作物体的状态并播放以目标物体为中心的演示轨迹段,将这一想法扩展到更复杂的场景。虽然这些方法对于更简单的马尔可夫式任务有效,它们开环执行特性限制了它们只能应用于需要闭环重试和重新规划的更灵巧的任务上。
相比之下,DemoGen
利用 TAMP 原则来生成合成数据。随后,合成演示用于训练闭环视觉运动策略以解决任务。通过这种方式,DemoGen
有效地结合了两种方法的优点。
C. Data Generation for Robotic Manipulation
自动生成演示提供了训练有效视觉运动策略的可能,同时显著减少人力投入。最近的一个分支研究尝试利用 LLM 进行任务分解,然后使用规划或强化学习进行子任务解析,从而生成演示。虽然这种范式可以从凭空生成数据,但由此产生的操作技能通常受到 LLM、规划或强化学习能力的限制。
另一种研究方向以 MimicGen
及其扩展为代表。与凭空生成演示不同,MimicGen
通过合成相应的执行计划,将一些人类采集到的源演示调整为新的对象配置。理论上这种方法适用于各种操作技巧和对象类型。例如,DexMimicGen
扩展了 MimicGen
的策略,以支持配备灵巧手末端执行器的双手平台。但是,MimicGen
框架生成的执行计划并不是以观察-动作对形式呈现的现成演示。为了弥补这一差距,MimicGen
系列依赖于昂贵的机器人部署,这对在物理机器人上的部署提出了重大挑战。
DemoGen
以 MimicGen
及其扩展为基础,采用了 MimicGen
生成执行计划的策略,但用高效、完全合成的生成过程取代了昂贵的机器人部署,使得 DemoGen
能够以经济高效的方式生成可用于策略训练的真实演示。
3. EMPIRICAL STUDY: SPATIAL GENERALIZATION OF VISUOMOTOR POLICIES
A. Visualization of Spatial Effective Range
空间泛化是指策略执行涉及在训练期间未见过的配置中的物体的任务的能力。为了直观地了解空间泛化,将 视觉运动策略空间的有效范围 与 演示数据空间分布 之间的关系进行可视化。
Tasks
作者评估了改编自 MetaWorld
基准的 Button-Large
任务(机器人接近按钮并按下)。物体随机出现的范围为桌面工作空间上的 30cm x 40cm = 1200 cm^2
区域,覆盖了末端执行器可到达的大部分空间。由于按钮尺寸较大,即使按压动作没有精确击中中心也会将其按下,作者还研究了对精度要求更高的变体 Button-Small
,其中按钮尺寸缩小了 4 倍。
Policy
作者采用 3D 扩散策略 (DP3) 作为研究策略。基准测试结果表明,与 2D 方法相比3D 观测提供了更出色的空间泛化能力,详见 Appendix A1。
Evaluation
为了可视化空间有效范围,在工作空间内沿每个轴均匀采样 21 个点,总共得到 441 个不同的按钮位置。演示是使用脚本策略生成的,具有 4 种不同的空间分布,范围从单个到完整。在 441 个位置上评估每种配置的性能,从而可以全面评估空间泛化。可视化结果如Fig.2
所示。
Key findings
总体而言,视觉运动策略的空间有效范围与演示中看到的物体配置分布密切相关。有效范围可以通过演示物体放置周围区域的并集来近似。为了训练一个能够扩展到整个随机化范围的策略,演示必须覆盖整个工作空间,从而产生大量的数据采集成本。此外,随着任务精度要求的提高,有效范围缩小到更局部的区域,需要更多的演示才能充分覆盖工作空间,详见Appendix B1。
B. Benchmarking Spatial Generalization Capability
空间泛化能力体现在有效策略学习所需的演示次数上。在接下来的基准测试中,将探索演示次数与策略性能之间的关系,以确定多少次演示足以进行有效训练。
Tasks
为了避免不精确但可用的策略生成,作者设计了一个精确插钉任务,在拾取和插入阶段都强制执行 1 厘米的严格容错,要求达到毫米级的精度。钉子和插座在 40cm x 20cm
区域内随机分布,产生 40cm x 40cm=1600 cm^2
的有效工作空间。为了检查对象随机化的影响,还考虑了半工作空间,其中两个对象的随机化范围减半,对象位置保持不变,详见Appendix B3。
Policies
除了从头训练的扩散策略 (DP)和 3D 扩散策略 (DP3)之外,作者还探索了预训练的视觉表征在增强空间泛化方面的潜力。用预训练的编码器(包括 R3M
、DINOv2
和 CLIP
)替换了 DP 中从头训练的 ResNet
编码器,详见Appendix A2。
Demonstrations
将演示次数从 25 到 400 不等。对象配置是从比评估工作区稍大的范围中随机抽样的,以避免模型在区边界附近的性能下降,Fig.17
提供了可视化效果。
Evaluation
在完整工作空间中,销钉和插座均放置在 45 个均匀采样的坐标上,从而产生 2025 种不同的配置以供评估。对于半配置和固定设置而言两者数量比分别为 225:1,如 Fig.3
所示。
Key findings
对象随机化的程度会显著影响所需演示的数量。因此,有效的视觉运动策略评估必须包含足够大的工作空间,以提供足够的对象随机化。另一方面,3D 表示和预训练的 2D 视觉编码器都有助于提高空间泛化能力。然而,这些方法都没有从根本上解决空间泛化问题。这表明空间能力并非天生就来自策略本身,而是通过对给定演示的工作空间进行广泛遍历而获得的,详见Appendix B2。
4. DemoGen METHODS
DemoGen
旨在解决视觉运动策略的大数据需求与人类采集演示高成本之间的矛盾,它从一小组源演示中生成空间增强的观察-动作对。对于动作,DemoGen
将源轨迹解析为以对象为中心的运动段和技能段,并应用基于 TAMP 的自适应;对于观察,DemoGen
使用分段和转换策略有效地合成机器人和物体的点云。
A. Problem Formulation
视觉运动策略
π
:
O
→
A
\pi:O\to A
π:O→A 将视觉观察
o
∈
O
o\in O
o∈O 直接映射到预测动作
a
→
A
a\to A
a→A。要训练这样的策略,必须准备一个演示数据集
D
D
D。将源演示
D
s
0
⊆
D
D_{s_{0}}\subseteq D
Ds0⊆D 定义为以初始对象配置为条件的成对观察-动作的轨迹:
D
s
o
=
(
d
0
,
d
1
,
…
,
d
L
−
1
∣
s
0
)
D_{s_{o}}=(d_{0},d_{1},\dots,d_{L-1}|s_{0})
Dso=(d0,d1,…,dL−1∣s0),其中每个
d
t
=
(
o
t
,
a
t
)
d_{t}=(o_{t},a_{t})
dt=(ot,at) 代表一个观察-动作对,
s
0
s_{0}
s0 表示初始配置,
L
L
L 是轨迹长度。DemoGen
旨在通过生成以不同的初始对象配置为条件的新演示来增强人工采集到的源演示:
D s 0 ′ ^ = ( d 0 ^ , d 1 ^ , d L − 1 ^ ∣ s 0 ′ ) \hat{D_{s_{0}^{'}}}=(\hat{d_{0}}, \hat{d_{1}}, \hat{d_{L-1}}| s_{0}^{'}) Ds0′^=(d0^,d1^,dL−1^∣s0′)
具体来说,假设任务涉及 K K K 个对象 { O 1 , O 2 , … , O K } \{O_{1},O_{2},\dots,O_{K}\} {O1,O2,…,OK} 的顺序操作,则初始对象配置 s 0 s_{0} s0 定义为这些对象的初始姿势集: s 0 = { T 0 O 1 , T 0 O 2 , … , T 0 O K } s_{0}=\{T_{0}^{O_{1}},T_{0}^{O_{2}},\dots,T_{0}^{O_{K}}\} s0={T0O1,T0O2,…,T0OK},其中 T 0 T_{0} T0 表示从世界坐标系到时间步长 t t t 处的对象 O O O 变换。 a t a_{t} at 处的动作由机械臂和机械手命令组成,表示为 a t = ( a t a r m , a t h a n d ) a_{t}=(a_{t}^{arm},a_{t}^{hand}) at=(atarm,athand),其中 a t a r m ≜ A t E E a_{t}^{arm} \triangleq A_{t}^{EE} atarm≜AtEE 是世界坐标系中末端执行器的目标姿势, a t h a n d a_{t}^{hand} athand 可以是夹爪打开/关闭动作的二进制信号,也可以是用于控制灵巧手关节的高维矢量。观测 o t o_{t} ot 包括点云数据和来自机器人的本体感受反馈: o t = ( o t p c d , o t a r m , o t h a n d ) o_{t}=(o_{t}^{pcd}, o_{t}^{arm}, o_{t}^{hand}) ot=(otpcd,otarm,othand),其中 o t a r m o_{t}^{arm} otarm 和 o t h a n d o_{t}^{hand} othand 反映末端执行器的当前状态,维度与相应动作相同。
B. Pre-processing the Source Demonstration
Segmented point cloud observations
为了提高在现实场景中的实用性,使用单视图 RGBD 相机进行点云采集。首先对原始点云观测进行预处理,从背景和桌面裁剪掉多余的点,假设保留的点与被操纵的物体或机器人的末端执行器相关联。然后应用聚类操作来过现实世界观测到的异常点。随后,使用最远点采样将点云下采样到固定数量的点(例如 512 或 1024)以优化策略学习。
对于轨迹的第一帧,使用 Grounded SAM
从 RGB 图像中获取被操控物体的分割掩码。然后,将这些掩码应用于像素对齐的深度图像,并投影到 3D 点云上,如 Fig.4
所示。
Parsing the source trajectory.
根据先前的研究,假设 执行轨迹可以解析为一系列以对象为中心的片段。由于机器人必须首先在自由空间中接近物体后才能通过接触进行物体操作,每个以对象为中心的片段可以进一步细分为两个阶段:运动 和 技能。例 Fig.4
所示的任务中,轨迹分为四个阶段:1) 移动到花朵处,2) 拿起花朵,3) 将花朵移到花瓶中,4) 将花朵插入花瓶中。
通过检查物体点云的几何中心和机器人末端执行器之间的距离是否在预定义的阈值内,可以轻松识别与给定物体相关的技能段,如Fig.4
中的球体所示。两个技能段之间的中间轨迹被归类为运动段。
定义时间戳间隔 τ : τ = ( t s t a r t , t s t a r t + 1 , … , t e n d − 1 , t e n d ) ⊆ ( 0 , 1 , … , L − 1 ) \tau: \tau=(t_{start},t_{start}+1,\dots,t_{end}-1, t_{end}) \subseteq (0,1,\dots,L-1) τ:τ=(tstart,tstart+1,…,tend−1,tend)⊆(0,1,…,L−1) 作从一系列演示、动作、观察中提取相应片段的索引序列。 d [ τ ] = ( d t s t a r t , d t s t a r t + 1 , … , d t e n d − 1 , d t e n d ) d[\tau]=(d_{t_{start}}, d_{t_{start}+1},\dots,d_{t_{end}-1},d_{t_{end}}) d[τ]=(dtstart,dtstart+1,…,dtend−1,dtend) 表示提取的源演示子集,索引为 τ \tau τ。通过这种符号,根据索引序列 ( τ 1 m , τ 1 s , … , τ K m , τ L s ) (\tau_{1}^{m}, \tau_{1}^{s},\dots,\tau_{K}^{m},\tau_{L}^{}s) (τ1m,τ1s,…,τKm,τLs) 将源演示解析为交替的动作和技能片段:
D s 0 = ( d [ τ 1 m ] , d [ τ 1 s ] , … , d [ τ K m ] , d [ τ L s ] ∣ s 0 ) D_{s_{0}}=(d[\tau^{m}_{1}], d[\tau_{1}^{s}], \dots, d[\tau^{m}_{K}], d[\tau_{L}^{s}] | s_{0}) Ds0=(d[τ1m],d[τ1s],…,d[τKm],d[τLs]∣s0)
C. TAMP-based Action Generation
Adapting actions to the new configuration.
生成过程首先选择目标初始配置 s 0 ′ = { ( T 0 O 1 ′ , T 0 O 2 ′ , … , T 0 O K ′ ) } s_{0}^{'}=\{(T_{0}^{O_{1}^{'}}, T_{0}^{O_{2}^{'}}, \dots, T_{0}^{O_{K}^{'}})\} s0′={(T0O1′,T0O2′,…,T0OK′)}。在 4 × 4 4 \times 4 4×4 齐次矩阵表示下,目标和源配置之间的空间变换计算如下:
Δ s 0 = { ( T 0 O 1 ) − 1 ⋅ T 0 O 1 ′ , … , ( T 0 O K ) − 1 ⋅ T 0 O K ′ } \Delta s_{0}=\{(T_{0}^{O_{1}})^{-1} \cdot T_{0}^{O_{1}^{'}}, \dots, (T_{0}^{O_{K}})^{-1} \cdot T_{0}^{O_{K}^{'}}\} Δs0={(T0O1)−1⋅T0O1′,…,(T0OK)−1⋅T0OK′}
动作包括机械臂和机械手命令,机械手命令定义了对物体的交互动作,例如用夹子夹住花朵,或用灵巧的手卷起面团。由于它们不受空间变换的影响,因此无论物体配置如何,机械手都应保持不变:
a ^ t h a n d = a t h a n d , ∀ t , s 0 , s 0 ′ \hat{a}_{t}^{hand}=a_{t}^{hand}, \forall t, s_{0}, s_{0}^{'} a^thand=athand,∀t,s0,s0′
相反,机器臂命令应在空间上与物体运动等变,以便根据改变的配置调整轨迹。对于涉及第
k
k
k 个物体的运动和技能段,按照基于 TAMP 的程序调整机器人手臂命令
A
E
E
[
τ
k
m
]
,
A
E
E
[
τ
k
s
]
A^{EE}[\tau_{k}^{m}], A^{EE}[\tau_{k}^{s}]
AEE[τkm],AEE[τks],Fig.5
所示。
对于具有灵巧的物体行为的技能片段,末端执行器和物体之间的空间关系必须保持相对静态。因此,整个技能片段会跟随相应的物体进行变换:
A ^ E E [ τ k s ] = A E E [ τ k s ] ⋅ ( T 0 O k ) − 1 ⋅ T 0 O k ′ \hat{A}^{EE}[\tau_{k}^{s}]=A^{EE}[\tau_{k}^{s}]\cdot (T_{0}^{O_{k}})^{-1} \cdot T_{0}^{O_{k}'} A^EE[τks]=AEE[τks]⋅(T0Ok)−1⋅T0Ok′
对于在自由空间中移动的运动段,目标是将相邻的技能段串联起来。通过运动规划来规划运动阶段的机械臂命令:
A ^ E E [ τ k m ] = M o t i o n P l a n ( A ^ E E [ τ k − 1 s ] [ − 1 ] , A ^ E E [ τ k s ] [ 0 ] ) \hat{A}^{EE}[\tau_{k}^{m}]=MotionPlan(\hat{A}^{EE}[\tau^{s}_{k-1}][-1], \hat{A}^{EE}[\tau_{k}^{s}][0]) A^EE[τkm]=MotionPlan(A^EE[τk−1s][−1],A^EE[τks][0])
其中运动规划的起始姿势取自前一个技能段的最后一帧,结束姿势取自当前技能段的第一帧。对于简单整洁的工作空间而言线性插值就足够了。对于需要避障的复杂环境,采用现成的运动规划方法。
Failure-free action execution
为了确保合成演示的有效性,无需在机器人上进行回滚以过滤失败的轨迹,需要无故障的动作执行。与之前依赖操作空间控制器和增量末端执行器姿势控制的研究不同,作者采用逆运动学 (IK) 控制器并以绝对末端执行器姿势为目标。从经验上看,这些调整有助于最大限度地减少复合控制误差,有助于成功执行生成的动作。
D. Fully Synthetic Observation Generation
Adapting proprioceptive states
观测结果由点云数据和本体感受状态组成。由于本体感受状态与动作具有相同的语义,因此它们应该经历相同的转换:
o ^ t h a n d = o t h a n d , ∀ t , s 0 , s 0 ′ o ^ t a r m = o t a r m ⋅ ( A t E E ) − 1 ⋅ A ^ t E E \begin{align} \hat{o}_{t}^{hand} &= o_{t}^{hand}, \forall t, s_{0}, s_{0}^{'} \\ \hat{o}_{t}^{arm} &= o_{t}^{arm} \cdot (A_{t}^{EE})^{-1} \cdot \hat{A}^{EE}_{t} \end{align} o^thando^tarm=othand,∀t,s0,s0′=otarm⋅(AtEE)−1⋅A^tEE
作者发现直接用下一个目标姿势动作( o ^ t a r m ← a ^ t + 1 a r m \hat{o}^{arm}_{t} \leftarrow \hat{a}^{arm}_{t+1} o^tarm←a^t+1arm)替换当前状态可能会损害性能,因为 IK 控制器可能无法始终实现精确的目标姿势。
Synthesizing point cloud observations
为了合成机器人和物体的空间增强点云,作者采用了一种简单的分割和变换策略。除了目标变换之外,合成所需的唯一信息是源演示第一帧上的 K K K 个物体的分割掩码。对于每个对象定义了 3 个阶段:
- 待执行阶段:对象是静态的,不受机器人的影响,其点云根据初始对象配置 ( T 0 O k ) − 1 ⋅ T 0 O k ′ (T_{0}^{O_{k}})^{-1}\cdot T_{0}^{O_{k}'} (T0Ok)−1⋅T0Ok′ 进行变换;
- 执行阶段:对象与机器人接触,其点云与末端执行器的点云合并;
- 完成阶段:对象保持其最终状态;
通过参考轨迹级运动和技能段可以轻松识别这些阶段。
对于机器人的末端执行器,其点云使用与本体感受状态
(
A
t
E
E
)
−
1
⋅
A
^
t
E
E
(A^{EE}_{t})^{-1}\cdot \hat{A}^{EE}_{t}
(AtEE)−1⋅A^tEE 所示的相同变换。假设工作空间被裁剪,可以通过从场景点云中减去未完成和已完成阶段的目标点云来分离机器人与执行阶段的物体的点云。Fig.6
显示了该过程的具体示例。附录中的 Fig.21
可以找到更多真实世界实验中的合成轨迹示例。
5. EXPERIMENTS IN THE SIMULATOR
A. Effectiveness: One-Shot Imitation
在将 DemoGen
部署到现实世界之前,通过 DemoGen
从每个任务中的一个源演示生成的数据集上训练视觉运动策略来评估其在模拟器中的有效性。
Policy
无论是在模拟器中还是在现实世界中,都选择 DP3
作为视觉运动策略,该策略通过使用点云和本体感觉观测来预测动作。为了公平比较,固定所有评估设置中按观察-动作对计数的总训练步骤,以确保训练成本都相同。训练细节列在Appendix A1
中。
Tasks
作者设计了 8 个改编自 MetaWorld
基准的任务,如 Fig.7
所示。为了加强空间泛化的重要性,修改这些任务以扩大对象随机化范围,如Appendix 7
所列。
Generation and evaluation
作者为这些任务编写了脚本策略,并且每个任务只准备 1 个源演示以生成演示。我们还使用脚本策略为每个任务生成 10 和 25 个源演示,作为人工收集的数据集的参考。基于一个源演示,我们利用 DemoGen 为包含一个物体的空间随机化的任务生成 100 个空间增强演示。由于涉及两个物体的任务具有更多样化的物体配置范围,因此生成了 200 个演示。
Results analysis
模拟任务的评估结果如 Table.1
所示。与源演示基线相比,DemoGen
显著提高了策略性能。在 DemoGen
生成的数据集上训练的策略也优于在 10 个源演示上训练的策略,并且接近 25 个源演示。这表明 DemoGen
有可能在数据采集人力减少 20% 以上的情况下保持策略性能。
B. Limitation: The Visual Mismatch Problem
虽然一次性模仿实验验证了 DemoGen
的有效性,但也揭示了它的局限性:从一个源演示生成的合成演示不如相同数量的人工采集的演示有效。将性能差距归因于在单个观察视角约束下,合成点云与现实世界中捕获的点云之间的视觉不匹配,Fig.8
中提供了说明。
Performance saturation
视觉不匹配问题的一个显著后果是性能饱和现象,作者对 Pick-Cube
任务进行了实证分析。在Fig.9 (a)
中,固定了合成演示中目标物体配置的空间密度,并通过添加更多的合成演示来增加它们的空间覆盖范围。曲线表明,一旦空间覆盖范围超过某个阈值,性能改进就会达到稳定状态。这种饱和的发生是因为随着源物体和合成物体配置之间的距离的增加,视觉不匹配会加剧,使得额外的合成演示无效。在Fig.9 (b)
中,当增加密度同时保持空间覆盖范围不变时,观察到了类似的性能饱和效应。这表明一旦演示足以覆盖整个工作空间,就没有必要进行过多的演示。
6. REAL-WORLD EXPERIMENTS: SPATIAL GENERALIZATION
作者评估了 DemoGen
在 3 个不同平台上部署的 8 个真实世界任务中,增强视觉运动策略的空间泛化能力。7 个任务在具有夹爪或灵巧手末端执行器的单臂平台上执行。此外,一项任务在双臂人形机器人上执行。任务摘要见 Table.2
。
A. Single-Arm Platforms
Tasks
在 Franka Panda
单臂平台上,使用原始 Panda
夹爪设计了 3 个任务,并使用 Allegro
灵巧手作为末端执行器设计了 4 个任务。这些任务的运动和技能轨迹可在 Fig.11
中查看,任务描述在 Appendix G
中提供。对于所有任务,都采用单个 Intel Realsense L515
摄像头来捕获点云观测,如Fig.10 (a)
所示。
Evaluation protocol
为了评估空间泛化能力,作者定义了一个大的平面工作空间,其大小与机器人手臂的最大伸展距离相对应。在这个不规则形状的工作空间内均匀采样 12 个点作为潜在物体配置的坐标,相邻坐标之间的间距为 15 厘米,如Fig.10 (b)
所示。
为了确定每个任务的实际评估配置,使用运动学示教进行手动操作,以确认每个配置的可行性。例如,在 Dex-Rollup
任务中,灵巧的手可以以垂直的手腕角度够到放置在工作空间中靠近机器人角落的一块橡皮泥。但是,它无法像 Dex-Coffee
任务中要求的那样以水平腕角抓住同一位置的水壶。作者对所有可行配置进行试验,并对每个配置重复评估 5 次,以确保结果的可靠性。
Generation strategy
与仿真环境一样,作者为每个任务仅采集一个源演示。然而,现实世界的观测点云往往有很大噪声,存在诸如闪烁的孔洞或物体轮廓周围的投影模糊等问题。即使在点云预处理阶段执行聚类和下采样后,如果只提供一次演示,模仿学习策略也会过度拟合这些不规则现象。
为了缓解这个问题,作者重复回放两次源演示并捕获相应的点云观测值。总共 3 条点云轨迹丰富了视觉退化的多样性,并有助于缓解过度拟合问题。由于重复两次的成本较低,作者认为这种方法是效率和有效性之间的有益权衡。
对于每个任务,将生成的对象配置设置为与评估的配置相对应。然而,人类操作员在现实世界中无法总是以完美的精度放置物体,但作者发现视觉运动策略对即使是很小的偏差也很敏感。因此,通过添加小范围扰动进一步增强生成的对象配置。对于每个目标配置,生成 9 个带有
(
±
1.5
c
m
×
±
1.5
c
m
)
(\pm 1.5cm \times \pm 1.5cm)
(±1.5cm×±1.5cm) 扰动的演示,以模拟现实世界中的轻微位置变化。最终生成的配置如Fig.10 (c)
所示。
总而言之,生成的演示的总数为
3
×
(
#
E
v
a
l
)
×
9
3\times (\# Eval) \times 9
3×(#Eval)×9 ,即3 个源演示乘以评估配置的数量,再乘以 9 个扰动。每个任务的详细计数列于Table.2
中。
Results analysis
Table.3
报告了在 3 个源演示和 DemoGen
生成的演示上训练的视觉运动策略的性能。仅根据源演示进行训练的策略表现出严重的过度拟合行为,盲目复制演示的轨迹。在 Appendix C
中,评估了在添加额外人工采集的演示的数据集上训练的策略性能,发现 训练策略的空间有效范围的上限是演示配置的总和,这与第三节中实证研究的结果一致。
与用人工采集的演示效果类似,DemoGen
生成的数据集使策略能够对各种评估配置表现出更强的适应性的响应性,从而显著提高成功率。DemoGen
在所有评估任务中持续提高性能。虽然在 Dex-Drill
和 Dex-Coffee
任务中性能提升不太明显,但在生成的数据上训练的策略仍然会引导灵巧的手做出合适的姿势。相对较低的性能主要是由于严格的精度要求。
为了进一步研究 DemoGen 的泛化能力,Fig.12
可视化了评估配置的空间热图。热图显示,接近演示配置的评估配置的成功率很高,而随着与演示配置的距离增加,性能会下降。作者将这种下降归因于单视角观察引起的视觉不匹配问题。
在 Dex-Rollup
任务中出现了一个值得注意的现象,在 DemoGen
生成数据集上训练的策略可以动态调整缠绕动作的数量(范围从 2 到 5)以响应每块手工成型的橡皮泥的不同可塑性。这表明 DemoGen
的使用与生成策略的闭环重新规划能力并不冲突,视觉运动策略的内在优势得到了有效保留。
Generation cost
作者比较了 MimicGen
和 DemoGen
在真实世界演示生成中的时间成本。通过将重放源轨迹的持续时间乘以生成的演示数量,并为每个轨迹添加额外 20 秒供人类操作员重置对象配置来估算 MimicGen
的时间成本。由于 MimicGen
需要持续的人工干预,而 DemoGen
的时间成本纯粹是计算耗时,无需机器人或人类操作员的参与。
B. Bimanual Humanoid Platform
Task
除了单臂平台上的任务外,作者还在 Galaxea R1
机器人上设计了一个水果篮任务,Fig.13
所示。水果篮任务与之前的任务有三个主要特点:
- 双手操作:机器人同时用一只手臂抓住篮子,用另一只手臂抓住香蕉,然后右臂将篮子放在工作空间的中央,而左臂将香蕉放入篮子中;
- 自我中心观察:摄像头安装在机器人的头部。虽然机器人的底座在此任务中是固定的,但第一人称视角为未来在移动操作场景中的部署提供了可能;
- 分布外偏移:使用单个人工采集演示,在评估期间香蕉相对于原始演示以方向偏移(即 45°、90° 和 135°)放置,而篮子位置在
10
c
m
×
5
c
m
10cm \times 5cm
10cm×5cm 的工作空间内随机出现。
Generation strategy
生成过程遵循与单臂平台类似的方法。人工采集的演示会重播两次共产生 3 个源演示。DemoGen
通过独立调整双臂的动作以适应物体的各自变换来生成合成演示。由于精度要求相对较低,因此在此任务中省略了小范围扰动。
合成方向偏移的点云观测结果的挑战在于单个摄像头提供的视野有限,只能捕捉物体的正面外观。为了解决这一限制,人形机器人采用弯腰姿势实现近乎鸟瞰的视角。这种调整允许更有效地编辑点云,以模拟全方向偏航旋转。
Results analysis
Table.3
比较了源数据集和生成数据集的成功率,Fig.12
显示了空间热图。90.8% 的功率证明了 DemoGen
在双手人形平台上的有效性及其帮助策略推广到分布外偏移的能力。Appendix. D
中提供了更详细的分析。
7. REAL-WORLD EXPERIMENTS: EXTENSIONS
A. Disturbance Resistance
视觉运动策略的一个关键优势是它们能够在干扰下执行闭环校正。作者考察了 DemoGen
生成的数据集(源自一次人工收集和两次重放的源演示)是否可以训练具有此类能力的视觉运动策略。
Task
考虑一个改编自DP
的酱汁涂抹任务Fig.14
。最初,披萨饼皮的中心含有少量酱汁,夹爪操纵手中的勺子接近酱汁中心并定期将其涂抹以螺旋状覆盖披萨饼皮。
Evaluation protocol
在酱汁涂抹过程中,通过将披萨饼皮两次移动到工作空间内的相邻点来引入干扰。考虑 5 个相邻点Fig.14(d)
,每个点进行 5 次试验,总共 25 次试验。测量披萨饼皮上的酱汁覆盖率。此外,还统计了标准化的酱汁覆盖率分数,其中 0 表示未进行任何操作,100 表示人类专家的表现。Appendix E
中提供了详细结果。
Generation strategies
生成策略选择扰动过程中观察到的 15 个中间点Fig.14(e)
作为标准 DemoGen
数据生成程序的初始配置。
为了增强抗干扰能力,作者提出了一种名为抗干扰增强 (ADR) 专门策略,如Fig.15
所示。在 ADR 中,披萨饼皮会在某些时间步骤中人为地移位到附近的位置以模拟干扰。机器人的末端执行器握着勺子,最初保持静止,随后插入其运动以重新接近移位的饼皮,然后继续进行周期性的铺展运动。
Results analysis
Table. 5
显示了标准 DemoGen
和 ADR 增强型 DemoGen
策略的酱汁覆盖率和标准化分数。ADR 策略明显优于标准 DemoGen
其性能可与人类专家相媲美。在视频中展示了 ADR 增强策略在多达 5 次连续干扰下仍然具有鲁棒性。这些发现强调了演示数据在实现策略能力方面的关键作用。抵抗干扰的能力不是自然产生的,而是通过有针对性的干扰演示获得的。
B. Obstacle Avoidance
Task
避障能力也通过包含避障行为的演示来传授。为了研究这种能力,作者在Teddy- Box
任务中引入了障碍物Fig16
。灵巧的手抓住泰迪熊并将其转移到左侧的盒子中,在没有障碍物的源演示上进行训练的视觉运动策略无法考虑潜在的碰撞,例如可能会撞倒放在中间的咖啡杯。
Generation strategy
为了生成涉及障碍物的演示,通过从简单几何体(如盒子和锥体)中采样点并将这些点融合到原始场景中来增强现实世界的点云观测Fig.16 (c)
。避障轨迹由运动规划工具生成以确保无碰撞动作。
Evaluation and results analysis
为了进行评估,将 5 个形状各异的日常物体放置在工作空间的中间Fig.16 (d)
,每个物体进行 5 次试验,总共进行了 25 次试验。在增强数据集上训练的策略在 25 次试验中有 22 次成功绕过障碍物;在没有障碍物的场景中,策略遵循源演示中观察到的较低轨迹,表明其对环境变化的响应能力。
8. CONCLUSION
在这项工作中,作者介绍了 DemoGen
,一个完全合成的数据生成系统,旨在通过减少对人工采集演示的需求来促进视觉运动策略学习。通过基于 TAMP 的动作自适应和 3D 点云操作,DemoGen
能够以最小的计算成本生成空间增强演示,从而显著提高各种现实世界任务和平台上的空间泛化和策略性能。此外,还扩展了 DemoGen
以生成包含抗干扰和避障行为的演示,为训练后的策略赋予相应的能力。
Limitations
尽管作者已经证明了 DemoGen
的有效性,但它仍有几个局限性:
- 依赖点云分割的质量,这限制了在高度混乱或非结构化环境中的适用性;
- 不适用于无需空间泛化的任务,例如手持重新定向或具有固定目标姿势的
push-T
; - 性能受到视觉不匹配问题的影响;
Future works
未来的研究可以探索如何减轻视觉不匹配的影响,通过利用对比学习或 3D 生成模型等技术来实现;另一个途径是使用额外的人工采集演示作为源数据,旨在确定策略性能和数据收集总体成本之间的最佳平衡。