中文 EN

Learning to Act from Actionless Videos through Dense Correspondences

作者:Po-Chen Ko, Jiayuan Mao, Yilun Du, Shao-Hua Sun, Joshua B. Tenenbaum

机构:National Taiwan University; MIT CSAIL; MIT BCS; CBMM

版本:arXiv:2310.08576v1, submitted on 2023-10-12

链接:arXiv | PDF | Project page | Code

关键词:actionless videos; dense correspondence; video diffusion; optical flow; robot policy; learning from observation

1. 论文速览

一句话总结:这篇论文提出 AVDC:先用文本条件视频扩散模型“想象”机器人完成任务的未来视频,再用帧间 dense correspondences 和初始深度恢复物体或相机的 3D 刚体变换,最后把变换映射成机器人动作,因此训练主要依赖 RGB 视频而不需要动作标签。
阅读定位项内容
论文要解决什么从少量无动作标注的视频示范中学习可执行机器人策略,避免每个机器人、每个任务都重新收集 action-labeled trajectories。
作者的方法抓手把“动作”拆成两个可复用中间量:文本条件未来视频和帧间 dense correspondence。视频表示未来状态变化,光流与深度把像素变化还原成 $SE(3)$ 变换。
最重要的结果Meta-World 平均成功率 43.1%,高于 BC-Scratch 16.2%、BC-R3M 15.4%、UniPi 6.1%;iTHOR 平均成功率 31.3%,而两个 BC baseline 只有 2.1% 和 0.4%;Visual Pusher 上从人类推物视频到机器人执行的 zero-shot 成功率为 90% / 40 runs。
阅读时要注意的点方法并不是端到端从视频直接输出动作,而是强依赖光流、mask、depth、刚体运动假设和手工动作 primitive;真实 Panda 实验附录报告 10 次测试中失败 8 次,需要与主文定性展示一起读。

难度评级:★★★★☆。需要同时理解扩散视频生成、光流/dense correspondence、相机投影几何、机器人 motion primitive 和 learning from observation 的实验协议。

核心贡献清单

Diverse task execution without action labels
Figure 1: 论文 teaser。作者展示 AVDC 在 manipulation、navigation 和 real-world manipulation 中只依赖 synthesized video 与 dense correspondence 来落地动作。

2. 动机

2.1 要解决什么问题

机器人学习的常见瓶颈是状态和动作空间高度依赖 embodiment。折布、倒水、pick-and-place、导航需要的状态表示和动作接口都不同;如果策略学习要求每个任务都有专家动作序列,那么数据采集成本会随机器人和场景数量迅速增加。

作者抓住了视频数据的通用性:RGB 视频可以记录“状态如何变化”,并且互联网上和实验室里都更容易收集。但是视频本身没有告诉机器人应该执行哪条关节轨迹或末端执行器动作。本文的问题就是:能否只从 RGB 视频学到一个可执行策略,在部署时再把视频变化翻译成当前机器人动作。

2.2 已有方法的局限

2.3 本文的解决思路

AVDC 的高层思路是“先想象未来,再几何化动作”。给定当前 RGBD observation 和文本目标,模型生成未来 8 帧视频;GMFlow 在相邻生成帧之间输出 dense correspondence;初始深度和相机内参把像素点提升到 3D;最后通过优化恢复对象或场景的刚体变换,并用现成 grasp、push、IK、navigation action mapping 把变换转成动作。

4. 方法详解

4.1 整体 pipeline

AVDC framework
Figure 2: AVDC 的四步框架:输入 RGBD + 文本目标,生成 imagined execution video,估计相邻帧光流,把光流和初始深度转换为目标物体的 $SE(3)$ 变换,再映射为机器人命令。
  1. 视频生成:条件扩散模型学习 $p(\textit{img}_{1:T}\mid \textit{img}_0,\textit{txt})$,实验中 $T=8$。输入当前帧和文本描述,输出未来执行视频。
  2. 光流估计:用 GMFlow 对每对相邻生成帧预测 optical flow。每个像素的 flow 是 dense correspondence,表示这个点在下一帧移动到哪里。
  3. 几何恢复:用初始深度图和相机内参把初始像素点转成 3D 点;再找一个刚体变换 $T_t$,使变换后的 3D 点投影位置尽量匹配光流追踪到的 2D 点。
  4. 动作执行:固定相机场景下,恢复目标物体变换并转成 grasp/push subgoals;导航场景下,把场景变换取逆得到相机/机器人运动,再映射为 MoveForward、RotateLeft、RotateRight 或 Done。

