25年8月来自新加坡国立、南洋理工、香港科技大学和上海 AI 实验室的论文“EgoTwin: Dreaming Body and View in First Person”。

虽然非自我中心(exocentric)视频合成已取得长足进步,但以自我为中心(egocentric)视频生成仍未得到充分探索,这需要对第一人称视角内容以及佩戴者身体运动引起的相机运动模式进行建模。为了弥补这一差距,本文引入一项以自我为中心的视频和人体运动联合生成任务,该任务有两个关键挑战:1)视点对齐:生成视频中的相机轨迹必须与人体运动衍生的头部轨迹精确对齐;2)因果相互作用:合成的人体运动必须与相邻视频帧中观察的视觉动态存在因果关系。为了应对这些挑战,提出 EgoTwin,一个基于扩散 transformer 架构的联合视频运动生成框架。具体而言,EgoTwin 引入一种以头部为中心的运动表征,将人体运动锚定到头部关节,并结合一种受控制论启发的交互机制,该机制能够明确地捕捉注意操作中视频和运动之间的因果相互作用。为了进行全面的评估,整理一个包含同步文本-视频-运动三元组的大规模真实数据集,并设计新的指标来评估视频运动的一致性。

本文介绍一种联合视频运动生成任务,该任务明确地将以自我为中心的视频与佩戴相机者的运动一起建模。如图 所示,给定一个静态人体姿势和初始场景观察,目标是在文本描述的引导下,生成以自我为中心的视频和人体运动的同步序列。

请添加图片描述


这项任务带来了两项超越以往研究的基本挑战:(1) 视点对齐。在整个序列中,以自我为中心的视频中捕捉到的相机轨迹必须与基于人体运动的头部轨迹精确对齐。这一要求自然源于相机牢固地安装在佩戴者头部 [10, 2],导致头部运动和相机运动紧密耦合。然而,现有的以自我为中心的视频生成方法通常采用单向视点调节策略,基于预定义的相机姿势合成视频 [56, 19]。以自我为中心视频中的相机姿态并非外部提供,而是由佩戴者的头部运动固有决定的。因此,相机姿态必须与人体运动同时生成,这就需要双向交互以确保视点对齐。(2)因果关系。在每个时间步,当前视觉帧提供塑造人体运动合成的空间背景;反过来,新生成的运动会影响后续视频帧。以上图中的“开门”场景为例:以自我为中心的观察告知佩戴者该门的位置,从而引导佩戴者的动作。反过来,执行的动作会改变身体姿态(例如,伸手去拿门把手)、相机姿态(例如,朝向门)以及周围场景(例如,门逐渐打开)。这些变化必须准确反映在后续视频帧中,从而影响未来的运动生成。这种递归依赖关系在视频和运动之间形成一个闭合的观察-动作循环,凸显对它们随时间变化的因果关系进行建模的必要性。

为了应对这些挑战, EgoTwin,一个联合视频-运动生成框架,可以生成具有身体诱导的摄像机运动模式以自我为中心的视频,同时捕捉视觉观察和人类动作之间的因果关系。具体而言,EgoTwin 采用扩散 Transformer 主干 [37, 11],并针对文本、视频和运动分别设置三个特定于模态的分支。为了对联合分布进行建模,EgoTwin 在视频和运动分支中采用异步扩散 [4],这使得每个模态都能在其时间步长上演化,同时保持跨模态交互。为了实现精确的视点对齐,摒弃常用的以根为中心的运动表示 [14],这种表示会掩盖全身运动中的头部姿势,从而无法将以自我为中心的视角展现给视频分支。相反,引入一种以头部为中心的运动表征,将人体运动锚定到头部关节,从而实现生成视频的摄像机视点与合成运动中头部姿势之间的直接对齐。为了忠实地捕捉因果关系,从控制论系统中的观察-动作反馈回路中汲取灵感 [1, 35],其中观察塑造动作,而动作改变未来的观察。通过一种结构化的交互机制来实现这一原则:每个视频 token 都会关注先前的动作 token,捕捉当前观察如何从过去的动作中产生;而每个动作标记都会关注当前和即将到来的视频 token,从而能够根据感知到的场景转换推断动作。这种双向设计使得运动驱动的视频合成和视频驱动的运动合成能够同步发展。

为了促进该领域的研究,从 Nymeria [32] 中整理一个包含真实世界自我中心视频和人体姿势注释的大规模数据集。在评估方面,不仅评估视频和运动的单独质量,还提出视频运动一致性指标,以量化其跨模态对齐。

问题定义。给定场景中初始人体姿态 P0,基于该姿态的自我中心观测值 I0,以及场景中预期人体动作的文本描述,我们的目标是生成两个同步序列:(1) 人体姿态序列 P1:N_m 和 (2) 以自我中心的视角序列 I1:N_v,这两个序列的持续时间相同。其中,J 表示人体关节数量,H 和 W 表示图像高度和宽度,N_m 和 N_v 分别表示姿态和视角序列的帧数。这形成了一个闭环生成范式,其中视频和运动在整个序列中相互持续地影响。

