3D高斯泼溅的崛起

沉浸式媒体领域正在以前所未有的速度发展,其中 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 的解决方案。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/761716.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

企业用大模型如何更具「效价比」?百度智能云发布5款大模型新品

服务8万企业用户,累计帮助用户精调1.3万个大模型,帮助用户开发出16万个大模型应用,自2023年12月以来百度智能云千帆大模型平台API日调用量环比增长97%...从一年前国内大模型平台的“开路先锋”到如今的大模型“超级工厂”,百度智能…

从相机空间到像素空间的投影和反投影原理和代码

目录 从相机空间到像素空间的投影 效果 ​编辑 公式 ​编辑 代码 像素空间到相机空间的反投影 记录一下从相机空间到像素空间的投影(3D-->2D)和像素空间到相机空间的反投影(2D-->3D)。 推荐blog:SLAM入门之视…

smpl渲染工具

根据3d姿态预测smpl参数 GitHub - Jeff-sjtu/HybrIK: Official code of "HybrIK: A Hybrid Analytical-Neural Inverse Kinematics Solution for 3D Human Pose and Shape Estimation", CVPR 2021 GitHub - woo1/Texture_visualize_smpl: smpl texture visualizatio…

ModbusRTU/TCP/profinet网关在西门子博图软件中无法连接PLC的解决方法

ModbusRTU/TCP/profinet网关在西门子博图软件中无法连接PLC的解决方法 在工业生产现场,ModbusRTU/TCP/profinet网关在与西门子PLC连接时,必须要使用西门子的博图软件来进行配置,博图v17是一个集成软件平台,专业版支持300、400、12…

下载 macOS 系统安装程序的方法

阅读信息: 版本:0.4.20231021 难度:1/10 到 4/10 阅读时间:5 分钟 适合操作系统:10.13, 10.14, 10.15, 11.x, 12.x,13.x, 14 更新2023-10-21 添加Mist的介绍支持版本的更新,13.x&#xff0…

JVM内存划分

一、运行时数据区域 堆、方法区(元空间)、虚拟机栈、本地方法栈、程序计数器。 Heap(堆): 对象的实例以及数组的内存都是要在堆上进行分配的,堆是线程共享的一块区域,用来存放对象实例,也是垃圾回收&…

计算机服务器中了faust勒索病毒怎么办,faust勒索病毒解密工具流程

网络是一把利剑,可以方便企业开展各项工作业务,为企业提供极大的便利,但随着网络技术的不断发展与应用,网络数据安全威胁也在不断增加,给企业的正常生产运营带来了极大困扰,近日,云天数据恢复中…

element-ui实现证件照上传预览下载组件封装

element-ui实现证件照上传预览下载组件封装 效果&#xff1a; 参数说明 我只写了两个参数&#xff0c;后续有需求再对其组件进行丰富~ 参数说明fileListProp用来存储上传后后端返回的图片UR了uploadUrl图片上传反悔的URL后端接口地址 父组件调用&#xff1a; <au-upload…

报表生成器FastReport .Net用户指南:关于脚本(下)

FastReport的报表生成器&#xff08;无论VCL平台还是.NET平台&#xff09;&#xff0c;跨平台的多语言脚本引擎FastScript&#xff0c;桌面OLAP FastCube&#xff0c;如今都被世界各地的开发者所认可&#xff0c;这些名字被等价于“速度”、“可靠”和“品质”,在美国&#xff…

The plain HTTP request was sent to HTTPS port

异常信息 原因 错误信息 “The plain HTTP request was sent to HTTPS port” 表明客户端尝试使用未加密的HTTP协议发送请求到一个配置为使用加密的HTTPS协议的端口。 解决方案 要解决这个问题&#xff0c;需要确保使用正确的协议和端口号进行请求。应该使用的HTTPS前缀。例如…

官宣|阿里巴巴捐赠的 Flink CDC 项目正式加入 Apache 基金会

