NeRF:Representing Scene as Neural Radiance Fields for View Synthesis 笔记
摘要
实现了一个任意视角视图生成算法:输入稀疏的场景图像,通过优化连续的Volumetric场景函数实现;用全连接深度网络表达场景,输入是一个连续的5维坐标,3D坐标+2D角度(航向、俯仰角),输出Volume density和依赖于视图的emitted radiance,查询5维坐标并用经典的Volume Rendering把输出的颜色与强度投影到图像。
介绍
a. march camera rays,我理解为从焦点投射射线到场景,获取3D坐标点。
b. 用3D点x\bold{x}x与对应的2D角度(用单位向量d\bold{d}d)输入,输出颜色c\bold{c}c和强度σ\sigmaσ。
c. 合成图像。
Neural Radiance Field场景表达
Fθ:(x,d)→(c,σ) F_{\theta}:(\bold{x},\bold{d})\rarr(\bold{c},\sigma) Fθ:(x,d)→(c,σ)
输出σ\sigmaσ只与输入位置坐标x\bold{x}x有关,c\bold{c}c则与x\bold{x}x、d\bold{d}d有关。
网络结构,输入x\bold{x}x的8层全连接层,均为256通道,各层带ReLU激活,输出σ\sigmaσ、256维特征,此特征再与d\bold{d}d聚合,输入一层带ReLU的全连接层,输出c\bold{c}c。
Volume Rendering
位置坐标x\bold{x}x表达为相机射线r\bold{r}r,r(t)=o+td\bold{r}(t)=\bold{o}+t\bold{d}r(t)=o+td,t是从焦点ooo出发的长度,积分上下界是远端、近端。
C(r)=∫tntfT(t)σ(r(t))c(r,d)dtT(t)=exp(−∫tntσ(r(s))ds) C(\bold{r})=\int_{t_{n}}^{t_{f}} T(t)\sigma(\bold{r}(t))\bold{c}(\bold{r},d)dt\\T(t)=exp(-\int_{t_{n}}^t\sigma(\bold{r}(s))ds) C(r)=