4.2 文本条件视频扩散模型

扩散模型的目标是从初始图像和文本条件下生成未来帧。论文写出的训练损失为:

直觉:模型学习把加噪后的未来视频去噪回来;条件是当前帧和任务文本。

$$ \mathcal{L}_{\mathrm{MSE}} = \left\|\epsilon - \epsilon_\theta\left(\sqrt{1-\beta_t}\,\textit{img}_{1:T} + \sqrt{\beta_t}\,\epsilon,\ t \mid \textit{txt}\right) \right\|^2 . $$
$\textit{img}_0$当前观察帧,作为初始条件。
$\textit{img}_{1:T}$未来 $T$ 帧,实验中 $T=8$。
$\textit{txt}$自然语言任务描述,经固定 CLIP-Text encoder 和 Perceiver pooling 编码。
$\epsilon_\theta$视频 U-Net 去噪网络,用噪声预测训练目标。
$\beta_t$扩散噪声调度;附录说明训练/推理 timesteps=100、beta schedule=cosine、objective=predict_v。

架构上,作者从 Dhariwal & Nichol 的图像扩散 U-Net 出发扩展到视频。为增强与初始帧一致性,他们把条件帧 $\textit{img}_0$ 在 RGB 维度拼接到每个未来帧,而不是只在时间轴前面加一帧。ResNet block 内使用 factorized spatial-temporal convolution:先对每个时间步做空间卷积,再对每个空间位置做时间卷积,替代昂贵的完整 3D convolution。

U-Net architecture
Figure 3: 视频扩散模型的 U-Net 架构。虚线是 residual connection。

4.3 从光流和深度恢复动作

在固定相机的物体操作任务中,令目标物体初始 3D 点集为 $\{x_i\}$,相机内参为 $K$,$T_t$ 是第 $t$ 帧相对于初始帧的物体刚体变换。投影关系为 $K T_t x_i = (u_t, v_t, d_t)$,对应 2D 点是 $(u_t/d_t, v_t/d_t)$。GMFlow 给出点 $x_i$ 在第 $t$ 帧的追踪像素 $(u_t^i, v_t^i)$,因此作者优化:

$$ \mathcal{L}_{\text{Trans}} = \sum_i \left\|u_t^i - \frac{(K T_t x_i)_1}{(K T_t x_i)_3}\right\|_2^2 + \left\|v_t^i - \frac{(K T_t x_i)_2}{(K T_t x_i)_3}\right\|_2^2 . $$

这一步只需要初始帧深度,不需要未来帧深度。因为 $T_t$ 被假设为刚体变换,未来 3D 深度通过投影几何隐式确定。

推导补全:为什么这个 loss 足够恢复 $T_t$

初始点 $x_i$ 已经由初始 RGBD 和相机内参确定。给定一个候选刚体变换 $T_t$,可以把 $x_i$ 放到第 $t$ 帧物体坐标下,再经 $K$ 投影到图像平面。光流提供的是同一物理点在生成视频第 $t$ 帧的 2D 位置,因此最小化投影误差就是在找最能解释所有 dense correspondence 的 6DoF 变换。实际实现中,Meta-World 附录先用 RANSAC 从 2D correspondence 中找 inliers,再用这些 inliers 估计 3D 变换 附录: Meta-World setup

4.4 不同环境中的动作映射

