点击下方卡片,关注“CVer”公众号
AI/CV重磅干货,第一时间送达
作者:Bo Yang| 已授权转载(源:知乎)
https://zhuanlan.zhihu.com/p/399867075
论文:https://arxiv.org/abs/2010.04595
TensorFlow 代码:
https://github.com/alextrevithick/GRF
1. Introduction
恢复三维模型形状是当前三维感知和理解任务的关键问题之一。经典几何方法如SFM和SLAM只能重建稀疏、离散的点云,无法包含几何细节。近年来,大部分深度神经网络也都是学习显式的表征形式,如点云、网格、体素等,但这些方式都是离散和稀疏的,且限制了所恢复三维形状的空间分辨率。此外,这些方法通常需要大量的三维形状作为监督,通常会导致训练的模型过拟合,泛化性较低。
2. Motivation
近期,以ECCV 2020 NeRF [1] 为代表的神经网络隐式场方法在表征三维模型的几何细节和新视角合成等任务上取得了很好的效果。但当前NeRF方法仍存在两个局限:
第一,每个MLP网络只能表征一个单一的结构,不能泛化到新的几何形状上进行表征;
第二,由于沿着光线的每个空间点位置的形状和外观仅由单个像素RGB进行优化,使该位置没有学习到更丰富的几何信息,导致最终渲染图像不够逼真。
针对上述问题,我们提出了结合多视角几何和注意力机制的通用神经辐射场 GRF (如图 1),GRF的单个模型就可以推断出全新类别物体的高质量新视角合成图像。本文的主要贡献包括以下三点:
第一,我们提出了一个用于表征三维形状和外观的通用神经辐射场,对新的几何形状有更强的通用性。
第二,我们集成了多视图几何和注意力机制,可以更好的学习到每条光线上3D空间点的一般局部几何信息,从而提高了新视角图像的合成质量。
第三,我们在大规模数据集上的训练结果表明我们的方法能显著提升baseline,并通过一系列消融实验验证了本方法的优势和合理性。
图 1:GRF 示意图3. Method
3.1 Overview
GRF方法首先提取每条射线上空间点对应像素的通用性特征,然后重投影这些特征到对应的3D空间点,使用注意力机制融合多视角像素特征,从而得到每个3D点唯一的特征值,再通过MLP从这些特征中推理出相应的RGB值和体积密度(Volume Density),最后使用Volume Rendering方法,将同一条光线上的多个查询点进行累积渲染,得到最后的像素值。其结构图如图2所示。具体一共包括四个模块。
图 2:GRF原理结构图3.2 模块一:Extracting General Features for 2D Pixels
二维图像的每个像素都描述了空间中一个确定的三维点,为了学习每条光线的局部几何性质,我们需要得到每个像素的通用特征。但是由于RGB值对光照条件、环境噪声等因素很敏感,导致鲁棒性较差。我们设计了基于CNN的encoder-decoder结构用于提取更加鲁棒和通用的像素特征。
像素的通用特征提取模块如图3所示,我们设计的结构不是直接将原始的RGB图像输入到CNN网络中,而是将RGB值与图像当前位置的视角方向(即沿着相机光心到每个像素点的射线方向)堆叠后作为输入。这样做的目的是允许学习的像素特征可以明确地意识到它在3D空间中的相对位置。除此之外,我们使用了Skip Connection 来保留每个像素的高频局部特征,同时在CNN模块的中间选择性地集成了几个全连接层来学习全局特征。这种多层级特征的混合使得最终结果更具有普遍性和代表性。
图 3:基于CNN结构的特征提取模块3.3 模块二:Reprojecting 2D Features to 3D Space
为了将上一步提取的像素特征与空间中的3D点进行对应,考虑到提取的像素特征是对从相机光心发射到三维物体表面的光线的描述,我们自然的想到了可以将这个特征沿着光线重投影。但由于我们没有每个像素对应的深度信息,所以无法确定该像素特征是对应哪个特定的三维表面点。我们的做法是认为沿相机光心穿过像素的射线上的每个空间点都可以用同一个像素特征值进行表示。
图 4:像素特征到3D空间的重投影过程如图4,此模块表示像素特征到空间中的3D点重投影过程,输入为3D 点p,重投影的过程如下式所示,该函数P()遵循多视图几何原理 [2],得到的特征F表示空间中点p在不同图像中对应的像素特征。
3.4 模块三:Obtaining General Features for 3D Points
给定一个空间点p,现在可以从每张图像上得到各自对应的像素特征,但如何得到该空间点p最终的一个特征值还是一个问题。因为每个3D场景的输入图像总数和顺序都是可变的。因此,得到的特征向量也是无序的,大小是任意的。其次,由于视觉遮挡的问题,无法确定哪些特征是空间点的真实描述。为了解决这个问题,如图5,我们采用了注意力机制方法,比如AttSets [3] 和Slot Attention [4],将多视角投影的特征向量聚合为点p唯一对应的特征值。对于每个查询的3D点p,其最终特征显式地保留了2D图像的通用特征和3D空间中的位置信息。这使得3D点特性对自身的几何形状和外观具有一定的普遍性和代表性。
图 5:将多个3D点像素特征向量聚合为一个特征向量3.5 模块四:Rendering 3D Features via NeRF
渲染模块仍然使用经典的NeRF结构,如图6所示,我们输入点p对应的特征值和光线方向,然后通过MLP预测出RGB和体积密度。GRF可以通过输入渲染的光线直接合成新的二维图像,且整个网络只需要一组2D图像就可以训练,不需要3D数据进行监督。
图 6:使用NeRF结构预测每个点的颜色和密度4. Experiments
在这一部分,我们针对GRF在同类别不同物体、不同类别物体、不同场景进行泛化性实验,并测试了单场景的渲染质量。最终验证,我们的GRF在多种情况下都具有很好的泛化性,并且可以合成更加真实的新视图。
4.1. Generalization to Unseen Objects
首先我们评估了GRF在同一类别的不同物体上测试新视角合成的结果。由于NeRF不可同时学习大量场景,故不作为baseline进行对比。从表1可以看出,GRF在汽车类别上取得了与SRN [5]相当的性能,在两组中都实现了新视图合成。值得注意的是,我们的GRF仅需要训练一次就可以对新的物体进行预测,而SRN则需要对所有新对象进行重新训练用来优化latent code。结果表明, GRF学习到的局部像素特征使其在新物体上的泛化性更强。新视角合成的效果如图7所示,GRF更接近Ground Truth, SRN无法恢复不进行再训练的汽车的真实形状。
表 1:在ShapeNetV2数据集上的定量结果对比 图 7:定下结果比较4.2. Generalization to Unseen Categories
我们进一步评估了GRF针对不同类别模型的结果。结果如表2所示。值得注意的是,SRN方法在新的类别上首先进行了再训练过程,结果可以看出,我们的GRF在新类别上可以保持相似的性能,显示出较强的泛化能力。
表 2:GRF和SRN在新类别下的定量对比分析4.3. Generalization to Unseen Scenes
我们在一个更复杂的数据集Synthetic-NeRF 上进一步评估了GRF的泛化性能。我们在随机选择的4个场景上训练一个模型,分两组进行实验,第一组评估学习到的特征是否能够真正泛化到新的场景中,第二组评估了GRF的初始学习到的特征如何转移到新场景中。
通过表3和图8我们可以看到,我们的GRF在具有复杂几何的新场景上也具有很好的效果,证明了GRF可以有效的学习点的局部特征。此外,从Group2 的结果可以看出,我们可以在迭代次数少的同时学习到高质量的新场景表征,更多结果请查看论文附录。
表 3:定量结果对比 图 8:定性结果对比4.4. Pushing the Boundaries of Single Scenes
GRF除了对没有见过的物体和场景的进行泛化性测试外,其学习到的像素特征也有望显著提高单场景渲染图像的质量。我们使用LLFF[6]和SRN作为baseline,对每个场景单独训练一个模型,测试其单场景的渲染效果。
表 4:单个真实场景学习的定量结果对比 图 9:单个复杂场景下的定性结果对比 表 5:Ablation study结果对比5. 结语
最后总结一下,我们提出的GRF方法将三维几何建模为通用的神经辐射场。我们证明它可以从一组二维观测中学习到通用和鲁棒的三维点特征。利用多视图几何原理将二维像素特征映射到三维空间,并利用注意机制隐式的解决视觉遮挡问题,最终我们的GRF可以合成更加真实的新视图。当然GRF可以进一步提高:1)可以设计更高级的CNN模块,学习更好的像素特征。2)深度信息可以集成到网络中,以明确地解决视觉遮挡。
欢迎大家关注我们更多的新工作,yang7879.github.io/
(多谢魏小康博士翻译整理!)
参考文献
[1] Ben Mildenhall,Pratul P. Srinivasan,Matthew Tancik,Jonathan T Barron,Ravi Ramamoorthi,and Ren Ng. NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis. European Conference on Computer Vision,pages 405–421,2020.
[2] Richard Hartley and Andrew Zisserman. Multiple View Geometry in Computer Vision. Cambridge University Press,2004.
[3] Bo Yang,Sen Wang,Andrew Markham,and Niki Trigoni. Robust Attentional Aggregation of Deep Feature Sets for Multi-view 3D Reconstruction. International Journal of Computer Vision,128:53–73,2020.
[4] Francesco Locatello,Dirk Weissenborn,Thomas Un- 949 terthiner,Aravindh Mahendran,Georg Heigold,Jakob 950 Uszkoreit,Alexey Dosovitskiy,and Thomas Kipf. Object-Centric Learning with Slot Attention. Advances in Neural Information Processing Systems,2020.
[5] Vincent Sitzmann,Michael Zollho ̈fer,and Gordon Wet- zstein. Scene Representation Networks: Continuous 3D- Structure-Aware Neural Scene Representations. Advances in Neural Information Processing Systems,pages 1119-1130,2019.
[6] Ben Mildenhall,Pratul Srinivasan,Rodrigo Ortiz-Cayon,Nima Khademi Kalantari,Ravi Ramamoorthi,Ren Ng,and Abhishek Kar. Local light field fusion: Practical view synthesis with prescriptive sampling guidelines. SIGGRAPH,2019.
论文PDF和代码下载
后台回复:GRF,即可下载上述论文和代码
后台回复:ICCV2021,即可下载ICCV 2021论文和代码开源的论文合集
后台回复:CVPR2021,即可下载CVPR 2021论文和代码开源的论文合集
CVer-Transformer交流群成立
扫码添加CVer助手,可申请加入CVer-Transformer 微信交流群,方向已涵盖:目标检测、图像分割、目标跟踪、人脸检测&识别、OCR、姿态估计、超分辨率、SLAM、医疗影像、Re-ID、GAN、NAS、深度估计、自动驾驶、强化学习、车道线检测、模型剪枝&压缩、去噪、去雾、去雨、风格迁移、遥感图像、行为识别、视频理解、图像融合、图像检索、论文投稿&交流、PyTorch和TensorFlow等群。
一定要备注:研究方向+地点+学校/公司+昵称(如Transformer+上海+上交+卡卡),根据格式备注,可更快被通过且邀请进群
▲长按加小助手微信,进交流群
▲点击上方卡片,关注CVer公众号
整理不易,请点赞和在看