作者 | 商汤&浙大,Jiaming Sun1,2∗Zehong Shen1∗Yuang Wang1∗Hujun Bao1 Xiaowei Zhou1†
单位 | Zhejiang University & SenseTime Research
代码 | https://github.com/zju3dv/LoFTR
image.png
图1:LoFTR方法与基于检测器的SuperGlue方法之间的比较[37]。该示例演示了LoFTR能够在无纹理的墙上和地板上找到具有重复图案的对应关系,其中基于检测器的方法难以找到可重复的兴趣点。

摘要
本文提出了一种新颖的用于局部图像特征匹配的方法。代替了传统的顺序执行图像特征检测,描述和匹配的步骤,本文提出首先在粗粒度上建立逐像素的密集匹配,然后在精粒度上完善精修匹配的算法。与使用cost volume搜索对应关系的稠密匹配方法相比,本文使用了Transformer中使用自我和交叉注意力层(self and cross attention layers)来获取两个图像的特征描述符。Transformer提供的全局感受野使图像能够在弱纹理区域产生密集匹配(通常情况下在低纹理区域,特征检测器通常难以产生可重复的特征点)。在室内和室外数据集上进行的实验表明,LoFTR在很大程度上优于现有技术。

Introduction

图像间的局部匹配是许多3D计算机视觉任务的基础,包括运动结构SfM、SLAM、视觉定位等。大多现有的匹配方法都有三个阶段工作:特征检测、特征描述和特征匹配。在检测阶段,首先从每个图像中检测像角点这样的突出点作为兴趣点。然后围绕这些兴趣点的邻域区域提取局部描述符。特征检测和描述阶段产生两组具有描述符的兴趣点,随后通过最近邻搜索或更复杂的匹配算法找到这些兴趣点的点对点对应关系。

特征检测器的使用减少了匹配的搜索空间,并且产生的稀疏对应足以用于大多数任务,例如,摄像机姿势估计。然而,由于各种因素(如纹理差、重复图案、视点变化、照明变化和运动模糊),特征检测器可能无法提取足够的兴趣点。这一问题在室内环境中尤其突出,在室内环境中,低纹理区域或重复图案有时占据视野中的大部分区域。图1示出了一个示例。如果没有可重复的兴趣点,即使有完美的描述符,也不可能找到正确的对应关系。

最近的几项工作[34、33、19]试图通过建立像素密集匹配来解决这个问题。可以从密集匹配中选择置信度较高的匹配,从而避免特征检测。然而,在这些工作中,卷积神经网络(CNN)提取的密集特征具有有限的感受野,可能无法区分模糊区域。取而代之的是,人类在这些模糊区域中找到了对应关系,不仅是基于局部邻域,而且是基于更大的全局上下文。例如,图1中的低纹理区域可以根据其相对于边缘的相对位置来区分。这一观察结果告诉我们,在特征提取网络中,一个大的感受野是至关重要的。

基于上述观察,我们提出了局部特征变换(LoFTR),一种新的无检测器局部特征匹配方法。受开创性工作SuperGlue[37]的启发,我们使用带有自我和交叉注意层的Transformer[48]来处理(转换)从卷积主干提取的密集局部特征。首先以低特征分辨率(图像维度的1/8)在两组变换特征之间提取密集匹配。从这些密集匹配中选择具有高置信度的匹配,然后使用基于相关性的方法将其细化到亚像素级。Transformer的全局感受野和位置编码使变换后的特征表示具有上下文和位置依赖性。通过多次交错自我和交叉注意层,LoFTR学习在ground-truth匹配中显示的密度范围内的全局一致匹配先验。还采用了线性Transformer,将计算复杂度降低到可管理的水平。

我们在室内和室外数据集的多个图像匹配和摄像机姿态估计任务中对所提出的方法进行了评估。实验表明,LoFTR在很大程度上优于基于检测器和无检测器的特征匹配基线。LoFTR还实现了最先进的性能,并在视觉本地化的两个公共基准上排名第一。与基于检测器的基线方法相比,LoFTR即使在具有低纹理运动模糊重复图案的模糊区域也可以生成高质量的匹配。

