NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis
收录: eccv2020
领域: 主要作用于神经场渲染以及视角合成
项目主页地址:页面标题
主要贡献:
该方法通过mlp模型对像素颜色r进行建模,并作为体积密度(即不透明度)处理。
在训练网络中嵌入了位置编码(频率分量)后,在处理高分辨率数据时表现出更强的能力
该系统采用层次采样的策略(基于其更高效地适应高分辨率数据的表现),随后分别进行粗粒度(coarse)和精细度(fine)的随机采样。
缺点:
1)需要稠密的多视角图片,训练时间长
2)对于非朗伯物质,合成的质量较差,并且存在伪影问题
整个pipeline:
输入: 射线上采样点的位置x,y,z,以及射线方向

采样位置坐标及其色调和明暗度信息(RGB, Volume Density Parameters),最后通过离散化的渲染方程计算得到与该射线相交的平面像素值的色调和明暗度信息。

首先深入掌握这篇文章的核心数学模型——渲染方程(亦称反射方程)。其中变量 t 的分段区间分为近段 tn 和远端 tf 。因此,在计算这条射线的颜色时,则采用积分的方法进行求解(其中 t 表示光线从起始点延伸至终止点的路径长度):

其中

,o表示射线原点,t表示位置或者是边界,d表示射线的方向,上述是用

σ(t)代表光线到达路径t终止的概率;T(t)是射线从tn沿着路径走到t这一段路径上的累积透光率,在这里我们可以将其理解为这条射线从tn沿路径走到t的过程中一直未与任何粒子发生相互作用的概率。
根据公式C(r),采样点的体积密度σ仅与位置r(t)相关。然而,在同一观察角度下分析时发现,在该区域内的采样点颜色c不仅与位置r(t)相关联,并且其具体取值还受到射线方向d的影响;这进一步证实了一个关键事实:在同一观察点上观察不同方向时颜色会有所差异
2)可以说T(t)与加权机制具有相似性;在蒙特卡洛积分中,默认情况下我们关注的是光线首次与介质交互的位置,在这种情况下该采样点处的密度会有所上升。这会导致相应的权重值(即T(t))减少。因此,在后续的过程中我们通过设定适当的衰减因子(如T(t))来抑制那些位于光线路径上的后续采样点对最终视觉结果的影响。
整个C(r)可以用下式表示:成像平面上某一点的颜色值等于其所在射线上的各采样点所发出的颜色经该射线传输至平面上并累加于此处。
因为计算机在处理连续积分时存在一定的难度, 所以该文章中采用了将上述连续的C(r)转换为近似离散形式的方法, 如下所示:

其中N代表了采样点的数量;
其中ti+1 − ti被定义为时间间隔δi;
其余项与上式中所描述的一致;
关于引入高频分量

:

其中文中对于位置(x,y,z),L设置为10,对于方向

,L设置为4;注意这里是每个变量分别输入,比如

这种形式
关于采样点的采样策略(分层采样):
采用均匀采样的方法在射线上选取64个点;随后通过这64个点的密度值推算出概率密度函数(PDF)。接着进一步利用逆向抽样的方法在高密度区域集中取样128个点;最后采用该策略能够显著提升取样的效率水平;这样不仅提高了效率水平还大幅缩短了解决问题所需的时间
针对上述两个连续的采样过程,在文中我们将它们分别归类为粗粒化网络(coarsen network)和精细网络(fine network)。具体来说,“粗粒化采样(coarsen sample)”这一环节的数学表达式如下:其中N表示采样的数量;tn代表开始时刻;tf表示结束时刻。

并且文中先采用coarse sample通过coarse network进行粗略的颜色计算,并且随后会给出具体的数学表达式如上所示

注意这里的

和上面的

还不一样,上面的

是在fine network 阶段使用。
fine sample中每个 PDF 定义:

,Nc为 coarse sample的数目;
通过这个

对于每个高密度区域而言,在其范围内进行反向采样获取128个样本,并将其与之前的粗采样获得的64个样本一并作为训练'精细网络'的数据输入
损失函数构成:

该系统包含两个主要组成部分:其中一部分是基于coarse network生成的质量特征,并通过与ground truth(ground truth)图像进行 L_2 损失计算来优化模型参数。另一部分则是基于fine network提取的精细细节,并同样与ground truth图像进行 L_2 损失计算。
单个场景重建的耗时:

评测数据集以及指标:

消融实验
主要分析了位置编码机制、视角依赖性以及层次化采样策略这三个关键因素在模型性能上的差异

未来工作可探索的方向:
1)更高效的优化方式、以及渲染方式
2)本文所用的核心采样基于2D pixel坐标进行提取。是否能够建议采用Voxel grid和Mesh结构来进行采样。
