轨迹移动器:视频中物体轨迹的生成式移动 TrajectoryMover: Generative Movement of Object Trajectories in Videos
通过简单边界框控制实现视频中物体轨迹的智能移动,自动保持物理合理性
前置知识
视频到视频生成(V2V)
视频到视频生成是一种生成式任务,旨在将输入视频转换为具有特定编辑效果的输出视频。与图像到图像生成不同,V2V需要保持时间连贯性和运动一致性。核心技术通常基于扩散模型,通过在潜空间中逐步去噪来生成视频帧序列。模型需要学习源视频的特征表示,并将其转换为目标视频,同时保持场景结构、光照和物体的连续性。近年来,通过将源视频的潜在表示与噪声拼接,并利用注意力机制进行跨帧信息传播,实现了高质量的V2V生成。
本文将轨迹移动任务表述为V2V生成问题,需要理解V2V如何保持时间连贯性和场景一致性,这是理解TrajectoryMover架构的基础。
扩散模型(Diffusion Models)
扩散模型是一类基于马尔可夫链的生成模型,通过逐步向数据添加噪声(前向扩散过程),然后学习逆转这个过程(反向去噪过程)来生成新样本。在视频生成中,扩散模型通常在潜空间(通过VAE编码器获得)中操作,通过U-Net或DiT(Diffusion Transformer)架构逐步去噪。条件扩散模型通过额外的控制信号(如文本、图像、轨迹等)引导生成过程。训练目标通常是最小化预测噪声与真实噪声之间的均方误差(MSE)损失。视频扩散模型还需要处理时间维度,通过3D卷积或时间注意力机制实现跨帧信息流动。
本文使用的Wan2.1-T2V-1.3B是扩散模型,理解扩散原理有助于理解TrajectoryMover如何通过精调保留原始先验同时学习新任务。
ControlNet条件控制
ControlNet是一种为预训练扩散模型添加条件控制的架构,它通过冻结原始预训练权重并添加可训练的副本(通过零卷积连接)来学习新的控制信号。这种参数高效调优方法允许模型保持原有的生成能力(如纹理、光照、构图先验),同时学会响应用户的控制输入(如深度图、边缘图、姿态等)。在视频领域,ControlNet被扩展为处理时空信号,通常通过在注意力层中添加交叉注意力机制来注入控制信息。训练时通常交替进行原始任务和新任务,以避免灾难性遗忘。
TrajectoryMover采用参数高效调优策略,只优化自注意力和投影层,与ControlNet的理念一致,这是理解为什么模型能保留先验的关键。
物理仿真(Physics Simulation)
物理仿真是利用物理引擎(如Bullet)模拟刚体或柔性物体在受力作用下的运动行为。在视频数据生成中,物理仿真确保物体的运动符合物理规律,包括重力、碰撞、摩擦等。仿真需要定义物体的质量、摩擦系数、弹性模量等物理属性,并通过数值积分求解运动方程。对于物体轨迹仿真,通常设置初始位置和速度,让物理引擎计算后续帧的位置。碰撞检测确保物体不会穿透场景几何,碰撞响应计算反弹方向和速度衰减。这种方式生成的数据具有高度的真实性和物理合理性,可作为监督信号训练神经网络。
TrajectoryAtlas使用Bullet物理引擎生成轨迹,理解物理仿真有助于理解为什么合成的轨迹数据具有物理合理性,以及如何确保场景交互的真实性。
研究动机
现有的视频编辑方法主要关注指定物体的3D或2D运动轨迹,或改变物体或场景的外观,同时保持视频的合理性和身份一致性。然而,移动视频中物体的3D运动轨迹(即在保持相对3D运动的同时移动物体)的方法仍然缺失。主要挑战在于获取该场景的配对视频数据。之前的方法通常依赖巧妙的数据生成方法来从非配对视频中构建合理的配对数据,但如果一对视频中的一个视频不能轻易从另一个视频构建,这种方法就会失败。现有的轨迹控制方法(如ATI、DaS、VACE)需要用户手动指定完整的物体轨迹,这是一个耗时且需要专业知识的任务。例如,手动指定一个抛射物体的平滑抛物线轨迹非常困难。更重要的是,这种方法将创建给定场景的合理轨迹的责任放在用户肩上,而不是让生成模型的先验来确保其合理性。这在物体需要与场景交互的场景中尤其困难,例如篮球从篮筐反弹的轨迹是什么才是合理的?
本文的目标是本文提出了一个更简单的基础任务:我们能否翻译视频中物体的轨迹,同时保持其运动和场景交互的合理性?这提供了更简单的编辑体验,用户只需在视频的第一帧中拖动一个移动物体到新位置。TrajectoryMover实现了这一任务的生成模型,给定一个源视频,用户用两个边界框标注第一帧:一个围绕要移动物体的源边界框,和定义目标位置的目标边界框。然后模型将轨迹翻译为从目标位置开始,自动调整运动以保持物理合理的场景交互。
与已有工作不同的是,本文的独特切入角度在于将轨迹移动表述为一个简化的视频到视频生成任务,用户只需指定源位置和目标位置,而不是完整的运动轨迹。这与现有方法形成鲜明对比,后者需要精确的2D或3D轨迹规范。为了解决缺乏配对训练数据的问题,本文引入了TrajectoryAtlas,一个大规模合成配对视频数据生成管道,利用物理仿真确保物体与场景之间的合理交互。通过在合成数据上精调预训练视频生成器,并采用交替训练策略,模型在保持原有生成先验的同时,学会了响应用户的轨迹移动控制信号。这种方法的核心创新在于让模型的先验来处理复杂的场景交互,而不是要求用户手动指定详细轨迹。
核心方法
TrajectoryMover的整体思路是将轨迹移动任务表述为视频到视频生成问题。给定一个源视频和一个简单的控制信号(源对象和目标位置的边界框),模型生成一个新的视频,其中对象的轨迹被移动到从目标位置开始,同时保持对象的身份、运动特性和与场景的合理交互。技术路线上,首先解决缺乏配对训练数据的问题,通过TrajectoryAtlas管道自动生成大规模合成配对视频数据。然后使用Wan2.1-T2V-1.3B作为骨干网络,通过参数高效精调策略学习轨迹移动任务。关键创新点包括将边界框控制作为额外的输入帧,以及交替训练策略以保留原始生成先验。
核心创新点在于简化用户交互(只需两个边界框),同时利用生成模型的先验自动处理复杂的场景交互。与需要手动指定完整轨迹的现有方法不同,TrajectoryMover让模型推断移动轨迹后与场景交互的合理行为。这是通过在合成数据上精调实现的,该数据包含了各种轨迹类型(掉落、滚动、投掷、拖拽等)和场景交互(碰撞、反弹等)。另一个关键创新是TrajectoryAtlas数据管道,它使用物理仿真确保生成的轨迹具有物理合理性,并通过可选的在线场景修改为复杂的运动创建足够的空间。此外,采用交替训练策略(7:3比例在轨迹移动任务和标准T2V生成之间切换)确保模型不会忘记原始的生成先验。
方法步骤详情
方法步骤的完整描述如下:首先是数据生成阶段,TrajectoryAtlas管道包含五个阶段:(1)资源缓存准备:加载3D场景、相机、灯光、材质等,并构建碰撞缓存;(2)预检验证:使用跳渲染预检识别有效帧,快速检测候选放置位置是否可见和可行;(3)碰撞感知采样和缩放:对配对的A/B放置进行可见性、支撑法线和穿透间隙的过滤,可选步骤是移除沿轨迹的非结构障碍物;(4)任务模拟:使用Bullet物理引擎模拟不同的运动类型(投掷、掉落、滚动、拖拽),每个轨迹从有效的第一帧放置开始,通过刚体动力学模拟确保与场景几何的合理交互;(5)规范渲染和运行时元数据:通过Blender渲染RGB和二值分割视频,输出成对的源视频A和目标视频B,以及对应的分割掩码。其次是模型训练阶段,使用Wan2.1-T2V-1.3B作为DiT骨干网络,通过VAE将视频帧映射到时空潜在空间。形成三个潜在流:$z_{trj}$(目标轨迹)、$z_{src}$(源视频)、$z_{bb}$(边界框控制),在时间轴上拼接后进行去噪。采用参数高效调优,只优化自注意力和投影层,冻结网络其余部分。使用联合训练方案,在TrajectoryMover V2V任务和标准T2V生成之间以7:3比例交替训练。训练3200步,使用8个H100 GPU,总批次大小为16。最后是推理阶段,用户提供源视频和第一帧的两个边界框(红色源框,绿色目标框),模型自动生成移动后的轨迹视频,根据新路径动态调整运动以确保物理合理性,处理新的场景交互如与环境的真实碰撞。
技术新颖性
技术新颖性分析:1)提出轨迹移动作为视频编辑的基础任务,与现有的需要完整轨迹规范的方法形成对比,大大简化了用户交互;2)TrajectoryAtlas是第一个专门为轨迹移动任务设计的大规模合成配对视频数据生成管道,利用物理仿真确保轨迹的物理合理性;3)引入在线场景修改机制,通过移除会阻碍物体运动的杂乱场景元素,为复杂运动创建足够的空间;4)提出交替训练策略(7:3比例),在特定任务和标准生成之间切换,使模型学会新的控制信号同时保留原始生成先验;5)设计多样化的轨迹类型(静态、滚动、拖拽、掉落、投掷、飞行),覆盖广泛的真实世界运动场景;6)采用参数高效调优,只优化自注意力和投影层,实现有效学习新任务的同时避免灾难性遗忘。
实验结果
实验结果表明TrajectoryMover在轨迹移动任务上取得了最佳的综合性能。在40个合成视频测试集上,IoUtraj为0.24,中心距离误差Ec为61.5像素,相对面积误差Es为1.30,速度误差Ev为0.24,轨迹开始成功率Rs为0.93,轨迹结束成功率Re为0.26,碰撞匹配成功率Rc为0.48。与最强基线ATI相比,TrajectoryMover将SSIMbg从0.71提高到0.92(+0.21),DINOfg从0.39提高到0.45(+0.06)。与在轨迹遵守上最强的基线SFM相比,TrajectoryMover将IoUtraj从0.23提高到0.27(+0.04),同时大幅提高SSIMbg从0.56到0.92和DINOfg从0.29到0.45。用户研究(10名参与者,每人25对判断)中,TrajectoryMover在参与者和InternVL分析中均排名第一(um分别为1.25和0.56)。在37个真实视频上的评估显示,虽然与合成数据相比有性能差距,TrajectoryMover仍然实现了最佳的前景保留(DINOfg = 0.38),同时更好地匹配预期的目标开始位置(Rs = 0.53)。InternVL将TrajectoryMover排名第一(Pref. = 0.62, um = 0.52)。定性比较显示,TrajectoryMover在多样化的复杂运动类型(包括掉落、投掷和滚动序列)中更忠实地跟踪预期轨迹,同时保持前景身份和背景结构。与基线相比,移动的对象保持时间一致性,即使适应新的场景深度和变化的支撑表面,也表现出最小的纹理崩溃或形状漂移。
查看结构化数据
| 任务 | 指标 | 本文 | 基线 | 提升 |
|---|---|---|---|---|
| 背景保留 | SSIMbg ↑ | 0.87 | ATI: 0.64, DaS: 0.40, VACE: 0.61, I2VEdit: 0.15, SFM: 0.51, GWTF: 0.42 | 相比最强基线ATI提升0.23,相比平均基线显著提升 |
| 前景身份保留 | DINOfg ↑ | 0.42 | ATI: 0.33, DaS: 0.38, VACE: 0.19, I2VEdit: 0.14, SFM: 0.24, GWTF: 0.30 | 相比最强基线DaS提升0.04,相比平均基线显著提升 |
| 轨迹遵守-IoU | IoU ↑ | 0.24 | ATI: 0.13, DaS: 0.15, VACE: 0.16, I2VEdit: 0.16, SFM: 0.22, GWTF: 0.21 | 相比最强基线SFM提升0.02 |
| 轨迹遵守-中心距离 | Ec ↓ | 61.5 | ATI: 118.2, DaS: 131.8, VACE: 134.5, I2VEdit: 127.4, SFM: 87.8, GWTF: 128.6 | 相比最强基线SFM降低26.3像素 |
| 轨迹开始成功率 | Rs ↑ | 0.93 | ATI: 0.75, DaS: 0.78, VACE: 0.85, I2VEdit: 0.90, SFM: 0.84, GWTF: 0.86 | 相比最强基线I2VEdit提升0.03 |
| 用户研究偏好 | 参与者偏好 % ↑ | 83.0 | ATI: 15.0, DaS: 12.5, VACE: 14.6, I2VEdit: 16.7, SFM: 24.0, GWTF: 24.0 | 相比最强基线提升59个百分点 |
局限与改进
作者承认的主要局限性包括:严格的轨迹控制仍然存在差距。在40个合成视频测试集上,TrajectoryMover的IoU为0.24,中心误差Ec为61.5像素,表明初始化强(Rs = 0.93)但长程终点准确性弱(Re = 0.26)和接触后一致性弱(Rc = 0.48)。观察到三个反复出现的失败模式:(1)在严重遮挡下,跟踪质量随时间下降。可能的原因是生成器可以捕捉到视觉上合理但偏离预期控制路径的局部合理运动模式,这与开始和终点成功之间的巨大差距(Rs = 0.93 vs Re = 0.26)和非平凡的中心误差(Ec = 61.5 px)一致。(2)在深度模糊区域,不正确的相对深度排序可能导致漂移和不合理的接触,这与适中的碰撞成功(Rc = 0.48)和剩余运动不匹配(Ev = 0.24)一致。(3)具有多个同时运动对象的场景仍然具有挑战性,在复杂动力学下轨迹遵守降低(IoU = 0.24, Ec = 61.5 px, Re = 0.26)。在真实视频上,虽然看到了有希望的结果,但仍然有与合成视频相比的性能差距。
独立分析的弱点
独立分析的弱点包括:1)深度估计准确性限制。当前方法依赖从源视频估计深度来理解场景几何,但深度估计的误差(特别是在深度模糊区域)可能导致不正确的相对深度排序,从而引起漂移和不合理的接触。改进方向:结合多视角几何约束或使用更先进的深度估计模型。2)长程轨迹控制精度下降。虽然轨迹开始成功率高(Rs = 0.93),但轨迹结束成功率低(Re = 0.26),表明模型在长时间跨度上难以保持精确控制。改进方向:引入显式的轨迹规划模块或使用更长的上下文窗口。3)复杂场景中的多对象交互处理不足。当场景中有多个同时运动的对象时,轨迹遵守显著降低。改进方向:增强模型对多对象动态的理解,可能通过对象级别的注意力机制。4)严重遮挡下的跟踪质量下降。当对象被严重遮挡时,生成器可能捕捉到视觉上合理但偏离控制路径的运动模式。改进方向:引入遮挡推理机制或使用时序一致性约束。5)对合成数据的依赖。虽然TrajectoryAtlas生成高质量合成数据,但真实视频的性能仍有差距。改进方向:结合真实世界数据或使用领域自适应技术缩小域差距。
未来方向
作者提出的未来研究方向包括:添加额外的轨迹控制选项,例如可以使用任意帧而不仅仅是第一帧来移动轨迹?可以旋转、缩放或加速轨迹?可以在不同对象之间转移轨迹?可以模拟改变对象的质量?本文的工作可以被视为更一般的运动保留主题的早期例子,类似于身份保留。可以保留非刚性关节对象(如角色)的运动,同时只改变一个肢体的运动?是否可以将现有的角色运动重新定向到新环境或场景?这些问题在很大程度上仍未被探索,希望本文的工作能激发该方向的新研究。基于成果可延伸的方向包括:1)支持更多运动类型的编辑,如弹性碰撞、流体运动、刚体旋转等;2)扩展到非刚性对象(如布料、角色)的运动保留和编辑;3)结合音频生成,为移动的对象添加合理的声学效果;4)支持交互式编辑,用户可以在生成过程中实时调整目标位置;5)扩展到多场景联合编辑,实现跨场景的运动迁移;6)结合物理推断,从真实视频中逆向工程对象的物理属性(质量、摩擦系数等)并用于生成;7)探索更高效的控制信号,如手势、草图或自然语言描述。
复现评估
复现评估:项目页面chhatrekiran.github.io/trajectorymover提供定性视频,显示真实源-目标对、TrajectoryMover与所有基线方法的比较结果以及真实视频。代码和模型的可获得性未在论文中明确说明,但详细的数据生成管道在补充材料中提供,包括TrajectoryAtlas的算法1和实现细节。数据集TrajectoryAtlas由33,290个配对样本组成,对应66,580个RGB视频和66,580个二值掩码视频。训练使用31,629对,测试使用1,661对。所有视频分辨率为1280×720,81帧,16fps。数据生成使用Blender Cycles和PyBullet,在GPU集群上并行运行。模型训练使用8个H100 GPU,总批次大小16,训练3200步。算力要求较高,但数据生成的并行化和可复用的碰撞缓存提高了效率。复现难度中等,主要挑战在于设置数据生成管道和获得足够的计算资源。
论文图表
图1展示了TrajectoryMover的核心能力:通过简单的边界框控制,用户可以将对象的3D运动路径平移到新的起始位置。图中包含四个示例场景:Drop(掉落)、Drop & Drag(掉落和拖拽)、Roll(滚动)、Roll with collision(带碰撞的滚动)。每个场景显示红色框表示原始对象位置,绿色框表示目标位置。结果清楚地表明模型成功地使生成的轨迹与目标初始位置对齐,并且动态调整运动到新路径以确保物理合理性,无缝处理新的场景交互如与环境的真实碰撞。
这张图对理解论文重要,因为它直观地展示了TrajectoryMover的核心功能和应用场景,证明了模型能够在多样化的复杂场景(掉落、滚动、飞行、拖拽)中实现直观的视频编辑。通过具体示例,读者可以立即理解方法的实用性和有效性,以及简化的用户交互方式(只需两个边界框)。
算法1总结了TrajectoryAtlas生成配对源-目标视频的端到端数据生成过程。算法接受场景集S与相机、对象集O、任务集T、随机种子R作为输入,输出配对视频和掩码的数据集D。对于每个种子,算法采样场景s、相机帧f、对象o、任务τ,构建或复用碰撞缓存Ms(scene)和Mo(object)。然后运行轻量级预检步骤获得有效帧和配对的开始和目标放置,进行比例控制。在NoHit模式下,算法估计标称轨迹并仅移除非结构障碍物,否则保留原始碰撞设置。然后模拟和渲染源和目标运行,生成二值掩码,仅当规范输出检查通过时保留样本。对于每个接受的样本,保存视频、掩码和运行时配置以确保可复现性。
这个算法对理解论文重要,因为它以伪代码形式详细描述了TrajectoryAtlas数据生成管道的实现逻辑,使读者能够理解如何系统化地生成高质量的配对训练数据。算法涵盖了碰撞缓存、预检、配对放置、场景修改、模拟、渲染和验证等关键步骤。