问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

NeRF三维重建技术详解:神经辐射场的工作原理与实现

创作时间:
作者:
@小白创作中心

NeRF三维重建技术详解:神经辐射场的工作原理与实现

引用
CSDN
1.
https://m.blog.csdn.net/weixin_46167190/article/details/142671268

NeRF(神经辐射场)是近年来在三维重建领域的重要进展,通过深度学习实现逼真的三维场景重建。本文将详细介绍NeRF的基本概念、工作原理、数学模型和实现细节,帮助读者理解这项前沿技术的核心内容。

NeRF—神经辐射场

NeRF(Neural Radiance Field)是一种通过深度学习实现三维场景重建的技术。它通过神经网络隐式地存储三维信息,能够生成高质量的三维场景渲染。NeRF在计算机图形学、自动驾驶和元宇宙等领域展现出广阔的应用前景。

NeRF的定义

NeRF的核心思想是使用神经网络(MLP)隐式地存储三维信息。与传统的显式表示(如网格、体素或点云)不同,NeRF通过神经网络的权重来存储场景信息。

  • 显式表示:有明确的x、y、z坐标值(如网格、体素、点云等)。
  • 隐式表示:没有明确的x/y/z坐标值,只能输出指定角度的二维图片。

NeRF的模型结构相对简单,主要包括以下几个核心过程:

  1. 模型输入是5D向量(x, y, z, theta, phi);
  2. 模型输出是4D向量(密度,颜色RGB);
  3. 模型是一个8层的MLP。

体渲染

体渲染是一种通过追踪光线或积分累积生成图像的方法。在NeRF中,体渲染主要用于处理非刚性物体(如云、烟等)的渲染建模。其基本假设包括:

  • 物体是一团自发光的粒子。
  • 粒子有密度和颜色。
  • 外射光和内射光相互抵消。
  • 多个粒子被渲染成指定角度的图片。

模型的输入是将物体进行稀疏表示的单个粒子的位姿,输出是该粒子的密度和颜色。

粒子采集的原理

粒子采集的基本原理是将物体的空间坐标(x, y, z)转换为图像上的像素坐标(u, v)。通过将一条光线上的多个点视为向量,进行合成操作,最终得到该条光线在输出图像上的像素值。

训练时,一张图片会取1024个像素,得到1024条射线,每条射线上采样64个粒子,共1024*64个粒子。粒子以batch形式输入模型。

坐标系转换的计算

在体渲染过程中,需要进行多种坐标系之间的转换,包括世界坐标系、相机坐标系和像素坐标系。这些转换涉及到相机的内外参参数。

相机内参变换将像素空间中的点映射到相机坐标系下,而相机外参变换则将相机坐标系下的点转换到世界坐标系下。

光线颜色计算公式

体渲染的核心是计算光线颜色的连续积分公式:

$$
C(r) = \int_{t_n}^{t_f} T(t) \sigma(\mathbf{r}(t)) \mathbf{c}(\mathbf{r}(t), \mathbf{d}) d t
$$

其中:

  • $C(\mathbf{r})$ 是投射出来的光线所呈现的颜色
  • $\sigma(\mathbf{r}(t))$ 是预测的体密度
  • $\mathbf{c}(\mathbf{r}(t), \mathbf{d})$ 是预测的颜色
  • $T(t)$ 是透射率

离散采样公式为:

$$
\hat{C}(\mathbf{r})=\sum_{i=1}^{N} T_{i}\left(1-\exp \left(-\sigma_{i} \delta_{i}\right)\right) \mathbf{c}_{i}
$$

网络结构

NeRF的网络结构主要包括分层采样(Hierarchical sampling):

  • 粗网络(coarse):均匀采样64个点
  • 精细网络(fine):基于粗网络的结果,使用逆变换采样128个点,并结合粗网络的64个点,共192个点

网络结构包括8层全连接层,其中:

  • 半路再次输入位置坐标
  • 后半路输出密度
  • 后半路输入方向视角
  • 最后输出颜色RGB

训练方法

NeRF的训练过程主要包括以下步骤:

  1. 从数据集中采样一批相机光线(batch_size=4096)
  2. 使用分层采样查询粗略点和精细点
  3. 使用体渲染公式计算光线的颜色
  4. 计算渲染图像和真实图像像素之间的平方误差
  5. 使用Adam优化网络参数

通过上述过程,NeRF能够学习到场景的三维结构和光照信息,实现高质量的三维场景重建。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号