摘要&#xff1a;本文整理自阿里云开源大数据平台徐榜江 (雪尽)&#xff0c;关于阿里巴巴捐赠的 Flink CDC 项目正式加入 Apache 基金会&#xff0c;内容主要分为以下四部分&#xff1a; 1、Flink CDC 新仓库&#xff0c;新流程 2、Flink CDC 新定位&#xff0c;新玩法 3、Flin…

【嵌入式硬件】步进电机

1.步进电机简介 1.1步进电机基本原理 步进电机的英文是stepping motor。step的中文意思是行走、迈步。所以仅从字面上我们就可以得知,步进电机就是一步一步移动的电动机。说的官方一点儿,步进电机是一种将电脉冲信号转换成相应角位移或者线位移的电动机(直线电机)。下图为…

灵境矩阵平台x百度---智能体(一)

什么是数据插件 大模型插件:大语言模型插件是随着大语言模型发展而诞生的全新插件。大语言模型插件的核心是Web API独立于大语言模型&#xff0c;插件开发过程不受大语言模型的约束&#xff0c;同时没有开发语言的限制&#xff0c;更加通用&#xff0c;只要WebAPI遵循RESTfuI相…

html5cssjs代码 034 自定义字体

html5&css&js代码 034 自定义字体 一、代码二、解释 这是一个带有自定义字体的网页&#xff0c;设置了页面背景颜色、文字颜色以及全局样式。它定义了三种自定义字体并通过font-face规则引入外部字体文件&#xff0c;并通过CSS类&#xff08;.f1, .f2, .f3&#xff09;…

第十二届蓝桥杯省赛CC++ 研究生组-路径

记录到每个结点的最短距离&#xff0c;以此为基础计算后续结点最优值 #include<iostream> #include<algorithm> using namespace std; typedef long long ll;ll gcd(int a, int b){if(!b) return a;return gcd(b, a % b); }int main(){ll dp[2022] {0};//dp[i]记…

如何打破SAST代码审计工具的局限性?

关键词&#xff1a;白盒测试&#xff1b;代码分析工具&#xff1b;代码扫描工具&#xff1b;静态代码检测工具&#xff1b; 在代码的世界里&#xff0c;安全问题如同潜伏的暗礁&#xff0c;随时可能让航行中的软件项目触礁沉没。SAST代码审计工具如同雷达一样&#xff0c;以其独…

inputStream.avaliable()方法网络操作读取不全BUG

一、问题描述 公司有个需求&#xff0c;就是调用方&#xff08;我&#xff09;需要把pdf文件转为Base64字符串作为参数传递为被调用方&#xff0c;以下是大致转换过程&#xff1a; URL url new URL("http://xxxx.pdf");HttpURLConnection uc (HttpURLConnection) …

docker入门(十)—— docker-compose详解

Docker Compose dockercompose官网&#xff1a;https://docs.docker.com/compose/ 什么是 docker compose Docker Compose 是用于定义和运行多容器应用程序的工具。 这是解锁简化和高效的开发和部署体验的关键。 Compose 简化了对整个应用程序堆栈的控制&#xff0c;让您能…

Chrome 114 带着侧边栏扩展来了

效果展示 manifest.json {"manifest_version": 3,"name": "ChatGPT学习","version": "0.0.2","description": "ChatGPT,GPT-4,Claude3,Midjourney,Stable Diffusion,AI,人工智能,AI","icons"…

cocos 3.8开发 微信小游戏分包技巧压缩主包

Creator 版本&#xff1a; 3.8.2 目标平台&#xff1a;小游戏开发 压缩后 我不知道别人压缩几百kb是怎么做到的。不过哪个要钱。 我这个技巧不用花钱。 论坛有教程但是没有教详细怎么做。 开整&#xff01; 做一个空白的场景。然后写一个load脚本。load主场景。 从代码可…