论文Review 3DGS CITYGAUSSIAN

发布于:2025-07-17 ⋅ 阅读:(24) ⋅ 点赞:(0)

基本信息

题目:CityGaussian: Real-Time High-Quality  Large-Scale Scene Rendering  with Gaussians

来源:ECCV2024

学校:Institute of Automation, Chinese Academy of Sciences

是否开源:https://github.com/Linketic/CityGaussian

摘要:大场景3DGS

3DGS 显著地推动了实时三维场景重建和新视点合成的发展。然而,有效地训练大规模3DGS并在不同尺度上实时渲染仍然具有挑战性。本文引入City Gaussian ( CityGS ),采用一种新颖的分而治之的训练方法和细节层次( Level-of-Detail,LoD )策略进行大规模3DGS的高效训练和渲染。具体来说,全局场景先验和自适应的训练数据选择能够实现高效的训练和无缝融合。在融合高斯图元的基础上,通过压缩生成不同的细节层次,并通过提出的分块细节层次选择和聚合策略实现不同尺度的快速绘制。在大规模场景上的大量实验结果表明,我们的方法达到了最先进的渲染质量,能够在不同的尺度上对大规模场景进行一致的实时渲染。

Introduction

        大尺度场景重建用的广!但是目前大场景(1.5km2)渲染仍然以Nerf为主,它们又慢、精度也差。

        最近出现的3DGS好!渲染好、训练快。但是研究多集中在小场景和小物体上。但是大场景时会出现“魔鬼(喜欢这个词)”现象——一方面,GPU显存爆炸,11 000 000个高斯球就会让RTX 3090 24GB 显存溢出,如果是大场景1.5km2的航空视角将会有至少20million高斯球,40G的A100也没法训练;另一方面,渲染速度的瓶颈在于深度排序。随着高斯数上升到百万量级,光栅化变得极为缓慢。例如,Tanks & Temples [ 13 ]数据集的一个110万高斯的小火车场景,其平均可见高斯数约为65万,并且速度较快,可以达到103FPS。但是对于2.7km2的MatrixCity场景,即使平均可见高斯数也在65万左右,2300万高斯的场景也只能以21FPS的速度渲染。而如何将不必要的高斯从光栅化中解放出来是实时大规模场景渲染的关键。(这个引言写的真好,这问题很重要)

        为解决上述问题我们提出了CityGaussian (CityGS)。受Mega-NeRF [ 36 ]的启发,我们采用分而治之的策略。首先将整个场景划分为空间相邻的块并进行并行训练。每个块用更少的高斯表示,用更少的数据进行训练,单个GPU的内存开销得到了很好的衰减。对于高斯划分,我们将无界区域收缩为归一化的有界立方体,并采用均匀网格划分,以更好地平衡不同块之间的工作负载。对于训练数据划分,只有当一个姿态位于所考虑的块内部,或者所考虑的块对渲染结果有相当大的贡献时,才保留该姿态。这种新颖的策略有效地避免了不相关数据的干扰,同时以较少的高斯消耗实现了较高的保真度。为了从相邻块对齐已训练的高斯,我们用一个粗略的全局高斯先验指导每个块的训练。该策略能够有效避免块与块之间的交互干扰,实现无缝融合。

        为了减轻渲染大规模高斯时的计算负担,我们提出了一种分块的细节层次( Level-of-Detail,LoD )策略。其核心思想是在消除额外计算成本的同时,仅向光栅化器输入必要的高斯。具体来说,我们以先前划分的块为单位来快速决定哪些高斯可能包含在视锥体中。此外,由于透视效应,远处区域占据屏幕空间的面积较小,包含的细节信息较少。因此,距离相机较远的高斯块可以用压缩版本替换,使用更少的点和特征。通过这种方式,光栅化器的处理负担显著降低,同时引入的额外计算仍然是可以接受的。如图1中的( d , e)所示,即使在大视场的情况下,CityGS也能保持实时的大规模场景渲染。

        总的来说,这项工作有三方面的贡献:

  • 我们提出了一种有效的分治策略,以并行方式重建大规模3D高斯绘制。
  • 通过提出的LoD策略,我们实现了在不同尺度下的实时大规模场景绘制,并且质量损失最小。
  • 我们的方法,称为CityGS,在公共基准测试中,与当前最先进的方法相比,具有良好的性能。

Related Works

2.1 Neural Rendering

Neural Radiance Field

        Nerf的方法:有一堆。Mip-NeRF360【3】是个里程碑,渲染效果好。然而,NeRFs受到沿发射射线密集采样的影响,导致相对较高的训练和推理延迟。一堆方法试图优化这一过程。

