← 返回 2026-10-27

WorldCast:大角度相机控制下世界一致的角色视频生成 WorldCast: World-Consistent Character Video Generation with Large-Angle Camera Control

Lei Cao, Yu Liu, Wenhua Liao, Peng Zhang, Fei Wang, Hao Zhang, Jiajun Le, Daiguo Zhou, Jian Luan, Jiayi Ma 📅 2026-10-23 👍 42 2026-11-11 18:30
3D几何引导 多视角一致性 扩散模型 相机控制 视频生成

以尺度对齐的3D点云引导与几何对齐多视角记忆注意力,实现大角度相机轨迹下的角色一致视频生成

前置知识

潜空间视频扩散与 Flow Matching

视频扩散模型在预训练 VAE 的压缩潜空间中运行:编码器 $\mathcal{E}$ 把视频编码为潜变量 $z_0$,采样噪声 $z_1\sim\mathcal{N}(0,I)$ 后按线性插值 $z_\tau=(1-\tau)z_0+\tau z_1$ 构造中间态,网络 $v_\theta$ 用流匹配目标学习速度场,目标速度 $u_\tau=z_1-z_0$;推理时从 $\tau=1$ 积分 ODE 回到 $\tau=0$ 再由 VAE 解码。这种训练方式比传统 DDPM 更稳定且采样步数少。

WorldCast 的生成骨干是 Wan2.1-I2V-14B 扩散 Transformer,两阶段训练、条件注入与消融实验全部建立在流匹配框架上,不懂这一框架就无法理解公式 (2) 的损失与推理流程。

Plücker 射线

一条相机光线由方向向量 $d$ 与矩向量 $\bar{c}\times d$(光心与方向叉积)组成的六维向量表示,即 $r=(d, \bar{c}\times d)$。把图像每个像素的光线堆成网格,就能把相机内外参编码成与图像同分辨率的逐像素特征图,天然包含位姿、朝向与视差信息。

论文用 Plücker 射线网格(式 9 与式 12)把目标轨迹和锚点视角的相机几何分别注入视频分支与记忆分支,且两条分支共享 $f^{cam}$ 投影,这是「共享相机编码让检索视角感知」的关键机制。

点云反投影与前向点渲染

给定深度图 $D_0$、内参 $K_0^{-1}$ 和初始帧位姿 $(R_0, c_0)$,每个像素可反投影到世界坐标 $X(p)=R_0 D_0(p) K_0^{-1}\hat{p}+c_0$ 形成彩色点云;再沿新相机位姿用点溅射(point splatting)加深度缓冲渲染出目标视角图像,未被点覆盖的像素记为空洞掩码 $U_t$。

这是 WorldCast 几何引导分支的全部基础:渲染出的 RGB 引导 $G_t$ 约束轨迹跟随,覆盖掩码 $U_t$ 显式告诉生成器哪些区域需要补全,尺度校准也通过比较渲染运动与参考运动实现。

Umeyama 相似变换对齐

给定两组对应点,求解尺度 $\rho>0$、旋转 $Q\in SO(3)$ 与平移 $b$,最小化 $\sum_j\|\rho Q c_j + b - c'_j\|_2^2$,有闭式解(SVD 分解)。它能把一个坐标系下的点集刚性地、带缩放地映射到另一坐标系,常用于点云配准与轨迹对齐。

GAMA 的核心步骤(式 10-11)就是用 Umeyama 对齐把多视角锚点相机的坐标中心 $\tilde{c}_j$ 变换到目标轨迹坐标系,得到 $c_j^{aln}=\rho^* Q^* \tilde{c}_j + b^*$,使锚点与目标视角可以在同一归一化坐标系下比较几何远近。

评测指标:ATE/RTE/RRE 与 MEt3R

ATE 是估计轨迹与目标轨迹的绝对平移误差,RTE 是相邻帧相对平移误差,RRE 是相对旋转误差,三者共同衡量相机控制精度(越低越好)。MEt3R 基于学习特征度量跨视角几何一致性;ArcFace 余弦相似度衡量人脸身份一致性,CLIP/DINO 相似度衡量语义与外观保持,Subj. 与 IQ 衡量主体一致性与图像质量。

论文所有定量结论(Table 1-3、Figure 1b、Figure 5)都用这些指标表达,例如 ATE 从最佳基线 Uni3C 的 0.098 降到 0.065,读懂指标定义才能判断提升幅度与权衡。

研究动机

