For the complete documentation index, see llms.txt. This page is also available as Markdown.

Nerfstudio

Nerfstudio 是一个模块化、对研究者友好的框架,用于训练和渲染 神经辐射场(NeRF) ——一种从 2D 图像重建照片级真实感 3D 场景的技术。它在 GitHub 上拥有超过 10,000 颗星,是 NeRF 研究和生产应用的事实标准。在 Clore.ai 的 GPU 云上运行它,即可从你自己的照片或视频中重建 3D 场景。


什么是 Nerfstudio?

NeRF(神经辐射场)将 3D 场景表示为一个神经网络:给定相机位置和方向,它会输出该点的颜色和密度。通过在从不同角度拍摄的数十张照片上训练,NeRF 学会一种完整的 3D 表示,可以从任何视角进行渲染。

Nerfstudio 提供:

  • 多种 NeRF 方法:Nerfacto、Instant-NGP、Splatfacto、TensoRF 等

  • 命令行接口和 Python API

  • 7007 端口上的交互式网页查看器(Viser)

  • 导出为点云、网格和视频漫游

  • 通过 COLMAP 集成支持自定义数据集

适用场景:

  • 从无人机视频中重建 3D 场景

  • 从照片进行产品可视化

  • 从智能手机拍摄内容生成虚拟导览

  • 新视角合成研究


前提条件

要求
最低
推荐

GPU 显存

8 GB

16–24 GB

GPU

RTX 3080

RTX 4090 / A100

内存

16 GB

32 GB

存储

20 GB

50+ GB

CUDA

12.8+

12.8+

训练时间随场景复杂度而变化。一个由 100 张照片组成的典型户外场景,在 RTX 4090 上训练需要 10–30 分钟。交互式查看器会在训练期间实时更新。


步骤 1——在 Clore.ai 上租用 GPU

  1. 登录到 clore.ai.

  2. 点击 市场 并按 VRAM ≥ 16 GB 进行筛选。

  3. 选择一台服务器——RTX 4090 最适合 Nerfstudio。

  4. 设置 Docker 镜像: dromni/nerfstudio:latest

  5. 设置开放端口: 22 (SSH)和 7007 (Viser 网页查看器)。

  6. 点击 租用 并等待实例初始化。

dromni/nerfstudio 镜像是社区维护的官方镜像,已预装所有依赖项(CUDA、tiny-cuda-nn、colmap、ffmpeg)。


第 2 步 — 通过 SSH 连接

dromni/nerfstudio 镜像默认使用 user (非 root)。使用 sudo 执行管理任务。

验证安装:


第 3 步 — 准备你的数据集

选项 A:使用提供的示例数据集

Nerfstudio 包含可立即测试的内置数据集:

选项 B:处理你自己的图像

如果你有场景的照片或视频:

从图像开始(COLMAP 流程):

从视频开始:

要获得最佳效果,请使用 100–300 张照片 并确保有明显重叠(相邻帧之间 >60%)。围绕物体/场景按系统化路径移动——圆形、网格或“8”字形都很有效。


第 4 步 — 训练 NeRF

使用 Nerfacto 的基础训练(推荐)

Nerfacto 是 Nerfstudio 的旗舰方法,在质量和速度之间取得平衡:

使用 Instant-NGP 训练(最快)

使用提供的 poster 数据集训练


第 5 步 — 访问交互式查看器

打开浏览器并访问:

你将看到一个由 Viser 提供支持的 3D 查看器,它会显示:

  • 实时训练进度

  • 当前 NeRF 渲染质量

  • 交互式相机控制

  • 训练损失曲线

查看器会在训练期间每隔几秒更新一次。你可以旋转、平移和缩放,以便在训练推进时检查场景质量。


可用的训练方法

方法
速度
质量
显存
备注

nerfacto

中等

8 GB

综合表现最佳

instant-ngp

中等

6 GB

训练速度最快

splatfacto

8 GB

高斯 splatting

tensorf

中等

12 GB

适合物体

mipnerf360

非常高

24 GB

最佳质量

vanilla-nerf

非常慢

16 GB

研究基线

使用 Splatfacto(高斯 splatting)训练


第 6 步 — 评估和渲染

检查训练指标

渲染视频漫游

渲染插值螺旋路径


第 7 步 — 导出 3D 几何

导出点云

导出网格

导出高斯点(PLY)


Python API

对于程序化训练和评估:


自定义数据集提示

相机拍摄最佳实践

设置
建议

重叠

帧之间 ≥ 60%

图像

100–300(户外),50–150(物体)

运动

缓慢、平稳地移动

光照

保持一致,避免强烈阴影

对焦

全程清晰

改进 COLMAP 结果


故障排查

COLMAP 无法找到相机位姿

解决方案:

  • 确保图像有足够的重叠

  • 确认图像清晰(没有运动模糊)

  • 尝试穷举匹配: --matching-method exhaustive

  • 减少 --num-frames-target 用于视频以选择更好的帧

无法访问查看器

解决方案: 确保在 Clore.ai 中已转发 7007 端口。测试连接性:

训练损失没有下降

解决方案:

  • 检查 COLMAP 是否成功(查看 transforms.json 在输出目录中)

  • 降低学习率: --pipeline.model.field-implementation hash

  • 检查是否有大面积天空占主导(使用 --pipeline.model.background-color white)

内存不足


下载输出

训练完成后,下载你的渲染结果和导出内容:


成本估算

GPU
显存
预估价格
100 张图像的场景

RTX 3080

10 GB

$0.05–0.19/小时

约 30–45 分钟

RTX 4090

24 GB

$0.14–0.42/小时

约 10–15 分钟

A100 40GB

40 GB

约 5–8 分钟

先用 Instant-NGP 进行快速预览,然后切换到 Nerfacto 或 MipNeRF360 以获得最终质量。这种工作流程可显著节省计算成本。


有用资源


Clore.ai GPU 推荐

使用场景
推荐 GPU
Clore.ai 预计成本

开发/测试

RTX 3090(24GB)

$0.07–0.21/gpu/hr

生产环境

RTX 4090(24GB)

$0.14–0.42/gpu/hr

大规模 / 高分辨率场景

A100 80GB

💡 本指南中的所有示例都可以部署在 Clore.ai GPU 服务器上。浏览可用 GPU 并按小时租用——无需承诺,拥有完整 root 访问权限。

最后更新于

这有帮助吗?