3DGS如何提升面向仿真的三维高斯重建质量

为仿真构建真正照片级真实感的三维环境颇具挑战。即便采用先进的神经重建方法,如三维高斯泼溅(3D Gaussian Splatting, 3DGS)与带无迹变换的三维高斯(3D Gaussian with Unscented Transform, 3DGUT),渲染视图仍可能出现模糊、空洞或伪几何等伪影 ------尤其在新视角下。这些伪影会显著降低视觉质量,并妨碍下游任务。

NVIDIA Omniverse NuRec 将真实世界传感器数据带入仿真,并包含名为 Fixer生成式模型以应对上述问题 。Fixer 是基于 NVIDIA Cosmos Predict 世界基础模型(WFM)的扩散模型,可去除渲染伪影,并在场景约束不足的区域恢复细节。

本文介绍如何使用 Fixer 将含噪的三维场景转变为清晰、无伪影、可用于自动驾驶(AV)仿真的环境 ;涵盖在场景重建阶段 离线 使用 Fixer,以及在渲染阶段 在线 使用 Fixer,并以 Hugging Face 上 NVIDIA Physical AI 开放数据集中的示例场景为例。


步骤 1:下载已重建场景

首先,找一个带有一定伪影的已重建三维场景。Hugging Face 上的 PhysicalAI-Autonomous-Vehicles-NuRec 数据集提供超过 900 个来自真实驾驶的重建场景。请先登录 Hugging Face 并同意数据集许可协议,然后下载示例场景(以 USDZ 文件形式提供,内含三维环境)。例如,使用 Hugging Face CLI:

bash 复制代码
pip install "huggingface_hub[cli]"  # 如需要,安装 HF CLI

hf auth login

# (在 huggingface-cli 登录并接受数据集许可后)
hf download nvidia/PhysicalAI-Autonomous-Vehicles-NuRec \
  --repo-type dataset \
  --include "sample_set/25.07_release/Batch0005/7ae6bec8-ccf1-4397-9180-83164840fbae/camera_front_wide_120fov.mp4" \
  --local-dir ./nurec-sample

该命令会将场景的预览视频(camera_front_wide_120fov.mp4)下载到本机。Fixer 直接处理的是图像,而非 USD 或 USDZ,因此使用视频帧可方便地得到一组待处理图像。

接下来,用 FFmpeg 抽帧,并将这些图像作为 Fixer 的输入:

bash 复制代码
# 为 Fixer 创建输入文件夹
mkdir -p nurec-sample/frames-to-fix
# 抽帧
ffmpeg -i "sample_set/25.07_release/Batch0005/7ae6bec8-ccf1-4397-9180-83164840fbae/camera_front_wide_120fov.mp4" \
  -vf "fps=30" \
  -qscale:v 2 \
  "nurec-sample/frames-to-fix/frame_%06d.jpeg"

视频 1 为展示该重建场景及其伪影的预览视频。本例中,部分表面因相机覆盖有限而出现空洞或纹理模糊。这些正是 Fixer 旨在解决的问题。

视频 1:从 Hugging Face 下载的示例重建场景预览


步骤 2:配置 Fixer 运行环境

接下来配置运行 Fixer 的环境。

开始前,请确保已安装 Docker 并启用 GPU 访问,然后按下列步骤准备环境。

克隆 Fixer 仓库

以获取后续步骤所需的脚本:

bash 复制代码
git clone https://github.com/nv-tlabs/Fixer.git
cd Fixer

下载 Fixer 预训练权重

预训练 Fixer 模型托管在 Hugging Face 上,可使用 Hugging Face CLI 获取:

bash 复制代码
# 创建模型目录
mkdir -p models/
# 仅将预训练模型下载到 models/
hf download nvidia/Fixer --local-dir models

上述操作会将步骤 3 推理所需的文件保存到 models/ 文件夹。


步骤 3:使用在线模式进行 Fixer 实时推理

在线模式 指在渲染过程中将 Fixer 作为神经增强器,在仿真中对每一帧进行修复。使用预训练 Fixer 模型进行推理,可在 Cosmo2-Predict Docker 容器内运行。

注意:Fixer 增强的是来自场景的渲染图像 。请确保已将帧导出(例如到 examples/),并将该文件夹传给 --input