现有相机可控视频生成方法(CamI2V、DualCamCtrl、GEN3C、Uni3C、Lyra 2.0 等)在温和的相机运动下已能生成高保真视频,但在「大角度」轨迹上系统性失效:这类轨迹同时包含大幅旋转、平移、轨道半径变化以及任意初始方位角,对相机控制的覆盖范围与几何条件化精度要求远超现有方法,实践中表现为欠旋转、平移错误和路径漂移(Table 1 中 CamI2V 的 ATE 高达 0.351,DualCamCtrl 为 0.297)。更麻烦的是两个挑战天然耦合:视角变化会逐步暴露初始帧中完全未观察到的角色区域(后脑勺、侧面轮廓等),这些区域的几何、外观与身份缺乏约束,导致几何畸变、外观退化与身份漂移——定性对比中 Uni3C 在大视角变化下面部区域严重扭曲,MVGenMaster 即便给了多视角参考仍丢失角色细节。数据侧同样不足:现有相机运动数据集对复杂轨迹覆盖有限,且相机运动序列没有与同一角色的互补视角配对,无法联合研究轨迹精度与跨视角角色一致性。

本文的目标是论文要在同一框架内同时解决两件事:其一,精确跟随包含大幅旋转、平移与半径变化、且初始方位角任意的大角度相机轨迹;其二,在大幅视角变化下保持角色的几何结构、外观与身份一致。为此作者做了三层工作:构建 CLACT——一个角色中心的数据集与评测基准,训练集含 50,000 条 Unreal Engine 5 渲染的相机运动序列和 30,000 条 Blender 渲染的带多视角角色锚点样本(覆盖 99 个角色、33 个环境),评测集含 42 个场景(17 合成 + 25 真实),每个场景在 6 条大角度轨迹家族下测试;提出 WorldCast 框架,把尺度对齐的几何引导与几何对齐的多视角角色记忆结合;并提出 GAMA(Geometry-Aligned Memory Attention)模块,用几何对齐驱动视角相关的角色特征检索与注入。

与已有工作不同的是,已有工作要么只做几何引导、要么只做身份/多视角一致性,缺少把两者放进统一坐标系的方案。几何引导一脉(RealCam-I2V、GEN3C、Uni3C)只用初始帧反投影点云约束轨迹,但点云无法覆盖初始帧看不见的角色区域,对大角度运动先天不足;多视角/身份一脉(ConsisID-Gen、Gloria、Virtually Being)引入互补视角,却没有把锚点几何与目标轨迹显式关联——Table 1 显示给 ViewCrafter 和 MVGenMaster 直接加锚点(★)反而恶化相机控制,MVGenMaster 的 ATE 从 0.125 恶化到 0.218,说明「有参考视角」不等于「会用参考视角」。WorldCast 的独特切入是用 Umeyama 相似变换把锚点相机几何对齐到目标轨迹的共享归一化坐标系,让记忆检索天然感知视角:目标视角离哪个锚点近,就多检索哪个锚点的特征,从机制上解释了为什么多视角证据只有在几何对齐后才有用。

核心方法

直觉上,WorldCast 给模型配了两份互补的「地图」:一份来自初始帧的 3D 点云,告诉模型沿目标轨迹每帧应该看到什么、哪些区域点云盖不住;另一份是同一角色的多视角照片记忆,用来补全点云盖不住的区域。技术上,框架基于 Wan2.1-I2V-14B 流匹配扩散 Transformer。几何分支先用预训练深度模型估计初始帧深度 $D_0$,通过比较候选尺度下点云渲染运动与参考视频运动的中位数比值选出尺度 $s^*=\arg\min_{s}\mathrm{median}_i\log(m_i^{render}/m_i^{ref})$,解决深度与轨迹平移的相对尺度歧义;再把初始帧反投影为彩色点云,沿校准后的轨迹做点渲染得到 RGB 引导 $G_t$ 与覆盖掩码 $U_t$,经 VAE 编码后与噪声潜变量、初始帧条件通道拼接(式 8),并叠加 Plücker 射线条件(式 9)。GAMA 分支则对初始帧与 $M$ 个锚点做分割、联合位姿估计、Umeyama 对齐后构造几何对齐记忆,在 backbone 第 0,2,…,38 层后共插入 20 个记忆注意力块,让视频 token 按几何远近检索锚点特征并残差注入。整个框架分两阶段训练:先混合 76,698 条 SpatialVID 渲染序列与 50,000 条 UE5 序列学相机控制,再在 30,000 条 Blender 多视角样本上学 GAMA。

