3DGS

3D Gaussian Splatting for Real-Time Radiance Field Rendering[1]

作者是来自法国Inria的Bernhard Kerbl等人。论文引用[1]:

Time

  • 2023.Aug

### Key Words

总结

  1. Radiance Field方法最近用多个photos或者videos,revolutionized novel-viwe synthesis of scenes。然而,实现高质量仍然需要神经网络,这很费时间来训练和熏染,最近,faster methods trade off seepd for quality。对于无边界和完整的scenes(而不是孤立的objects)和1080p分辨率的渲染,没有当前的方法能够实现实时的display rate。作者引入了3个key elements,使得能够是实现SOTA的visual quality,同时保持高竞争力的training times,还能够在1080p下,高质量地实时地novel-view synthesis。首先,从camera calibration期间产生的sparse points开始,用3D Gaussian表针scene,能够保留理想的properties of continuous volumetric radiance fields for scene optimization,同时在empty space中,避免不必要的计算,其次,执行3D Gaussian的interleaved optimization/density control,显著地优化anisotropic covariance,来实现场景的精确的表征;第三,开发了一种fast visibility-aware rendering 算法,能够支持anisotropic splatting,加速训练,能够实时渲染
  1. Meshes和points是最常见的3D scene representation,因为它们是显式的,同时适合fast GPU/CUDA-based raterization。相比之下,最近的(NeRF) 方法建立在连续的scene representations上,用volumetric ray-marching for novel-view synthesis of captured scenes来优化MLP。类似地,最搞笑的radiance field 方法,通过插值,建立在continuous representations上,例如voxel, hash grids or points。然而,这些方法的连续性有助于优化,渲染所需的随机采样成本高,会导致噪声。作者引入了一个新的方法,结合了它们的优点: 3D Gaussian representation能够有SOTA的视觉质量和competitive training times,实现优化,tile-based splatting 方法确保了实时的渲染 at SOTA quality for 1080P。作者的目标是用multiple photos,实现实时的渲染,对于典型的scenes,和最高效的方法一样快速地create represetation with optimization times。最近的方法实现了fast training,但是很难实现高质量的,Mip-NeRF360需要48h的训练。快-但是低质量的radiance field方法能够实现interactive rendering times,但是不能做到实时地高质量的渲染。

  2. 作者的方法建立在3个主要的components。首先引入了3D Gaussian,作为一个flexible and expressive scene represetation,和之前的NeRF-like方法一样,用相同的input,cameras calibrated with Structure-from-Motion(SfM),使用作为SfM(Structure from Motion,运动恢复结构)过程副产品生成的稀疏点云来初始化三维高斯分布集合。相比于大多数的point-based方法,需要Multi-View Stereo(MVS) data。作者的方法仅用SfM points作为输入,就能够实现高质量的results。注意到,对于NeRF-synthetic dataset,作者的方法,用随机初始化实现了高质量。作者展示了3D Gaussian是一个excellent choice,因为它们是一个differentiable volumetric representation,也通过projecting to 2D 是栅格化,用standard \(\alpha\)-blending,用一个等价的image formation model as NeRF。第二个component是 3D Gaussian的properties的optimization- 3D position, opacity \(\alpha\),anisotropic covariance和spherical harmonic(SH) coefficients,和adaptive density control steps交错在一起,优化的步骤产生一个reasonably compact,unstructured和precise representation of the scene。第三个element是:**用fast GPU sorting算法的实时rendering 算法,受tile-based raterization的启发。然而,多亏了3D GS,能够执行anistropic splatting,respects visbility ordering,多亏了sorting和 \(\alpha\)-blending,使得一个夸斯和精确的backward pass,通过tracking the traversal of as many sort:

    作者的贡献如下:

    • 引入了anisotropic 3D Gaussian作为一个high-quality, unstructured representation of radiance fields,
    • 一种3D Gaussian properties的优化方法,和产生high-quality representations for captured scenes的adaptive density control交错。
    • 一种快速的,differentiable rendering 方法 for GPU,是visibility-aware,能够anisotropic splatting,快速地反向传播,实现高质量novel view synthesis。 作者的结果表明,能够从multi-view captures优化3D Gaussian,实现比之前的隐式的radiance field 方法,相等或者更好的quality。
  3. 作者首先简单回顾一下传统的recontruction方法,讨论point-based rendering和radiance field work,讨论它们的similarity;radiance fields是一个vast area,因此,作者聚焦于directly related work。

  4. 传统的scene reconstruction和rendering:第一个Novel-view synthesis方法是建立在light fields上的,first densely sampled,然后是allowing unstructured capture。Structure-from-Motion(SfM)的到来使得一个entire new domain,photos的集合能够用于synthesize novel views。在camera calibration期间估计sparse point cloud,然后用于3D space的初始化,随后的 multi-view stereo(MVS)产生了full 3D reconstruction 算法,促进了several view synthesis的发展。所有的这些方法re-project和blend input images into novel view camera,然后用geometry来指导这个re-projection。这些方法在很多cases下产生了excellent results,但是不能完全的从unreconstructed regions或者over-reconstruction中恢复,MVS产生了inexistent geometry,最近的neural rendering 算法,快速地降低了这些artifacts,避免了在GPU上存储所有的input images造成的不能承受的cost。

  5. 深度学习的工具很早用于novel-view synthesis,CNNs用于估计blending weights,或者for texture-space solutions,基于MVS-based的geometry是这些方法的一个主要的缺点。另外,用CNNs for final rendering ,会导致temporal flickering。Volumetric representations for novel-view synthesis是通过Soft3D进行初始化,深度学习和volumetric ray-marching进行耦合被提出来了,基于continuous differentiable density field,来表征geometry,用volumetric ray-marching来进行渲染,会有很高的成本,因为大量的samples需要query the volume。NeRFs引入了一个重要的sampling和positional encoding来提高quality,但是,用一个large MLP会影响速度,NeRF的成功导致接下来的很多工作的出现,解决了quality和speed,通过引入regularization strategies,当前的image quality的 for novel-view synthesis的SOTA方法是Mip-NeRF360,当rendering quality是很好的时候,training和rendering的时间会很长。 大多数最近的方法聚焦于faster training/rendering,通过利用三个design choices:use of spatial data structures,来存储features,在volumetric ray-marching中被interpolated,differnet encodings和MLP capacity。这些方法包括不同的space discretization的不同的变体,codebooks和encodings such as hash tables使得用更小的MLP或者完全放弃neural networks。

    最有名的方法是InstantNGP,用一个hash grid和一个occupancy grid来加速计算,一个smaller MLP来表征density和appearance, Plenoxels用一个sparse voxel grid来interploate一个continuous density field,能够放弃neural networks。都依赖于Spherical Harmonics:前者来表征directional effects,后者来编码inputs to color network。另外,图像质量很大程度上受限于用于加速的structured的选择,rendering speed被query many samples for a given ray-marching step所阻碍。非结构化的、显式地GPU友好的3D Gaussian实现了更快的rendering speed和更好的quality,不需要neural components。

  6. Point-based Rendering and Radiance Fields:point-based方法高效地render disconnected和unstructured geometry samples,它的最简单的形式,point sample rendering将非结构化的一组points以fixed size进行栅格化,