Related Workd

基于检测器的局部特征匹配。基于检测器的方法已经成为局部特征匹配的主要方法,在深度学习时代之前,许多工作在传统手工设计的局部特征特征上都取得了良好的表现。

SIFT[26]和ORB[35]是最成功的手工设计的局部特征,在许多3D计算机视觉任务中被广泛采用。基于机器学习的方法可以显著提高局部特征在更大视角和光照变化下的性能。

值得注意的是,LIFT[51]MagicPoint[8]是首批成功的基于学习的局部特征。它们采用的检测器设计是基于手工设计的方法,并实现了良好的性能。SuperPoint[9]MagicPoint为基础,提出了一种通过自适应的自监督训练方法。沿着这条技术路线的许多基于学习的局部特征[32、11、25、28、47]也采用了基于检测器的设计。

上述局部特征使用最近邻搜索来查找提取的兴趣点之间的匹配。最近,SuperGlue[37]提出了一种基于学习的局部特征匹配方法。SuperGlue接受两组兴趣点及其描述符作为输入,并使用图神经网络(GNN)学习它们的匹配,这是Transoformers的一般形式[16]。由于可以通过数据驱动的方法学习特征匹配的先验知识,SuperGlue获得了令人印象深刻的性能,并开创了局部特征匹配的新技术。

然而,作为一种依赖于检测器的方法,它的基本缺点是无法在模糊区域中检测出可重复的兴趣点。SuperGlue中的注意范围也仅限于检测到的兴趣点。我们的工作受到SuperGlue的启发,在GNN中使用自注意力机制和交叉注意力机制在两组特征描述之间传递消息,但我们提出了一种无检测器设计,以避免特征检测器的缺点。同时还在Transformer中使用了一种有效的注意层变体,以降低计算成本。

无检测器的局部特征匹配。无检测器的方法移除了特征检测器阶段,直接产出稠密特征描述符或者稠密特征匹配符。

视觉任务中的Transformers。Transformer由于其简单和计算高效,已经成为NLP序列标注任务中的标准模块。近期,Transformers在计算机视觉领域也取得非常好的效果,例如图像分类、目标检测和语义分割。在我们的工作中,也使用Transformers进行dispartity estimation。由于需要将查询向量和key vectors进行点乘,所以Transformer的计算量随着输入序列长度呈现增长。最近在处理长序列问题上,提出了许多变体方法。因为这些工作中的输入数据没有作前提假设,所以他们非常适合处理图像。
image.png
Figure2: 方法概览。LoFTR有四个主要组成成分:1.局部特征CNN提取模块从图像对LoFTR: Detector-Free Local Feature Matching with Transformers - 图3LoFTR: Detector-Free Local Feature Matching with Transformers - 图4中提取粗粒度图像特征图LoFTR: Detector-Free Local Feature Matching with Transformers - 图5LoFTR: Detector-Free Local Feature Matching with Transformers - 图6以及细粒度图像特征图LoFTR: Detector-Free Local Feature Matching with Transformers - 图7LoFTR: Detector-Free Local Feature Matching with Transformers - 图82.粗粒度的特征图会被展开成一维向量特征图并且增加位置编码。合并后的特征被送入到局部特征提取器TRansformer(LoFTR)模块中,这个模块有LoFTR: Detector-Free Local Feature Matching with Transformers - 图9个自注意力和交叉注意力层。 3.一个可微的匹配模块对变换后的特征进行匹配,得到置信矩阵LoFTR: Detector-Free Local Feature Matching with Transformers - 图10LoFTR: Detector-Free Local Feature Matching with Transformers - 图11的匹配根据置信度阈值和互近邻准则进行选择,获得粗匹配预测结果LoFTR: Detector-Free Local Feature Matching with Transformers - 图12。4.对于每个粗匹配LoFTR: Detector-Free Local Feature Matching with Transformers - 图13,从细粒度特征图中裁剪出一个LoFTR: Detector-Free Local Feature Matching with Transformers - 图14大小的局部窗口,粗匹配将这个局部窗口内细化到亚像素级别,作为最终的匹配预测LoFTR: Detector-Free Local Feature Matching with Transformers - 图15

Methods

给定图像LoFTR: Detector-Free Local Feature Matching with Transformers - 图16LoFTR: Detector-Free Local Feature Matching with Transformers - 图17,局部特征matching方法使用一个特征提取器去提取关键兴趣点interest points。我们设计了一个无检测器detector free去处理重复特征提取器的问题。整体框架如图2所示。

Local Feature Extraction

论文使用FPN设计了一个标准的卷积网络架构从两个图片中提取多层级的特征。使用LoFTR: Detector-Free Local Feature Matching with Transformers - 图18LoFTR: Detector-Free Local Feature Matching with Transformers - 图19表示在原始图像1/8维度处的粗粒度特征表示,LoFTR: Detector-Free Local Feature Matching with Transformers - 图20LoFTR: Detector-Free Local Feature Matching with Transformers - 图21表示在原始图像1/2维度处的细粒度特征表示。

传统的卷积神经网络CNN具有平移等变性和局部性的归纳偏差,非常适合局部特征提取。CNN引入的下采样也减少了LoFTR模块的输入长度,这对于确保可控的计算成本至关重要。

Local Feature Transformer Module

通过卷积提取后的特征LoFTR: Detector-Free Local Feature Matching with Transformers - 图22LoFTR: Detector-Free Local Feature Matching with Transformers - 图23会被送入LoFTR模块来提取位置特征和上下文依赖的局部特征。简而言之,LoFTR模块把“特征”转换成“易于匹配的特征”。我们把这个特征表示为LoFTR: Detector-Free Local Feature Matching with Transformers - 图24LoFTR: Detector-Free Local Feature Matching with Transformers - 图25

Preliminaries: Transformer

快速介绍Transformer的背景。
image.png

Establishing Coarse-level Matches

LoFTR中应用了两种可微的匹配层,一种是optimal transport OT层,另一种是dual-softmax operator。首先计算两个转换的特征之间的得分矩阵LoFTR: Detector-Free Local Feature Matching with Transformers - 图27LoFTR: Detector-Free Local Feature Matching with Transformers - 图28,当使用OT时,S可以用[37]中的代价矩阵。还可以将softmax用在两个维度上来获得最近邻匹配的概率。当时用dual-softmax时候,匹配概率矩阵LoFTR: Detector-Free Local Feature Matching with Transformers - 图29可以通过以下方式计算:
LoFTR: Detector-Free Local Feature Matching with Transformers - 图30

Match Selection. 基于置信度概率矩阵LoFTR: Detector-Free Local Feature Matching with Transformers - 图31,来根据是否高于阈值LoFTR: Detector-Free Local Feature Matching with Transformers - 图32来选择匹配matches,然后进一步使用最近邻MNN准则,来过滤掉可能异常的粗匹配。我们把这个粗粒度匹配预测表示为:
image.png

Coarse-to-Fine Module

在建立粗略匹配后,这些matches将通过“从粗到精”模块进行细化到细粒度图像。受[50]的启发,我们使用了基于相关性的方法来实现。对于每个粗匹配LoFTR: Detector-Free Local Feature Matching with Transformers - 图34,首先在细粒度feature mapsLoFTR: Detector-Free Local Feature Matching with Transformers - 图35LoFTR: Detector-Free Local Feature Matching with Transformers - 图36上定位他的位置LoFTR: Detector-Free Local Feature Matching with Transformers - 图37,然后裁剪到大小为LoFTR: Detector-Free Local Feature Matching with Transformers - 图38的局部窗口。