沉浸式媒体领域正在以前所未有的速度发展,其中 3D 高斯溅射成为一项关键突破。 这项技术在广泛的应用中看起来非常有前景,并且可能会彻底改变我们未来创建数字环境以及与数字环境交互的方式。
在本文中,我们将通过与摄影测量和 NeRF 等前辈进行比较,探索 3D 高斯溅射的深度和潜力,并探索当今市场上可用的一些工具。
1、什么是 3D 高斯泼溅?
3D 高斯分布是计算机图形学中的一项复杂技术,它通过将点或“splats”从点云投影到 3D 空间,并为每个 splat 使用高斯函数来创建高保真、逼真的 3D 场景。 该技术支持复杂的依赖于视图的视觉效果,并通过产生动态且逼真的可视化效果超越了传统的点云渲染。
今年在 SIGGRAPH 2023 上发表了一篇最受欢迎的研究论文,详细解释了用于实时辐射场渲染的 3D 高斯分布的技术细节,引发了人们对这一主题的新兴。
2、了解基础知识:适合所有人的指南
为了更好地了解 3D 高斯喷射与可视化点云的传统方法的比较,让我们进行实验。 将自己视为一名艺术家,但你不是在普通画布上绘画,而是在你周围的空间中进行创作。 你为场景中的每个对象绘制彩色点,生成点的集合,我们将其称为“点云”:
乔治·皮埃尔·修拉 (Georges Pierre Seurat) 的点画派绘画《大贾特的塞纳河》
当我们在传统观看器上可视化普通点云时,场景是由微小的点组成的,形成一幅图片,类似于艺术中的点画法。 点画派艺术家使用小的、独立的点来创作图像。 虽然这些图片从远处看起来不错,但近距离观察时,它们只是单独的点。 大多数传统点云可视化技术也会出现同样的问题。
克劳德·莫奈的印象派绘画《撑阳伞的女人——莫奈夫人和她的儿子》
现在,想象一下像印象派艺术家一样绘画。 他们不只是使用点,他们在画布上混合颜色,使画面更平滑、更真实。 这就是 3D 高斯泼溅背后的想法:它不只使用点,而是使用柔和地混合在一起的“泼溅”。 每个splat就像一个温柔的点,有自己的颜色并且可以是透明的。
摘自 Tilt Brush:从新角度绘画
为了更好地理解这一点,请考虑一下雾。 使用传统的点云可视化方法,就像看到每个微小的雾滴一样。 相反,使用高斯溅射就像观察雾的平滑、整体效果 - 每个部分都融入到下一个部分中。
为此,3D 高斯分布使用一种称为高斯的数学函数,这使得空间中的“连续可视化”成为可能。 由于这个公式,场景看起来更加真实,赋予其深度和自然的外观,而不是看起来离散和像素化。
3、高斯函数是什么样的?
高斯函数是 3D 高斯分布的基础,类似于钟形曲线,对于将单个点转换为生动、连续的场景至关重要。
3D 高斯图使用它来表示以下信息:
- 位置 (XYZ):确定每个点在 3D 空间中的位置。
- 协方差(3x3 矩阵):规定每个点如何拉伸或缩放,从而影响其形状和大小。
- 颜色 (RGB):决定每个点的色调,增加视觉丰富度。
- Alpha(α):控制透明度,使场景更加逼真。
4、3D 高斯溅射与摄影测量与 NeRF
将 3D 高斯溅射与摄影测量和 NeRF(将真实地点或物体数字化为数字孪生的其他成熟技术)进行比较时,了解它们的差异非常重要。
他们的工作流程都有一个共同的起点:从不同角度拍摄物体或环境的多张重叠照片。 然后通过每种技术对它们进行不同的处理,以生成捕获环境的数字版本。
4.1 摄影测量
这些图像用于根据每张图片上检测到的相机位置构建 3D 网格。
优点:摄影测量以其相对较低的计算占用量和 3D 网格的直接输出而闻名。 该网格很容易在传统游戏引擎渲染管道中使用。 此外,这些网格可以为动画蒙皮,使其成为游戏开发和动画模拟应用的理想选择。
缺点:该技术在处理闪亮或透明表面时存在局限性,可能会导致生成的 3D 模型出现孔洞和形状错误。
使用案例:摄影测量适用于资源效率至关重要且最终产品需要以 3D 网格模型的形式与标准游戏引擎或动画工具无缝集成的情况。
以下是我使用摄影测量和现实捕捉根据照片重建的 3D 模型
示例:
4.2 神经辐射场 (NeRF)
使用人工智能和神经网络处理图像,生成场景的任何视角,通过混合现有信息来填充任何间隙或丢失的照片。
优点:NeRF 的优势在于其人工智能驱动的能力,可以生成场景的任何视角,通过混合现有图像来填充间隙或丢失的照片。 这使得它对于摄影测量可能遇到困难的复杂场景特别有效。 此外,由于 NeRF 具有学习智能,因此不需要像摄影测量那样多的各个角度的图像。
缺点:虽然 NeRF 擅长处理摄影测量的缺点,但与摄影测量和 3D 高斯溅射相比,它的计算要求更高且渲染速度更慢。
使用案例:它非常适合在视点生成方面需要高度灵活性的应用程序以及处理不完整数据具有挑战性的场景。
以下是我使用 Nerfstudio 制作的 NeRF 捕获的示例视频:
4.3 3D 高斯泼溅
使用光栅化技术,允许从小图像样本实时渲染照片级真实感场景。 首先使用“运动结构”方法根据初始图像集估计点云。 然后将每个点转换为高斯分布,由位置、协方差、颜色和透明度等参数描述。
优点:与 NeRF(截至目前)相比,该技术以其快速、实时光栅化以及创建高质量、逼真场景的能力而闻名。 该技术还特别擅长令人信服地渲染头发等薄表面,提供高质量的实时可视化效果。
缺点:高斯泼溅(截至目前)以其高 VRAM 使用率而闻名,并且尚未与现有渲染管道完全兼容。
使用案例:高斯泼溅在实时渲染和复杂细节(如头发或薄结构)可视化至关重要的场景中非常有用,例如在虚拟现实应用程序或高端可视化中。
值得注意的是,由于所有三种技术在工作流程开始时都使用输入照片的数据集,因此在使用相同的图像数据集时交换它们相对容易,以根据所需的用例生成不同的可视化效果。
以下视频比较了所有三种技术,从相同的输入图像数据集开始:
这是一个重点介绍 NeRF 和高斯 Splatting 捕获之间差异的视频:
5、实际应用和行业影响
3D 高斯分布不仅仅是一个理论奇迹,它的实际应用也非常广泛。 其中包括:
- 房地产:增强虚拟房地产之旅,为潜在买家提供真实的体验。 这可以彻底改变远程展示和探索房产的方式。
- 城市规划:协助创建城市的数字孪生,帮助更好的规划和管理。 通过提供高保真、实时的城市空间渲染,它为更有效的城市发展战略做出了重大贡献。
- 虚拟现实 (VR) 和增强现实 (AR):高斯泼溅在创建高度逼真的 VR 背景(为各种应用程序创建作为背景设置的虚拟环境或场景)方面特别有效,可将虚拟环境的沉浸感提升到新的水平。
- 电子商务和平面设计:它可以通过实现高质量、实时的产品 3D 渲染来彻底改变在线购物体验,从而带来更具互动性和身临其境的购物体验。 在图形设计中,它可以帮助创建更逼真的 3D 模型和动画,从而提高设计过程的质量和速度。
- 远程呈现中的真实感虚拟人物:Meta 对编解码器虚拟人物的高斯泼溅实验展示了其在 VR 环境中实现真实感远程呈现的潜力。 该应用程序增强了虚拟人物的真实感和照明效果,这是沉浸式虚拟通信的关键要素
- 相机跟踪和 3D 重建:SplaTAM 是密集 RGB-D SLAM 中的高级应用程序,它使用高斯 Splatting 在现实场景中进行精确的相机跟踪和高保真重建,展示了其在复杂空间映射和 3D 重建中的实用性。
- 游戏:通过更加身临其境和真实的环境提升游戏体验。 Gaussian Splatting 插件已可用于 Unity 和 Unreal Engine 等主要游戏引擎,从而增强游戏世界的视觉质量
它处理大型数据集的能力及其多功能性吸引了各个领域的目光,标志着我们与虚拟世界交互方式的潜在革命。
6、游戏引擎和协作 3D 平台的集成
将 3D 高斯泼溅纳入 Unity 和 Unreal Engine 等游戏引擎中标志着游戏开发的重大进步。 插件和软件包现已推出,将这项技术带给更广泛的受众,并释放互动游戏和模拟的新可能性。
对于 Unity,GaussianSplatting 包(Unity Asset Store)和对于 Unreal Engine,UEGaussianSplatting 插件(Unreal Engine Marketplace)就是此类开发的示例。
最近,协作 3D 平台 Spline 实施了另一个解决方案,该解决方案通过一个非常令人兴奋的演示展示了对 3D 高斯泼溅的支持,此处是进一步讨论。
我们预计未来将会发布更多插件和工具,进一步改善数字产品中对高斯分布的支持。
8、Android 上的高斯泼溅
虽然 Luma AI 和 Polycam 等公司的高斯泼溅管道瞄准了 iOS 和 Web,但最近 Kiri Innovations 团队在其新的 Kiri Engine 3.0 中宣布支持 Android,这是一款适用于 Android 和 iOS 设备的 3D 扫描应用程序。
Kiri Engine 最初于 2022 年作为摄影测量工具发布,可根据源照片重建 3D 模型。 3D 高斯溅射的加入代表了一项重大进步,允许创建和查看高质量、可能快速渲染的对象或场景的 3D 表示。
9、3D 高斯斑点查看器示例
Luma AI 和其他平台提供了高斯泼溅的交互式示例,将日常场景变成身临其境的体验。
此处托管一些基于 WebGL 的 3D 高斯泼溅捕获示例。
令人难以置信的是,这些工具还可以与旧图像一起使用,生成过去事件的吸引人的高斯图。 2009 年的“MTV 电影奖”就是这样,红地毯上设有“时尚 360 度旋转”舞台,最近被用来拍摄几位知名艺术家的照片。
例如,查看这个栩栩如生的 Miley Cyrus 的高斯 Splats 捕获:
10、挑战和未来方向
尽管 3D 高斯泼溅具有令人鼓舞的优势,但它仍面临计算强度和实现复杂性等挑战。 然而,随着研究深入克服这些障碍,以及 SIGGRAPH 等论坛和会议上的讨论推动进一步创新,未来看起来是光明的。 在最近的解决方案中,有人尝试减小 Gaussian Splats 文件的大小,例如程序员 Aras Pranckevičius 的解决方案。