Point-Based Rendering

        另一条平行的工作以基于点的表示方式渲染场景。这种显式的几何图元能够实现快速的绘制速度和高可编辑性。但渲染图像的不连续性仍然是一个问题。最近3DGS的提出解决的这一问题。结合高度优化的光栅化器,3DGS可以在不损失视觉保真度的情况下,实现比基于NeRF的范式更高的绘制速度。然而,具有高维特征( RGB、球谐函数等。)的显式数百万高斯会导致显著的内存和存储占用。为了减轻这一负担,提出了[ 9、15、22 ]等方法。[ 9、24 ]和[ 22 ]在矢量量化的基础上,进一步结合蒸馏和二维网格分解,在压缩存储量的同时提高了速度。文献[ 15 ]利用高斯的几何相似性和局部特征相似性来实现相似的性能。尽管在压缩和加速方面取得了成功,但这些研究主要集中在小场景或单个物体上。在大规模场景下,过高的内存开销和计算负担导致高质量重建和实时绘制困难。而我们的CityGS为这些问题提供了一个有效的解决方案。

2.2 Large Scale Scene Reconstruction

几十年来,从大量的图像集合中进行三维重建一直是许多研究人员和工程师的愿望。前3DGS时期的工作:Photo Tourism、Building Rome in a Day、Block - NeRF、Mega - NeRF、Switch-NeRF、Urban Radiance Fields、SUDS、Grid-NeRF、GP - NeRF、City - on - Web、UE4-NeRF、ScaNeRF。后3DGS时期的工作:Vast Gaussian探索了3DGS在大规模场景下的应用,并处理了外观变化。然而,如此大场景的低渲染速度仍然是一个问题。相比之下,我们的方法将3D高斯基元与精心设计的训练和LoD方法相结合,大大提高了实时渲染质量。

2.3 Level of Detail

在计算机图形学中,细节层次( Level of Detail,LoD )技术调节用于表示虚拟世界的细节数量,从而桥接复杂性和性能[ 18 ]。通常,LoD会减少那些变得不太重要的对象(例如,远离观看者)的工作负载。近年来,Lo D与神经辐射场的结合受到了广泛关注。Bungee NeRF、NGLoD、VQ-AD、Tri - MipRF、LoD - NeuS、City-on-Web(怎么没有3DGS的!)。通过在显式3D高斯表示上实现LoD,我们有效地提高了其在大规模场景下的实时性能。

Method

3.1 Preliminary

3.2 Training CityGS

CityGS 针对大规模场景提出了一种 分而治之 的训练策略,通过以下三个步骤解决内存和效率问题:

  1. 全局高斯先验生成:为场景生成粗略的全局几何表示。
  2. 基元与数据划分:将高斯和训练数据划分为多个子块,优化工作负载分配。
  3. 微调与后处理:对每个子块并行训练,并拼接生成最终模型。

Global Gaussian Prior Generation

  • 直接对 COLMAP 点云进行分块训练会导致 缺乏全局信息,生成大量几何错误的“漂浮物”(floaters),这些高斯会过拟合块外区域,导致块间融合困难。
  • COLMAP 点云渲染的图像通常模糊,难以判断哪些视角对特定块的训练至关重要。

