CMU & Argo AI | SUDS:迄今为止最大的动态NeRF

本文首发于 CVHub,白名单账号转载请自觉植入本公众号名片并注明来源,非白名单账号请先申请权限,违者必究。

Title: SUDS: Scalable Urban Dynamic Scenes

Paper: https://arxiv.org/pdf/2303.14536v1.pdf

导读

Figure 1: SUDS. 通过将城市规模的神经重建划分为多个单元格,并为每个单元格训练哈希表表示来进行尺度调整。上方展示了完整城市尺度重建结果,下方展示了派生的表示结果。

论文将神经辐射场(NeRF)扩展到动态大规模城市场景。之前的研究往往重建短时间内的单个视频剪辑(最多10秒)。其中两个原因是,这样的方法(a)往往与移动对象的数量和输入视频呈线性关系,因为需要为每个对象构建单独的模型;(b)往往需要通过3D边界框和全景标签进行监督,这些标签可以通过手动标注或通过特定类别的模型获得。为了实现对动态城市的真正开放式重建,论文引入了两个关键创新:(a)将场景分解为三个单独的哈希表数据结构,以高效地编码静态、动态和远场辐射场;(b)利用无标签的目标信号,包括RGB图像、稀疏LiDAR、现成的自监督2D描述符,以及最重要的2D光流。通过光度、几何和特征度量重建损失对这些输入进行操作,使得SUDS能够将动态场景分解为静态背景、单个对象和它们的运动。当与论文方法的多分支表格表示相结合时,这种重建可以扩展到跨越数百公里地理范围、1700个视频中的120万帧、数万个对象的规模(据研究者所知,这是迄今为止最大的动态NeRF **)。论文展示了通过论文的表示方法实现的各种任务的定性初步结果,包括动态城市场景的新视角合成、无监督的3D实例分割和无监督的3D立方体检测。为了与之前的工作进行比较,论文还在KITTI和Virtual KITTI 2上进行了评估,**在依赖于真实3D边界框注释的最新方法中超越了其它方法,并且训练速度提高了10倍。

背景

城市的几何重建技术(如Google Maps和Streetview)已经改变了我们的日常生活。NeRFs技术通过视角合成实现了与重建场景的逼真交互。然而,现有的重建方法面临两大问题:
两大挑战是:

  1. 重建动态场景的不确定性:重建动态场景是一项具有挑战性的任务,因为问题本身存在不确定性。特别是当输入数据受限于有限的视角时(例如自我视角视频捕捉),问题变得更加困难。如何有效地捕捉和建模动态元素的运动和变化是一个重要挑战。

  2. 多模态几何模型的整合:对于大规模城市场景的重建,需要同时处理不同尺度的几何模型,包括固定的全局几何(如建筑物)、局部静态但在不同视频中变化的几何(如停车车辆)以及真正动态的几何(如移动人物)。如何有效地整合和处理这些多尺度几何模型,以实现高质量的动态重建,是另一个关键挑战。

贡献

本文的主要贡献如下:

  1. 论文构建了迄今为止最大规模的动态NeRF
  2. 论文引入了一种可扩展的三分支哈希表表示方法,用于进行4D重建;
  3. 论文在三个不同的数据集上展示了SOTA的重建效果;
  4. 论文展示了论文的表示方法所能实现的多种下游任务,包括自由视点合成、3D场景流估计,甚至是无监督实例分割和3D长方体检测。

方法

Inputs

论文以N个视频的有序RGB图像(在不同的天气和光照条件下拍摄)及其关联的相机姿态作为输入。

Representation

Scene composition

为了建模大规模动态环境,SUDS将场景分解为三个分支:

  1. 静态分支(Static branch),包含在不同视频中保持一致的非移动地形;
  2. 动态分支(Dynamic branch),用于区分特定于视频的对象,无论是移动还是静止;
  3. 远场环境图(Far-field branch),用于表示远处的物体和天空,在大规模城市场景中对于分别建模非常重要。

Hash tables

如图2所示,对于给定的输入坐标 ( x , d , t , vid ) (x, d, t, \text{vid}) (x,d,t,vid),其中 x ∈ R 3 x \in \mathbb{R}^3 xR3 表示位置, d ∈ R 3 d \in \mathbb{R}^3 dR3 表示视角方向, t ∈ 1 , . . . , T t \in {1, ..., T} t1,...,T 表示帧索引, vid ∈ 1 , . . . , N \text{vid} \in {1, ..., N} vid1,...,N 表示视频编号,在每个表中找到周围的体素,分别为 v l , s v_{l,s} vl,s v l , d v_{l,d} vl,d v l , e v_{l,e} vl,e,对应静态、动态和远场分支。**静态分支使用 3D 空间体素 v l , s v_{l,s} vl,s,动态分支使用 4D 时空体素 v l , d v_{l,d} vl,d,远场分支使用 3D 体素 v l , e v_{l,e} vl,e 索引环境图。**哈希函数如下:

论文通过插值将特征值映射到最近的体素顶点,并使用梯度平均处理哈希冲突。为了处理不同视频中可能存在的移动物体和照明条件的变化,论文使用视频编号作为哈希的辅助输入,但不参与插值。这样,可以有效地索引每个视频的插值函数,而不会线性增加内存。将每个级别的结果连接成特征向量,并通过 MLP 获取每个分支的输出。

Static branch

论文通过三个分支的输出生成RGB图像。静态分支将哈希表的特征向量映射为视角相关的颜色和视角无关的密度。为了建模光照的变化,论文使用视频特定的矩阵 A v i d A_{vid} Avid和傅里叶编码的时间索引 F ( t ) F_{(t)} F(t)作为latent embedding的条件:

