Infinite-Homography as Robust Conditioning for Camera-Controlled Video Generation¶
会议: ECCV2026
论文: ECCV 原文
领域: 视频生成
关键词: 相机控制、无穷单应性、残余视差、潜空间变换、轨迹增强
一句话总结¶
InfCam 用无穷单应性提供不依赖深度的旋转条件,让冻结的 Wan2.1 配合可训练控制层学习平移引起的残余视差,再用轨迹和焦距增强消除训练配对偏差,在 WebVid 上将旋转误差从 TrajectoryCrafter 的 5.007 降至 3.162。
研究背景与动机¶
给已经拍好的动态视频重新安排镜头,要求模型在保留人物动作和场景内容的同时,改变观察它们的相机位置、朝向和视野。 这不是简单的裁剪或画面平移:相机移动后,前景与背景的相对位移不同,还可能出现源视频从未看到的区域。 GEN3C、TrajectoryCrafter 等方法先估计深度,把源画面重投影到目标相机,再让生成模型修补缺失内容。 深度准确时,这提供了很强的几何条件;深度错误时,物体却会先被投到错误位置。 如果外部深度网络不参与后续训练,这些错位条件就一直存在,生成器必须同时猜测哪里可信、哪里需要纠正。
另一条路线直接学习相机轨迹与视频之间的关系,但成败也受训练配对方式影响。 MultiCamVideo 虽然包含多种运动,其同一场景的不同相机都从同一个位置起步,因此训练时源与目标首帧总是相同。 模型可以学到“复制输入首帧”的捷径,而不是真正服从目标初始姿态;同一场景焦距固定,还会诱导它忽略目标焦距。 这解释了为什么“数据里有多种轨迹和焦距”并不等于“训练配对覆盖了轨迹与焦距变化”。 单纯增加一个相机编码器,无法自动消除这类条件与监督之间的偏差。
本文从投影几何中挑出一部分无需深度即可确定的变换:已知内参与相对旋转时,无穷单应性能够给出旋转后的对应位置。 有限深度和相机平移带来的剩余偏移,则交给视频生成先验与可训练控制层处理。 这种选择没有恢复完整三维场景,而是避免把不可靠的显式深度当成固定条件,同时用增强后的训练配对教会模型响应不同起点和视野。 核心 idea:先用可信的解析旋转条件缩小新视角生成的推断范围,再学习残余视差,并在训练数据中主动打破首帧与焦距不变的捷径。
方法详解¶
整体框架¶
输入是源视频、源与目标相机内参,以及相对于源视频首帧相机坐标系定义的目标轨迹;输出是同一动态场景沿该轨迹拍摄的新视频。 目标轨迹逐帧给出旋转和平移,模型并不要求提供源视频每一帧的真实外参。 LLaVA 从源视频提取描述,作为 Wan2.1 所需的文本条件,而不是额外的几何监督。 训练前通过“轨迹与内参增强”构造同步源目标对;网络内部依次使用“无穷单应性变换”和“单应性引导注意力”。 前者生成旋转对齐的参考潜特征,后者让目标帧同时读取同时间的源内容和几何参考。 源视频经 3D VAE 编码;训练时目标视频也被编码并加噪,推理时则不提供目标真值,由去噪过程产生目标潜变量。 最终通过 3D VAE 解码得到视频,增强生成的目标视频只在训练阶段提供监督。
%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
DATA["同步多视角视频"] --> AUG["轨迹与内参增强"]
AUG -->|训练输入| INPUT["源视频潜特征<br/>内参与目标轨迹"]
INPUT --> WARP["无穷单应性变换"]
INPUT --> ATTN["单应性引导注意力"]
WARP --> ATTN
NOISE["目标噪声潜变量<br/>文本条件"] --> ATTN
ATTN --> OUT["Wan2.1 去噪与解码<br/>目标视频"]
AUG -.->|仅训练:目标真值| SUP["训练监督"]
OUT -.-> SUP
关键设计¶
1. 轨迹与内参增强:让训练对真正发生起点和视野变化
MultiCamVideo 每个场景提供 10 条同步轨迹,每段视频有 81 帧,包含平移、旋转、弧线等运动。 作者利用所有轨迹共享起点这一性质,把同场景的一段视频倒放,再接上另一段正放视频,并删去连接处重复的首帧。 这样得到 161 帧,即 81 + 80 的长序列;连接处对应同一个场景时刻和相机起点,不是随意拼接两段不相关动作。 随后在同场景的增强序列中,按照相同起始时间截取 81 帧,维持不同视角之间的动态同步。 截取窗口不必从原来共同的相机起点开始,因此源与目标首帧可以拥有不同视角。 这一步改变的是模型实际见到的输入输出关系,使“首帧照抄”不再总能满足监督。 它同时会引入倒放动作,属于复用已有数据的增强手段,而不是新增真实拍摄或物理仿真。
焦距增强解决另一种配对不变性:原数据有 18、24、35、50 mm 四档焦距,但同一场景内相机焦距相同。 作者为视频选择比场景原焦距更长的一档,根据焦距比例缩放后中心裁剪,模拟更窄的视野。 该操作只使用原画面已经包含的内容,不凭空生成更宽视野的真值。 构造视频对时,从同场景同步相机中选出源与目标,各自以 0.5 的概率施加焦距增强。 因此,虽然单次增强只能拉长焦距,增强视频放在源端或目标端时,训练对却能同时覆盖相对变长和相对变短。 例如,裁剪后的窄视野视频作为源、原始较宽视野视频作为目标,就给出了扩大视野的监督。 原文列出的基础数据为每档焦距 3,400 个场景,共 13,600 个;训练设置另报 AugMCV 训练划分含 47,432 个场景,正文未充分解释两者的计数对应关系。
2. 无穷单应性变换:只显式固定无需深度的几何部分
一般平面诱导单应性同时依赖相机运动、平面方向和距离;当平面趋向无穷远时,平移相关项消失。 用源内参 \(K_s\)、目标内参 \(K_t\) 和相对旋转 \(R\) 表示,该变换的标准形式为:
这里采用的是第 3.2 节文字定义对应的标准形式;缓存中式 (1)、式 (2) 的排版和运算符损坏,不把损坏的重投影公式猜补成作者原式。 图像齐次坐标经此变换后需要归一化,得到的是旋转与内参变化下的参考位置,而非包含任意平移的最终像素位置。 对于纯旋转,该映射不依赖物体深度;存在平移时,真实对应点还会产生随深度变化的视差。 原文从极线几何解释这种残差的方向约束,并用无穷远平面参考位置与极点之间的关系说明搜索范围为何缩小。 网络没有显式的逐像素深度输出,也没有声明通过硬约束把所有生成像素投影到某条线段上。 因此,这是一种具有几何意义的条件设计,而不是对生成结果给出严格多视图一致性保证。
实际实现不扭曲原始 RGB 帧,而是在潜空间变换源视频的首帧潜特征,以降低计算开销。 之所以选择首帧,是因为目标轨迹就在源相机初始坐标系下定义;对每个目标姿态分别计算对应的无穷单应性。 变换结果经过零初始化卷积后,与原始首帧潜特征作残差相加,再加入携带目标平移与内参信息的相机嵌入。 这使新增路径从较温和的残差状态开始学习,而非一开始就破坏预训练表示。 旋转的可解析部分被提前呈现给模型,平移和隐含场景深度造成的视差则由端到端训练吸收。 作者称旋转条件“无噪声”,其前提是给定相机参数可靠,并非意味着内参估计、插值或潜特征变换绝无误差。 逐帧源特征变换和像素空间变换的对比被放在补充材料中,本次可用全文不包含这些结果。
3. 单应性引导注意力:在同一时刻融合内容与几何参考
每个时间位置有三组特征:对应时刻的源潜特征、当前目标潜特征,以及按目标相机变换得到的参考潜特征。 相机编码器是一个线性层,输入共 16 维:展平旋转矩阵的 9 维、平移的 3 维,以及 \(f_x,f_y,c_x,c_y\)。 输出嵌入沿空间位置广播,与相应潜特征相加;同一编码器在各 DiT 块之间共享。 目标分支使用指定的目标姿态和内参,源分支因逐帧姿态未知而统一使用源内参及单位姿态 \([I|0]\)。 这个单位姿态是源条件的编码约定,并不表示输入视频的真实相机必定静止。 在参考分支中,显式单应性已经处理旋转,后续相机嵌入补充平移与内参信息。
注意力在空间维度拼接这三组特征,并把每个时间位置当作独立批次项处理。 若批大小为 \(b\)、潜时间长度为 \(f\)、空间大小为 \(h,w\)、通道维度为 \(d\),注意力输入形状为 \(bf\times 3hw\times d\)。 这样目标帧能读取同一时刻的源动作,避免在新增控制层中把不同时间的姿态任意混合。 参考潜特征来自初始帧,但同步源分支仍保留逐帧内容,因此模型不是只凭首帧重建整段动态视频。 融合后,特征重新拆成三个分支,参考分支丢弃,只有源与目标分支进入后续 Wan2.1 层。 在预训练层中,源与目标作为统一批次处理;基础视频模型继续提供时空生成能力。 这种结构把跨视角条件交换交给新增层,把大规模预训练获得的生成先验保留在冻结主干中。
一个完整示例¶
考虑一段人物活动视频,希望新镜头从偏侧方开始,随后沿弧线移动,并使用比源视频更短的焦距;这是机制示例,不是新增实验。 训练时,轨迹增强先提供不同初始视角的同步视频对,焦距增强再让模型见到窄视野输入与宽视野目标的对应关系。 推理时不执行上述训练数据增强,也不提供目标视频,只输入源内容、内参和指定轨迹。 每个目标时间点的旋转与目标内参先决定首帧潜特征如何扭曲,形成几何参考。 相机平移只靠这个参考无法完成,模型还要结合平移编码推断人物与背景各自的残余视差。 单应性引导注意力同时读取该时刻的源动作,因此改变镜头并不要求把人物动作冻结在第一帧。 短焦距带来的新增可见区域没有直接观测,仍需生成先验补全,不能将其理解为恢复了唯一正确的隐藏场景。
损失函数 / 训练策略¶
Wan2.1 预训练权重冻结,正文明确训练新增相机编码器与单应性引导注意力层;新增注意力由对应预训练 Transformer 权重初始化。 变换模块还使用前述零初始化卷积残差,目标视频潜变量加噪后提供生成训练监督。 正文没有单列完整损失公式、噪声调度或几何辅助损失,因此这里不补写未经确认的精确训练目标。 主实验使用 81 帧、\(480\times 832\) 分辨率,训练 15k 次迭代,4 张 H100、批大小 8,约一周。 消融使用 41 帧、\(320\times 544\) 分辨率,训练 20k 次迭代,4 张 H100、批大小 32,约四天。 两种设置都按正文记为 Adam,学习率 \(10^{-5}\),权重衰减 0.01;不自行改写成 AdamW。 “无需深度”特指不使用外部深度图进行条件重投影;WebVid 缺少源内参时,推理仍通过 UniDepth 估计内参。
实验关键数据¶
主实验¶
AugMCV 测试包含 168 个场景,每个场景以静态相机视频为源,对 10 条目标轨迹生成视频,共 1,680 段。 其中 96 个场景源目标内参相同,72 个不同;PSNR、SSIM 越高越好,LPIPS 越低越好,均与真实目标视角视频比较。 下表对应原文表 1,第 12 页,使用主实验的 81 帧、\(480\times 832\) 设置。
| 方法 | 相同内参 PSNR ↑ | SSIM ↑ | LPIPS ↓ | 不同内参 PSNR ↑ | SSIM ↑ | LPIPS ↓ |
|---|---|---|---|---|---|---|
| GEN3C | 16.891 | 0.479 | 0.548 | 17.449 | 0.525 | 0.467 |
| ReCamMaster | 21.130 | 0.617 | 0.420 | 19.665 | 0.558 | 0.510 |
| TrajectoryCrafter | 21.228 | 0.660 | 0.296 | 19.557 | 0.586 | 0.390 |
| InfCam | 22.677 | 0.718 | 0.246 | 22.261 | 0.699 | 0.270 |
WebVid 测试随机选 100 个真实视频,各生成 20 条目标轨迹,共 2,000 段;每个源视频有 10 条同初始姿态、10 条不同初始姿态轨迹。 这里没有目标视角真值,FID/FVD 评估帧级与视频级分布质量;ViPE 估计生成视频轨迹,再与指定轨迹计算旋转和平移误差。 S.C. 是 VBench 主体一致性,M.S. 是运动平滑度,均越高越好;它们不是相机轨迹正确性的替代指标。 下表对应原文表 2,第 12 页;正文未在表旁明确姿态误差的单位和归一化细节,数值按原文报告,不擅自标成度或米。
| 方法 | RotErr ↓ | TransErr ↓ | FID ↓ | FVD ↓ | S.C. ↑ | M.S. ↑ |
|---|---|---|---|---|---|---|
| GEN3C | 9.588 | 3.012 | 43.790 | 331.768 | 0.908 | 0.990 |
| ReCamMaster | 8.375 | 1.027 | 39.930 | 302.025 | 0.944 | 0.994 |
| ReCamMaster w/ interp. | 9.016 | 1.590 | 35.720 | 303.012 | 0.946 | 0.993 |
| TrajectoryCrafter | 5.007 | 0.735 | 30.877 | 289.879 | 0.940 | 0.991 |
| InfCam | 3.162 | 0.438 | 29.702 | 286.952 | 0.949 | 0.993 |
消融实验¶
下表对应原文表 3,第 13 页;T.A. 为轨迹增强,I.A. 为内参增强,W.M. 为变换模块。 使用 41 帧、\(320\times 544\) 的消融设置,不能把该表的更高 PSNR 与表 1 直接比较成模型进一步提升。
| 配置 | 相同内参 PSNR ↑ | SSIM ↑ | LPIPS ↓ | 不同内参 PSNR ↑ | SSIM ↑ | LPIPS ↓ |
|---|---|---|---|---|---|---|
| 无增强、无变换 | 19.228 | 0.562 | 0.427 | 18.480 | 0.507 | 0.525 |
| T.A. | 20.820 | 0.615 | 0.353 | 18.865 | 0.523 | 0.499 |
| T.A. + I.A. | 22.807 | 0.680 | 0.250 | 21.866 | 0.649 | 0.293 |
| T.A. + I.A. + W.M. | 24.412 | 0.733 | 0.198 | 24.311 | 0.720 | 0.203 |
关键发现¶
- 两种增强都有时,增加变换模块使不同内参 PSNR 从 21.866 到 24.311,增加 2.445;相同内参从 22.807 到 24.412,增加 1.605。
- 仅轨迹增强时,不同内参 PSNR 为 18.865,加入内参增强后到 21.866;轨迹控制改善并不能替代焦距变化的训练覆盖。
- WebVid 上 InfCam 的旋转和平移误差优于 TrajectoryCrafter,但 M.S. 的 0.993 低于 ReCamMaster 的 0.994,不能概括为所有指标第一。
- 表 4,第 14 页,另比较数据策略:AugMCV 与 MCV+SCV 混合训练的平移误差分别为 0.839 和 1.441,支持针对性增强的价值,但不与表 2 跨设置拼接比较。
亮点与洞察¶
- 几何条件不必越完整越好:先固定可信旋转,再学习不确定视差,比把错误深度重投影整体交给生成器更容易解释。可迁移的是“解析部分与学习部分按可靠性分工”的思路。
- 数据增强针对条件响应而非仅增加外观多样性。首帧与焦距这两个隐藏不变性会诱导模型忽略控制输入,增强直接改变了这种相关关系。
- 初始帧几何参考与逐帧源内容承担不同职责。前者提供统一坐标基准,后者保持动态同步,避免把静态几何提示误当成整段视频的内容来源。
- 评价同时考虑相机误差与视觉质量很重要。平滑视频可能只是没有充分响应目标运动,不能仅凭 M.S. 判断控制成功。
局限与展望¶
- 作者在结论中承认极端新视角和未观测区域仍有限制,并把详细失败分析放在补充材料;本次全文未包含该材料,不能补写具体失败阈值。
- 不依赖深度图不等于不依赖标定。真实视频内参通过 UniDepth 估计,参数错误仍可能污染被称为“无噪声”的旋转条件,这是方法假设上的边界。
- WebVid 姿态误差依赖 ViPE 的外部估计,且没有目标视角真值。它支持实际可控性的证据,但不是对隐藏几何准确性的直接测量。
- 基础数据的 13,600 场景与增强训练划分的 47,432 场景未在正文中完整对账,复现实验需要作者补充增强展开及划分细节。
- 从读者角度看,可进一步测试移动源相机、内参扰动和大平移下的稳定性,并分开报告几何可见区与新增区域质量;这些是后续建议,不是论文已经完成的实验。
相关工作与启发¶
- vs GEN3C / TrajectoryCrafter:两者使用估计深度构造重投影条件,InfCam 使用无穷单应性参考并学习残余视差;它移除了固定深度误差的传递,但仍需生成未观测内容。
- vs ReCamMaster:同样利用视频生成先验进行相机条件控制,本文额外显式处理旋转,并改造 MultiCamVideo 配对。表 2 的插值版本也未解决姿态偏差,说明推理时过渡帧不能完全替代训练分布调整。
- vs SynCamMaster / SynCamVideo:静态多相机数据能提供不同起始视角,本文则通过动态轨迹的反转与拼接复用已有数据。表 4 说明直接混合两类数据不一定等同于有针对性的条件增强。
- 几何背景:原文参考文献 [4] 为 Hartley 与 Zisserman 的《Multiple View Geometry in Computer Vision》平面与单应性章节,可用于理解无穷远平面、极点和视差的关系。
评分¶
- 新颖性: 4/5。经典投影几何与视频扩散条件的结合清晰,贡献在于表示选择及配套训练,而非新几何定理。
- 实验充分度: 4/5。覆盖合成与真实视频、同异内参和组件消融,但缺少本次可核验的补充实验及标定敏感性结果。
- 写作质量: 4/5。动机、结构与消融关系明确;数据计数、训练目标和误差单位仍需更完整说明,公式抽取损坏另属阅读材料限制。
- 价值: 4/5。为已有视频的可控镜头编辑提供可复用方案,实际使用仍需警惕极端视角中的内容幻觉。