Zen的小站

小舟从此逝,江海寄余生

0%

【nerf】Block-NeRF笔记

把大场景分成多个小场景,分别训练,最后合成分块优点:方便**更新、扩展**,可以**节省内存**以训练超大规模nerf
  • 谷歌Waymo研究人员用280 万张图像中渲染了旧金山整个街区,分块共35个,是迄今为止规模最大的nerf

    (谷歌Waymo 是一家研发自动驾驶汽车的公司 )1667226872521

  • 块的范围选择:每个十字路口作为圆心,均匀排列的球,半径满足覆盖街道的75%,保证任意两个Block-NeRF之间有50%的重叠。

  • 创新点:

    1. 训练单独的block:Appearance Embeddings、Learned Pose Refinement、Exposure Input(还有Transient Objects、Visibility Prediction,没在实验表格中)

    1667118074452

    1. block相关:Block-NeRF Selection、Block-NeRF Compositing、Appearance Matching

相关: mip-nerfnerf-wbarf

background

早期工作通常侧重于small-scale或者object-centric(以对象为中心)的场景重建

一、训练单独的block

mip-NeRF中提出的模型的扩展

如果NeRF在每个pixelsingle ray来采样,会出现模糊和锯齿

1667295256779

1667296893078

通过有效地渲染抗锯齿圆锥截头体而不是射线,mip-NeRF 减少了令人反感的锯齿伪影并显着提高了 NeRF 表示精细细节的能力,同时也比 NeRF 快 7%一半的大小。 与 NeRF 相比,mip-NeRF 在使用 NeRF 呈现的数据集上将平均错误率降低了 17%,在我们呈现的该数据集的具有挑战性的多尺度变体上降低了 60%。 Mip-NeRF 还能够在我们的多尺度数据集上匹配蛮力超采样 NeRF 的准确性,同时快 22 倍。 (翻译自mip-nerf摘要)

1. Appearance Embeddings

借用nerf-W的外观编码,用Generative Latent Optimization优化外观嵌入向量

1667264387582

NeRF-W

2. Learned Pose Refinement

与nerf本身一起学习优化平移旋转偏移量

barf、A-NeRF、NeRF-、iNeRF

3. Exposure Input

把相机的曝光参数作为输入,$\gamma_{PE}=shutter \quad speed \times analog \quad gain / t$

$\gamma_{PE}$用的是四级正弦位置编码,$t$是一个系数,实验中取1000

1667265226170

4. Transient Objects运动物体

用语义分割模型,忽略动态物体,例如汽车、行人

10

5. Visibility Prediction(实际上好像没用上)

用于判断一个区域是否可见,网络很小,可以独立运行

用一个小MLP $f_{v}$ ,输入位置角度,输出该点可见性,进入射线采样计算

用于选择Block-NeRF,和确定在两个 NeRF 之间执行外观匹配的位置

1667293450480

NeRV

二、合并多个Block-NeRF

Block-NeRF筛选机制

  • 只考虑目标视点半径范围内的Block-NeRFs
  • 计算Block-NeRF的可见性(对应上面的Visibility Prediction),若平均可见性低于阈值,则舍弃

Block-NeRF合并

把最终每个Block-NeRF渲染的图像,用反距离加权(IDW)——保证各个Block-NeRF间平滑过渡

他们还探索了相关的加权方法(没读懂,很拗口),但是会导致伪影和时间不连贯

We also explored a variant of IDW where the interpolation was performed over projected 3D points predicted by the expected Block-NeRF depth. This method suffers when the depth prediction is incorrect, leading to artifacts and temporal incoherence.

他们也尝试了用可见性(Visibility Prediction)加权,对远处重建更清晰,但是会导致时间的不连贯

Finally, we experiment with weighing the Block-NeRFs based on per-pixel and per-image predicted visibility. This produces sharper reconstructions of further-away areas but is prone to temporal inconsistency. Therefore, these methods are best used only when rendering still images. We provide further details in the supplement.

Appearance Matching 外观匹配

如果每个NeRF单独训练,同样的外观编码可能会对应不同的天气情况,导致块交界处无法正确合并。

对于有多个Block-NeRF覆盖的区域,用一小段时间(约100次迭代)单独训练外观编码,而完全停止NeRF网络的更新

1667292838757

Results and Experiments

  1. 采集数据方法:车顶装八个方向摄像头,行驶采集图像

  2. Model Ablations

    1667118074452

    1667293581197

    | 方法 | 效果 |
    | ————— | —————————————————————————————— |
    | Appearance | 去掉伪影 |
    | Pose Opt | 变清晰 |
    | Exposure | 略微改善,便于改变结果的曝光度to change the exposure during inference |

  3. 越小越好1667118457009

  4. 插值方法

主要问题

瞬态物体解决方法

  • 学习瞬态对象learning transient objects :NeRF-W

  • 对瞬态对象建模directly modeling dynamic objects :43、68

sampling unbounded volumetric representations解决方法

NeRF++Mip-NeRF 360

加速渲染

  • 缓存NeRF caching techniques: Fastnerf、25、73
  • 稀疏体素网格sparse voxel grids:34
  • 其他:41、59、72
-------------本文结束感谢您的阅读-------------
// 在最后添加