当前位置:网站首页>8、Mip-NeRF
8、Mip-NeRF
2022-08-11 07:26:00 【C--G】
简介
《Mip-NeRF: A Multiscale Representation for Anti-Aliasing Neural Radiance Fields》
NeRF能在新的视图位置上生成逼真的渲染图,但是必须在训练图像的分辨率或比例的基础上生成,上图a中将相机拉回并放大(降低图像分辨率),这导致了渲染显示严重的混叠。
上图b将不同分辨率的图像放入NeRF中训练,虽然一定程度上改善低分辨率问题,但是高分辨情况拉跨了
图c中Mip-NeRF很好的解决了这个问题
论文思路
我们知道NeRF是通过穿过图像像素的一条射线进行积分,在射线上采样的是一个一个的点。那么我们多发射几条光线,提高采样率,在一定程度上能够解决锯齿化问题,但是计算量也大大增加,论文作者就提出使用圆锥体取代光线的方法
Mip-NeRF采用多元高斯坐标逼近锥形积分,然后在高斯坐标的位置编码上计算(封闭形式)积分E(γ(x)]。那么传统的位置编码就不适用了,论文提出集成的位置编码(IPE) an integrated positional encoding,是对NeRF的位置编码(PE)的一种推广,它允许一个空间区域被紧凑地特征化featurized,而不是空间中的单个点。
圆锥截台对应的区域表示
o为圆锥中心,d为法向量,r为圆锥半径(设置为世界坐标中按2/√12的像素的宽度),l{·}为指标函数,表示当x \mathbf{x}x位于F(…)定义的圆锥范围内时对上式进行取值
如果对上面这样一个特征集合求解位置编码时,位置编码转换为积分形式
上述式子,分子中的积分没有封闭形式的解,目前尚不清楚如何有效地计算这样一个特征,作者采用多元高斯近似,允许一个期望的有效近似特征
为了用多元高斯分布近似conical frustum,我们必须计算F(x,·)的均值和协方差。因为每个conical frustum被假定为圆形的,并且因为conical frustum是围绕锥轴对称的,这种高斯分布完全由三个值来表征(除了o和d)
其中t μ = ( t 0 + t 1 ) / 2 ,t δ = ( t 1 − t 0 ) / 2,以上在[ t 0 , t 1 ] 范围内的圆锥的局部坐标系建立的多元高斯分布,接着通过如下变换可以将其转换到世界坐标系下,如下所示
原始的位置编码表达为
通过均值和方差的传递规则,计算出多元高斯分布经过位置编码后的表达式
最后一步就是根据上述的多元高斯分布计算期望,当x ∼ N ( μ , σ 2 ) ,则sin ( x ) 和cos ( x ) 期望的的闭式解为
IPE的期望就为
由于位置编码是对每一维进行独立的,因此计算上述期望时只需要取每一维的方差,也就是协方差矩阵的对角线元素
其中
从上面的推导可以看出来,基于高斯分布的建模,最后从确定采样点到最后输出Integrated Positional Encoding的值中间也是一些简单的加减乘,因此Integrated Positional Encoding相对于本来的Positional Encoding并没有增加太多计算量,如下图所示
由于Position Encoding对所有的采样点都使用的同样的处理方式,因此在高频部分容易产生混淆,如上左图所示,无论高频低频经过Positional Encoding后输出高频部分有很多相似的蓝色,而Integrated Positional Encoding则可以避免这一问题,对于相对低频的输入经过Integrated Positional Encoding后输出高频部分趋近于0,也就是上右图中的白色,因此就避免了高频混淆。这也就是Mip-NeRF效果好的原因,如下对比图所示
边栏推荐
- 2022年中国软饮料市场洞察
- 【LaTex-错误和异常】\verb ended by end of line.原因是因为闭合边界符没有在\verb命令所属行中出现;\verb命令的正确和错误用法、verbatim环境的用法
- 4.1 - Support Vector Machines
- Write a resume like this, easy to get the interviewer
- 接口测试的基础流程和用例设计方法你知道吗?
- 年薪40W测试工程师成长之路,你在哪个阶段?
- 1106 2019数列 (15 分)
- 1003 I want to pass (20 points)
- Four startup modes of Activity
- JRS303-数据校验
猜你喜欢
软件测试常用工具的用途及优缺点比较(详细)
【latex异常和错误】Missing $ inserted.<inserted text>You can‘t use \spacefactor in math mode.输出文本要注意特殊字符的转义
CSDN21天学习挑战赛——封装(06)
记录一些遇见的bug——Lombok和Mapstruct的冲突导致,A component required a bean of type ‘com.XXX.controller.converter.
Hibernate 的 Session 缓存相关操作
易观分析联合中小银行联盟发布海南数字经济指数,敬请期待!
查询跟踪快递单号物流,智能分析物流中转有延误的单号
从何跟踪伦敦金最新行情走势?
The most complete documentation on Excel's implementation of grouped summation
1002 Write the number (20 points)
随机推荐
Keep track of your monthly income and expenses through bookkeeping
Pico neo3 Unity Packaging Settings
Pico neo3在Unity中的交互操作
1056 组合数的和 (15 分)
3.1-Classification-probabilistic generative model
Two state forms of Service
Evolution and New Choice of Streaming Structured Data Computing Language
【LeetCode】Summary of linked list problems
Tensorflow中使用tf.argmax返回张量沿指定维度最大值的索引
关于Android Service服务的面试题
oracle19c不支持实时同步参数,请教一下大佬们有什么好的解决办法吗?
1081 Check Password (15 points)
string类接口介绍及应用
Square, multi-power, square root calculation in Tf
js根据当天获取前几天的日期
初级软件测试工程师笔试试题,你知道答案吗?
1081 检查密码 (15 分)
break pad源码编译--参考大佬博客的总结
TF中的四则运算
Conditional statements in TF; where()