Open Source Robotics

精选高质量开源机器人项目、工具和软件,推动机器人社区发展。

3D Gaussian Splatting

  • 又称: 3DGS, Gaussian Splatting, Gaussian splats, Gaussian radiance field
  • 类别: Sensing › 3D maps & reconstruction
  • 标签: scene-representation, 3d-reconstruction, rendering, slam, computer-vision, simulation

一种场景表示,将 3D 环境建模为大量带颜色、半透明的高斯团块,可以从照片中优化得到,并以照片级真实感实时渲染。

定义

3D 高斯泼溅(3D Gaussian Splatting,3DGS)是一种重建和渲染 3D 场景的方法,由 Bernhard Kerbl、Georgios Kopanas、Thomas Leimkühler 和 George Drettakis 在 SIGGRAPH 2023 上提出。场景被表示为一组 3D 高斯,每个高斯带有一个位置、一个决定其大小和朝向的协方差、一个不透明度,以及以球谐系数存储的视角相关颜色。渲染图像时,这些高斯被投影到像平面上,按深度排序并从前到后混合,这一过程称为泼溅(splatting)。

该表示从已知相机位姿的照片中学习得到,相机位姿通常由 COLMAP 等运动恢复结构软件求得,这类软件还会提供一个稀疏点云,用于初始化高斯。由于光栅化器是可微的,每个高斯的参数都可以通过梯度下降进行优化,以减小渲染图像与真实图像之间的差异。训练过程中,会在重建不足的区域添加高斯,在高斯过大处将其分裂,并在其几乎变为透明时将其删除。

神经辐射场(NeRF)将场景存储在一个沿相机光线查询的神经网络中;与之相比,高斯泼溅是一种显式表示,使用基于图块的快速光栅化而非光线步进进行渲染。这带来了高分辨率下的实时渲染和更快的训练,代价是更高的内存占用,因为一个场景可能包含数量非常庞大的高斯。由于高斯是显式的,它们可以被移动、编辑、附着到物体上或删除,而这对隐式网络来说更难做到。

机器人领域以多种方式使用 3DGS。作为地图表示,它支持在跟踪相机的同时构建照片级真实感地图的稠密 SLAM 系统。作为仿真资产,重建的真实场景可以与物理仿真器配对,使视觉策略能在实际部署环境的逼真图像上进行训练或测试。其局限包括反光或透明表面、几何精度不如渲染外观所显示的那样高,以及需要对场景有良好的相机覆盖。

为何重要

3DGS 使真实场所的照片级真实感重建快到足以实时渲染,这让机器人能够构建逼真的地图,也让团队能把对真实房间的扫描转化为视觉训练数据。它已成为基于视觉的机器人学习中连接真实环境与仿真的一座广泛使用的桥梁。

主要应用

  • 照片级真实感仿真 — 渲染逼真的相机视图,用于训练和测试视觉策略
  • 稠密 SLAM — 在跟踪相机位姿的同时构建照片级真实感地图
  • 数字孪生 — 重建真实的工作空间、工厂或住宅,用于规划和检查
  • 无人机导航 — 为基于视觉的飞行提供逼真的视觉环境
  • 场景编辑 — 插入、移动或移除物体,以构建多样化的训练场景

实际应用

团队通常先拍摄机器人工作空间的一段视频或一组照片,用 COLMAP 或类似工具估计相机位姿,再用开源实现(例如原作者的代码或 Nerfstudio 的 splatfacto)训练高斯泼溅模型。训练好的场景可以从任意视角渲染,因此他们会放置与机器人机载相机相匹配的虚拟相机来生成训练图像,或将泼溅场景与物理仿真器的碰撞几何对齐,使仿真机器人在移动时看到逼真的视图。在建图方面,团队使用配备 RGB-D 或单目相机的高斯泼溅 SLAM 系统,并用深度传感器验证几何,因为渲染图像可能看起来正确,而底层形状却并不准确。

常见误解

  • 高斯泼溅是一种神经网络 — 它是一组经过优化的显式基元;渲染它不需要神经网络
  • 照片级真实感的渲染意味着几何准确 — 外观可能正确,而深度和表面并不精确,因此几何需要单独验证
  • 3DGS 取代了物理仿真 — 它负责外观和渲染;接触和动力学仍然需要物理引擎和碰撞几何
  • 它适用于任意一组照片 — 它需要良好的视角覆盖和准确的相机位姿,并且难以处理反光、透明或运动的内容

谁需要了解

  • 构建地图和场景表示的感知工程师
  • 训练基于视觉的策略的机器人学习研究人员
  • 创建逼真环境的仿真工程师
  • 无人机导航开发者

相关技术

  • 神经辐射场(Neural Radiance Fields,NeRF)
  • 运动恢复结构(Structure from Motion,COLMAP)
  • SLAM
  • 可微渲染(Differentiable Rendering)
  • 点云(Point Cloud)
  • Nerfstudio

相关术语

  • Neural Radiance Field
  • Point Cloud
  • SLAM
  • Depth Camera

相关项目

  • GENESIS: World's fastest physics engine: 43M FPS for embodied AI learning
  • LeRobot: HuggingFace ML library for real-world robotics in PyTorch
  • LingBot-Map: Streaming 3D reconstruction from one camera: pose and depth for every frame, live
  • PyBullet: Python physics simulator for robotics and RL research with fast CPU-based simulation
  • oomwoo: Open-source DIY robot vacuum: 3D-printed, ROS2 + 2D LiDAR, fully local.
  • Cartographer: Google's real-time 2D and 3D SLAM system for multi-platform robotics

视频

  • 3D Gaussian Splatting - Why Graphics Will Never Be The Same: IndividualKex
  • 3D Gaussian Splatting! - Computerphile: Computerphile

本网站需要 JavaScript 才能正常运行。请启用 JavaScript 以浏览我们的开源机器人项目。