当前位置: 首页 > article >正文

3D Gaussian Splatting的全面理解

1.概述

高斯展开是一种表示 3D 场景和渲染新视图的方法,在“用于实时辐射场渲染的 3D 高斯展开”¹ 中介绍。它可以被认为是类似 NeRF² 的模型的替代品,就像过去的 NeRF 一样,高斯飞溅导致了许多新的研究工作,他们选择将其用作各种用例的 3D 世界的底层表示。那么它有什么特别之处,为什么它比 NeRF 更好呢?或者,甚至是这样吗?让我们来了解一下!

2.TL;博士

首先,这项工作的主要成名之处在于从标题中可以理解的高渲染速度。这是由于下面将介绍的表示本身,以及使用自定义 CUDA 内核的渲染算法的定制实现。

 图 1:在渲染速度 (fps)、训练时间 (min) 和视觉质量(峰值信噪比,越高越好)方面先前的高质量表示和高斯展开(标记为“Ours”)的并排比较 [来源:取自 [1]]

此外,高斯展开根本不涉及任何神经网络。甚至没有一个小的 MLP,没有什么“神经”的,一个场景本质上只是空间中的一组点。这本身就已经是一个吸引注意力的人。看到这种方法在我们痴迷于 AI 的世界中越来越受欢迎,研究公司追逐由越来越多的数十亿个参数组成的模型,这令人耳目一新。它的想法源于“表面泼溅”³ (2001),因此它树立了一个很酷的例子,即经典的计算机视觉方法仍然可以激发相关的解决方案。其简单而明确的表示使高斯飞溅特别易于解释,这是在某些应用中选择它而不是 NeRF 的一个很好的理由。

表示 3D 世界

如前所述,在高斯展开中,一个 3D 世界由一组 3D 点表示,实际上是数百万个 3D 点,大约为 0.5-500 万个。每个点都是一个 3D 高斯分布,具有自己独特的参数,这些参数是针对每个场景拟合的,因此该场景的渲染与已知的数据集图像非常匹配。稍后将讨论优化和渲染过程,因此让我们暂时关注必要的参数。

图 2:高斯中心(均值)[来源:取自动态 3D 高斯⁴]

每个 3D Gaussian 参数化为:

  • 均值 μ 可解释为位置 x、y、z;
  • 协方差 Σ;
  • Opacity σ(α) 中,应用 sigmoid 函数将参数映射到 [0, 1] 区间;
  • 颜色参数,可以是 (R, G, B) 的 3 个值,也可以是球谐 (SH) 系数。

这里有两组参数需要进一步讨论,一个协方差矩阵和 SH。有一个单独的部分专门介绍后者。至于协方差,它被设计为各向异性,即非各向同性。实际上,这意味着 3D 点可以是沿空间中任何方向旋转和拉伸的椭球体。它可能需要 9 个参数,但是,它们不能直接优化,因为协方差矩阵只有在正半定矩阵时才具有物理意义。使用梯度下降进行优化使得很难直接对矩阵施加此类约束,这就是为什么它被分解如下:

这种因式分解称为协方差矩阵的特征分解,可以理解为椭球体的配置,其中:

  • S 是一个对角线缩放矩阵,具有 3 个缩放参数;
  • R 是一个 3x3 旋转矩阵,用 4 个四元数解析表示。

使用高斯分布的美妙之处在于每个点的双重影响。一方面,根据其协方差,每个点实际上表示空间中接近其平均值的有限区域。另一方面,它在理论上具有无限范围,这意味着每个高斯分布都在整个 3D 空间上定义,并且可以针对任何点进行评估。这很棒,因为在优化过程中,它允许梯度从长距离流动。


http://www.kler.cn/a/398417.html

相关文章:

  • 【C++笔记】C++三大特性之多态
  • 【windows笔记】08-Windows中的各种快捷方式、符号链接、目录联接、硬链接的区别和使用方法
  • 动手学深度学习73 课程总结和进阶学习
  • 算法沉淀一:双指针
  • 在 Node.js 中解决极验验证码:使用 Puppeteer 自动化
  • 网络学习第四篇
  • vue2+3 —— Day5/6
  • 金融行业国产数据库容灾建设五大难点及解决方案
  • Web3D 与 AI 的结合重塑虚拟世界与智能应用
  • mysql 示例验证demo
  • 多目标优化算法:多目标红嘴蓝鹊优化算法(MORBMO)求解ZDT1、ZDT2、ZDT3、ZDT4、ZDT6,提供完整MATLAB代码
  • 卡尔曼滤波器
  • 调用门提权
  • 两个方法,取消excel数据隐藏
  • 深度学习面试题三
  • C++《类和对象中》:拷贝构造和赋值重载 + 运算符重载详解
  • DimensionX 部署笔记
  • 关于mysql中的锁
  • 策略模式-策略模式在不同支付工具中的应用
  • 【HarmonyOS】鸿蒙系统在租房项目中的项目实战(二)
  • 悬浮窗,ViewPager2内嵌套RecyclerView,RecyclerView高度异常的问题分析
  • 学习threejs,使用第一视角控制器FirstPersonControls控制相机
  • GOOGLE EARTH ENGINE——利用GEE计算和下载雪的覆盖频率(SCF)和雪的消失日期(SDD)含全球除格陵兰岛外的矢量
  • 探索C++三大特性--C++ 继承详解:从概念到高级用法
  • 每日OJ题_牛客_NC114旋转字符串_C++_Java
  • STM32 | 空气净化器