简介
主页:https://city-super.github.io/citynerf/
CityNeRF能够将城市尺度的3D场景打包到一个统一的模型中,它能够保存从卫星到地面不等尺度的高质量细节。顶部:使用边缘颜色蓝色(L=1)、绿色(L=2)和橙色(L=3)来表示从最远到最近的三个等级,PSNR值显示在每个渲染图像的左上角。下图:CityNeRF甚至可以适应地球尺度的变化。
设计细节点
- 带有残差块结构的增长模型:通过在每个训练阶段附加一个额外的块来增长模型,而不是单纯地深化MLP网络。每个块都有自己的输出头,预测连续阶段之间的颜色和密度残差,这鼓励块在更近的视图中关注新兴的细节
- 包含多层次的数据监督:每个块的输出头由最远处尺度到对应尺度的图像进行联合监督。也就是说,最后一个块接受所有训练图像的监督,而最早的块只暴露于最粗尺度的图像
实现流程
观察NeRF上的伪影(a)在所有尺度上联合训练,(b)在每个尺度上单独训练。渲染图像上的工件用实框突出显示,真实图片显示在侧面。(a)在所有尺度上的联合训练导致近距离观察时纹理模糊,远距离观察时几何不完整;(b)在每个尺度上单独训练,在连续尺度之间产生不一致的几何和纹理。
(a)城市尺度场景的多尺度数据图解,其中使用L∈{1,2,3,…,}表示每个刻度。在每个阶段,模型与训练集同步增长。(b)随着训练的进行,新的残差块被附加到网络中,由从最遥远的尺度到当前尺度的样本联合进行监督。残差块的结构如虚线框所示。©在不同残差块上获得的细节级渲染结果。由浅到深,细节一点一点地增加
Challenges on City-scale Scenes
远景和近景之间巨大的空间覆盖差异导致了对中心场景内容的偏差,导致渲染图像的质量不一致,这是由于中心区域被摄像机在所有尺度上重复捕捉,而外围区域只被远处的摄像机观察到,虽然每个量表单独训练可以消除这种不一致性,但牺牲了不同量表之间的交流,导致连续量表之间的差异较大
PE中的有效频率通道在一个尺度到另一个尺度上是不同的,显示复杂细节的屋顶近景(L = 3),低频傅里叶特征(cos(25z))似乎不够,而高频傅里叶特征(cos(210z))被激活,以更好地对齐这些细节,远程视点(L = 1)可以很好地用低频傅里叶特征表示,因此高频傅里叶特征被抑制
在训练数据中近距离视角的数量有限,在所有规模上训练的NeRF往往会忽略这些高频场景组件,导致折中解决方案偏向于仅利用低频特征。
Progressive Model with Multi-level Supervision
(a)不同尺度的视图需要不同的傅里叶特征频率来恢复细节。高频傅里叶特征(如cos(210z))对于近景是必要的,低频傅里叶特征(如cos(25z))对于远景就足够了。(b)渐进训练策略在更深的区块(如B3)有效地激活了PE中提供的高频傅立叶特征,而普通的NeRF经常失败,即使在最深的跳跃连接之后。
论文采用渐进式的方法来建立和训练模型以应对城市尺度场景的多尺度特征带来的不同的样本难度
根据摄像机距离对训练数据进行分割,这近似于场景中物体的分辨率层次。
设置远处的视图(L = 1),Lmax为被捕获场景预先确定的训练阶段的总数,每个训练阶段都将纳入一个更近的L + 1尺度的视图,记为Lt(t∈1,2,……,Lmax)
这种数据输入方案允许模型在早期训练阶段将更多的精力放在外围区域,从而弥补了样本分布的偏差
同时构建一个粗略的场景布局,自然为后续训练阶段的近距离观察打下基础
随着训练集的扩展,模型通过添加新的块来增长,每个block与输出头配对,预测场景内容的颜色残差和密度残差,最遥远的视图被允许从只有基本颜色的浅块中退出,而特写视图必须由更深的块处理,并逐步添加剩余颜色渲染。PE通过一个跳跃连接注入到每个块中,以捕捉场景组件中出现的复杂细节。在整个训练过程中,网络中的所有层都是可训练的。
Residual Block Structure
远程视图(L=1)通常显示不太复杂的细节,因此使用一个Dres = 4,W=256个隐藏单元的浅层全连接层作为Bbase。第二层紧接在Bbase的后面(使用上一层的潜在特征ZL−1)由Dres = 2层非线性映射组成的块B2。每一层通过Hl(l∈1,2,……,Lmax)输出各层的颜色和密度。
每一层要输入与之匹配的PE,由于浅层与远程视图相匹配,特征被学习与低水平的细节相匹配,因此PE中只有低频通道被激活。然而,新的层次需要访问PE中的高频通道,以更近距离的视角构建新兴的细节。渐进式训练策略能够在更深的块上利用更高频率的傅里叶特征
这种设计有两个优点
- 鼓励中间块集中于缺失的细节,并利用跳过连接提供的高频傅里叶特征
- 使从后块获得的梯度平滑地流回早期块,并在近距离观察的监督下增强浅层特征
Inclusive Multi-level Supervision
为了保证在所有尺度上的一致渲染质量,在训练阶段L,输出头部HL由前一尺度图像的并集进行监督,即{It≤L}。将阶段L的损失加到从H1到HL之前所有的输出头上:
Rl是级指示器到级l的一组光线,C®为真实图像颜色, ˆ C®为预测图像颜色
多级监管的设计嵌入了细节层次的思想,更深入的输出头提供了渲染视图中更复杂的细节,将不同层次的细节统一到一个单一的模型中,并且可以用L进行控制
效果