拆解3D Gaussian Splatting:原理框架、实战 demo 与自驾仿真落地探索!

news/2025/10/20 14:20:26/文章来源:https://www.cnblogs.com/keymotek/p/19152555

01 引言

当前,三维重建技术正处于从"实验室演示"迈向"工业级应用"的关键时期。每一次对场景细节的精准还原,每一帧实时流畅的渲染效果,都在检验算法对真实世界的复现能力。高效、高质量的三维重建能够显著提升数字资产制作效率,助力提升虚拟测试的真实性,加速仿真验证流程

然而,在"平衡重建质量与效率"这一核心目标下,现有技术仍面临诸多挑战,包括大规模场景的处理效率、动态物体的建模能力,以及跨平台部署的兼容性等难题。

针对这些问题,笔者也有一些思考、经验与看法,本文将与大家一起交流。下文将介绍3DGS原理框架、实战 demo 与自驾仿真落地探索等相关内容。

02 3DGS的原理框架

1、技术概览

3D Gaussian  Splatting(3DGS)是一种基于数百万个可学习的“3D色块”来实现逼真3D场景实时渲染的新兴技术。这里的“3D色块”实际上是指3D高斯球——每一个都是具备位置、形状、颜色和透明度属性的基础单元。

利用这些高斯球,我们可以对真实场景进行三维重建,再通过Splatting技术将其投影至二维平面,最后借助图像分块的光栅化方法渲染成最终图像。

以下展示的是采用3DGS技术重建的部分场景,不难看出,无论是场景的细节还原度还是色彩表现力,效果都十分出色。

图1

在保持高保真度场景重建的同时,3DGS技术还具备出色的渲染速度,这得益于其采用的基于图像分块的渲染方式。通过与其他三维重建方法对比可见,3DGS在视觉效果上能够媲美NeRF-360,而训练时间却大幅缩短至几十分钟甚至几分钟。相较于NeRF-360动辄数十小时的训练成本,这无疑是一项重要突破。

能够在与Instant-NGP相当的训练时长内,达到接近NeRF-360的重建质量,正是3DGS技术的关键优势所在,也是其在三维重建领域持续受到关注的重要原因。

图2

2、3DGS整体框架

3D Gaussian Splatting(3DGS)的整体框架是一个端到端的管道,其核心思想是将整个三维场景表示为数百万个可学习的3D高斯球。这些高斯球作为场景的基本表示单元,每个都拥有各自的属性,包括3D空间中的位置、描述其形状与方向的协方差矩阵、以及视角相关的球谐函数所表示的颜色和不透明度。

图3

整个流程可以分为7个步骤

  • 初始化:基于输入的RGB图像序列,通过sfm算法(COLMAP)估计初始稀疏点云及相机位姿;

  • 高斯空间建模:将初始点云转换为一系列3D高斯椭球;

  • 视锥体筛选:根据当前相机参数,剔除位于视锥体范围之外的3D高斯椭球;

  • 可微分投影:将保留的3D高斯椭球通过可微分的仿射变换投影至2D图像平面;

  • 分块光栅化:将投影后的高斯椭球按图像块组织,并采用基于瓦片的光栅器,实现并行、有序的混合渲染;

  • 损失计算与反向传播:比较渲染输出与真实图像,计算重构损失并通过反向传播优化高斯椭球的各项属性参数;

  • 自适应密度控制:在训练过程中动态执行高斯椭球的克隆与分裂操作。

03 3DGS的实战Demo搭建

利用开源模型就可以进行一些场景的重建,开源仓库:https://github.com/graphdeco-inria/gaussian-splatting

1、COLMAP初始化点云

要对3DGS模型进行训练,需要先的得到一组初始化点云,利用COLMAP可以从一组无序的照片中,得到相机的拍摄位姿和场景的三维点云。得到初始化点云和相机位姿的效果如下图:

图4

2、输入模型进行迭代训练

得到初始化点云后,就可以将点云信息输入到3DGS模型中进行迭代训练。3DGS迭代训练通过不断渲染误差反馈优化高斯的位置、颜色和形状,并动态增删高斯,使场景逐渐从粗糙点群精化为高保真实体模型。

以下是初始化点云和训练迭代2万次后的点云对比,可以看到迭代训练后的点云信息更加丰富场景细节更加多样。利用这些点云和3DGS椭球就可以构建出逼真的三维场景

图5

04 3DGS在自驾仿真中的应用探索

1、从World Extractor到aiSim

World Extractor能从原始传感器数据中,直接创建出3DGS重建的数据信息,从而可以直接导入康谋仿真软件aiSim中,进行场景渲染。这大大节省了仿真场景构建时间。并且,aiSim通过优化渲染模型,可以获得高保真的3DGS场景导入。

  • 新构建了GGSR,即通用高斯泼溅渲染器,优化3D重建场景下RayTracying传感器渲染

  • 优化广角镜头渲染,增强一致性

  • 支持自由移动视角,减少伪影产生