框架概述。如图展示 EgoTwin 框架的概览。首先分别使用文本编码器、视频 VAE 编码器和运动 VAE 编码器对文本、视频和运动输入进行编码。然后,这些嵌入通过扩散 Transformer 的相应分支进行处理。最后,视频和运动输出由各自的 VAE 解码器解码。

请添加图片描述

模态 Token 化

对于文本和视频模态,采用 T5-XXL [43] 作为文本 token 化器和编码器,并采用 3D 因果变分自编码器 [60] 作为视频 token 化器。具体而言,首先将输入文本 token 化,并通过截断或填充调整为固定长度 L_t,然后编码为文本嵌入 c。视频帧在时间和空间上被压缩为潜表示 z_v,压缩率为 4 × 8 × 8,潜通道数为 C_v;随后,对 z_v 进行补丁处理并展开为序列长度为 L_v 的视频嵌入 X_v。D_t 和 D_v 分别表示文本和视频的嵌入维度。

运动表示。与文本和视频的统一表示不同,运动表示表现出极大的多样性。目前,人体运动生成中最广泛采用的格式是过度参数化的规范姿势表征 [14],它已成为包括 KIT-ML [42] 和 HumanML3D [14] 在内的热门数据集默认标准。形式上,每一帧的人体姿势被定义为 (r ̇a, r ̇xz,ry, jp,jv,jr,cf) 的三元组,包含七组特征:沿 Y 轴的根角速度 r ̇a、XZ 平面上的根线速度 r ̇xz、根高度 r ̇y、根空间中的局部关节位置 jp 和速度 jv、局部空间中的关节旋转 jr 以及二元足地接触点 cf。运动被重定位到默认的人体骨骼模板,并初始旋转至面向正 Z 轴。

然而,上述以根为中心的表示并不适用于本文任务,因为与以自我为中心的视频对齐的关键信息(例如头部关节的姿势)深深地隐藏在复杂的多步骤运动学计算中。从数学上讲,恢复头部关节姿势需要积分根速度以获得根姿势,然后应用正向运动学 (FK) 将变换通过运动链传播到头部关节。直观地讲,这种计算过于复杂,无法通过神经网络精确建模。为了验证见解,本文训练一个基于 GRU 的回归模型,该模型以运动表示序列作为输入,并由针对真实头部姿势序列的 MSE 损失进行监督。如图所示,由于缺乏准确建模头部姿势的明确线索,平移和旋转误差(Trans_Err 和 Rot_Err)都在高水平上趋于稳定。

请添加图片描述

为了解决这个问题,本文提出一种以头部为中心的运动表示,该表示明确地揭示以自我为中心的信息。具体来说,将表示定义为一个元组 (hr, h ̇r, hp, h ̇p, jp, jv, jr),其中 hr 和 h ̇r 分别是头部关节的绝对和相对旋转,hp 和 h ̇p 分别是头部关节的绝对和相对位置。术语 jp 和 jv 现在在头部空间中表示,而 jr 保留其原始含义。此外,将初始头部姿势标准化为零平移和身份旋转,并将初始帧中的所有一阶运动特征设置为零。表示至少在两个新方式上与以自我为中心的视频自然产生共鸣:1) 它可以更准确地访问头部轨迹,这与相机运动密切相关; 2) 它更清晰地展现以自我为中心的视频是如何以自我为中心地观察身体的。

动作 token 化。受因果三维卷积神经网络 (3D CNN) [62] 的启发,用一维因果卷积构建运动变分自编码器 (VAE),其中所有填充都应用在卷积轴的起始处。编码器和解码器采用对称结构,各包含两个 2 倍下采样或上采样阶段,并与 ResNet 模块 [20] 交错。运动变分自编码器 (VAE) 使用重建损失函数 L_rec 和 Kullback-Leibler (KL) 散度正则化函数 L_KL (λ_KL 加权) 的组合进行训练。为了确保无论维度如何,不同组的损失贡献都是平衡的,分别计算 3D 头部(hp、h ̇p)、6D 头部(hr、h ̇r)、3D 关节(jp、jv)和 6D 关节(jr)组件的 VAE 损失 L_VAE。

扩散 Transformer

