这里提出了CR-NeRF,能够利用多条光线的交互信息来合成与图像具有相同外观的无遮挡新颖视图。 搬的大佬的啊 勿怪仅为自学~~

文章链接:https://arxiv.org/abs/2307.08093

代码链接:https://github.com/YifYang993/CR-NeRF-PyTorch.git

本工作旨在通过从不受限制的图像集合(例如从互联网中爬取的图像)中合成新视角图片,从而提供3D沉浸式体验。本方法使用户能够从多视角欣赏任意季节的国际地标,例如德国柏林的勃兰登堡门和意大利罗马的特维尔喷泉。具体来说,假设用户想去勃兰登堡门欣赏不同时间和天气的风景,但由于学业、工作等原因旅行成本过高,无法亲身前往。那么如何不出门就能在多种天气、多种时间、从多种角度下“云游玩”该景点呢?这时,我们提出的CR-NeRF即可派上用场。用户只需从互联网上收集任意关于勃兰登堡门的照片,不论是白天、晚上、春夏秋冬的场景都可以,再利用CR-NeRF,便能生成勃兰登堡门的新视角图像。CR-NeRF能根据用户给定的相机角度和图像风格来渲染图像。通过这一方法,用户可以在虚拟环境中体验勃兰登堡门的多样化场景,感受不同时间和天气带来的景观变化,让用户在家中就能畅游世界名胜,享受沉浸式的旅行体验。这种技术不仅节省了旅行成本和时间,还为用户提供了更多探索世界的可能性。

CR-NeRF 重建的三维场景实例如下:

神经辐射场(NeRF)是一种革命性的渲染场景方法,通过对每个像素采样单个光线,在从静态场景图像生成新视角方面展示出令人印象深刻的能力。然而,在实践中,我们通常需要从无约束的图像集合中恢复NeRF,这面临两个挑战:1)图像通常由于拍摄时间和相机设置的不同而具有外观上的动态变化;2)图像可能包含人和汽车等瞬态对象,导致遮挡和伪影。传统方法通过局部利用单个光线来解决这些挑战。相比之下,人类通常通过在多个像素之间全局利用信息来感知外观和对象。为了模拟人类的感知过程,在本文中,我们提出了交叉光线NeRF(CR-NeRF),利用跨多个光线的交互信息合成无遮挡、与图像外观相同的新视角。具体而言,为了建模不同的外观,我们首先提出使用新颖的交叉光线特征表示多个光线,然后通过融合光线的全局统计信息(即光线特征的协方差和图像外观)来恢复外观。此外,为了避免瞬态对象引入的遮挡,我们提出了一个瞬态对象处理器,并引入了网格采样策略来屏蔽瞬态对象。我们在理论上发现,利用多个光线之间的相关性有助于捕捉更多的全局信息。此外,在大型真实数据集上的实验结果验证了CR-NeRF的有效性。

