您当前的位置: 首页 >  3d

Pri3D:一种利用RGB-D数据固有属性完成3D场景感知的表示学习方法

发布时间:2022-02-15 11:00:00 ,浏览量:4

Pri3D:Can 3D Priors Help 2D Representation Learning? (ICCV2021)

代码地址:https://github.com/Sekunde/Pri3D

表示学习(representation learning)是深度学习领域中一个比较重要的内容,字面上理解就是表示或者编码数据的一种形式,又叫做特征学习。本文探索了3D先验能否对2D表示学习性能产生影响。在图像领域,已经在大量数据集上证明对网络进行预训练可以提高针对各种应用的性能。特别是用于从相似或不相似的数据对中进行表示学习的对比学习框架已显示出令人难以置信的潜力。

目前很多基于学习的方法在3D场景语义理解方面取得了快速进展,特别是在3D语义分割、3D对象检测和3D语义实例分割任务中。这些方法通过几何要素,利用点、体素或网格的表示来获得准确的3D语义。同时这些方法的成果也促进了工程应用的发展,例如机器人技术中的基于深度信息的场景理解,以及增强现实或虚拟现实。同时,大量新的RGB-D数据集的出现也进一步推动了该领域的研究。

与仅仅基于2D图像的学习相比,直接在3D空间中进行学习的一个优势是3D方法在3D度量空间中执行,因而没有必要过多关注与视图相关或投影映射的影响。因此可以实现在相对较短的时间内从头开始训练3D神经网络,并且通常需要相对少量的训练样本;例如,可以使用来自ScanNet的大约1000个场景来训练最先进的3D神经网络。作者的主要想法就是利用3D方法中的这些优势,以3D先验的形式进行基于图像的场景理解。

同时,我们也已经看到图像域中表示学习的巨大进步,这主要得益于最近基于对比学习的方法的成功。2D表示学习的探索很大程度上依赖于实例判别范式,其中同一实例的不同增强样本通常被认为彼此更加靠近。例如,可以从随机裁剪、翻转和缩放以及颜色抖动等低级增强中编码不同的不变性。然而,尽管普遍认为3D视图不变性是视觉系统的基本属性,但很少有研究将3D先验知识和2D表示学习联系起来。而本篇作者工作的目标就是探索对比表示学习与3D先验的结合,并为题目中提出的问题提供一些初步依据:3D先验知识可以帮助2D表示学习吗?

2dfb883f2319bc354f752340c74fbc77.png           

图1 Pri3D将3D先验用于下游2D图像理解任务:在预训练期间,可以将RGB-D数据集给出的颜色几何信息的视图不变性和几何先验结合起来,将几何先验融入到特征学习过程。实验表明,这些3D的特征学习可以有效地转移到2D任务(如语义分割、对象检测和实例分割)并明显改进其性能。

受3D场景理解发展的启发,作者将学习到的几何先验引入基于图像的视觉任务的表示学习,利用稀疏卷积backbone用于预训练期间使用的3D特征。作者提出的Pri3D,旨在预训练阶段学习3D先验知识,然后将它们用作初始化,以对基于图像的下游任务(如语义分割、检测和实例分割)进行微调。更具体地说,作者将几何约束引入到对比学习框架,该过程是通过现成的多视图RGB-D数据实现的,然后通过不同图像之间的隐式多视图约束以及对应于图像区域的几何块的显式对应关系来合理利用几何相关性。将几何知识输入到图像的表示学习中,然后可以将其用作各种基于图像的视觉任务的预训练特征。

本文的核心思想是在预训练过程中加入3D先验,其约束是在对比损失公式下应用的。通过利用现有RGB-D数据集中的多视图和图像几何对应关系来学习视图不变和几何感知表示。主要贡献如下:

(1)首次探索3D先验知识对2D图像理解任务的影响,展示了3D几何预训练对复杂2D感知(如语义分割、对象检测和实例分割)的好处。

(2)提出一种新的预训练方法,基于3D引导的视图不变约束和来自对应颜色信息的几何先验,通过学习可以转移到2D表示的特征,补充和改进了跨多个数据集的图像理解任务。

2核心思想

Pri3D的关键思想是利用RGB-D重建的约束将3D先验嵌入基于图像的表示中。从RGB-D序列的数据集中,每个序列分别由深度{Di}和颜色帧{Ci}以及从SLAM中自动计算的6-DoF相机位姿对齐{Ti}组成(从相机坐标映射到世界坐标),所有这些都可以用来重建的3D几何表面S。作者观察到正好可以利用多视图约束来学习视图的不变性,而无需昂贵的语义标记过程。此外,通过在RGB-D扫描中获得的几何图形给出的几何表示来学习特征,同样不需要人工注释。对于这两个发现,作者使用最新的对比学习来限制多模态输入进行训练。作者也展示了这些先验可以嵌入到基于图像的表示中,这样学习的特征可以用作纯粹基于图像的感知任务的预训练特征;即,可以对单个RGB图像执行图像分割或实例分割等任务,流程如图2所示。

12f895f2864ab9043aa18e574f034dc8.png