环境恢复的几何量动作映射关键实现细节
Meta-World目标物体刚体变换根据垂直位移是否超过 10 cm 选择 grasp 或 push;grasp 模式闭合夹爪后跟随 subgoals,push 模式把机械臂放到可推动方向再跟随 subgoals。采样 $N=500$ 个 mask 点,以物体 centroid 作为 contact point;用 RANSAC 过滤 correspondence outliers 附录: 4.1
iTHOR静态场景变换,取逆得到相机运动观察机器人前方 1m 的 imaginary point:位移小于 1 mm 则 Done,水平位移小于 25 cm 则 MoveForward,否则按方向 RotateLeft/RotateRight。不跟踪单个物体;用整帧 flow,过滤移动出图像的关键点;当 inliers 少于初始采样点 10% 时重规划 附录: iTHOR setup
Real Panda目标物体初始 pose 和目标 pose假设目标可 top-grasp 且无需重定向,使用 IK solver 生成机器人轨迹。硬件为 Franka Emika Panda + Intel Realsense D435;附录说明手工指定目标分割,且小物体/低分辨率导致 3D rotation 不稳 附录: real-world setup

4.5 训练和推理要点

First-frame conditioning:作者把初始帧沿 RGB channel 拼接到 noisy future video,而不是沿时间维度拼接。附录 MSE 实验证明 cat_c 在 Bridge 训练早期优于 cat_t。
Text encoder:固定 CLIP-Text encoder,经 Perceiver pooling 聚合 token 后加入 diffusion time embedding;未使用 text cross-attention。CLIP 与 T5-base 的 MSE 差异不显著 附录: Text Encoder
推理速度:Meta-World 每轮 action planning 约 18 秒,最多 replan 5 次,总规划成本约 18-108 秒。DDIM 10 步把视频生成加速约 10 倍,Meta-World overall success 从 43.1% 降到 37.5%,下降 5.6 个百分点 附录: complexity/DDIM
Algorithm: AVDC execution loop Input: current RGBD image, task text, camera intrinsics, optional object mask 1. Generate future frames img_1:T with a text-conditioned video diffusion model. 2. For each adjacent frame pair, estimate optical flow with GMFlow. 3. Track dense correspondences through the generated video. 4. Lift initial pixels to 3D using initial depth and K. 5. Estimate object or scene rigid transforms by minimizing projection error. 6. Convert transforms to task-specific robot commands using primitives or navigation rules. 7. Execute; if progress stalls or correspondences are lost, replan from the new observation.

5. 实验

5.1 Baselines 和 variants

方法训练信号作用
BC-Scratch使用专家动作标签,从头训练 ResNet-18 + CLIP text + MLP。衡量常规行为克隆在多任务设置下的难度。
BC-R3M同样使用动作标签,但视觉 backbone 初始化为 R3M。测试机器人预训练视觉表征是否帮助动作预测。
UniPi baseline使用 AVDC 生成的视频,再训练 inverse dynamics model 输出动作。代表“视频计划 + 学习式逆动力学”的路线,仍需要动作标签。
AVDC (Flow)直接预测帧间 optical flow。验证直接生成 flow 是否优于先 RGB 视频再 GMFlow。
AVDC (No Replan)完整几何动作恢复,但 open-loop 执行。验证闭环 replanning 的作用。
AVDC (Full)RGB 视频生成 + GMFlow + 几何动作恢复 + replanning。论文主方法。

5.2 Meta-World 桌面操作

设置:11 个 Sawyer 机械臂操作任务,每个任务 3 个相机位,每个相机位 5 条 demonstrations,总共 165 个视频。方法和 variants 使用 ground-truth target object segmentation mask;BC baseline 使用动作标签。评估为每个任务、每个相机位 25 个 seeds 的平均成功率。