核心创新是「几何对齐的多视角记忆」:把多视角角色锚点与目标相机轨迹表达在同一个归一化坐标系中,使记忆检索成为几何上良定义的查询,而不是无结构的特征拼接。与已有方法的本质区别有三点。第一,尺度校准:训练时利用参考视频与相机元数据里的固定尺度因子 $a$,对每个候选尺度 $s$ 按 $c_t^{(s)}=c_0+a_s(c_t-c_0)$ 重缩放相机平移并重新渲染,选图像运动最匹配参考的尺度,消除预测深度与真实轨迹之间的相对尺度失配——这是点云引导在长轨迹上不漂移的前提。第二,覆盖掩码 $U_t$ 显式划分「点云能约束的像素」与「需要生成的像素」,把大角度运动下不可见的角色区域变成明确的生成任务而非隐式噪声。第三,GAMA 用 $\rho^*,Q^*,b^*$ 对齐锚点几何后,视频查询在联合自注意力中能按视角相关性检索锚点特征——消融显示去掉几何对齐后 RRE 从 0.896 恶化到 1.374 而 ArcFace 只从 0.555 微降到 0.547,说明对齐的主要价值在相机一致性而非外观复制。

方法步骤详情

输入为初始角色图像 $I_0$、文本 $y$、目标相机序列 $C=\{(K_t,T_t)\}$ 与 $M$ 个多视角锚点 $A=\{A_j\}$。第一步,深度估计与尺度校准:预训练模型估计 $D_0$,对候选尺度 $\mathcal{S}$ 按 $c_t^{(s)}=c_0+a_s(c_t-c_0)$ 重缩放相机中心并渲染,选运动幅度中位数比值最接近参考视频的 $s^*$(式 5)。第二步,点云引导:按式 (6) 反投影 $X(p)=R_0 D_0(p) K_0^{-1}\hat{p}+c_0$,沿校准轨迹点渲染得引导 $G_t$ 与覆盖掩码 $U_t$(式 7)。第三步,条件注入:$h^{geo}=\mathrm{PatchEmbed}(f^{geo}[[z_\tau,z_{I_0},z^{geo},U_\ell]_{ch}])$,叠加 Plücker 射线 $h=h^{geo}+f^{cam}(r_\ell)$(式 8-9)。第四步,锚点对齐:分割抑制背景,多视角几何模型联合估计初始帧与锚点位姿,以 $I_0$ 为共享视图建立对应 $\kappa(j)$,用 Umeyama 求解 $(\rho^*,Q^*,b^*)$ 把锚点变换到轨迹坐标系并做同样归一化(式 10-11)。第五步,记忆构造:$h_A=\mathrm{PatchEmbed}(f^{anc}[[z_A,\mathbf{1}_4,z_A,M_A]_{ch}])+f^{cam}(r_{A,\ell})$,所有观测 token 拼成几何对齐记忆(式 12)。第六步,记忆注意力:在第 $l$ 层把记忆与视频 token 拼接,经 $f^{in}$ 从 5120 维投影到 1024 维、AdaLN 调制,做 8 头($d_h=128$)联合自注意力(式 14),残差 $h^{(l)}\leftarrow h^{(l)}+f^{(l)}_{out}[\Delta x]_{vid}$ 零初始化注入(式 15)。第七步,两阶段训练:Stage 1 混合 76,698 条 SpatialVID 渲染序列与 50,000 条 UE5 序列,更新 $f^{geo}$、patch embedding、backbone 自注意力与 $f^{cam}$;Stage 2 在 30,000 条 Blender 样本上只训记忆注意力库与锚点适配器。超参:AdamW,学习率 $10^{-4}$,权重衰减 0,81 帧 832×480;Stage 1 训 5 epoch、batch 64,Stage 2 训 8 epoch、batch 32。

技术新颖性