图2方法概述。在预训练期间,使用RGB-D重建中的几何约束来学习基于图像表示的3D先验。具体来说,作者提出了一种对比学习公式,该公式对多视图对应(视图不变对比损失)以及几何到图像对齐(几何先验对比损失)进行建模。Pri3D的预训练策略将几何先验嵌入到表示学习中,可进一步用于下游的2D图像理解任务。

A.视图不变学习:

在2D对比预训练算法中,可以通过各种数据增强来寻找正匹配对(positive matching)。例如,可以使用随机裁剪作为同一图像内的自监督约束,用于正对(positive pairs),并将与来自其他图像的对应裁剪区域作为负对(negative pairs)。这里作者认为,有了可用于训练的3D数据,就可以利用几何知识在具有相同点的多个图像之间进行匹配约束。这里作者使用了ScanNet RGB-D数据集,该数据集提供了一系列RGB-D图像,其中相机位姿由最新的SLAM方法计算,并重建了几何表面S。

对于训练集中给定的RGB-D序列,所提方法利用3D数据来查找2D帧之间的像素级对应关系。对于RGB-D序列的所有帧对(i,j),将帧i的深度图Di反向投影到相机空间,并通过Ti将点转换到世界空间。帧j的深度值类似地转换为世界空间。然后将两个帧之间的像素对应关系确定为3D世界坐标中彼此相距2厘米以内的像素对应关系(见图3)。

72f166683cb96154bca7c07ac76c8cca.png

图3 通过几何寻找不同帧之间的对应关系,将世界空间作为中转站。

对于成对的每个图像,使用上述像素到像素的对应关系,这些对应关系参照相同的空间3D点。由于照明效果与视图相关,因此这些对应关系可能具有不同的颜色值,但都代表相同的3D世界位置;此外,由于视角不同,对应关系周围的区域看起来也不同。以这种方式,作者将这些对应关系视为对比学习中的正样本;同时使用所有不匹配的像素作为负样本。将具有n对对应关系的帧对作为正样本,作者使用n(n-1)个负对样本(即来自第一帧的n个像素与来自第二个帧的n-1个不匹配像素)。不匹配的像素体素的定义与像素定义类似,区别在于是来自同一对帧还是3D体素块。

在匹配和不匹配像素位置的特征之间,作者设计了一个PointInfoNCE损失,定义为:

802bb5cd981021606f197f11aeda6556.png其中M是像素对应对的集合,f表示特征图中一个像素的相关特征向量。通过利用多视图对应关系,应用隐式3D先验,无需任何显式3D学习,就可以将视图不变性引入到基于图像的特征学习中。 

B.几何先验:

除了多视图约束之外,作者还在训练期间利用了RGB-D数据固有的几何颜色对应关系。对于RGB-D训练序列,几何颜色对应关系是通过重建表面S与RGB序列帧相关联来给出。对于每一帧i,计算它在世界空间中的view frustum。然后从view frustum的轴对齐包围盒裁剪S的体积块Vi。这里将Vi表示为距离表面2cm分辨率的体积所占用的网格,并考虑成对的颜色和几何块(Ci,Vi)。最后应用(Ci,Vi)中的像素-体素对应关系进行对比学习,所有匹配的像素-体素对都是正数,所有不匹配的像素-体素对都是负数。最后应用PointInfoNCE损失,fi作为像素的2D特征,fj是其3D对应的特征向量,M是2D-3D像素-体素对应对的集合。 

C.联合学习:

该方法不仅可以在训练期间单独利用视图不变约束和几何先验,还可以从这两种约束的组合中进行联合学习。该过程可以使用共享的2D网络和3D网络backbone。 

3实验环节:

A.实验细节:

本文的方法旨在通过利用视图不变和几何先验约束将3D先验嵌入到2D表示学习中。实验环节主要利用RGB-D数据集进行预训练和对下游2D场景理解任务进行微调。其中预训练主要分为两部分进行:第一阶段,Pri3D编码器初始化。经验发现,对于预训练阶段,编码器网络的良好初始化对于提高学习的鲁棒性至关重要。第二阶段,在ScanNet上进行Pri3D预训练。所有预训练方法是通过RGB-D数据序列中固有的几何和颜色信息实现的。两个阶段都需要一个能够为网络架构提供单独像素或3D点特征的特征提取器,因为正匹配和负匹配是在2D像素或3D空间上进行定义的。

3267d51ee54e13f229a32eee1098a3e5.png

图4 ScanNet和 NYUv2上的 2D 语义分割的定性结果。通过对 3D 先验进行编码,获得了更好的分割结果,特别是在对象出现外观变化的情况下。

通过在基于图像的下游场景理解任务上对框架进行微调来评估本文的Pri3D模型。使用两个数据集,ScanNet和NYUv2,以及语义分割、对象检测和实例分割三个任务。

为了验证3D先验对2D表示学习有用的观点,作者将所提方法与相关baseline进行基准比较。所有实验旨在证明Pri3D学习将3D先验嵌入到2D表示中,可以提高下游任务性能

B.ScanNet

实验第一部分使用通过Pri3D学习的预训练网络权重,并对ScanNet图像上的2D语义分割、对象检测和实例分割任务进行微调,证明了使用3D几何先验对表示学习的有效性。

2db74c7e6ff5a9f0f0fb02fb1df96c92.png

图4 ScanNet(ResNet50Backbone)上的数据学习。当使用100%可用于语义分割的数据进行微调时,预训练可以胜过有监督的ImageNet预训练。

其中在2D分割任务上的表现如表1所示,表1也展示了所提方法在标准ResNet50Backbone和较小的ResNet18Backbone上的适用性。

表1 ScanNet上的2D语义分割。与ImageNet预训练相比,使用Pri3D预训练模型进行微调可以显着改善结果。度量标准是mIoU。

877e83f59fb11bb0b4ca15782cead47d.png

表2 ScanNet上的2D检测。与ImageNet预训练和强大的MoCo风格的预训练方法相比,使用Pri3D预训练模型进行微调可以改善不同指标的对象检测结果

a3bd7bef4984cd1bcc46009402a058b7.png

表3 ScanNet上的实例分割。与ImageNet预训练和强大的MoCo风格的预训练方法相比,使用Pri3D预训练模型进行微调可以改善实例分割结果。

1efc8acedbc9e1dc97a4b6f27bc1ba58.png

C.NYUv2

为了验证方法可以学习跨数据集的可转移特征。通过在ScanNet RGB-D数据上预训练Pri3D,实验还探索在NYUv2上针对下游2D任务进行微调的结果。

表4 NYUv2上的2D语义分割。

62026faf9918c8bd0743d2969e822cac.png表5 NYUv2上的2D对象检测。通过Pri3D微调可以获得更好的目标检测AP(Average precision)。

f7dd0ded098ebe5a82be4021d6e80351.png

表6 NYUv2上的2D实例分割。使用Pri3D可以获得更好的实例分割AP。

7964b113990ee5658773924ea8410fff.png

4总结

通过在几何约束下的ScanNet上进行预训练,证明了所提方法可以通过自监督的预训练(即不使用语义标签)提高2D语义分割的性能,例如分割和检测任务。作者不仅在ScanNet数据上证明了这一点,而且还将其推广到了基于NYUv2的语义分割、实例分割和检测任务。此外,利用这种几何先验进行预训练提供了强大的功能,可以在大量可用的训练数据下进一步提高性能。当然作者也提到,本文虽然专注于室内场景理解,但可以为更一般的3D图像感知理解开辟新的方向。

本文仅做学术分享,如有侵权,请联系删文。

3D视觉精品课程推荐:

1.面向自动驾驶领域的多传感器数据融合技术

2.面向自动驾驶领域的3D点云目标检测全栈学习路线!(单模态+多模态/数据+代码) 3.彻底搞透视觉三维重建:原理剖析、代码讲解、及优化改进 4.国内首个面向工业级实战的点云处理课程 5.激光-视觉-IMU-GPS融合SLAM算法梳理和代码讲解 6.彻底搞懂视觉-惯性SLAM:基于VINS-Fusion正式开课啦 7.彻底搞懂基于LOAM框架的3D激光SLAM: 源码剖析到算法优化 8.彻底剖析室内、室外激光SLAM关键算法原理、代码和实战(cartographer+LOAM +LIO-SAM)

9.从零搭建一套结构光3D重建系统[理论+源码+实践]

10.单目深度估计方法:算法梳理与代码实现

11.自动驾驶中的深度学习模型部署实战

12.相机模型与标定(单目+双目+鱼眼)

13.重磅!四旋翼飞行器:算法与实战

14.ROS2从入门到精通:理论与实战

重磅!3DCVer-学术论文写作投稿 交流群已成立

扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。

同时也可申请加入我们的细分方向交流群,目前主要有3D视觉、CV&深度学习、SLAM、三维重建、点云后处理、自动驾驶、多传感器融合、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、学术交流、求职交流、ORB-SLAM系列源码交流、深度估计等微信群。

一定要备注:研究方向+学校/公司+昵称,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,可快速被通过且邀请进群。原创投稿也请联系。

281d411cd0b150974b9d0bbe9a4e50ce.png

▲长按加微信群或投稿

8de6b8e0cfbd81584caf93b363f53f29.png

▲长按关注公众号

3D视觉从入门到精通知识星球:针对3D视觉领域的视频课程(三维重建系列、三维点云系列、结构光系列、手眼标定、相机标定、激光/视觉SLAM、自动驾驶等)、知识点汇总、入门进阶学习路线、最新paper分享、疑问解答五个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近4000星球成员为创造更好的AI世界共同进步,知识星球入口:

学习3D视觉核心技术,扫描查看介绍,3天内无条件退款

358bec1cec56684586404e71e496d226.png

 圈里有高质量教程资料、答疑解惑、助你高效解决问题

觉得有用,麻烦给个赞和在看~  

关注
打赏
1688896170
查看更多评论

暂无认证

  • 4浏览

    0关注

    107766博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文
立即登录/注册

微信扫码登录

0.1111s