解决方案

  • 使用所有观测数据(图像)对 COLMAP 点云进行 30,000 次迭代 的训练,生成一个粗略的全局高斯先验  G_K = \{G_k | k = 1, \dots, K\}
  • 该先验提供场景整体几何分布的粗略描述,显著减少块间融合的干扰(如论文中 Table 4 验证)。
  • 全局先验还生成更准确的几何分布和更清晰的渲染图像,为后续划分提供基础。

    全局高斯先验通过标准3DGS训练流程生成,没有引入新公式,但其核心作用是确保高斯位置的几何准确性,为后续分块微调奠定基础。(就是二话不说,直接跑一遍原始的3DGS先?那不如就训练7000次)

    Primitives and Data Division

    现实世界的场景通常是 无界的,优化后的高斯可能无限扩展。直接在原始3D空间中进行均匀网格划分会导致许多块几乎为空,造成工作负载严重不平衡。

    解决方案:分为两个步骤:

    1. 高斯收缩
      • 将全局高斯先验收缩到一个 有界立方体区域,以平衡高斯分布。
      • 前景区域:定义为场景的最小和最大位置 pmin 和 pmax​,对高斯位置 pk 进行归一化:使前景高斯位置落入 [−1,1]  范围。

            背景区域:对于超出 [−1,1]的位置,使用非线性收缩函数:

            在微调阶段,我们希望每个块都得到充分的训练。具体来说,分配的数据应该保持训练有效,专注于块内细节的精炼。因此,只有当这个被选中的块对渲染结果起到很多贡献时,才需要训练这个位姿。分心的情况,如严重遮挡或内容贡献较小,应被遮挡。因此,只有当所考虑的块向渲染结果投射大量可见内容时,才需要保留一个姿势。换句话说,如严重遮挡或内容贡献较小,应被排除。由于SSIM损失可以有效地捕捉结构差异,并且在一定程度上对亮度变化不敏感[ 38 ],因此我们将其作为数据划分策略的基础。

            2.数据划分:

            然而,单纯依靠B1会导致在块体边缘向外观看时产生伪影。由于这些情况很少涉及所考虑块的投影,因此它们在第一原理下不会得到充分的训练。因此,我们还包括落入考虑块的姿势。

            尽管采取了上述策略,但在分布极不均匀或块维度较高的情况下,空块仍然可能存在。为了防止过拟合,我们扩大边界bj,min和bj,max,直到Kj超过某个阈值。这个过程只用于数据分配,以确保每个块有足够的训练数据。

    Finetuning and Post-processing

    • 微调
      • 原始未收缩空间 中对每个块并行训练,初始化使用全局高斯先验。
      • 训练损失结合 L1损失(像素颜色差异)和 SSIM损失,遵循原始3DGS论文的方法。
      • 微调阶段专注于优化块内高斯的细节。
    • 后处理
      • 微调后,过滤出块边界内的优化高斯。
      • 全局高斯先验减少了块间干扰,允许通过 直接拼接 生成高质量的整体模型。
      • 进一步的 细节层次 (LoD) 优化在后续阶段完成。

    3.3 Level-of-Detail on CityGS

    CityGS 中,为了解决大规模场景中大量高斯基元对光栅化器带来的计算负担,论文提出了 多细节层次 (LoD) 的生成和 块级可见高斯选择 策略。这些方法旨在减少不必要的高斯计算,同时保持渲染保真度。具体分为以下两个部分:

    1. 细节层次生成:通过压缩高斯表示,生成不同细节层次的模型,适用于不同距离的场景区域。
    2. 细节层次选择与融合:基于块的策略选择合适的细节层次,并通过直接拼接融合不同层次的高斯。

    Detail Level Generation

            随着物体远离相机,其在屏幕上的投影面积减小,贡献的高频信息也减少。因此,远处的低细节区域可以用 低容量模型(即更少的高斯点、更低的特征维度和更低的数据精度)来表示,而不会显著影响渲染质量。这种方法可以显著降低内存和计算需求。

    • CityGS 采用 LightGaussian [9] 压缩策略,直接对训练好的高斯进行压缩,生成不同细节层次的模型。
    • LightGaussian 是一种先进的压缩方法,能够在保持渲染保真度的同时大幅减少高斯数量、特征维度和数据精度。
    • 结果:通过生成多层次细节模型,远处的场景区域使用更少的计算资源,近处的区域保留高细节,从而优化整体渲染效率。

            细节层次生成没有引入新的公式,而是依赖 LightGaussian 的压缩技术。压缩过程通常涉及减少高斯数量(通过修剪或合并)、降低球谐函数 (SH) 的特征维度,或使用更低精度的浮点表示。这种方法的核心在于平衡压缩率和渲染质量,确保远处的低细节区域仍能准确表示,而不会引入明显的伪影。

    Detail Level Selection and Fusion

    • 基线方法:一种简单的细节层次选择策略是根据相机视锥(frustum)内不同距离区间填充相应细节层次的高斯。然而,这种方法需要对每个高斯点计算距离并分配细节层次,计算开销较大(如论文中 Sect. 4.4 验证)。
    • 改进需求:需要一种更高效的方法来选择可见高斯并分配合适的细节层次,同时避免不必要的计算。

    CityGS 提出了一种基于块的细节层次选择和融合策略,将空间相邻的高斯分组为立方体块(block),以块为单位进行处理(如图 3 右侧所示)。具体步骤如下:

    1.块边界确定:

    • 每个块被视为一个立方体,具有八个顶点,用于计算与相机视锥的相交。
    • 直接使用高斯的最小和最大坐标( min(pj,k​) 和 max(pj,k​))来定义块边界 pj,min ​ 和 pj,max 可能会受到“漂浮物”(floaters,几何错误的离群高斯)的影响,导致边界不合理地扩大,产生虚假的视锥相交。
    • 为解决此问题,采用 Median Absolute Deviation (MAD) [7] 算法来更稳健地确定块边界:

    2. 视锥相交检测:

    • 将块的八个顶点投影到屏幕空间,计算投影点的最小和最大值,形成一个 边界框(bounding box)。
    • 通过计算边界框与屏幕区域的 交并比 (IoU),判断块是否与相机视锥相交。
    • 如果块与视锥相交,或相机位于块内,则该块被视为 可见块,其高斯将用于渲染。

    3. 细节层次选择:

    • 每个块的细节层次由其八个顶点到相机中心的最小距离决定。较近的块使用较高细节层次(更多高斯、高维度特征),较远的块使用较低细节层次。
    • 所有块内的高斯共享相同的细节层次,简化了选择过程,减少了逐点距离计算的开销。

    4. 融合:

    • 不同细节层次的可见块通过 直接拼接 融合,生成最终渲染模型。
    • 由于全局高斯先验(Sect. 3.2)确保了块间几何一致性,拼接过程产生的边界不连续性(discontinuity)几乎可以忽略。

    实验

    4.1 数据集

    实验在五个不同规模和环境的数据集上进行基准测试,涵盖合成和现实世界场景:

    • MatrixCity [16]
      • Small City:一个2.7 km²的合成城市规模数据集,包含高度变化的相机视角(150 m至500 m)。相比之前的工作(如 [31])仅针对部分城市区域进行训练和评估,CityGS 针对整个城市进行重建,图像宽度调整为1600像素。
      • Block A:街景场景,包含4076张训练图像和495张测试图像,用于验证方法的泛化能力。
    • 现实世界数据集 [36]
      • ResidenceSci-ArtRubbleBuilding:四个公共现实世界场景数据集,图像分辨率按4倍降采样(遵循 [36, 48, 49] 的设置)。

    4.2 Comparison with SOTA

    表1、图5、图4、表3

    4.3 Level of Detail

    LoD 配置

    • 生成三个细节层次:LoD 2(50%压缩率,最精细)、LoD 1(34%压缩率)、LoD 0(25%压缩率,最粗糙)。
    • 基于块的距离分配细节层次:0-200 m(LoD 2)、200-400 m(LoD 1)、其他(LoD 0)。

    表2、图 1 的 (d) 和 (e)、图 6

    初体验

    TODO

    参考文献

    3. Barron, J.T., Mildenhall, B., Verbin, D., Srinivasan, P.P., Hedman, P.: MIPnerf 360: Unbounded anti-aliased neural radiance fields. In: Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, pp. 54705479 (2022)

    7. Dodge, Y.: The Concise Encyclopedia of Statistics. Springer, New York (2008). The Concise Encyclopedia of Statistics | SpringerLink

    9. Fan, Z., Wang, K., Wen, K., Zhu, Z., Xu, D., Wang, Z.: LightGaussian: unbounded 3D gaussian compression with 15x reduction and 200+ fps. arXiv preprint arXiv:2311.17245 (2023)

    13. Knapitsch, A., Park, J., Zhou, Q.Y., Koltun, V.: Tanks and temples: benchmarking large-scale scene reconstruction. ACM Trans. Graphics (ToG) 36(4), 1–13 (2017)

    15. Lee, J.C., Rho, D., Sun, X., Ko, J.H., Park, E.: Compact 3D gaussian representation for radiance field. arXiv preprint arXiv:2311.13681 (2023)

    16. Li, Y., et al.: MatrixCity: a large-scale city dataset for city-scale neural rendering and beyond. In: Proceedings of the IEEE/CVF International Conference on Computer Vision, pp. 3205–3215 (2023)

    18. Luebke, D.: Level of Detail for 3D Graphics. Morgan Kaufmann (2003)

    22. Morgenstern, W., Barthel, F., Hilsmann, A., Eisert, P.: Compact 3D scene representation via self-organizing gaussian grids. arXiv preprint arXiv:2312.13299 (2023)

    24. Navaneet, K., Meibodi, K.P., Koohpayegani, S.A., Pirsiavash, H.: Compact3D: compressing gaussian splat radiance field models with vector quantization. arXiv preprint arXiv:2311.18159 (2023)

    31. Song, K., Zhang, J.: City-on-web: real-time neural rendering of large-scale scenes on the web. arXiv preprint arXiv:2312.16457 (2023)

    36. Turki, H., Ramanan, D., Satyanarayanan, M.: Mega-NeRF: scalable construction of large-scale nerfs for virtual fly-throughs. In: Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, pp. 12922–12931 (2022)

    38. Wang, Z., Simoncelli, E.P., Bovik, A.C.: Multiscale structural similarity for image quality assessment. In: The Thrity-Seventh Asilomar Conference on Signals, Systems & Computers, 2003. vol. 2, pp. 1398–1402. IEEE (2003)

    48. Zhang, Y., Chen, G., Cui, S.: Efficient large-scale scene representation with a hybrid of high-resolution grid and plane features. arXiv preprint arXiv:2303.03003 (2023)

    49. Zhenxing, M., Xu, D.: Switch-NeRF: learning scene decomposition with mixture of experts for large-scale neural radiance fields. In: The Eleventh International Conference on Learning Representations (2022)


    网站公告

    今日签到

    点亮在社区的每一天
    去签到