Dynamic branch

在静态分支中,论文假设密度 σ s \sigma_s σs 是静态的,而在动态分支中, σ d \sigma_d σd c d c_d cd 可以随时间变化。论文使用标量阴影场 ρ d ∈ [ 0 , 1 ] \rho_d \in [0, 1] ρd[0,1] 来调整静态颜色 c s c_s cs,以表示阴影的影响:

Far-field branch

因为天空需要考虑到远场辐射,并且在不同的视频中可能发生巨大的变化,论文使用一个依赖于观察方向 d d d 和视频ID v i d vid vid 的环境图 c e ( d , v i d ) ∈ R 3 c_e(d, vid) \in \mathbb{R}^3 ce(d,vid)R3 来建模远场辐射

Rendering

论文通过计算静态和动态成分的加权和,结合点级的阴影减少,为任意位置推导出单一的密度和辐射值:

通过沿光线在采样点处累积透射率,并强制光线与远场环境贴图相交,以获得相机光线在给定帧和视频中的颜色:

Optimization

论文通过在N个输入视频中随机采样射线批次,并最小化以下损失函数来联合优化所提的三个模型分支和每个视频的权重矩阵 A v i d A_{vid} Avid

Reconstruction losses

论文最小化L2光度损失函数 L c ( r ) = ( C ( r ) − C ^ ( r ) ) 2 L_c(r) = (C(r) - \hat{C}(r))^2 Lc(r)=(C(r)C^(r))2,这与原始NeRF公式相同。同样地,论文最小化特征输出的L1差异损失函数 L f ( r ) = ∣ F ( r ) − F ^ ( r ) ∣ 1 L_f(r) = |F(r) - \hat{F}(r)|_1 Lf(r)=F(r)F^(r)1。为了利用我深度测量值,论文将激光雷达扫描投影到相机平面,并将预期深度 D ^ ( r ) \hat{D}(r) D^(r)与测量深度 D ( r ) D(r) D(r)进行比较:

Flow

论文使用2D光流来监督3D场景流的预测。对于每个相机光线,论文生成一个2D位移向量,首先通过将光线上的场景流邻居进行加权求和来预测其在3D空间中的位置:

3D warping

上述损失函数确保了渲染的3D流场与观测到的2D流场保持一致。论文还发现强制保持3D颜色(和特征)的一致性非常有用;即颜色在移动时保持不变。为了实现这一点,论文使用预测的正向和反向3D流场 s t + 1 s_{t+1} st+1 s t − 1 s_{t−1} st1将每个样本沿着光线迁移至下一帧/上一帧:

Flow regularization

对由于遮挡而产生的模糊区域降低损失的权重。具体而言,使用以下损失函数进行惩罚:

Static-dynamic factorization

由于在物理上合理的解决方案中,空间中的任意点都应该被静态或动态对象占据,论文通过偏向静态场景的偏斜二进制熵损失来鼓励静态和动态密度的空间比例接近于0或1:

Shadow loss

论文对每条光线沿着光线路径对阴影比率的平方幅值进行惩罚,以防止其对暗区域进行过度解释。具体而言,论文使用以下损失函数进行惩罚: L ρ ( r ) = ∫ 0 ∞ ρ d ( r ( t ) ) 2 d t L_\rho(r) = \int_{0}^{\infty} \rho_d(r(t))^2 dt Lρ(r)=0ρd(r(t))2dt

实验

City-Scale Reconstruction

论文使用48个单元对SUDS和baseline模型进行训练,并在表格1中总结了结果。SUDS在各项指标上远远优于所有的Mega-NeRF变种。论文在图5中展示了视图合成、静态/动态因子分解、无监督的三维实例分割和无监督的三维长方体检测的定性结果。论文在图7中展示了额外的定性跟踪结果。

KITTI Benchmarks

Image reconstruction

论文使用与之前的工作相同的KITTI子序列和实验设置来比较SUDS的重建能力。论文在表格3中展示了结果。由于PNF的实现不公开,论文依赖于他们报告的数据。SUDS在PSNR和SSIM方面超过了现有技术的水平。

Novel view synthesis

论文展示了SUDS在训练期间未见过的时间步长上生成合理渲染的能力。论文使用了KITTI和Virtual KITTI 2的子序列,并采用了与之前研究相同的实验设置进行比较。论文在表2中总结了结果,并在图6中展示了定性结果。SUDS在所有划分和指标上均取得了最佳结果。与NeRF变体相比,SUDS能更好地表示场景,尤其是在动态区域。NSG虽然在渲染时使用了真实的物体姿态,但在学习物体和背景之间的清晰分离方面存在困难,特别是在训练视角数量减少时,会产生运动区域附近的幽灵伪影。

Diagnostics

如上表所示,论文通过移除各组件的损失项来评估SUDS的重要性,并发现基于流的变形是最重要的输入。有趣的是,深度是最不重要的输入,这表明SUDS可以在没有深度测量的情况下推广使用。

总结

论文提出了一种模块化的方法,用于以前未开发的规模构建动态神经表示。论文的多分支哈希表结构使论文方法能够将静态几何和短暂对象高效地分离和编码,跨越成千上万的视频。SUDS利用未标记的输入来学习语义感知和场景流,使其能够执行多个下游任务,同时超越依赖人工标注的最先进方法。尽管论文提出了构建城市规模动态环境的初步尝试,但在构建真正逼真的表示之前仍然存在许多挑战。

猜你喜欢

转载自blog.csdn.net/CVHub/article/details/131625406
CMU