MoRight:做对运动控制 MoRight: Motion Control Done Right
通过双流架构解耦相机与物体运动,并引入主动-被动因果推理,实现可前向/逆向推理的交互式视频生成。
前置知识
潜空间扩散模型(Latent Diffusion / DiT)
在 VAE 潜空间中做扩散去噪的生成模型。DiT 用 Transformer 替代 U-Net。本文基于 Wan2.1-14B 微调,用 Flow Matching 训练:$z_t=(1-t)z_0+t\epsilon$,模型回归速度 $v=\epsilon-z_0$。
MoRight 的整个双流架构、时序交叉注意力、相机与轨迹条件注入都建立在潜空间 DiT 之上,不熟悉这块会难以理解其工程实现细节。
轨迹条件视频生成(Trajectory-conditioned Video Generation)
通过稀疏或稠密像素轨迹指定视频中各点的运动路径,模型据此渲染出符合位移约束的视频。形式包括 bounding box、keypoint、optical flow、dense trajectory。代表方法:Motion Prompting (MP)、ATI、WanMove、DragAnything。
MoRight 的核心问题是这类方法的根本局限——轨迹耦合了相机与物体运动,且缺乏因果建模。理解这些方法才能体会 MoRight 的解耦设计为何重要。
相机-物体运动解耦(Camera-Object Disentanglement)
视频中像素位移由相机运动和物体自身运动共同造成。传统方法在像素空间混合两者,需要深度、3D 轨迹或前景/背景分割才能分离。MoRight 在规范化静态视角下指定物体运动,再跨视角迁移到任意目标相机。
这是 MoRight 第一个核心创新点。理解它需要知道传统方法的耦合困境以及规范化视角(canonical view)这一概念。
因果推理(Motion Causality Reasoning)
现实世界中动作引发结果:推杯子会滑动、提茶壶水会倒出。MoRight 把轨迹分为主动(active,驱动的)和被动(passive,被引发的)两部分,训练时随机丢弃其一让模型学会补全。
这是 MoRight 第二个核心创新,直接关系到"前向推理"(给动作预测结果)和"逆向推理"(给结果反推动作)两个能力。
研究动机
现有可控视频生成方法存在两个根本性瓶颈。第一个是相机-物体运动耦合:所有基于像素轨迹的方法(如 Motion Prompting、ATI、WanMove)把相机运动和物体运动混在同一条位移信号里——一旦指定了"向右移动 50 像素",根本无法判断是物体真的向右动了,还是相机向左摇了。这种耦合让用户难以独立控制"我想让茶壶怎么动"和"我想从什么角度拍"。更糟糕的是,现有方法通常需要前景/背景的全帧像素轨迹、深度图、3D 轨迹等特权信息,假设未来帧完全已知,这完全不适合"给定单张参考图、交互式生成"的真实场景。第二个瓶颈是缺乏因果建模:模型把运动当作纯运动学位移来处理。论文举了一个精妙的例子——推杯子、提茶壶这种交互中,杯子滑动、液体倾倒不是用户画一条轨迹就能说清楚的物理后果,但要让用户把所有物体的运动轨迹都画出来又根本不现实。
本文的目标是论文目标明确:(1) 搭建一个统一框架 MoRight,支持从单张图像出发,给定 2D 物体轨迹和目标相机位姿,生成物理一致、视角可控的视频;(2) 让用户能用极轻量的输入(简单笔画或稀疏轨迹)描述物体运动,同时自由调整相机视角,二者完全解耦;(3) 让模型内化"动作→结果"的因果关系,支持前向推理(给动作预测后果)和逆向推理(给目标反推动作)两种交互模式;(4) 在三个基准(视觉质量、运动可控性、交互合理性)上同时达到 SOTA。
与已有工作不同的是,切入角度的关键差异在于:已有工作要么只关注相机控制(Gen3C、CameraCtrl)、要么只关注物体轨迹(DragAnything、ATI、WanMove),且都默认轨迹在像素空间。MoRight 第一次明确指出"规范化静态视角"是解耦的关键——在静态相机下指定物体运动最自然,再通过跨视角注意力迁移到目标相机,跳过了对深度、3D 轨迹、前景分割等特权信息的依赖。同时,已有工作用物理仿真器或 LLM 做因果推理,前者局限于特定物理现象,后者存在跨模态误差传播;MoRight 首创性地把因果建模为"主动-被动运动分解 + 随机丢弃训练"的潜空间学习问题,把推理能力内化在单一视频模型的前向传播里。
核心方法
MoRight 的核心直觉可以用一个类比解释:想象你是一位动画师,要让一张静态画"活"起来。最自然的做法是先在原画上画几笔说明"这个杯子往左走",再独立地决定"摄像机绕到左边拍"——这两件事应该是分开做的。但传统轨迹方法把这两件事糊在同一条曲线里。MoRight 的解法是双流架构:第一流(canonical stream)在原始静态视角下处理物体运动,把它当作"锚点";第二流(target stream)处理带相机运动的目标视角。两流在时序上拼接,由同一个 DiT 权重联合去噪,通过自注意力层隐式交换信息——目标视角的 token 可以"看到"规范化视角的 token 学到的运动模式,从而把运动跨视角迁移过去。第二个直觉:因果学习靠"故意遮挡"——训练时随机只给主动运动(手推)让模型自己补全被动结果(杯子滑),或者反过来,最终让模型掌握动作-结果的不变关系。
与已有方法最本质的区别有三点。第一点是"规范化视角作为运动控制锚点":传统方法在像素空间操作导致运动与视角强耦合,MoRight 引入一个无相机运动的虚拟视角作为用户交互面,再通过 cross-view self-attention 把运动语义迁移到任意目标视角 $\{C_i\}_{i=1}^{T}$。形式上,目标流的每个 token 在自注意力中能 attend 到规范化流的对应 token,使前者隐式学习"如何在指定相机下重现规范化视角里见过的运动"。这彻底避开了对深度、3D 轨迹、前景/背景分割的依赖。第二点是"主动-被动运动分解 + 随机丢弃":把前景轨迹分为 $\tau^{act}$(因果源)和 $\tau^{pas}$(被引起的后果),训练时按概率 $p$ 随机只保留其中一个,让模型从部分输入补全完整视频。推理时既能前向(给 $\tau^{act}$ 预测 $\tau^{pas}$)又能逆向(给 $\tau^{pas}$ 反推 $\tau^{act}$)。第三点是"异构监督融合":用 ViPE 估计相机位姿和深度、AllTracker 提取像素轨迹、Qwen3-VL 配合 SAM2 分割主被动物体,再用 camera-controlled video-to-video 模型合成配对多视角数据,让同一模型同时学到规范化-目标视角对的监督和真实单视角视频的监督。
方法步骤详情
完整训练流程按以下步骤进行。第一步:数据标注与规范化。对原始视频 $x$ 用 ViPE [36] 估计逐帧深度 $\{D_i\}$、相机位姿 $\{C_i\}$、内参 $K$,用 AllTracker [30] 提取稠密像素轨迹 $\{\tau_i\}$。通过反投影+重投影公式 $\tau_i^{can} = \pi(K, C_0 C_i^{-1} \pi^{-1}(K, \tau_i, D_i))$ 把所有轨迹重投影到第一帧坐标系,得到"规范化静态视角"下的轨迹。第二步:主动-被动分解。用 Qwen3-VL 配合系统提示词识别主动物体(自身驱动)和被动物体(被驱动的),用 SAM2 分割得到掩码 $M^{act}$、$M^{pas}$,按掩码归属把轨迹分为 $\tau^{can,act}$ 和 $\tau^{can,pas}$。第三步:配对多视角数据合成。筛选相机近似静态的视频,用 camera-controlled video-to-video 模型合成对应的运动相机版本,形成 $\{x^{can}, x^{tar}\}$ 配对;额外用 SyncCamMaster [2] 合成 3.4K 图形数据增加相机多样性。第四步:双流联合去噪。规范化流的输入条件 $c^{can}=\{I, C_1, \{\tau^{can}\}\}$,目标流条件 $c^{tar}=\{I, \{C_i\}, \emptyset\}$。两路潜变量沿时间维拼接,用同一 DiT 权重联合去噪。第五步:条件注入与运动迁移。轨迹图通过轻量 3D 卷积编码器得到 $e_{trk} \in \mathbb{R}^{T \times H \times W \times d}$,相机信号通过 warp 第一帧后 VAE 编码得到 $z_{cam}$。在每个 transformer block 里通过公式 $f^i \leftarrow f^i + W_{cam} z^i_{cam} + W_{trk} e^i_{trk}$ 注入到特征中。第六步:因果训练。对前景轨迹按 $\tilde{\tau}_i = \tau^{act}_i$(概率 $p$)或 $\tau^{pas}_i$(概率 $1-p$)随机丢弃一半,让模型学会补全。配合粒度丢弃(patch 级别平均)、遮挡丢弃、轨迹截断等增强提升鲁棒性。第七步:推理。用户在第一帧上画稀疏轨迹(1500 条/视频),指定目标相机位姿,模型联合去噪 35 步后输出目标视角视频。
技术新颖性
技术新颖性主要体现在三个层面。架构层面:双流 DiT + 跨视角自注意力的设计,第一次让"用户画轨迹 + 自由调相机"成为可能,且不依赖任何 3D 先验。相比 ReCamMaster [1]、SyncCamMaster [2]、Gen3C [60] 等需要相机轨迹或深度做 warp 的方法,MoRight 在规范流里完成"运动学习",目标流通过注意力吸收,等于把 motion bank 隐式编码在 DiT 权重里。任务层面:把"因果推理"从外部模块(物理引擎、LLM 文本规划)拉回到视频模型内部,方法简洁优雅——一个 dropout 就能学到动作-结果链,推理时双向皆可。数据层面:异构监督融合策略(paired two-view + 静态单视角 + 混合单视角 + 合成图形)巧妙解决了"现实视频都是单视角"的难题,特别是单视角静态视频被复制为两流后,第一流带运动条件、第二流无运动条件,迫使模型学会通过自注意力"传递"运动信息。WanMove [15]、ATI [68] 等基线必须使用全帧前景/背景像素轨迹作为特权输入,而 MoRight 只用第一帧重投影轨迹就达到了可比甚至更好的 EPE。
实验结果
实验在三个基准上进行:DynPose-100K(50 段高度动态相机视频)、WISA(50 段物理动力学视频,覆盖碰撞/形变/弹性/液体/刚体)、Cooking(50 段真实手-物交互烹饪视频)。所有方法统一在 Wan2.1-14B 骨干上对比。Table 1 显示,在 DynPose-100K 上 MoRight 的物体运动 EPE 达到 7.64(最优,超过 WanMove 的 8.05),尽管没有用未来帧像素轨迹作为特权输入;相机控制上 Rotation error 4.55、Translation 4.61 接近 WanMove(4.12/3.56)。在 Cooking 基准上 MoRight 全面领先:PSNR 16.44(最高)、SSIM 0.594(最高)、EPE 4.27(最高),Rotation 2.16(最高),证明在交互密集场景下解耦设计的优势更明显。Table 2 聚焦因果推理:MoRight 在 WISA 上 FID 52.95(最优,对比 ATI 69.80、WanMove 61.34)、FVD 876.03(最优)、PC 物理常识分 0.76(最高);在 Cooking 上 FID 39.94、FVD 730.46、PC 0.88 均达到最优或并列最优,且只用了单个主动运动描述(基线方法用完整动作+结果描述)。Table 3 的消融实验揭示了每个组件的贡献:级联式管线(先静态再相机控制)FID 41.74 / EPE 5.05;去掉固定视角分支后 EPE 飙升到 14.30、FVD 997.83;去掉因果推理 PC 略降;去掉混合训练相机精度退化;说明规范化锚点分支贡献最大。Figure 8 的人类评估(11 名参与者、330 次评估)显示用户对 MoRight 的偏好度在可控性(53.5% vs ATI 18.8% / WanMove 25.0%)、运动真实感(54.6% vs 18.2% / 25.7%)、真实感(55.9% vs 17.4% / 23.1%)三个维度均超过半数。
查看结构化数据
| 任务 | 指标 | 本文 | 基线 | 提升 |
|---|---|---|---|---|
| DynPose-100K 物体运动控制(EPE) | End-Point Error (越低越好) | 7.64 | WanMove 8.05 / ATI 8.43 / MP 7.56 | 在不使用特权 future-frame tracks 的前提下,与最佳基线(MP)相当,比 WanMove 提升 5.1% |
| Cooking 视觉质量(PSNR) | PSNR (dB, 越高越好) | 16.44 | WanMove 16.42 / ATI 15.93 / MP 15.68 | 达到 SOTA,比最佳基线 WanMove 提升 0.02 dB |
| Cooking 物体运动控制(EPE) | End-Point Error | 4.27 | WanMove 5.47 / ATI 5.87 / MP 4.25 | 在 PSNR/SSIM 提升的同时,EPE 接近 SOTA(MP 4.25) |
| WISA 因果推理(FID) | FID (越低越好) | 52.95 | WanMove 61.34 / ATI 69.80 / MP 57.29 | 比最佳基线 MP 提升 7.6%,且只用单主动运动描述 |
| WISA 物理常识(PC) | Physical Commonsense [0,1] | 0.76 | MP/ATI 0.75 / WanMove 0.73 | 最高分 0.76,表明因果推理带来的物理合理性提升 |
| Cooking 物理常识(PC) | Physical Commonsense [0,1] | 0.88 | MP 0.87 / ATI 0.85 / WanMove 0.84 | 最高分 0.88,并列 SA 0.89 |
| Cooking FVD | FVD (越低越好) | 730.46 | MP 759.53 / ATI 881.94 / WanMove 882.90 | 比最佳基线 MP 提升 3.8%,比 ATI 提升 17.2% |
| 人类感知评估-可控性 | 用户偏好占比 | 53.5% | WanMove 25.0% / ATI 18.8% | 绝对优势,比 WanMove 多 28.5 个百分点 |
局限与改进
作者在论文 4.7 节明确承认了四点局限(Figure 9 展示了对应失败案例)。第一,错误因果推理:模型可能生成不合理结果,例如两个烤肉串合并成一个物体,说明主动-被动分类错误或物理常识学习不充分。第二,遮挡下的不自然运动:当输入轨迹因遮挡变得时间稀疏时,模型无法可靠推断预期运动(手部案例)。第三,物理一致性违反:运动过程中物体可能凭空消失(足球案例),缺乏显式的物理约束。第四,后期帧幻觉:可能在后续帧凭空生成新内容(多出一只手)。此外,相机控制对常见平滑轨迹(orbit/pan/zoom)效果好,但对剧烈的自我运动(egomotion)输入会退化——这是因为训练数据主要来自 YouTube 视频,相机变化相对温和。客观数据也透露出局限:推理时生成一段视频需要单张 A100 上约 15 分钟(35 步扩散 + 14B 参数),实用性受限;FVD 在 WISA 上高达 876.03,说明物理动力学多样性场景下生成质量仍有较大提升空间。
独立分析的弱点
独立分析几个可改进的弱点。第一,规范化视角与目标视角的耦合方式过于隐式。Cross-view self-attention 虽然让两流交换信息,但没有显式几何约束(如投影一致性损失),理论上可能出现"目标流中物体位置不对应规范化流的轨迹"的情况——论文 EPE 4.27 vs MP 4.25 的微弱差距可能就源于此。改进方向:加入显式的 2D-3D-2D 一致性损失,或借鉴 SyncCamMaster 的同步约束。第二,训练数据的因果标注依赖 Qwen3-VL,存在标注错误风险。从 Figure 9 的"两个烤肉串合并"案例看,主被动分类出错会直接破坏因果学习。改进方向:人工校验小批量数据 + 引入主动学习循环让模型自己识别可疑标注。第三,推理时单视频 15 分钟的耗时难以支持实时交互。改进方向:蒸馏到少步(5-10 步)扩散模型,或结合一致性模型(Consistency Model)做单步生成。第四,camera encoder 仅 32 通道、trajectory encoder 隐藏维 64,相对 14B DiT 显得"轻",可能是快速运动或复杂相机轨迹处理不力的瓶颈——可以在不影响计算预算的前提下适度增宽。第五,方法只支持单张输入图,不支持多张关键帧预设;也不支持对已生成视频进行二次编辑,这限制了其在长视频/故事板场景的应用。
未来方向
作者在结论和消融中暗示了几个方向。一是把因果推理扩展到更长时间跨度:当前 480p 单段视频的因果建模是"局部"的,未来可以探索长程记忆(如借鉴 ReLic [35] 的 long-horizon memory),让因果链跨段连贯。二是更复杂的物理建模:当前 PC 分 0.88 仍有提升空间,可结合 PhysGen3D [11] / PhysDreamer [89] 的物理仿真先验,让生成视频在刚体、流体、弹性体上更逼真。三是结合世界模型用于具身智能:MoRight 论文开头明确提到 embodied AI agents 和 world models 是目标应用,未来可以把 MoRight 作为可交互的世界模型 backbone,集成进 Navigation World Models [6]、DreamDojo [23] 这类系统。四是拓展到多物体、人物-人交互(human-human interaction):目前主要演示手-物交互,对 Ponimator [49] 那种人-人交互动画还未涉及。五是 3D 一致性生成:把双流架构推广到 3D-aware 生成,让用户能给出 6DoF 相机轨迹而不仅是离散关键帧位姿,这是从 2D 可控到 3D 可控的自然延伸。
复现评估
复现可行性需要分几方面评估。代码方面,论文提供了项目页 https://research.nvidia.com/labs/sil/projects/moright,但摘要及正文中未明确说明代码是否开源(arXiv 版本通常不强制附代码),从学术惯例看,NVIDIA 的项目通常会后续开源,建议关注 GitHub。数据方面,训练数据来源透明:Panda-70M [13]、Wild-SDG-1M [36]、SyncCamMaster [2] 均为公开数据集。共采集 76K 静态视频、合成 43K 配对多视角视频、3.4K 合成交互视频,全部 480p。算力方面,门槛较高:训练用 64 张 GPU 跑 15K 迭代,batch size 16,学习率 $3 \times 10^{-5}$,weight decay 0.001,AdamW 优化器;推理单视频 35 步扩散需约 15 分钟单张 A100。这是一个仅大厂或顶级实验室可复现的算力规模,独立研究者基本只能做推理或在小数据集上 fine-tune。实现细节方面,论文附录 A 给出了较完整的网络架构、训练超参、数据增广和推理流程,相机编码、轨迹编码、位置编码(RoPE)、双流拼接方式都写清楚了,工程上参考价值高。总体而言,方法思路清晰、数据集公开,但完整复现需要 64-GPU 集群的算力投入。
论文图表
左侧展示正向推理(用户给出手部动作,模型预测茶壶轨迹)和逆向推理(用户指定茶壶轨迹,模型反推手部动作);右侧展示解耦的相机-物体控制——同一物体运动可搭配 orbit-down/zoom-in/zoom-out 等不同相机轨迹生成多视角视频。
这是论文的'封面图',浓缩展示了 MoRight 三大能力(解耦控制、前向/逆向因果、视角自由调整),是理解论文定位和贡献的第一入口。
四个失败示例:(1) 两个烤肉串合并成一个物体(错误因果推理);(2) 手部运动因遮挡变得不自然;(3) 足球运动中物体消失(物理不一致);(4) 后期帧凭空多出一只手(幻觉)。
作者诚实地展示局限性,对评估方法边界、规划改进方向非常重要。