要对目录中所有图像运行 Fixer,可执行:

bash 复制代码
# 构建镜像
docker build -t fixer-cosmos-env -f Dockerfile.cosmos .

# 在容器内运行推理
docker run -it --gpus=all --ipc=host \
  -v $(pwd):/work \
  -v /path/to/nurec-sample/frames-to-fix:/input \
  --entrypoint python \
  fixer-cosmos-env \
  /work/src/inference_pretrained_model.py \
  --model /work/models/pretrained/pretrained_fixer.pkl \
  --input /input \
  --output /work/output \
  --timestep 250

命令要点说明:

  • 当前目录挂载到容器内 /work,容器可访问仓库文件。
  • 通过 FFmpeg 从示例视频抽取的帧目录挂载为 /input
  • 脚本 inference_pretrained_model.py(来自克隆的 Fixer 仓库 src/)从给定路径加载预训练 Fixer 模型。
  • --input:输入图像文件夹(例如 examples/ 中可包含带伪影的渲染帧)。
  • --output:增强后图像保存目录(上文示例为 output)。
  • --timestep 250:扩散去噪过程所使用的噪声水平。

运行结束后,output/ 目录将包含修复后的图像。注意:前几帧可能因模型初始化而较慢,模型跑起来后后续帧会更快。

视频 2:将经 Fixer 在线模式增强的 NuRec 场景与原始示例重建场景对比


步骤 4:评估输出

对图像应用 Fixer 后,可评估其对重建质量的改善程度。文中采用 峰值信噪比(PSNR) 作为衡量像素级精度的常见指标。下表为示例场景的前后对比。

指标 未使用 Fixer 使用 Fixer
PSNR ↑(精度) 16.5809 16.6147

表 1:应用 Fixer 后的 PSNR 改善示例(↑ 表示越高越好)

若使用 Physical AI 开放数据集中其他 NuRec 场景,或你自己的神经重建结果,同样可用这些指标衡量 Fixer 带来的质量提升。具体计算方法见指标相关文档。

在主观观感上,经 Fixer 处理的场景明显更逼真:原先涂抹般的表面被重建为更合理的细节;道路标线等细微纹理更清晰;帧间改善一致,且未引入明显闪烁。

此外,Fixer 在新视角合成 引入伪影时也能有效修正。视频 3 展示了将相机向左平移 3 米得到的新视角下,对 NuRec 场景应用 Fixer 的效果。在新视角合成输出之上运行 Fixer 时,可减轻视角相关伪影,并提升重建场景的主观观感质量。

视频 3:将经 Fixer 增强的 NuRec 场景与原始 NuRec 场景对比(视角向左偏移 3 米)


结语

本文围绕 FixerOmniverse NuRec 工作流,说明了如何从带伪影的重建结果出发,通过离线或在线方式提升三维高斯类渲染在仿真中的可用性与观感,尤其适用于自动驾驶等需要稳定、清晰多视角输出的场景。

如需复现,请结合官方仓库、Docker 环境与 Hugging Face 上的模型与数据集说明进行操作。

文章来自:https://developer.nvidia.com/blog/how-to-enhance-3d-gaussian-reconstruction-quality-for-simulation/

相关推荐
PNP Robotics2 小时前
PNP机器人亮相第二届机器人灵巧手国际创新大会
人工智能·学习·机器人·开源
xwz小王子3 小时前
Science Advances发表软体机器人操控最新成果
机器人
藦卡机器人12 小时前
中国工业机器人发展现状
大数据·人工智能·机器人
twe775825812 小时前
动态揭示CCP-RIE技术中的缺陷形成:从微观机理到3D动画演示
科技·3d·制造·动画
bing_feilong15 小时前
Mid360(2):运行livox_ros_driver2的demo失败
ubuntu·机器人
workflower20 小时前
需求-什么时候才算完成
人工智能·机器人·集成测试·ai编程·软件需求
xwz小王子1 天前
Biomimetic Intelligence and Robotics最新综述:走进类生命机器人的奇妙世界
机器人
2401_863801461 天前
3DTiles总体介绍,什么是3DTiles,主要用途
3d·arcgis·3dtiles
2301_766558651 天前
本地部署+云端优化:矩阵跃动龙虾机器人,实现7×24小时AI获客无人值守
人工智能·矩阵·机器人