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.rhkb.cn/news/281879.html

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

相关文章

【软考高项】十五、信息系统工程之系统集成

1、集成基础 定义:通过硬件平台、网络通信平台、数据库平台、工具平台、应用软件平台将各类资源有机、高效地集成到一起,形成一个完整的工作台面 基本原则包括:开放性、结构化、先进性和主流化 2、网络集成 包括:传输子系统、交换子系统、…

Google的MELON: 通过未定位图像重建精确3D模型的突破性算法

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领…

QML TextField 默认无法鼠标选中内容

1.import QtQuick.Controls 2.0 后的TextField默认无法选中内容如下图: 2.增加属性设置 selectByMouse: true 可以选中内容了 TextField{ selectByMouse: true text:"1234567890987654321" } 效果如下:

安装调试kotti_ai:AI+互联网企业级部署应用软件包@riscv+OpenKylin

先上结论:riscvOpenKylin可以安装pyramidkottikotti_ai 但是paddle_serving_client无法安装,项目的AI实现部分需要改用其它方法,比如onnx。最终onnx也没有装成,只好用飞桨自己的推理。 安装kotti pip install kotti 安装kotti和…

【Git】第一课:Git的介绍

简介 什么是Git? Git是一个开源的分布式版本控制系统,用于跟踪代码的改变和协同开发。它最初由Linus Torvalds为了管理Linux内核开发而创建,现已成为开源软件开发中最流行的版本控制系统,没有之一。Git允许多人同时在不同的分支上工作&…

将main打包成jar;idea打包main为jar包运行

将main打包成jar&#xff1b;idea打包main为jar包运行 适用场景&#xff1a;可以封装一些小工具。 配置jar Maven中添加 <packaging>jar</packaging>将其打包为jar。 设置运行入口main 编译jar 看到jar输出 运行效果&#xff1a; 其中&#xff0c;三方依赖也被…

DEYOv2: Rank Feature with Greedy Matchingfor End-to-End Object Detection

摘要 与前代类似&#xff0c; DEYOv2 采用渐进式推理方法 来加速模型训练并提高性能。该研究深入探讨了一对一匹配在优化器中的局限性&#xff0c;并提出了有效解决该问题的解决方案&#xff0c;如Rank 特征和贪婪匹配 。这种方法使DEYOv2的第三阶段能够最大限度地从第一和第二…

【IEEE】Multimodal Machine Learning: A Survey and Taxonomy

不废话&#xff0c;先上思维导图&#xff0c;哈哈哈&#xff01; 论文题目Machine Learning: A Survey and Taxonomy作者Tadas Baltrusaitis , Chaitanya Ahuja , and Louis-Philippe Morency状态已读完会议或者期刊名称IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE IN…

电机与直线模组选型

一。普通电机选型 普通电机选型&#xff08;一&#xff09; 三相异步电机 定子&#xff1a;产生旋转磁场 转子&#xff1a;切割磁场&#xff0c;产生洛伦兹力 结构简单&#xff0c;成本低&#xff0c;稳定 效率较低&#xff0c;转速不稳定 N60f/P 定子旋转速度&#xff1a;150…

ubuntu系统下如何使用vscode编译和调试#小白入门#

编程环境&#xff1a;ubuntu系统为18.04.1&#xff0c;vscode版本为1.66.2 一、VSCode切换中文显示&#xff1a; 1、vscode安装完成后启动,在左侧externsions中搜索“简体中文”插件&#xff0c;并完成安装&#xff1a; 2、选择右下角齿轮形状的"Manage"&#xff…

运动想象 (MI) 迁移学习系列 (14) : EEGNet-Fine tuning

运动想象迁移学习系列:EEGNet-Fine tuning 0. 引言1. 主要贡献2. 提出的方法2.1 EEGNet框架2.2 微调 3. 实验结果3.1 各模型整体分类结果3.2 算法复杂度比较3.3 不同微调方法比较 4. 总结欢迎来稿 论文地址&#xff1a;https://www.nature.com/articles/s41598-021-99114-1#cit…

【HTTP完全注解】范围请求

范围请求 范围请求是HTTP的一种内容协商机制&#xff0c;该机制允许客户端只请求资源的部分内容。范围请求在传送大的媒体文件&#xff0c;或者与文件下载的断点续传功能搭配使用时非常有用。 范围请求的工作流程 范围请求通过在HTTP请求标头Range中表明需要请求的部分资源的…

可视化日记——极坐标绘制雷达图

目录 一、创建极坐标 二、数据集准备 三、划分角度 四、指定半径 五、绘制 一、创建极坐标 Python中没有直接画雷达图的函数&#xff0c;若要绘制需要先创建画布和极坐标轴域&#xff0c;再设定角度与半径的参数&#xff08;极坐标中角度与半径确定一个点的位置&#xff…

专业135+总分400+重庆邮电大学801信号与系统考研经验重邮电子信息与通信工程,真题,大纲,参考书。

今年分数出来还是比较满意&#xff0c;专业801信号与系统135&#xff0c;总分400&#xff0c;没想到自己也可以考出400以上的分数&#xff0c;一年的努力付出都是值得的&#xff0c;总结一下自己的复习心得&#xff0c;希望对大家复习有所帮助。专业课&#xff1a;&#xff08;…

(ROOT)KAFKA详解

生产篇 使用 /** Licensed to the Apache Software Foundation (ASF) under one or more* contributor license agreements. See the NOTICE file distributed with* this work for additional information regarding copyright ownership.* The ASF licenses this file to Y…

设计模式学习笔记 - 设计原则与思想总结:2.运用学过的设计原则和思想完善之前性能计数器项目

概述 在 《设计原则 - 10.实战&#xff1a;针对非业务的通用框架开发&#xff0c;如何做需求分析和设计及如何实现一个支持各种统计规则的性能计数器》中&#xff0c;我们讲解了如何对一个性能计数器框架进行分析、设计与实现&#xff0c;并且实践了一些设计原则和设计思想。当…

macOS 通过 MacPorts 正确安装 MySQL 同时解决无法连接问题

如果你通过 sudo port install 命令正常安装了 MySQL&#xff0c;再通过 sudo port load 命令启动了 MySQL Server&#xff0c;此刻却发现使用 Navicat 之类的 GUI 软件无法连接&#xff0c;始终返回无法连接到 127.0.0.1 服务器。这是一个小坑&#xff0c;因为他默认使用了 So…

Git——GitHub远端协作详解

目录 Git&GitHub1、将内容Push到GitHub上1.1、在GitHub上创建新项目1.2、upstream1.3、如果不想要相同的分支名称 2、Pull下载更新2.1、Fetch指令2.2、Fetch原理2.3、Pull指令2.4、PullRebase 3、为什么有时候推不上去3.1、问题复现3.2、解决方案一&#xff1a;先拉再推3.3…

vue+element 前端实现增删查改+分页,不调用后端

前端实现增删查改分页&#xff0c;不调用后端。 大概就是对数组内的数据进行增删查改分页 没调什么样式&#xff0c;不想写后端&#xff0c;当做练习 <template><div><!-- 查询 --><el-form :inline"true" :model"formQuery">&l…

Git 仓库瘦身与 LFS 大文件存储

熟悉 Git 的小伙伴应该都知道随着 Git 仓库维护的时间越来越久&#xff0c;追踪的文件越来越多&#xff0c;git 存储的 objects 数量会极其庞大&#xff0c;每次从远程仓库 git clone 的时候都会墨迹很久。如果我们不小心 git add 了一个体积很大的文件&#xff0c;且 git push…