核心要点

  • NeRF:用一个 MLP 把空间坐标+视角映射到体密度和颜色,靠体渲染沿光线积分成像。

  • NeRF 是隐式表示,渲染要逐光线大量采样,训练和渲染都偏慢。

  • 3D Gaussian Splatting:用一堆显式 3D 高斯点(位置/协方差/颜色/不透明度)表示场景。

  • 3DGS 靠光栅化投影渲染,速度快、可实时,训练也更快。

标准回答

NeRF(神经辐射场)

NeRF 用一个 MLP 隐式表示场景:输入空间坐标和观察方向,输出该点的体密度和颜色。渲染时沿每条相机光线采样若干点,用体渲染公式做积分得到像素颜色,再以多视角图像做监督优化。优点是高质量新视角合成,缺点是隐式表示需逐光线密集采样,训练慢、渲染也慢。

3D Gaussian Splatting(3DGS)

3DGS 改用显式表示:场景由大量 3D 高斯点构成,每个高斯带有位置、协方差(形状/朝向)、颜色和不透明度。渲染时把高斯投影到图像平面并光栅化混合(splatting),避免逐光线积分。

对比取舍

  • NeRF:隐式、紧凑、连续,但慢。
  • 3DGS:显式、可实时渲染、训练更快,质量相当甚至更好,已成为实时新视角合成主流。

3D 生成还常把扩散模型与上述表示结合(如 score distillation),由文本/图像驱动生成 3D 资产。

常见误区

⚠️ 常见踩坑

3D Gaussian Splatting 不是「点云」也不是神经网络推理——它是可微光栅化优化出的一组显式高斯基元,渲染走光栅化管线而非 NeRF 那样的逐光线 MLP 查询。

追问

追问 1为什么 3DGS 能做到实时渲染而 NeRF 难?

NeRF 每个像素要沿光线采样几十上百个点、每点都查一次 MLP,计算量巨大。3DGS 用显式高斯做投影光栅化,借助 GPU 光栅化管线一次性混合可见高斯,避免逐点神经网络查询,因此能达到实时帧率。

追问 2文本到 3D 生成常用什么思路?

常见做法是 Score Distillation Sampling(SDS):用预训练的 2D 文本到图像扩散模型作为先验,对一个 3D 表示(NeRF 或高斯)渲染出的多视角图像施加扩散去噪梯度,反向优化 3D 参数,使各视角都符合文本描述。

延伸学习

与本题相关的知识库文章、术语、工具与行业资讯。