左边是渲染优化前,会出现大FoV相机不一致性。右边是渲染方案优化后,可以增强一致性

图6

优秀的仿真效果:

图7

05 3DGS未来发展与挑战

在系统探讨了3DGS的技术原理与实践路径后,我们需要清醒地认识到:这项技术正处在从"可用"到"好用"的关键演进阶段,同时也存在着很多待发展的技术要点和面临的挑战!

1、发展

3DGS技术正沿着效率极致化能力边界拓展的双重路径演进。一方面追求超大规模场景的实时重建与交互,另一方面致力于实现动态场景的精准建模与语义级理解

(1)效率与应用的极致化

- 实时性与交互性:实现毫秒级动态场景重建与渲染,支持用户实时交互;

- 硬件加速:开发专用硬件(如ASIC/FPGA)与更优的CUDA内核,让3DGS在移动端、边缘设备上流畅运行;

- 大规模场景:突破内存限制,实现对城市级、自然景观等超大规模场景的高效建模与漫游。

(2)动态场景与语义理解

- 4D重建:轻松处理动态物体,生成高质量4D动态场景,直接应用于影视、自动驾驶仿真;

- 语义与编辑:与SAM等分割模型结合,实现实例级的物体识别、分离与编辑;

- 生成式AI融合:作为3D表示,与Diffusion等生成式模型结合,实现文本/图片到3D场景的高质量、高效率生成。

(3)与其他技术的融合与统一

- 与NeRF互补: 发挥3DGS渲染快的优势,弥补NeRF在抗锯齿、细节重建上的不足,形成混合建模管线;

- “3D基础模型”的基石: 作为一种高效的3D表示方法,为构建大规模3D场景的基础模型提供可能。

2、挑战

3DGS技术在渲染质量动态场景处理方面仍存在理论瓶颈,其"黑箱"特性与数据依赖性也制约了技术的规模化应用。这些挑战亟待从算法原理工程实现层面协同突破。

(1)渲染质量与一致性

- 锯齿与闪烁:由于2D Splatting的固有特性,容易出现锯齿、走样和边缘闪烁问题;

- 跨视角不一致性:在不同视角下,Gaussian的分布可能出现轻微的不一致,影响几何的精确性;

- 透明与反射材质:对半透明、镜面等高光/反射材质的建模能力仍然较弱,效果不如基于体素渲染的NeRF。

(2)动态场景与学习瓶颈

- 动态处理“粗暴”:目前的动态3DGS多依赖于变形场或时序参数,难以处理剧烈的、非刚性的形变;

- 数据依赖性强:性能高度依赖于输入图像的质量和数量,对稀疏输入或存在大量遮挡的场景,重建效果会急剧下降;

- 缺乏标准与生态:相比成熟的Mesh流程,3DGS缺乏行业标准工具链。

(3)理论基础与可控性

- “黑箱”特性:Gaussian的分布与参数缺乏明确的物理和几何解释,像一个可微分的点云渲染“黑盒”,难以进行精确的、程序化的控制;

- 参数冗余与过拟合:场景复杂度直接与Gaussian数量挂钩,可能导致训练过拟合和存储浪费。

06 总结

显而易见,3DGS以创新的3D高斯球表示方法,在重建质量效率间实现了突破性平衡。从技术原理到实战演示,再到康谋在自动驾驶仿真中的完整工具链实践,3DGS展现了显著的工程价值。

尽管在动态场景处理和渲染质量方面仍面临挑战,但随着硬件加速和算法优化的持续推进,3DGS有望在自动驾驶数字孪生等领域发挥更大价值,为三维重建技术开启新的可能!

参考资料

1. https://repo-sam.inria.fr/fungraph/3d-gaussian-splatting/

2. https://arxiv.org/pdf/2308.04079

3. https://arxiv.org/pdf/2401.03890v1

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

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

相关文章

Hyper-V 与 root的Android7模拟器共存

下载安装Android Studio 安装Android7android-24\default\x86Rootemulator -avd Phone -writable-system -selinux permissive abd root abd remount adb install SuperSU/common/Superuser.apk adb push SuperSU/x86/…

基于深度学习的CT扫描图像肝脏肿瘤智能检测与分析系统【python源码+Pyqt5界面+数据集+训练代码】 - 实践

基于深度学习的CT扫描图像肝脏肿瘤智能检测与分析系统【python源码+Pyqt5界面+数据集+训练代码】 - 实践2025-10-20 14:16 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: nor…

resend 单次发送命令