方法Overall关键现象
BC-Scratch16.2%即使有 15,216 个动作标签,多任务泛化仍弱。
BC-R3M15.4%R3M 初始化未改善整体结果。
UniPi (With Replan)6.1%需要 inverse dynamics,整体低于 BC。
AVDC (Flow)13.7%在 button-press-topdown、faucet-close、handle-press 上有表现,但多数任务很差,支持作者“两阶段”设计。
AVDC (No Replan)19.6%已超过 BC,但明显低于闭环版本。
AVDC (Full)43.1%在 11 个任务中整体最好;door-open 72.0%、door-close 89.3%、handle-press 81.3%。
Meta-World qualitative result
Figure 4: Meta-World qualitative result。作者展示生成视频、光流、当前/下一 subgoal 和执行轨迹。
Number of replanning steps versus success rate
Figure 5: 最大 replanning 次数越多,多个视角下成功率越高。作者用它支持闭环重规划策略。

5.3 iTHOR 目标导航

设置:12 个目标物体,分布在 4 类房间;每个时间步可执行 MoveForward、RotateLeft、RotateRight、Done。成功标准是目标物体进入视野并在 1.5m 内,或在正确状态预测 Done。每个房间 3 种物体,每物体 20 episodes。

RoomBC-ScratchBC-R3MAVDC
Kitchen1.7%0.0%26.7%
Living Room3.3%0.0%23.3%
Bedroom1.7%1.7%38.3%
Bathroom1.7%0.0%36.7%
Overall2.1%0.4%31.3%

作者解释:BC-R3M 比 BC-Scratch 更差,可能因为 R3M 预训练在机器人操作任务上,对视觉导航不适合。AVDC 的中间视频可以显示 agent 导航到目标,光流再容易映射为移动或旋转;无 flow 时表示已经找到目标并选择 Done。

iTHOR qualitative result
Figure 6: iTHOR qualitative result。生成视频、flow 和动作推断对应到电视导航任务。

5.4 跨 embodiment:人类视频到机器人推物

Visual Pusher 实验只用 198 个 actionless human pushing videos 训练视频扩散模型,U-Net 架构与 Meta-World 相同,训练 10k steps;随后在模拟机器人 pushing 任务上 zero-shot 测试,不做 fine-tuning。结果是 40 次运行中 90% 成功率。

Visual Pusher cross embodiment result
Figure 7: Visual Pusher。AVDC 从人类演示中生成 video plan,再把 dense correspondence 变成机器人动作。

5.5 Bridge 到真实 Franka Panda

Bridge 数据集含 33,078 条 WidowX 250 厨房任务 teleoperation videos,无深度。作者先用 Bridge 训练视频生成模型,再在自己的真实桌面环境中用 20 条人手示范视频 fine-tune。真实设置使用 Franka Emika Panda 和固定安装的 Intel Realsense D435 RGBD camera。

主文强调模型能生成视频、预测光流、识别目标并推断动作;附录给出更具体失败分析:真实实验 10 次测试中失败 8 次,失败原因 75% 来自 video diffusion model 生成错误 plan(选错物体或放错目标),25% 来自生成视频不连续,例如中间帧物体消失 附录: real-world failure mode

Bridge qualitative result
Figure 8: Bridge 预测的当前和下一 subgoal。
Franka Panda qualitative result
Figure 9: Franka Panda 执行示例,底部显示当前和下一 subgoal。

5.6 附录补充实验

附录内容结果含义
Object mask with segmentation models用 Language Segment-Anything 替代 GT mask,在 Meta-World 11 任务平均成功率 34.5%,比 GT mask 的 43.1% 低 8.6 个百分点。方法对分割质量敏感;论文主结果在 Meta-World 使用 GT mask。
First-frame conditioningcat_c 在 Bridge 训练早期的最后帧 MSE 低于时间维度拼接 cat_t;每个点为 4000 samples 平均值,误差条为 standard error。RGB channel-wise conditioning 是效率设计的一部分。
Text encoderCLIP-Text 63M 与 T5-base 110M 的视频生成 MSE 差异不显著。文本编码器不是主要瓶颈;作者使用固定 CLIP-Text + Perceiver。
Bridge zero-shot real scenesBridge 模型在 toy kitchen 外的复杂真实厨房图像上能生成合理视频,但原分辨率 48x64,视频较模糊。视频生成模型有一定场景迁移,但低分辨率会影响动作恢复。
Segmentation mask qualitative result
Figure 10: Language Segment-Anything 的成功和失败 mask 示例。
Ablation MSE plot
Figure 11: First-frame conditioning 与 text encoder ablation。论文用最后帧 MSE 评估生成质量。

