1000+ FPS 4D Gaussian Splatting for Dynamic Scene Rendering
TL;DR 精炼摘要
本文提出了一种新框架4DGS-1K,通过时空变异评分和时间过滤器,解决了4D高斯泼溅技术的存储大和渲染慢问题。该方法能够以超过1000 FPS的速度渲染,存储需求减少41倍,同时保持了视觉质量。
摘要
4D Gaussian Splatting (4DGS) has recently gained considerable attention as a method for reconstructing dynamic scenes. Despite achieving superior quality, 4DGS typically requires substantial storage and suffers from slow rendering speed. In this work, we delve into these issues and identify two key sources of temporal redundancy. (Q1) \textbf{Short-Lifespan Gaussians}: 4DGS uses a large portion of Gaussians with short temporal span to represent scene dynamics, leading to an excessive number of Gaussians. (Q2) \textbf{Inactive Gaussians}: When rendering, only a small subset of Gaussians contributes to each frame. Despite this, all Gaussians are processed during rasterization, resulting in redundant computation overhead. To address these redundancies, we present \textbf{4DGS-1K}, which runs at over 1000 FPS on modern GPUs. For Q1, we introduce the Spatial-Temporal Variation Score, a new pruning criterion that effectively removes short-lifespan Gaussians while encouraging 4DGS to capture scene dynamics using Gaussians with longer temporal spans. For Q2, we store a mask for active Gaussians across consecutive frames, significantly reducing redundant computations in rendering. Compared to vanilla 4DGS, our method achieves a reduction in storage and faster rasterization speed on complex dynamic scenes, while maintaining comparable visual quality. Please see our project page at https://4DGS-1K.github.io.
思维导图
论文精读
中文精读
1. 论文基本信息
1.1. 标题
1000+ FPS 4D Gaussian Splatting for Dynamic Scene Rendering (面向动态场景渲染的 1000+ FPS 4D 高斯泼溅技术)
1.2. 作者
Yuan Yuheng, Qiuhong Shen, Xingyi Yang, Xinchao Wang
- 隶属机构:新加坡国立大学 (National University of Singapore)
1.3. 发表期刊/会议
该论文发布于 arXiv(预印本平台)。
- 发布时间 (UTC):2025年3月20日
1.4. 摘要
4D 高斯泼溅 (4DGS) 是近期热门的动态场景重建方法,虽然画质优越,但存在存储占用大和渲染速度慢的缺陷。作者深入分析发现两大核心原因:(1) 短寿命高斯 (Short-Lifespan Gaussians):大量高斯点仅在极短时间内存在,导致数量激增;(2) 非活跃高斯 (Inactive Gaussians):渲染任意一帧时,只有极少部分高斯点真正参与计算,其余均为冗余开销。 为此,本文提出了 4DGS-1K 框架:
- 时空变异评分 (Spatial-Temporal Variation Score):一种新的剪枝标准,有效剔除短寿命高斯。
- 时间过滤器 (Temporal Filter):基于关键帧掩码,仅计算当前帧真正活跃的高斯点。 结果:在现代 GPU 上实现了超过 1000 FPS 的渲染速度,存储空间减少 41倍,且保持了相当的视觉质量。
1.5. 原文链接
2. 整体概括
2.1. 研究背景与动机
新视图合成 (Novel View Synthesis, NVS) 旨在从一组已知视角的图像中恢复出场景的 3D/4D 表示,从而能够从任意新视角渲染场景。
- 核心问题:传统的 NeRF(神经辐射场)方法渲染速度慢。近期出现的 4D Gaussian Splatting (4DGS) 虽然提升了质量,但为了拟合动态变化,往往会产生数百万个高斯点,导致显存爆炸 (Storage Intensive) 且难以达到极致的实时帧率(Suboptimal Rendering Speed)。
- 关键发现:作者通过分析发现 4DGS 存在严重的时间冗余 (Temporal Redundancy):
-
模型倾向于生成大量瞬间闪烁的“短命”高斯点来拟合运动边缘,这些点对整体贡献低但数量巨大。
-
在任意特定时刻,实际上只有极少部分(约 15%)的高斯点是可见或活跃的,但传统方法会处理所有点。
下图(原文 Figure 2)展示了这种冗余分析:(a) 大部分高斯点的时间方差 很小(寿命短);(b) 渲染时仅有少部分高斯点是活跃的;(c) 活跃高斯点在相邻帧间有很高的一致性。
该图像是图表,展示了4DGS与改进模型在不同指标上的比较。图(a)显示了随值变化的百分比,图(b)展示了不同时间戳下的活跃比例,图(c)则反映了随时间戳变化的激活IoU。红线表示4DGS的结果,蓝色和青色线分别表示改进模型有无过滤器的效果。这些对比揭示了改进模型在减少临时高斯和提高渲染效率上的优势。
-
2.2. 核心贡献
-
理论洞察:深入剖析了 4DGS 效率低下的根源在于“短寿命高斯”和“非活跃高斯”造成的计算与存储浪费。
-
4DGS-1K 框架:
- 提出了 时空变异评分 剪枝策略,大幅压缩模型体积。
- 设计了 基于关键帧的时间过滤器,跳过无效计算,极速提升渲染帧率。
-
性能突破:在 N3V 数据集上,相比原始 4DGS,存储减少 41 倍,光栅化速度提升 9 倍,整体帧率突破 1000 FPS。
下图(原文 Figure 1)直观展示了本文方法与 4DGS 的对比:在保持相似 PSNR(画质)的前提下,存储从 2GB 降至 50MB,帧率从 100 飙升至 1000+。
该图像是对比图,左侧展示了传统4DGS的性能指标,内存使用为2.16GB、渲染帧率为103、PSNR为33.16dB;右侧展示了改进后的4DGS-1K性能指标,内存使用为53MB、渲染帧率为1088、PSNR为33.06dB。右侧的散点图显示了不同方法的PSNR和计算消耗。
3. 预备知识与相关工作
3.1. 基础概念
为了理解本文,初学者需要掌握以下概念:
- 3D Gaussian Splatting (3DGS): 一种显式的 3D 场景表示方法。它不用神经网络隐式存储场景,而是用数百万个“3D 高斯球”来表示。每个高斯球有位置、颜色、透明度、缩放和旋转属性。渲染时,通过 光栅化 (Rasterization) 将这些 3D 球投影到 2D 屏幕上。
- 4D Gaussian Splatting (4DGS): 3DGS 的进阶版,引入了时间维度 (Time)。
- 每个高斯基元是 4D 的:
(x, y, z, t)。 - 在渲染某一时刻 时,4D 高斯会被“切片”或分解为一个 3D 高斯 (空间部分) 和一个 1D 高斯 (时间不透明度部分)。
- (时间方差):控制高斯点在时间轴上的持续时间。 越小,说明该点只在极短瞬间存在(闪烁); 越大,说明该点持续存在。
- 每个高斯基元是 4D 的:
3.2. 前人工作
- NeRF 类方法: 如 DyNeRF, HyperReel, K-Planes。优点是存储紧凑,缺点是训练和推理速度极慢,通常无法实时。
- 动态 3DGS 类方法: 如 Dynamic 3DGS, 4D-RotorGS。虽然比 NeRF 快,但通常需要存储庞大的变形场 (Deformation Field) 或过量的高斯点,存储占用依然很高(GB 级别)。
- 模型压缩: 针对静态 3DGS 的压缩(如 Compact3D)已有研究,但直接套用到 4D 动态场景效果不佳,因为它们忽略了时间维度的冗余。
3.3. 差异化分析
本文的 4DGS-1K 与之前的 4DGS 方法最大的区别在于:
-
主动做减法:不是通过增加参数来拟合运动,而是通过精细的剪枝 (Pruning) 和 过滤 (Filtering) 去除冗余。
-
利用二阶导数:在剪枝标准中引入了时间不透明度的二阶导数,这在之前的压缩工作中鲜有涉及,能精准识别出那些不稳定的“闪烁”点。
4. 方法论
本文的核心目标是在保持画质的同时,大幅减少高斯数量并加速渲染。方法分为两步:全局剪枝(去除短寿命点)和局部过滤(渲染时跳过非活跃点)。
下图(原文 Figure 4)展示了方法的整体流程:左侧通过时空评分剪枝,右侧通过时间过滤器加速渲染。
该图像是示意图,展示了研究中的两种关键技术:瞬态高斯剪枝(Transient Gaussian Pruning)和时间滤波(Temporal Filter)。图左侧显示了不同时间点的高斯分布,强调了如何通过剪枝短寿命的高斯以减小计算冗余。图右侧则展示了在不同时间帧中如何利用滤波去除非活跃高斯,从而提升渲染效率。这些技术共同促进了4D高斯渲染方法的高效性和速度。
4.1. 基于时空变异评分的剪枝 (Pruning with Spatial-Temporal Variation Score)
这是第一步,旨在永久性地从模型中删除那些“性价比”低的高斯点。作者定义了一个综合评分 ,包含空间贡献和时间稳定性两部分。
4.1.1. 空间评分 (Spatial Score)
空间评分衡量一个高斯点对图像像素颜色的贡献程度。如果一个高斯点非常透明,或者总是被别的高斯点遮挡,它的贡献就低。
符号解释:
- : 第 个高斯点的空间评分。
- : 对所有训练视角、所有时间戳、所有像素进行求和(遍历所有光线)。
- : 第 个高斯点的不透明度(Opacity)。
- : 透射率 (Transmittance),即光线到达第 个点之前未被前方物体遮挡的概率。
- 直觉:公式右边正是渲染方程中的权重项。权重越大,说明该点对最终像素颜色影响越大,越应该保留。
4.1.2. 时间评分 (Temporal Score) - 核心创新
这是本文的关键。作者希望保留那些存在时间长且稳定的高斯点,剔除那些瞬间闪烁(Short-Lifespan)的点。 作者观察到,短寿命高斯的时间不透明度函数 通常非常陡峭(像一个尖峰)。数学上,尖峰意味着函数的曲率(二阶导数) 很大。
第一步:计算时间不透明度的二阶导数 时间不透明度 是一个 1D 高斯函数。其二阶导数 计算如下:
符号解释:
- : 当前时间。
- : 高斯点的时间均值(即它在时间轴上出现的最强时刻)。
- : 高斯点的时间方差(控制寿命长短)。
- 直觉:当 很小(寿命短)时,分母很小,导致整个二阶导数值非常大。反之,寿命长的点,二阶导数绝对值较小。
第二步:构建评分函数
作者希望评分与二阶导数成反比(导数越小,评分越高,越稳定)。同时使用了 tanh 函数将数值映射到 区间:
此外,作者还考虑了高斯点的 4D 体积大小 (体积太小的点通常也是噪点)。最终的时间评分 为:
4.1.3. 综合评分与剪枝
将空间评分和时间评分相乘,得到最终的时空变异评分 :
操作流程:计算所有高斯点的 ,按照分数排序,直接删除排名靠后的高斯点(例如删除 80%)。剩余的高斯点会再经过少量迭代的 微调 (Fine-tuning) 以恢复因剪枝造成的微小画质损失。
4.2. 基于时间过滤器的快速渲染 (Fast Rendering with Temporal Filtering)
即使经过了剪枝,剩余的高斯点在每一帧中也不一定都是可见的。为了进一步加速,作者设计了一种机制,只把当前时刻“活跃”的高斯点送入光栅化引擎。
4.2.1. 关键帧机制 (Key-frame based Temporal Filtering)
作者利用了时间相关性:如果一个高斯点在 时刻可见,它很可能在 时刻也可见。
- 选取关键帧:每隔 帧(例如 20 帧)选取一个关键帧 。
- 生成掩码 (Mask):在关键帧 上,渲染所有训练视角,记录下所有对图像有贡献(不透明度 )的高斯点索引,形成一个掩码集合 。
- 这里 是视角 在时刻 的可见性掩码。
- 取并集 意味着只要在任意一个视角可见,该高斯点就被标记为“在 时刻活跃”。
4.2.2. 基于过滤的渲染
当需要渲染任意非关键帧 时:
-
找到其相邻的两个关键帧 和 。
-
取这两个关键帧掩码的并集:。
-
渲染:只加载和处理 中的高斯点。
优势:由于大部分高斯点在特定时间段是不活跃的,这种方法可以跳过绝大多数计算。由于之前已经通过剪枝去除了短寿命(容易闪烁)的点,剩下的点大多寿命较长,因此这种跨帧共享掩码的策略非常安全,不会导致物体突然消失。
5. 实验设置
5.1. 数据集
实验主要使用了两个标准的动态场景数据集:
- Neural 3D Video Dataset (N3V):
- 类型: 真实世界拍摄的多视角视频。
- 特点: 包含 6 个动态场景(如做饭、火焰牛排等),分辨率高 (),帧数多(300帧)。
- 用途: 测试在复杂真实场景下的表现。
- D-NeRF Dataset:
- 类型: 合成数据集(虚拟场景)。
- 特点: 包含 8 个场景(如跳跃的人、乐高挖掘机等),视角覆盖广 ()。
- 用途: 测试模型对大幅度运动和合成细节的捕捉能力。
5.2. 评估指标
作者使用了以下指标来全方位评估性能:
- PSNR (Peak Signal-to-Noise Ratio):
- 定义: 峰值信噪比,衡量生成图像与真实图像在像素层面的误差。数值越高越好。
- 公式:
PSNR = 10 \cdot \log_{10} \left( \frac{MAX_I^2}{MSE} \right),其中MSE是均方误差, 是像素最大值。
- SSIM (Structural Similarity Index):
- 定义: 结构相似性,衡量两张图像在亮度、对比度和结构上的相似度,比 PSNR 更符合人眼感知。数值越接近 1 越好。
- LPIPS (Learned Perceptual Image Patch Similarity):
- 定义: 学习感知图像块相似度。通过预训练的深度神经网络(如 AlexNet/VGG)提取特征来计算距离。数值越低越好(表示感知差异小)。
- FPS (Frames Per Second):
- 定义: 每秒帧数,衡量渲染速度。文中区分了 Total FPS (包含所有开销) 和 Raster FPS (仅光栅化部分)。
- Storage: 模型占用的磁盘空间(MB)。
5.3. 对比基线
-
4DGS (Vanilla): 原始的 4D Gaussian Splatting 方法,作为主要对比对象。
-
NeRF 类: DyNeRF, HyperReel, K-Planes, StreamRF。
-
压缩与加速类: Compact3D (3DGS压缩), Dynamic 3DGS, MEGA (同期工作)。
6. 实验结果与分析
6.1. 核心结果分析
实验结果表明,4DGS-1K 在速度和存储上取得了巨大的优势,且画质几乎没有损失。
6.1.1. 真实场景 (N3V) 结果
以下是原文 Table 1 的完整转录:
| Method | PSNR↑ | SSIM↑ | LPIPS↓ | Storage(MB)↓ | FPS↑ | Raster FPS↑ | #Gauss↓ |
|---|---|---|---|---|---|---|---|
| Neural Volume [21] | 22.80 | - | 0.295 | - | - | - | - |
| DyNeRF [18] | 29.58 | - | 0.083 | 28 | 0.015 | - | - |
| StreamRF [17] | 28.26 | - | - | 5310 | 10.90 | - | - |
| HyperReel [2] | 31.10 | 0.927 | 0.096 | 360 | 2.00 | - | - |
| K-Planes [12] | 31.63 | - | 0.018 | 311 | 0.30 | - | - |
| Dynamic 3DGS [23] | 30.67 | 0.930 | 0.099 | 2764 | 460 | - | - |
| 4DGaussian [39] | 31.15 | 0.940 | 0.049 | 90 | 30 | - | - |
| E-D3DGS [3] | 31.31 | 0.945 | 0.037 | 35 | 74 | - | - |
| STG [19] | 32.05 | 0.946 | 0.044 | 200 | 140 | - | - |
| 4D-RotorGS [7] | 31.62 | 0.940 | 0.140 | - | 277 | - | - |
| MEGA [43] | 31.49 | - | 0.056 | 25 | 77 | - | - |
| Compact3D [16] | 31.69 | 0.945 | 0.054 | 15 | 186 | - | - |
| 4DGS [40] (Original) | 32.01 | - | 0.055 | - | 114 | - | - |
| 4DGS [40] (Retrained) | 31.91 | 0.946 | 0.052 | 2085 | 90 | 118 | 3.33M |
| Ours | 31.88 | 0.946 | 0.052 | 418 | 805 | 1092 | 0.66M |
| Ours-PP (Post-Processed) | 31.87 | 0.944 | 0.053 | 50 | 805 | 1092 | 0.66M |
分析:
- 速度与存储:相比 Retrained 4DGS,Ours 的高斯数量减少了约 80% (3.33M -> 0.66M),光栅化 FPS 从 118 提升至 1092。Ours-PP(进一步量化压缩)将存储压缩到了惊人的 50MB(原版为 2GB)。
- 画质:PSNR 仅下降了 0.03 dB (31.91 vs 31.88),SSIM 和 LPIPS 几乎完全一致。这证明了被剪枝的高斯确实是冗余的。
6.1.2. 合成场景 (D-NeRF) 结果
以下是原文 Table 2 的完整转录:
| Method | PSNR↑ | SSIM↑ | LPIPS↓ | Storage(MB)↓ | FPS↑ | Raster FPS↑ | #Gauss↓ |
|---|---|---|---|---|---|---|---|
| DNeRF [30] | 29.67 | 0.95 | 0.08 | - | 0.1 | - | - |
| TiNeuVox [10] | 32.67 | 0.97 | 0.04 | - | 1.6 | - | - |
| K-Planes [12] | 31.07 | 0.97 | 0.02 | - | 1.2 | - | - |
| 4DGaussian [39] | 32.99 | 0.97 | 0.05 | 18 | 104 | - | - |
| Deformable3DGS [41] | 40.43 | 0.99 | 0.01 | 27 | 70 | - | 0.13M |
| 4D-RotorGS [7] | 34.26 | 0.97 | 0.03 | 112 | 1257 | - | - |
| 4DGS [40] (Original) | 34.09 | 0.98 | 0.02 | - | - | - | - |
| 4DGS [40] (Retrained) | 32.99 | 0.97 | 0.03 | 278 | 376 | 1232 | 0.44M |
| Ours | 33.34 | 0.97 | 0.03 | 42 | 1462 | 2482 | 0.06M |
| Ours-PP | 33.37 | 0.97 | 0.03 | 7 | 1462 | 2482 | 0.06M |
分析: 在 D-NeRF 数据集上,Ours 的 PSNR 甚至反超了 Retrained 4DGS (33.34 vs 32.99)。这说明去除不稳定的短寿命高斯点还能减少画面中的噪点和伪影,起到了正则化的作用。光栅化帧率高达 2482 FPS。
6.2. 消融实验与可视化
6.2.1. 剪枝效果可视化
下图(原文 Figure 8)展示了剪枝的效果。可以看到 (c) 图中红色部分是被剪掉的短寿命高斯点,它们主要分布在运动边缘。(d) 是剪枝后的结果,视觉质量与 (a) 真值几乎无异。
该图像是图表,展示了不同操作下高斯的可视化效果,包括真值(a)、时间分布(b)、修剪后的高斯(c)和我们的方法(d)。通过比较,可以观察到我们方法的优越性。
6.2.2. 组件消融实验
作者验证了各个模块的贡献(原文 Table 3):
- 仅使用过滤器 (Filter Only):FPS 提升明显,但 PSNR 严重下降(因为短寿命高斯被过滤器错误地跳过了)。
- 仅使用剪枝 (Pruning Only):FPS 提升至 600,存储大幅下降,PSNR 保持。
- 同时使用 (Ours):FPS 飙升至 1092,且 PSNR 没有明显下降。这证明了剪枝和过滤器是互补的:剪枝去除了短寿命点,使得剩下的长寿命点更适合被过滤器进行跨帧共享。
6.2.3. 参数敏感度分析
下图(原文 Figure 10)展示了不同剪枝比例对 PSNR 的影响。红点为默认设置。在 Cook Spinach 场景中,适当的剪枝(左侧曲线)甚至能提升 PSNR,说明原模型确实存在过拟合和冗余。
该图像是图表,展示了在不同修剪比例下,针对Cook Spinach、Cut Roasted Beef和Sear Steak三种场景的PSNR变化。横轴为修剪比例,纵轴为PSNR(dB),其中红点表示默认设置的结果。
下图(原文 Figure 11)展示了关键帧间隔的影响。间隔越大,速度越快,但 PSNR 会下降。作者选择了一个平衡点(如 20 帧)。
该图像是一个图表,展示了不同关键帧间隔下,三种不同场景(Cook Spinach, Cut Roasted Beef, Sear Steak)的PSNR(dB)变化。图中对比了使用微调和不使用微调的过滤器在不同间隔下的表现,并标注了默认设置参数。
7. 总结与思考
7.1. 结论总结
本文针对 4D Gaussian Splatting 的效率瓶颈,提出了 4DGS-1K。通过深入分析时间冗余,作者引入了时空变异评分来剪枝短寿命高斯,并利用时间过滤器在渲染时跳过非活跃高斯。实验证明,该方法在保持高质量画质的同时,将渲染速度提升至 1000+ FPS,存储空间压缩 41 倍,为动态场景的实时应用(如 VR/AR)扫清了障碍。
7.2. 局限性与未来工作
- 预处理开销:虽然渲染很快,但剪枝和生成掩码需要额外的微调和预处理时间。
- 场景依赖性:最优的剪枝比例和关键帧间隔可能随场景动态程度的不同而变化,目前仍需手动或经验设定。
- 未来方向:作者建议未来研究可以探索自适应的剪枝阈值,或者开发适用于所有高斯基方法的通用压缩框架。
7.3. 个人启发与批判
- 减法美学:在深度学习领域往往倾向于“加参数”来提升效果,本文展示了通过精准的“减法”(剪枝)不仅能提速,甚至能通过去除噪点来提升画质(如 D-NeRF 实验所示)。
- 数学直觉的应用:利用二阶导数来检测“尖峰”或“闪烁”是一个非常直观且有效的数学工具,这种将数学性质(曲率)与物理现象(高斯点寿命)结合的思路非常值得学习。
- 潜在问题:虽然 FPS 很高,但在极度复杂的混沌运动场景(如粒子爆炸、流体)中,高斯点的寿命可能本来就很短,此时强行剪枝或使用大间隔的关键帧过滤可能会导致细节丢失,这方面的边界情况值得进一步测试。
相似论文推荐
基于向量语义检索推荐的相关论文。