技术新颖性体现在三个层面。表示层面:不同于 UCPE 等统一相机表示或 DualCamCtrl 的 RGB-深度联合生成,本文把「点云渲染引导 + 覆盖掩码 + Plücker 射线」三路几何信息在通道维与 token 维同时注入,掩码 $U_t$ 明确划分可信与待生成区域,这在角色中心场景下是新的组合方式。机制层面:GAMA 的记忆检索以共享相机编码 $f^{cam}$ 为条件,查询-键匹配隐式地变成「视角相似度」检索,与 Lyra 2.0 的持久几何、WorldStereo 的几何约束检索相比,本文的锚点几何经 Umeyama 对齐后与目标轨迹严格同帧,不需要在注意力里重新学习坐标系映射——消融中「去掉锚点几何对齐」主要恶化旋转误差(RRE 0.896→1.374)而非外观指标,直接验证了该机制的作用。数据层面:CLACT 是首个把大角度轨迹与同一角色多视角锚点系统配对的基准,50,000 条 UE5 序列加 30,000 条 Blender 多视角样本、99 角色 33 环境,评测集 42 场景×6 轨迹;消融显示去掉 UE5 数据后 Stage 1 的 ATE 从 0.100 恶化到 0.359,说明大角度训练数据本身就是贡献之一。工程上,零初始化残差注入保证适配不破坏预训练骨干,也是社区已验证但此处应用得当的设计。

Overview of WorldCast.
Figure 2: Overview of WorldCast.
Overview of our training-data construction pipeline.
Figure 3: Overview of our training-data construction pipeline.

实验结果

主实验(Table 1,42 场景×6 轨迹)显示 WorldCast 全面领先:ATE 0.065、RTE 0.020、RRE 0.896,均优于最强基线 Uni3C 的 0.098/0.033/1.069;MEt3R 0.228 好于 MVGenMaster★ 的 0.301 与 GEN3C 的 0.306;ArcFace 身份相似度 0.555 大幅超过最佳基线 GEN3C 的 0.433(提升约 28%);CLIP 0.830、DINO 0.719 均为最高,图像质量 0.719 与 Lyra 2.0 的 0.725 基本持平。值得注意的是给 ViewCrafter/MVGenMaster 简单加锚点(★)多数指标不升反降,如 MVGenMaster 的 ATE 从 0.125 恶化到 0.218,反衬几何对齐的必要性。消融(Table 2):去掉 GAMA 分支后 MEt3R 0.228→0.333、ArcFace 0.555→0.370;去掉锚点几何对齐后 RRE 0.896→1.374 而外观指标几乎不变;去掉前景掩码后 IQ 0.719→0.709。第一阶段消融(Table 3):去掉 50,000 条 UE5 数据使 ATE 0.100→0.359、RRE 1.149→4.295;去掉 Plücker 条件使 ATE 0.100→0.275,说明大角度数据与显式射线条件都不可省。Figure 5 显示锚点从 1 个增至 4 个时一致性单调提升但 3→4 收益递减。定性上(Figure 4),Uni3C 在大角度轨迹下面部严重畸变、MVGenMaster 丢失细节,WorldCast 则全程保持身份与 3D 结构并精确跟随轨迹。

Quantitative comparison on our evaluation benchmark.
Table 1: Quantitative comparison on our evaluation benchmark.
Ablation study of the proposed components.
Table 2: Ablation study of the proposed components.
First-stage camera-control ablation.
Table 3: First-stage camera-control ablation.
Qualitative comparison on large-angle camera-controlled video generation.
Figure 4: Qualitative comparison on large-angle camera-controlled video generation.
Effect of the number of character anchors on character consistency.
Figure 5: Effect of the number of character anchors on character consistency.
查看结构化数据
任务指标本文基线提升
大角度相机轨迹跟随 ATE(绝对轨迹误差)↓ 0.065 Uni3C 0.098(最佳基线) 相对降低约 33.7%
相机轨迹跟随 RTE(相对平移误差)↓ 0.020 Uni3C 0.033(最佳基线) 相对降低约 39.4%
相机轨迹跟随 RRE(相对旋转误差)↓ 0.896 Uni3C 1.069(最佳基线) 相对降低约 16.2%
跨视角几何一致性 MEt3R ↓ 0.228 MVGenMaster★ 0.301 / GEN3C 0.306 相对最佳基线降低约 24.3%
角色身份保持 ArcFace 身份相似度 ↑ 0.555 GEN3C 0.433 绝对提升 0.122(约 28.2%)
图像质量 IQ ↑ 0.719 Lyra 2.0 0.725 基本持平(-0.006),一致性换来的代价极小

局限与改进

