ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

【笔记】Ref-Nerf

2022-07-12 22:36:28  阅读:204  来源: 互联网

标签:mathbf 镜面反射 笔记 MLP Nerf Ref 向量 NeRF


Ref-NeRF

介绍

NeRF在镜面反射上,有着许多artifacts,有两个原因。一个是,用外向辐射作为视角,不好插值;另一个是,NeRF会用各向同相的内部光源来假装镜面反射,结果是半透明或雾状的artifacts。

Ref-NeRF用反射光作为输入,因为表面的取向不影响它,因此MLP能在上面更好地插值。

一个问题是,反射光需要找法向量,而NeRF生成的geometry不够好,上面的法向量噪声过多。Ref-NeRF在volume density上加了一个新的正则化器,激励volume density集中在表面上,同时获得更好的法向量。

Structured View-Dependent Apperance

反射光

用入射光和法向量求反射光(入射光其实是发射的)

\[\mathbf{\omega_r} = 2(\mathbf{\omega_o}\cdot \mathbf{n})\mathbf{n} -\mathbf{\omega_o} \]

Integrated Directional Encoding

在现实中,辐射不能仅仅用反射方向来表示,考虑到粗糙和光滑材质的区别,引入了Integrated Directional Encoding (IDE) 让MLP能表示材质的粗糙度。

首先,不用sin函数做encoding了,改用一系列球谐函数,保证了球面上的不变性。

接下来,用encode反射向量分布的方法,让MLP可以推理材质粗糙度,并引入参数\(\kappa\)表征粗糙度。

漫反射和镜面反射颜色

通过解耦漫反射和镜面反射的组成,进一步简化外向辐射的函数。根据定义,漫反射颜色只与位置有关,将真实颜色拆解为

\[\mathbf{c} = \gamma (\mathbf{c}_d+\mathbf{s}\odot \mathbf{c}_s) \]

其中\(\mathbf{c}_d\)是漫反射颜色,\(\mathbf{s}\)是spatial MLP输出颜色,\(\mathbf{c}_s\)是directional MLP输出颜色。

额外的自由度

将spatial MLP的输出b,作为directional MLP的输入,让它更好地表征位置变化带来的影响。

准确的法向量

好的反射向量,依赖于好的法向量,然而NeRF出来的volume density很凌乱,而且NeRF会用内部各向同性的光源来假装反射光,这是一个局部最优解。

为了解决第一个问题,即法向量噪声多的问题,Ref-NeRF使用预测的法向量来计算反射方向,从spatial MLP中得到一个三维向量,正则化以后作为预测的法向量。MLP预测的法向量比梯度算出来的更光滑,因为梯度算子在MLP的插值卷积核上是一个高通滤波器的作用。

为了解决第二个问题,使用正则函数来惩罚雾状表面,从而避免NeRF用藏在半透明面后的内部发光源来解释镜面反射。

标签:mathbf,镜面反射,笔记,MLP,Nerf,Ref,向量,NeRF
来源: https://www.cnblogs.com/ghostcai/p/16472014.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有