通过CR-NeRF,我们输入不同光照条件下的照片,从而重建的可控外观的3D场景,同时消除图像中的遮挡。用互联网图像数据集重建NeRF面临着以下两个挑战。1)不同的外观:假设两个游客即使在相同的视点拍摄照片,他们也仍然处在不同的条件下:不同的拍摄时间,不同的天气(如晴天,雨天,雾天),不同的相机设置(如光圈,快门,ISO)。这种变化的条件导致对同一个场景拍摄的多张同视角照片可能会呈现截然不同的外观。2)瞬态遮挡:瞬态物体如汽车和乘客可能会遮挡场景。由于这些物体通常仅存在于单张图片中,因此高质量地重建这些物体通常是不切实际的。上述挑战与NeRF的静态场景假设相冲突,导致重建不准确、过度平滑和重影伪影。最近,研究者们已经提出了几种方法(NeRF-W;Ha-NeRF来解决上述挑战。从图1(a)中,NeRF-W和Ha-NeRF利用单相机光线方式重建3D场景。具体来说,这种方法分别与单射线特征融合外观特征和遮挡物特征,随后独立合成新视图像素的每种颜色。这种方式的一个潜在问题是它依赖于每条射线的局部信息(例如,单个图像像素的信息)来识别外观和瞬态物体。相比之下,人类倾向于利用全局信息(例如跨多个图像像素的信息),这提供了对物体更全面的了解,以观察其外观并处理遮挡。基于此,我们提出使用交叉射线范式来处理变化的外观和瞬态物体(见图1(b)),我们利用来自多射线的全局信息来恢复外观并处理瞬态物体。然后,我们同时合成一个新视图的区域。

CR-NeRF_3D

图1: CR-NeRF的动机图

方法

基于交叉射线范式,我们提出了一个交叉射线神经辐射场(cross-ray Neural Radiance Fields, CR-NeRF),如图2, CR-NeRF由两个部分组成: 1.为了模拟可变的外观,我们提出了一种新的交叉射线特征来表示多射线的信息。然后,我们通过使用全局统计(例如,交叉射线的特征协方差)的交叉射线变换网络融合交叉射线特征和输入图像的外观特征。将融合特征送入解码器以同时获得多个像素的颜色。2。在瞬态目标处理方面,我们提出了一种独特的视角,将瞬态目标处理视为一个分割问题,通过考虑图像区域的全局信息来检测瞬态目标。具体来说,我们分割了输入的图像,以获得物体的可见性图。为了减少计算开销,我们引入了一种网格采样策略,对输入的光线和分割后的映射进行相同的采样,使两者配对。我们从理论上分析了利用多射线之间的相关性可以捕获更多的全局信息。接下来,我们具体描述CR-NeRF的两个部分。

PS: 我们假设读者了解关于NeRF, 相机模型等知识,若尚未掌握相关知识,请查阅CR-NeRF论文中的preliminary部分。

CR-NeRF_3D_02

图2: CR-NeRF的方法流程风格迁移模块

CR-NeRF_3D_03

遮挡处理模块 

CR-NeRF_人工智能_04

实验

定量结果

我们在Brandenburg Gate, Sacre Coeur和Trevi Fountain数据集上进行了大量的实验。如表1所示,我们观察到原始的NeRF在所有方法中表现最差,因为NeRF假设训练图像背后的场景是静态的。通过对样式嵌入建模和处理瞬态对象,NeRF-W和Ha-NeRF在PSNR、SSIM和LPIPS方面取得了相当的性能。由于交叉射线的优势,我们的CR-NeRF优于NeRF-W和Ha-NeRF。

CR-NeRF_3D_05

表1: CR-NeRF与SOTA方法的对比

可视化实验

我们在图3中展示所有比较方法的定性结果。我们观察到NeRF产生雾状伪影和不准确的外观。NeRF-W和Ha-NeRF能够从地面真实图像重建更有前途的3D几何形状和模型外观。然而,重建的几何形状不够精确,例如,勃兰登堡的绿色植物的形状和围绕柱子的幽灵效应,Sacre的空腔等。此外,现有方法生成的外观不够逼真,例如Sacre的雕像上的阳光,Trevi的蓝色天空和灰色屋顶的颜色。相比较,我们的CR-NeRF引入了交叉射线范式,因此实现了更真实的外观建模,并通过抑制瞬态物体重建一致的几何形状。

CR-NeRF_人工智能_06

图3: CR-NeRF与SOTA方法的对比

交叉光线外观迁移模块和瞬态物体处理模块的消融实验

表2展示了CR-NeRF在Brandenburg、Sacre和Trevi数据集上的消融实验结果。我们观察到我们的基线(CR-NeRF-B)的性能通过添加交叉光线外观迁移模块(CR-NeRF-A)和瞬态处理模块(CR-NeRF-T)后在逐渐提升。

CR-NeRF_人工智能_07

表2: CR-NeRF的消融实验

推理速度

我们的CR-NeRF在处理相机位置固定的多幅不同外观的图像时,推理效率明显超过Ha-NeRF(2.12秒vs表3的24.09秒)。这是因为我们的CR-NeRF使用NeRF主干只生成一次交叉射线特征,通过融合Fcr和每张图像的外观嵌入来合成各种外观。相比之下,Ha-NeRF要求每次估计都使用其MLP主干。为了提高效率,我们尝试通过保存中期结果来改进Ha-NeRF的推理速度。然而,由于Ha-NeRF的临时结果占用了的GPU内存过大,超出了单个TITAN Xp GPU的容量,因此将结果移动到主机内存需要大量额外的I/O时间。

CR-NeRF_人工智能_08

表3: CR-NeRF与Ha-NeRF的推理时间对比

总结

本工作的贡献总结如下:

  • 从无约束的照片集合中合成新视图的新交叉射线范式:我们发现现有的方法无法通过单射线水平范式从无约束的照片集合中产生令人满意的视觉结果,主要是由于忽略了多射线之间潜在的合作相互作用。为了解决这个问题,我们提出了一种新的交叉射线范式,它利用了跨多条射线的全局信息。
  • 用于处理不同外观的交互式和全局方案:与独立处理每条光线的现有方法不同,我们通过引入交叉射线特征来表示多条光线,这通过特征协方差促进了光线之间的相互作用。这使我们能够在场景中注入全局信息的外观表示,从而实现更逼真、更高效的外观建模。我们的理论分析证明了在外观建模中考虑多射线的必要性。
  • 处理瞬态对象的一种新的分割技术:我们将瞬态对象问题重新表述为分割问题。我们利用无约束图像的全局信息分割可视图。此外,我们还采用网格采样将地图与多个光线配对。实验结果表明,CR-NeRF消除了重建图像中的瞬态目标。