作者承认并隐含的局限:评测基准只有 42 个场景(17 合成 + 25 真实)、每场景 6 条轨迹,规模较小且合成/真实比例偏向真实但总量有限;训练资产来自 Fab 与 Sketchfab 的 99 个角色、33 个环境,角色类型与风格多样性受资产库限制;方法依赖用户提供同一角色的多视角锚点(前/后/侧),作者在结论中明确将「更灵活的锚点获取」列为未来工作,说明当前锚点假设是主要约束。我自己的观察:第一,几何对齐依赖锚点与初始帧之间的相机中心对应 $\kappa(j)$,靠元数据或最近方位角匹配,锚点稀疏或方位分布不均时 Umeyama 对齐会不稳定,且只对齐相机中心、未建模角色姿态差异(锚点与初始帧姿势不同时记忆检索可能引入外观错位);第二,场景与角色被假设为静态,覆盖掩码区域完全交给生成网络补全,缺乏与点云遮挡关系的显式一致性约束;第三,固定 832×480、81 帧、14B 骨干,分辨率与时长扩展性未验证;第四,流水线串联深度估计、分割、多视角位姿估计三个辅助模型,真实数据上的误差传播未单独量化。

独立分析的弱点

弱点一:多视角锚点依赖。系统默认用户能提供同一角色的前、后、侧视图,但现实中用户往往只有一张照片,这把方法限制在角色资产齐备的工作流(如数字人、影视预演),个人用户场景几乎不可用。改进方向:用少视图生成模型自行合成锚点,或以 3D-aware 单图重建(如单图生成多视角的扩散先验)替代真实锚点。弱点二:几何对齐的鲁棒性。$\kappa(j)$ 依赖源帧元数据或最近方位角匹配,锚点只有 1 个时 Umeyama 对齐退化为刚体拟合且尺度估计不稳;同时只对齐相机中心,忽略角色姿态差异,锚点与目标帧姿势差异大时检索到的特征可能错位。改进方向:引入可学习的对应估计或按角色关键点/骨骼对齐,并对对齐质量差的锚点降权。弱点三:静态假设。角色自身显著运动(转身、肢体大幅变化)时,记忆中的锚点外观会过时,而 GAMA 没有时间维度的记忆更新机制。改进方向:把记忆扩展为随生成过程滚动的在线记忆,或引入 4D 角色代理。弱点四:算力与数据门槛。Stage 1 要在约 126,698 条序列上微调 14B 骨干(batch 64、5 epoch),普通实验室难以复现;可以探索 LoRA 化或只训新增分支的低成本适配路径,并验证小数据下的性能边界。

未来方向

作者在结论中提出三个方向:更灵活的锚点获取(降低对事先拍摄多视角的依赖)、更复杂的动态场景(角色与物体同时运动)、更长或交互式的相机轨迹(超出 81 帧的连续/可控运镜)。基于本文成果还能自然延伸:其一,把 GAMA 的「几何对齐记忆」从角色推广到场景级物体,用多视角物体锚点补全点云空洞,做成通用的世界一致视频生成器;其二,用参数化人体/角色模型(如 SMPL-X)或轻量重建网格替代点云+记忆,使补全区域获得显式几何监督;其三,文本到轨迹的规划——既然轨迹跟随精度已到 ATE 0.065,可以让 LLM 把「电影感运镜」描述编译成参数化轨迹再交给 WorldCast 执行;其四,把覆盖掩码 $U_t$ 与不确定性估计结合,在高不确定区域做多次采样或局部重生成;其五,CLACT 基准可扩展为包含动态场景与更长轨迹的社区标准,补充当前 42 场景的评测盲区。

复现评估

复现条件中等偏难。有利因素:骨干 Wan2.1-I2V-14B 公开可下载;论文首页有 Project Page、Code、Dataset、Model Card 四个链接图标,暗示代码、数据与权重可能开源(正文未逐项确认开源范围);CLACT 渲染管线自动化程度高(Blender 管线自动完成角色放置、相机配置、预览与批量渲染),方法细节(公式 4-15、插入位置 0,2,…,38、共 20 个记忆块、5120→1024 投影、8 头 $d_h=128$)写得足够具体,配合附录 A/B/C 的推导与数据细节可以重建。不利因素:训练数据依赖 Fab 与 Sketchfab 资产(授权与可得性因资产而异),50,000 条 UE5 序列需要 Unreal Engine 渲染集群;Stage 1 在 14B 骨干上以 batch 64 训 5 epoch(76,698 SpatialVID + 50,000 UE5 序列),需要多节点高端 GPU,估算为数十 GPU 天量级;推理时还需部署深度估计、角色分割、多视角位姿估计三个辅助模型。若官方只开源推理权重与部分数据,纯复现训练的成本仍然很高,建议先在公开权重上验证推理、再小规模复现 Stage 2(只需 30,000 条 Blender 样本、batch 32、8 epoch)。

相似论文推荐