扩散 Transformer 扩展 MM-DiT [11](最初设计用于文本转图像生成),使其能够支持文本、视频和运动模态。每个分支由一系列多层感知器 (MLP) 组成,并结合自适应层归一化 (AdaLN) 和门控机制 [37] 来整合时间步长信息。文本和视频分支由 CogVideoX [60] 初始化,除 AdaLN 外,其他分支共享权重。运动分支仅对应于其他分支的下半部分层,因为视频运动交互的基本视觉线索(例如相机姿态和场景结构)主要在视频扩散主干网络的早期层中捕获。相比之下,较高层则专注于外观细节,这些细节与运动的相关性较低。为了进一步提高效率,运动分支采用了降低的通道维度,这与运动相对于视频的较低表示复杂度相一致。来自不同模态的嵌入序列被投影到共同的维度 D,并连接起来进行联合注意操作 [52]。这种三分支架构允许每个模态在其自身的表征空间中工作,同时仍然关注其他模态并与其他模态交互。

交互机制。原始的 MM-DiT 框架仅包含文本和图像模态,其中跨模态一致性仅在全局层面强制执行,即,将整幅图像与整段文本匹配即可。然而,任务要求视频和运动之间实现细粒度的时间同步:每个视频帧必须与相应的运动帧在时间上对齐。尽管为视频和运动 tokens 引入正弦位置编码 [52],并为视频 token 引入 3D 旋转位置嵌入 (RoPE) [47] 以提供绝对和相对位置信息,但这些机制主要捕获模态内结构。因此,每个时间步的模态间对应关系对于扩散 Transformer 而言仍然是隐式的,这可能导致全局一致的输出,但仍然缺乏帧间同步。为了应对这一挑战,通过在扩散 Transformer 中引入结构化联合注意掩码,明确地编码视频和运动之间的因果相互作用。鉴于人体运动通常以比以自我为中心的视频更高的时间分辨率捕捉,将运动 token 的数量设置为视频 token 数量的两倍(即 N_m = 2N_v ),同时不失一般性。形式上,遵循控制论[1,35]中的符号,将 Ii 重写为观测 Oi,将 (P2i+1,P2i+2) 重写为(分块的)动作 Ai,其中 i ∈ [0, N_v − 1]。根据正向动力学原理:{Oi, Ai} → Oi+1 和逆向动力学原理:{Oi, Oi+1} → Ai,对应于 Oi 的视频 token 可以关注对应于 Ai−1 的运动 token,从而捕捉 Oi 如何从 Ai−1 产生;而对应于 Ai 的运动 token 可以关注对应于 Oi 和 Oi+1 的视频标记,从而能够基于从 Oi 到 Oi+1 的场景转换推断 Ai。P0 是一种特殊情况,它允许与 I0 进行双边注意。如图所示,除了上述关系之外,视频和运动之间的剩余注意被阻止,而所有模态内注意以及与文本相关的模态间注意都被保留。

请添加图片描述

异步扩散。分别在 0 到 T(最大时间步长)之间采样两个时间步长 t_v 和 t_m,并将与这两个时间步长相关的高斯噪声 ε_v 和 ε_m 分别添加到潜数据 z_v 和 z_m 中。每个时间步长首先通过正弦嵌入进行编码,然后由多层感知器 (MLP) 处理两个串联的嵌入,生成统一的时间步长嵌入 y,并将其作为 AdaLN 层的输入。模型由视频降噪器 εv_θ(ztv_v, ztm_m, c, t_v, t_m) 和运动降噪器 εm_θ(ztm_m, ztv_v, c, t _m, t_v) 组成,它们经过联合优化,可以同时预测添加到视频和运动潜数据中的噪声。

训练与采样

训练范式。训练方案包含三个阶段:1)运动 VAE 训练。2)文本-转-运动预训练。由于运动分支缺乏用于初始化的预训练权重,仅使用文本和运动嵌入作为输入,在文本-转-运动任务上对其进行预训练,同时保持文本分支冻结。遵循无分类器指导 (CFG) [23],以 10% 的概率随机丢弃文本嵌入,以模拟无条件运动生成。通过在此阶段省略更长的视频嵌入,可以利用更高的并行性,从而加速训练过程。至关重要的是,冻结文本分支不仅可以保留预训练的文本转视频权重,还可以促进将运动嵌入集成到预训练的文本-视频嵌入空间中。3)联合文本-视频-运动训练。在最后阶段,视频嵌入被纳入其中,模型学习基于文本的视频和运动的联合分布。同样,文本嵌入以 10% 的概率随机丢弃,以模拟无条件的视频运动生成。

采样策略。得益于联合分布建模,该框架不仅支持基于文本的联合视频运动生成 (T2VM),还支持单模态生成,包括基于文本和运动的视频生成 (TM2V),以及基于文本和视频的运动生成 (TV2M)。

通过交换 CFG 中 v 和 m 的角色,可以推导出 TV2M 采样的 CFG 公式。其中,w_t、w_v 和 w_m 分别表示针对文本、视频和运动条件的指导尺度。