6. 复现信息汇总

6.1 数据与评估协议

场景训练数据评估
Meta-World11 tasks x 3 cameras x 5 demonstrations = 165 videos;BC baseline 使用 15,216 frame-action pairs。每任务、每相机位 25 seeds,报告平均成功率。
iTHOR240 videos;BC baseline 使用 5,757 frame-action pairs。12 object navigation tasks,4 room types,每物体 20 episodes。
Visual Pusher198 human pushing videos,无动作标签;训练 10k steps。模拟机器人 pushing,zero-shot,无 fine-tuning,40 runs。
Bridge/PandaBridge 33,078 WidowX videos;真实环境再 fine-tune 20 条人手示范。真实 pick-and-place 桌面任务,附录提供 10 trials failure analysis。

6.2 模型超参

所有模型公共设置:dropout=0,num_head_channels=32,train/inference timesteps=100,training objective=predict_v,beta_schedule=cosine,loss_function=l2,min_snr_gamma=5,learning_rate=1e-4,ema_update_steps=10,ema_decay=0.999 附录: Video Diffusion Model

参数Meta-WorldiTHORBridge
num_parameters201M109M166M
resolution128 x 12864 x 6448 x 64
base_channels128128160
num_res_block233
attention_resolutions8, 164, 84, 8
channel_mult1, 2, 3, 4, 51, 2, 41, 2, 4
batch_size163232
training_timesteps60k80k180k

6.3 Perceiver 文本聚合器

ParameterValue
layers2
num_attn_heads8
num_head_channels64
num_output_tokens64
num_output_tokens_from_pooled4
max_seq_len512
ff_expansion_factor4

6.4 硬件与时间

本地材料状态:arXiv 源码已解压在 tmp/arxiv_source_2310.08576/;PDF 在 tmp/2310.08576.pdf;源压缩包在 tmp/arxiv_source_2310.08576.tar.gz;报告图表在 Report/2310.08576/figures/。这些临时材料暂未删除,便于继续核对。

7. 分析、局限与边界

7.1 这篇论文最有价值的地方

按论文自己的实验与方法设计,最核心的价值是把“无动作标签视频”到“可执行动作”之间缺失的一环显式拆出来:视频模型只负责生成未来视觉状态,dense correspondence 和几何优化负责把状态变化转换为可执行变换。这个拆分让方法能使用 RGB-only demonstrations 训练,同时把动作恢复交给 depth、flow、mask、IK、motion primitive 等较成熟模块。

7.2 结果为什么站得住

结果的支撑主要来自三个层面。第一,Meta-World 表格包含多个动作标签 baseline 和多个 AVDC variants,Full 版本比 No Replan 和 Flow 版本都高,支持“replanning + 两阶段 RGB-to-flow”设计。第二,iTHOR 任务换成导航,动作空间和物体操作完全不同,但同一个 correspondence-to-transform 逻辑仍能超过两个 BC baseline。第三,附录 ablation 暴露了分割、first-frame conditioning、DDIM 步数等工程变量的影响,没有只报告主方法成功案例。

7.3 作者自述局限

7.4 适用边界

适合使用的情况不适合或需要额外模块的情况
任务的关键变化可近似为物体或相机的刚体变换。柔性物体、复杂接触、强力控任务或必须推断接触 surface 的任务。
部署时能获得初始深度,或者可用单目深度估计替代。没有可靠深度、相机标定或物体/场景 mask 的环境。
语言目标和视觉变化之间关系清晰,例如 pick up fruit、navigate to object、push object。目标需要隐藏状态、长期多阶段符号规划或非视觉反馈。
可以接受十秒级 planning latency,或使用 DDIM 等采样加速。实时强约束控制任务;即使用 DDIM 10 步仍会牺牲部分成功率。