Invoke-WebRequest -Uri "https://api.resend.com/emails" `-Method Post `-Headers @{"Authorization" = "Bearer re_"} `-ContentType "application/json; charset=utf-8" …

视频监控界的“万能翻译器”:视频汇聚平台EasyCVR视频接入功能全解读

在数字化转型浪潮中,企业、政府单位常常面临一个共同的痛点:海量的监控设备品牌不一、协议各异,形成了众多的“信息孤岛”。如何将这些分散的、异构的视频资源进行统一汇聚、管理和应用?本文将深入解析EasyCVR视频…

PCIe 全高/半高,全长/半长 尺寸介绍 - ENGINEER

PCIe 全高/半高,全长/半长 尺寸介绍PCIe 全高全长尺寸​维度上限高度 H​111.15 mm​长度 L​312.00 mm​以上为业界常用的 PCIe 板卡尺寸上限,适用于标注为“全高全长(FHFL)”的扩展卡;不同厂商成品可能因散热器…

Android脱壳

已root的Android 7 安装Xposed鸭, FDex2, 待脱壳应用 使用FDex获得dex文件 dex转jar: d2j-dex2jar.bat a.dex, 会生成a-dex2jar.jar java -jar jd-gui-1.6.6.jar可选Save All Sources或将jar文件解压后针对单独文件夹压…

Linux框架编程:线程控制

Linux框架编程:线程控制pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", &q…

基于Ubuntu22.04 部署Dify详细教程

没有前言,直接开搞:检查是否安装过docker,没安装需要先安装docker环境。 检查docker版本 docker--versiondocker-compose--version我本地已经安装了,如果没安装,需要自行安装: sudo apt-getupdate&&sudo…

iOS 混淆工具链实战 多工具组合完成 IPA 混淆与加固(iOS混淆|IPA加固|无源码加固|App 防反编译)

工程化 iOS 混淆方案:结合 MobSF/class-dump 静态扫描、Swift Shield 源码混淆、Ipa Guard 成品混淆、Fastlane/Jenkins 自动化与 Frida 动态验证,映射表用 KMS 管理,形成可复现、可审计、可回滚的 IPA 加固闭环,适…

WebSocket Turbo Intruder:挖掘WebSocket安全漏洞的利器

本文深入介绍WebSocket Turbo Intruder工具,这是一款专为WebSocket协议安全测试设计的Burp Suite扩展。文章详细解析了工具的核心功能、使用方法、漏洞利用技巧,包括服务器端原型污染、竞态条件和拒绝服务攻击等高级…

Gitee:本土化技术平台如何重塑中国开发者生态

Gitee:本土化技术平台如何重塑中国开发者生态 在数字化转型的浪潮席卷全球的当下,中国开发者群体正迎来前所未有的发展机遇。作为国内领先的代码托管与协作平台,Gitee凭借其深度本土化特性,已成为1350万开发者的首…

使用 Github Pages 和 Hexo 搭建博客

介绍了使用GitHub Pages和Hexo搭建个人博客的优缺点及详细流程。优点包括免费服务器、二级域名和安全性保障;缺点涉及SEO收录较差和网络不稳定。搭建步骤涵盖GitHub仓库创建、Hexo初始化配置、文章编写发布及主题更换…

linux 移动硬盘加载失败

https://blog.csdn.net/cheneykl/article/details/79203457

吱吱企业即时通讯不止通讯,还是数字化协作的安全与效率标杆

在全球化数字化转型的浪潮中,企业即时通讯的兴起与发展,成为企业转型升级的重要技术支撑。然而,随着企业业务的升级,单纯的消息传递已然无法满足企业高效发展的需要,吱吱企业即时通讯打破“通讯工具”的桎梏,以安…

callout样式

操作成功你的更改已成功保存!系统将在 5 秒后自动刷新。ℹ️提示信息此功能仅对 VIP 用户开放,升级后可解锁全部权限。⚠️注意配置文件即将过期,请在 7 天内更新,否则服务将暂停。📌灵感笔记在 CSS 中使用 clam…

java Web 检查清单程序设计与实现 - 教程

java Web 检查清单程序设计与实现 - 教程pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "M…

Java 8 - Optional类

目录Java 8 - Optional类Optional类感觉用处不大,我自己会主动判断null来规避?表面看确实像 "语法糖",你可能会想:但 Optional 的真正威力在这里:1. API 设计的语义清晰度2. 链式操作的巨大优势3. 函数式…

【循环神经网络5】GRU模型实战,从零开始构建文本生成器 - 详解

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

得帆AI aPaaS(AI低代码)1.0产品特性(5)-智能搭建(二)

在上一期中,我们探讨了「为什么用智能搭建」。今天,我们将拆解搭建任务管理系统的真实案例,亲历从「说需求」到「应用上线」的完整旅程,揭秘智能搭建的六大核心步骤! 第一步:需求理解——对话驱动,精准捕捉需求…

实用指南:如何快速学习一个网络协议?

实用指南:如何快速学习一个网络协议?2025-10-20 14:00 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !…