使用大型标记数据集进行预训练已成为开发高性能计算机视觉模型的核心工具。不过,尽管这种方法适用于多种类型的媒介,但它尚未广泛用于3D识别任务,例如在客厅的3D扫描中识别和定位沙发。
这是由于缺少带注释的数据,以及标记3D数据集非常耗时。另外,用于3D理解的模型通常依赖于与特定3D数据集紧密耦合的人工架构设计。
针对这个问题,Facebook人工智能团队将在国际计算机视觉2021大会介绍3DETR和DepthContrast。这是两种互补的新模型,能够促进对3D的理解,并大大简化了入门开始。通过建立一个简化3D理解的通用3D架构,并通过一种不需要标签的自我监督学习方法,研究人员希望能够解决上述的常见挑战。
同时,Facebook人工智能团队宣布将向开源社区提供这项研究和相关代码。
1. 为机器理解世界解锁一种强大的新方式
出于一系列的原因,打造能够理解世界3D数据的机器非常重要。自动驾驶汽车需要3D理解以实现移动和避免撞到障碍物,而AR/VR应用则可以帮助人们完成各种任务,例如可视化沙发是否适合客厅。
来自2D图像和视频的数据表示为规则的像素网格,而3D数据则反映为点坐标。由于更难获取和标记,3D数据集通常比图像和视频数据集小得多。这意味着它们通常在总体规模和包含的类或概念数量方面受到限制。
以前,专注于3D理解的从业者需要关键的领域知识来调整标准计算机视觉架构。单视图3D数据比多视图3D更容易收集,因为前者来自一台同时记录深度信息的摄影头,而后者则需要利用两台或多台摄影头记录同一场景。多视图3D数据通常由单视图3D后处理生成,但这个处理步骤存在故障率(有研究人员估计达到78%),原因包括源图像模糊或摄像头过度运动。
DepthContrast旨在解决所述的数据挑战,因为它能够从任何3D数据(包括单视图和多视图)训练自我监督模型,所以消除了使用小型、未标记数据集的挑战(即使是对大量2D图像或视频进行预训练,都不太可能对AR/VR等复杂应用产生准确的3D理解)。
团队的第二个研究3DETR是3D Detection Transformer的缩写。这个模型是一种基于Transformer的简单3D检测和分类架构,可作为检测和分类任务的通用3D主干。这个模型简化了用于训练3D检测模型的损失函数,这使得它更容易实现。
研究人员指出,性能相当于或超过了依赖于手动调整的3D架构和损耗函数的现有最先进方法。Facebook表示:“从帮助机器人导航世界,到为使用智能手机和未来设备(如AR眼镜)的人们带来丰富的新VR/AR体验,所述模型都具有巨大的潜力。”
随着3D传感器逐渐在手机等移动设备实现普及,研究人员甚至可以从自己的设备获取单视图3D数据来训练模型。DepthContrast技术是以自我监督方式使用所述数据的第一步。通过处理单视图和多视图数据类型,DepthContrast大大增加了3D自监督学习的潜在用例。
2. 3DETR: 在检测和分类中建模3D数据的Transformers
3DETR将3D场景(表示为点云或一组XYZ点坐标)作为输入,并为场景中的对象生成一组3D bounding box。这项新的研究是基于Facebook用于检测3D点云中的对象的VoteNet模型,以及基于Facebook人工智能团队在应对对象检测挑战所提出的架构Detection Transformers (DETR)。
为了实现从2D检测到3D检测的跳跃,Facebook确定了两个重要的变化,以便将Transformers用于3D理解。所以,团队需要非参数查询嵌入和傅立叶编码。
这两种设计决策都十分有必要,因为点云在大量空白空间和噪点之间具有不同的密度。3DETR主要是通过所述两种技术来处理这个问题。与DETR和其他Transformer模型/DETR中使用的标准嵌入相比,傅里叶编码是表示XYZ坐标的更好方法。
其次,DETR使用一组固定的参数(称为查询)来预测对象的位置。团队发现这一设计决策不适用于点云。取而代之的是,他们从场景中采样随机点,并预测相对于所述点的对象。实际上,研究人员没有一组固定的参数来预测位置,随机点采样能够适应3D点云的不同密度。
使用点云输入,Transformer编码器生成场景中对象形状和位置的坐标表示。它通过一系列的self-attention操作来捕获识别所需的全局和局部情景。例如,它可以检测3D场景的几何特性,例如放置在圆桌周围的椅子的椅脚和靠背。正如下面的图例所示,编码器能够自动捕获重要的几何特性。
团队在3DETR中可视化Transformer编码器生成的self-attention map,并观察到编码器会自动捕获椅子的腿和靠背等概念。
Transformer解码器将点特征作为输入,并且输出一组3D bounding box。它对点特征和查询嵌入应用一系列cross-attention操作。解码器的self-attention表示它关注于对象,以便预测它们周围的bounding box。
3DETR的解码器attention map显示,它可以隔离属于对象的点。解码器在从输入的三维点云预测对象的三维边界框时可能依赖于所述信息。
Transformer编码器同时非常通用,可以用于其他3D任务,例如形状分类。
总的来说,3DETR的实现比以前的研究要简单得多。在3D基准测试中,3DETR的性能与之前的人工3D架构相比具有竞争力。它的设计决策同时与之前的3D研究兼容,使得研究人员能够灵活地将3DETR中的组件调整到自己的管道中。
3. DepthContrast:使用任意3D点云进行自我监督预训练
自我监督学习一直是业界关注的一个主要领域。DepthContrast是Facebook人工智能团队的最新尝试。它旨在不适用标记数据的情况下学习强大的3D表示。这项研究同时与Facebook以前在这方面的PointContrast相关(这同时是一种用于3D的自我监督技术)。
现在获得3D数据的机会很多。传感器和多视点立体算法通常为视频或图像提供补充信息。但在之前,理解这种数据一直是一个挑战,因为3D数据具有不同的物理特征,具体取决于获取数据的方式和地点。例如,与户外传感器的数据相比,商用手机传感器的深度数据看起来非常不同。
人工智能研究中使用的大多数3D数据是以单视图深度映射的形式获取,其通过称为3D配准的步骤进行后处理,从而获得多视图3D数据。以前的研究依赖于多视图3D数据来学习自我监督的特征,而损失的设计则考虑了3D点对应。
如上所述,尽管将单视图数据转换为多视图数据的故障率很高,但DepthContrast显示,仅使用单视图3D数据就足以学习最先进的3D功能。
利用3D数据增强,研究人员可以从单个视图深度映射生成稍微不同的3D深度映射。DepthContrast通过使用对比学习来对齐从增强深度映射获得的特征来实现这一点。
实验表明,这种学习信号可以用来预训练不同类型的3D结构,如PointNet++和Sparse ConvNets。
更重要的是,无论是室内还是室外采集,无论是单视图还是多视图,DepthContrast可以应用于任何类型的3D数据。研究表明,使用DepthContrast预训练的模型在ScanNet 3D检测基准上达到了绝对的先进水平。
DepthContrast的功能提供了各种3D基准测试的增益,如形状分类、对象检测和分割。
这个模型同时表明,自监督学习在3D理解方面同样非常具有前景。事实上,DepthContrast分享了学习增强不变特征的基本原理,而后者已用于支持Facebook的SEER等自我监督模型
4. 寻找利用3D理解的新方法
自监督学习依然是一种跨文本、图像和视频学习表示的强大工具。现在,大多数智能手机都配备了深度传感器,而这为提高3D理解和创造更多人可以享受的新体验提供了重要机会。
Facebook人工智能团队表示:“我们希望3DETR和DepthContrast能够帮助当前和新的从业者开发更好的3D识别工具,并打破先前要求的高进入壁垒。我们非常期待开源社区将如何应用这些新技术。”