通过稀疏扩散和3D渲染实现静态场景的高效相机控制视频生成 Efficient Camera-Controlled Video Generation of Static Scenes via Sparse Diffusion and 3D Rendering
SRENDER通过生成稀疏关键帧和3D渲染,将相机控制视频生成加速40倍以上
前置知识
扩散模型 (Diffusion Models)
扩散模型是一类生成模型,通过逐步添加噪声将数据转化为纯噪声,然后学习逆向过程从噪声中恢复原始数据。在视频生成中,扩散模型通常在潜在空间中操作,通过迭代去噪生成视频帧。标准扩散模型需要为每个视频帧执行多次神经网络推理,计算成本极高。
理解扩散模型是理解本文方法的基础,因为SRENDER的核心创新在于如何减少扩散模型的使用次数,只生成稀疏的关键帧而非所有帧。
3D高斯溅射 (3D Gaussian Splatting, 3DGS)
3DGS是一种3D场景表示方法,使用各向异性高斯基元参数化场景,包括均值、协方差、颜色和不透明度。渲染通过可微分光栅化在屏幕空间进行,能够实现实时渲染性能同时保持高视觉保真度。相比神经辐射场(NeRF),3DGS渲染速度更快,适合实时应用。
本文使用3DGS作为中间表示,从稀疏关键帧重建3D场景,然后高效渲染密集视频。理解3DGS的工作原理对于理解SRENDER的效率优势至关重要。
相机控制视频生成 (Camera-Controlled Video Generation)
这是一种视频生成任务,给定输入图像和相机轨迹,生成符合该相机运动的视频序列。相机轨迹通常表示为一系列相机位姿(旋转矩阵和平移向量),控制虚拟相机在3D空间中的运动。该任务要求生成的视频在几何上一致,符合指定的视角变化。
本文专注于静态场景的相机控制视频生成,这是视频生成领域的重要子任务。理解这个任务定义有助于理解本文方法的适用范围和限制。
关键帧选择 (Keyframe Selection)
关键帧选择是从视频序列中选择代表性帧的过程,这些帧能够捕获场景的关键视角变化。在本文中,关键帧选择是自适应的,根据相机轨迹的复杂度动态决定需要生成多少关键帧。简单的平滑轨迹可能只需要几个关键帧,而复杂的大视角变化轨迹需要更密集的采样。
自适应关键帧选择是SRENDER的核心创新之一,它决定了计算资源的分配。理解这个概念有助于理解本文方法如何平衡效率和质量。
扩散强制 (Diffusion Forcing)
扩散强制是一种视频扩散模型的训练和推理策略,为每个视频帧分配独立的噪声级别,允许模型同时去噪不同噪声级别的帧。这使得模型可以在推理时混合干净的历史帧和部分噪声的待生成帧,支持自回归解码和视频插值。
SRENDER的关键帧生成模型基于扩散强制架构,这使得它能够生成稀疏的关键帧同时保持场景一致性。理解扩散强制有助于理解本文方法的技术基础。
研究动机
现代视频生成模型虽然能产生非常逼真的片段,但计算效率极低。以Sora和Wan等最先进模型为例,生成一个10秒的视频序列需要数万次大型神经网络评估(由于扩散模型的迭代去噪过程),在高端硬件上也需要几分钟的GPU时间。这种低效率阻碍了实时应用,严重限制了在具身AI、交互式内容创作和AR/VR等领域的应用。具体来说,在DL3DV数据集上,History-Guided Video Diffusion基线生成20秒30fps视频需要697.38秒(约11.6分钟),生成帧率仅为0.86fps。这种计算瓶颈使得视频生成无法用于需要实时交互的场景。
本文的目标是本文的具体目标是开发一种视频生成框架,能够显式利用视频数据中的冗余性,实现高效的视频合成。量化目标包括:在DL3DV数据集上将生成速度提升40倍以上,在RealEstate10k数据集上提升20倍以上,同时保持或提高视觉质量(FID和FVD指标)。具体而言,SRENDER旨在实现16.21秒生成20秒30fps视频(600帧),对应生成帧率37.01fps,达到实时性能。
与已有工作不同的是,本文的独特切入角度在于挑战了现有视频生成范式:所有现有方法都依赖神经网络生成每一帧,即使视频数据本质上是冗余的——许多帧描绘的是同一底层3D场景在逐渐变化的条件下(如视角、运动或光照)的视图。本文的核心洞察是:高质量的重建可以从稀疏的多视图观测中获得,而不需要密集的视频输入。通过将关键帧提升到3D表示并渲染中间视图,本文方法将生成成本分摊到数百帧上,同时强制几何一致性。这种显式3D推理的方法是现有工作所忽视的,它们只将3D先验作为内部表示或辅助约束,而最终视频的每一帧仍然由类扩散的神经生成模型产生。
核心方法
SRENDER的方法可以类比为电影制作中的关键帧动画:动画师先绘制关键动作帧,然后由助手填充中间帧。在SRENDER中,扩散模型充当动画师,生成稀疏的关键帧;3D重建和渲染系统充当助手,高效生成密集的中间帧。技术路线分为四个阶段:首先,自适应关键帧密度预测器分析相机轨迹,确定最优关键帧数量;其次,基于扩散的关键帧生成器合成选定的关键帧;然后,使用AnySplat模型从关键帧重建3D高斯溅射表示;最后,通过3DGS渲染器沿相机轨迹渲染密集视频。这种方法将扩散模型的使用限制在稀疏关键帧上,而中间帧通过确定性的3D重建和渲染生成,计算成本极低。
SRENDER的核心创新在于将视频生成任务分解为两个本质不同的子任务:生成式关键帧合成和确定性3D渲染。与现有方法(如History-Guided Video Diffusion)的最本质区别是:现有方法使用神经网络生成每一帧,而SRENDER只使用神经网络生成稀疏的关键帧(最多占总帧数的1/10),然后通过确定性的3D重建和渲染生成所有中间帧。这种分解的关键优势是:1)扩散模型的使用次数大幅减少;2)3DGS渲染极其高效,可实现实时性能;3)显式3D推理强制了几何一致性,避免了扩散模型常见的高频伪影和视角依赖扭曲。此外,自适应关键帧选择模型根据相机轨迹复杂度动态分配计算资源,简单轨迹用稀疏关键帧,复杂轨迹用密集关键帧。
方法步骤详情
SRENDER的方法步骤如下:1)自适应关键帧选择:输入完整相机轨迹和参考图像,Transformer模型预测最优关键帧数量(在4-35之间),然后沿轨迹均匀采样关键帧位姿。2)关键帧扩散生成:使用基于扩散强制的历史引导视频扩散模型,以输入图像和关键帧相机位姿为条件,生成稀疏关键帧。模型采用8帧上下文窗口,对于超过8个关键帧的情况,先生成8个覆盖整个轨迹的关键帧,再用已生成关键帧作为条件生成剩余关键帧。3)3D重建:将生成的关键帧输入预训练的AnySplat模型,获得3D高斯溅射表示。由于AnySplat预测的位姿和输入相机轨迹在不同坐标系中,需要通过最小二乘仿射变换对齐。4)视频渲染:使用3DGS渲染器在每个相机位姿处评估,生成密集视频。对于长视频,采用10秒的时间分块策略,每个分块独立重建3D场景,通过共享关键帧对齐相邻分块。
技术新颖性
SRENDER的技术新颖性体现在多个方面:首先,它是第一个将稀疏关键帧生成与确定性3D重建渲染相结合的视频生成框架,这种混合生成-确定方法在视频生成领域是全新的。其次,自适应关键帧密度预测器是创新的,它将关键帧数量预测建模为学习问题,从相机轨迹和场景外观中直接预测最优关键帧数量,而非使用固定密度。第三,渐进式训练策略解决了在极低帧率下训练扩散模型的不稳定性问题:先在高帧率视频上训练,然后逐渐降低有效帧率直到匹配推理时的稀疏关键帧间距。第四,时间分块策略解决了长轨迹中关键帧漂移问题,通过将关键帧分成固定长度的时间块(10秒),每个块独立重建3D场景,避免了不一致观测导致的模糊重建。
实验结果
SRENDER在多个数据集和设置下都展示了显著的效率提升和质量改进。在DL3DV数据集上生成20秒30fps视频(600帧)时,SRENDER仅需16.21秒,而History-Guided基线需要697.38秒,实现了43.02倍加速。FID指标从66.89降至60.90,FVD从367.5降至335.5,表明视觉质量也有所提升。在RealEstate10k数据集上生成20秒10fps视频(200帧)时,SRENDER仅需9.552秒,相比基线的226.5秒实现了23.71倍加速,FID从39.53降至30.23,FVD从194.0降至180.3。在DL3DV的5fps设置下,SRENDER相比Voyager模型实现了24.38倍加速(13.62秒 vs 332.0秒),FID从91.75降至61.18,FVD从808.0降至492.8。与2D插值方法(FILM和RIFE)的比较显示,SRENDER不仅质量更高(FVD更低),速度也更快(0.83秒 vs 315.0秒和2.67秒)。消融研究证实了时间分块策略的有效性:使用时间分块后,FID从62.84降至59.19,FVD从357.5降至336.5。关键帧数量分析显示,过少的关键帧会导致渲染视频中出现可见空洞,而过多关键帧会增加计算成本但质量提升有限。
查看结构化数据
| 任务 | 指标 | 本文 | 基线 | 提升 |
|---|---|---|---|---|
| DL3DV 20秒30fps视频生成 | FID ↓ | 60.90 | 66.89 (HG) | 8.95% 提升 |
| DL3DV 20秒30fps视频生成 | FVD ↓ | 335.5 | 367.5 (HG) | 8.71% 提升 |
| DL3DV 20秒30fps视频生成 | 生成时间 (秒) ↓ | 16.21 | 697.38 (HG) | 43.02倍加速 |
| RealEstate10k 20秒10fps视频生成 | FID ↓ | 30.23 | 39.53 (HG) | 23.53% 提升 |
| RealEstate10k 20秒10fps视频生成 | FVD ↓ | 180.3 | 194.0 (HG) | 7.06% 提升 |
| RealEstate10k 20秒10fps视频生成 | 生成时间 (秒) ↓ | 9.552 | 226.5 (HG) | 23.71倍加速 |
| DL3DV 5fps视频生成 | FID ↓ | 61.18 | 91.75 (Voyager) | 33.32% 提升 |
| DL3DV 5fps视频生成 | 生成时间 (秒) ↓ | 13.62 | 332.0 (Voyager) | 24.38倍加速 |
局限与改进
SRENDER存在几个明显的局限性。首先,该方法目前仅适用于静态场景,无法处理动态物体或变形场景。虽然作者强调相机控制的静态视频生成本身就是一个重要且被广泛研究的问题,但这限制了方法的应用范围。其次,3D渲染的视频在高频细节上可能略显平滑,相比纯扩散基线缺少一些高频率细节。虽然这避免了扩散模型的典型伪影(如噪声放大或视角依赖扭曲),但在需要最高频细节的应用中可能不理想。第三,长轨迹(超过10秒)中生成的关键帧会出现漂移,导致结构、外观或相对几何的不一致。作者通过时间分块策略缓解了这个问题,但分块边界处的过渡可能不够平滑。第四,自适应关键帧选择模型的预测范围限制在4-35个关键帧,对于极复杂轨迹可能需要更多关键帧。最后,AnySplat模型在某些数据集上训练,但不在其他数据集上训练(如RE10K),这可能影响3D重建质量。
独立分析的弱点
从独立分析的角度,SRENDER存在几个值得改进的弱点。首先,自适应关键帧选择模型虽然能预测关键帧数量,但采用均匀采样策略确定关键帧位置,这可能不是最优的。改进方向是开发能够预测关键帧位置(而不仅仅是数量)的模型,例如在相机运动变化剧烈的地方自动增加关键帧密度。其次,时间分块策略使用固定10秒的块长度,这可能导致块边界处的不连续性。改进方向是开发自适应分块策略,根据场景复杂度和关键帧一致性动态调整块长度。第三,AnySplat作为3D重建模型是预训练的,没有针对SRENDER的特定需求进行微调。改进方向是端到端训练整个流水线,优化关键帧生成和3D重建的联合目标。第四,当前方法在推理时需要运行完整的扩散模型来生成关键帧,对于需要极低延迟的应用仍然不够快。改进方向是探索更高效的关键帧生成方法,如一致性模型或蒸馏技术。
未来方向
作者提出和基于成果可延伸的未来研究方向包括:1)扩展到动态场景:随着4D重建技术的成熟(如Megasam、Shape of Motion等),SRENDER的核心思想(稀疏视图生成、自适应关键帧、3D渲染)可以直接迁移到动态环境,这是最重要的扩展方向。2)改进3D重建质量:随着3D表示和重建技术的进步,SRENDER的视觉保真度将相应提高,特别是高频细节的恢复。3)更高效的扩散推理:任何扩散推理的改进都能直接降低稀疏关键帧的生成成本,而方法的整体效率提升来自根本不使用神经网络生成中间帧。4)更长视频生成:当前方法在超过10秒的轨迹中会出现关键帧漂移,未来可以探索更好的长程一致性维护机制。5)多模态条件:扩展到文本、音频等多模态条件控制,增加方法的实用性。
复现评估
SRENDER的复现评估如下:开源情况方面,论文引用了多个开源组件,包括History-Guided Video Diffusion模型(GitHub仓库提供)、AnySplat模型、VGGT模型等,但论文本身没有明确说明是否开源完整代码。数据集方面,使用了两个公开数据集:RealEstate10k和DL3DV,数据获取相对容易。算力需求方面,训练需要显著的计算资源:关键帧密度预测器在单个NVIDIA GH200 Superchip上训练5小时;关键帧生成模型在8个NVIDIA GH200 Superchip上训练6天。推理相对高效,生成20秒视频仅需16秒左右。复现难度中等,主要挑战包括:1)需要训练或获取多个预训练模型(关键帧生成、3D重建);2)需要处理相机位姿对齐和坐标系变换;3)时间分块策略的实现需要仔细处理块间过渡。总体而言,对于有扩散模型和3D重建经验的研究团队,复现是可行的,但需要相当的工程努力。
论文图表
在DL3DV上评估时间分块策略的效果。使用时间分块后,FID从62.84降至59.19,FVD从357.5降至336.5,而计算时间相当(13.52秒 vs 13.24秒)。
这个表验证了时间分块策略的有效性,对于长视频生成的质量提升很重要。