采样后,视频分支中的潜数据被解补丁以恢复其原始形状,然后由 3D 因果 VAE 解码器 [60] 解码以重建视频,而运动分支中的潜数据则通过学习的运动 VAE 解码器来重建运动。


评估指标

视频质量。采用图像 Fréchet 初始距离 (I-FID) [21] 来评估单个帧的视觉保真度和真实感,方法是测量生成帧的特征与真实图像特征之间的分布距离。在视频层面,用 Fréchet 视频距离 (FVD) [50] 来量化生成视频序列与真实视频序列之间的时间一致性和连贯性。此外,用 CLIP 相似度 (CLIP-SIM) [57] 来评估生成的视频片段与文本提示之间的语义对齐和上下文相关性。

运动质量。选择运动 Fréchet 初始距离 (M-FID) [21] 来评估生成运动与真实运动的高级特征之间的统计相似性。为了评估文本和运动之间的对齐程度,训练一个基于 GRU 的文本特征提取器和一个基于 GRU 的运动特征提取器,它们都与 [14] 中的评估器共享相同的架构。这些模型使用对比损失对 GloVe [38] 文本嵌入和运动表示进行优化,确保匹配的文本-运动对产生几何上接近的特征向量。在这个学习的特征空间中,文本-到-运动的检索精度 (R-Prec) 以 Top-3 检索精度来衡量。同时,多模态距离 (MM-Dist) 捕获相应运动和文本特征之间的平均欧氏距离。

视频-运动一致性。建议从两个方面评估生成的以自我为中心视频与人体运动之间的一致性:1) 视角一致性:首先使用 DROID-SLAM [48] 估计生成的以自我为中心的视频的逐帧相机姿态,并从生成的人体运动中提取头部关节姿态。然后,在第一帧处对齐两条轨迹,并应用 Procrustes 分析来确定最佳比例因子,使估计的相机轨迹与提取的头部轨迹对齐。最后,计算平移误差(Trans_Err)作为相应相机和头部位置之间的平均欧氏距离,计算旋转误差(Rot_Err)作为相应相机和头部方向之间的平均角度差,使用与[19]相同的公式。2)手部一致性:在生成的以自我为中心的视频中检测配备动作捕捉设备的左手和右手的存在。对于生成的人体运动,从安装在相应头部关节上、具有已知内在函数的虚拟摄像机的视角计算手部可见性。基于存在和可见性分析,将手部 F 分数(HandScore)定义为左手和右手的平均 F 分数,其中真正(TP)例表示手存在于视频中并且从运动的头部可见,假正例(FP)表示手存在于视频中但从运动的头部不可见,假负例(FN)表示手不在视频中但从运动的头部可见。

实验设置

数据集。为了克服使用合成数据集或小规模真实数据集进行评估的局限性,在 Nymeria [32] 上训练和评估模型。Nymeria 是一个大规模的真实设备数据集,捕捉在室内外各种地点从事各种日常活动的不同人群。该数据集提供成对的文本-视频-运动数据,包括使用 Project Aria 眼镜 [10] 录制的以自我为中心视频、使用 Xsens 惯性运动捕捉系统 [36] 捕捉的全身运动,以及由人工注释者撰写的运动旁白。所有数据被分割成 5 秒的片段,经过过滤后产生约 17 万个样本,这些样本被分成训练集、验证集和测试集,用于联合训练阶段。确保测试集中的个体和环境在联合训练期间均没见过。

基线。由于先前的方法都无法完成任务,提出一个简单而有效的基线模型 VidMLD。它保留 EgoTwin 的架构,同时删除所有专用设计。换句话说,VidMLD 结合最先进的视频扩散模型 CogVideoX [60] 和潜空间运动扩散模型 MLD [9](这两个模型在单峰生成方面都表现出色),并通过多峰扩散架构 MM-DiT [11] 将它们连接起来,实现联合生成。采用三阶段训练方案,并使用原始的无分类器指导 [23] 进行采样。

实现细节。在实验中,视频未失真并调整大小为 H = W = 480,每个片段包含 N_v + 1 = 41 帧,帧率为 8 FPS。运动数据采用 Xsens 骨架,J = 23 个关节,每段 N_m + 1 = 81 帧,帧率为 16 FPS。视频和运动潜向量分别具有 C_v = 16 和 C_m = 64 通道。文本、视频和运动的嵌入长度分别为 L_t = 226、L_v = 9900 和 L_m = 21,对应的维度分别为 D_t = D_v = D = 3072 和 D_m = 768。超参 λ_KL 设置为 1e-4。文本 CFG 尺度设置为 w_t = 6,视频和运动的 CFG 尺度设置为 w_v = w_m = 4。文本和视频分支共有 42 层,总计约 50 亿个参数,其中大部分参数在两个分支之间共享。运动分支包含 21 层,对应于其他两个分支的下半部分,包含约 3 亿个参数。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