纯小白入门NeRF!开山之作,迈入NeRF的大门~
发布网友
发布时间:2024-09-06 12:22
我来回答
共1个回答
热心网友
时间:2024-09-07 09:43
本文是我在学习自动驾驶之心《NeRF与自动驾驶论文带读课程》过程中的个人笔记与总结,欢迎有兴趣的朋友一同加入课程进行学习与交流。
神经辐射场究竟是什么?辐射场指的是光源发出的光线在场景中传播和反射过程中所形成的能量分布。简单来说,它是一个记录空间位置处向某个方向的辐射信息的函数,这里的辐射信息实际上就是颜色、亮度、阴影等信息。其中,方向是NeRF实现真实重建的重要因素之一。
基于此,我们引出了神经辐射场的概念。神经辐射场是指用神经网络存储空间位置向任意方向的辐射信息。具体来说,输入3D位置和2D视角方向,输出是颜色和体密度。
NeRF是一种隐式建模,模型存储在MLP中,与传统的点云和mesh建模不同,NeRF需要查询一个个的三维点,然后渲染成一张图像。这种查看方式或渲染方式被称为体渲染。
在介绍体渲染之前,我们先看看网络的效果。不同视角下的颜色是不同的,这是NeRF相对于传统重建的一个重要优势。
接下来,我们进入NeRF的第二个核心要点——体渲染。体渲染是将颜色和密度渲染成2D图像的方法。具体来说,从相机光心位置发出射线,射线上有采样点,将采样点和方向送入MLP获得颜色和体密度,对曲线进行积分就能获得像素的颜色。这个过程就是体渲染。
在介绍完神经辐射场和体渲染后,现在开始完整的重建流程。在形成一个完整的pipeline之前,还需要解决两个问题:如何提高采样精度和如何提高渲染速度。
为了解决上述问题,NeRF提出了位置编码和分层采样过程。位置编码可以表达高频的几何和纹理信息,而分层采样可以提高渲染速度。
实验结果表明,NeRF可以实现具有真实感的模型重建和渲染,但同时也存在一些缺陷。