SuperPoint: Self-Supervised Interest Point Detection and Description

标题:《SuperPoint: Self-Supervised Interest Point Detection and Description》

作者:Daniel DeTone, Tomasz Malisiewicz, Andrew Rabinovich(都在 Magic Leap工作)

摘要:

  • 本文提出了一个自我监督框架,用于训练兴趣点检测器和描述符,适合大量的多视几何问题。
  • 与基于补丁的神经网络相对,该框架的完全卷积模型在全尺寸图像上操作,计算像素级的兴趣点位置和相关描述符。
  • 通过Homographic Adaptation和一个多尺度、跨域适应的方法增强了兴趣点(interest points)检测的泛化能力。
  • 当模型在MS-COCO通用图像数据集上训练时,它能反复检测出比初始预训练深度模型更丰富的兴趣点。
  • 与传统的角点检测器相比,该系统达到了前沿的齐次估计结果。

引言

  • 几何计算机视觉任务的第一步通常涉及到检测图像中的兴趣点。
  • 兴趣点有助于三维重建、摄像机标定等。
  • 当前的方法通常依赖于人工标记的点。
  • SuperPoint不依赖于人工标记的点,而是使用一个全卷积神经网络自我监督地表示这些点。
  • 这种方法可以很好地检测出“关键点”或“地标”点,对于各种任务,如物体检测和室内姿态估计,都很有用。

在本文的自我监督方法中,(a)在合成数据上预先训练了一个初始的兴趣点检测器,并(b)使用了一个新的同态适应程序来自动标记来自未标记域的目标图像。 

从一个由创建的合成数据集中获取了一些示例,称为“合成形状”。该合成数据集包括简单的几何形状,与合成数据集上的兴趣点位置无关。我们称这样训练得到的检测器为“MagicPoint” —— 它在合成数据集上显著地优于其他兴趣点检测器(参见Section 4)。MagicPoint在真实图像上的表现出奇的好,尤其是当与经典的兴趣点检测器相比。但是,由于图像纹理和模式的多样性,MagicPoint在真实图像上错过了许多潜在的兴趣点位置。为了弥补这一差距,本文开发了一种多尺度、多变换技术——同态适应

同态适应被设计为启用兴趣点检测器的自我监督训练。它扭曲输入图像多次以帮助在不同的视点和尺度下识别兴趣点(参见Section 5)。本文在MagicPoint检测器的联合下使用同态适应来增强检测器的性能并生成伪真实兴趣点(参见图 2 b)。这些检测结果更为稳定且针对更广泛的刺激,因此将结果检测器命名为SuperPoint。

检测稳定和可重复的兴趣点之后的常见步骤是为其附加固定维度的描述符,例如,用于图像匹配。因此,本文将SuperPoint与描述符子网络结合(参见图 2c)。SuperPoint架构由深度堆叠的卷积层组成,它逐渐向下到一个细节描述符子网络来组合兴趣点网络与描述符子网络(参见部分 3)。最终系统如图 1 所示。

相关工作

传统的兴趣点检测器已经得到了深入的评估。FAST角点检测器是第一个将高速角点检测作为机器学习系统的方法,而 SIFT 可能是最知名的传统局部特征描述符方法。

本文的SuperPoint架构受到了最近在应用深度学习进行兴趣点检测和描述符学习的方法的启发。虽然现在有能力将图像子结构与像UCN 和DeepDesc 这样的模型相匹配,但它们都不进行任何兴趣点检测。然而,D2-Net  和LIFT ,一个为SIFT产生的卷积替代,接近于传统的兴趣点描述符pipeline。LIFT流水线包含兴趣点检测、方向估计和描述符计算,但还需要从一个传统的SFM系统获得监督。

SuperPoint 架构

设计思路: SuperPoint 是一个全卷积神经网络架构,它在全尺寸图像上操作,并在单一的前向传递中产生固定长度的描述符。此架构的主要目的是在减少输入图像的维度后,识别“兴趣点”并对这些点进行描述。此模型有两个主要任务:检测兴趣点并计算描述符,两个任务共享参数。

  • 3.1 共享编码器 (Shared Encoder):

    • SuperPoint使用一个VGG风格的编码器来减少图像的维度。
    • 使用最大池化和非线性激活函数。
    • 输出维度是原始图像尺寸的 1/8。
  • 3.2 兴趣点解码器 (Interest Point Decoder):

    • 对于兴趣点的检测,输出的每个像素都响应于输入中的“兴趣点”。
    • 使用标准的密集预测设计来恢复空间分辨率。
    • 使用卷积上采样层增加特征的高度和宽度,以及通过附加的卷积运算来加强计算。

  • 3.3 描述符解码器 (Descriptor Decoder):

    • 描述符头部计算并输出一个固定尺寸的描述符矩阵。
    • 为了产生L2-标准化的固定长度描述符,它采用了与UCN相似的半密集描述符生成策略。
    • 描述符解码器旨在减少训练时的内存和计算需求。
  • 3.4 损失函数 (Loss Functions):
    • 该模型有两个中间损失函数:一个用于兴趣点检测,一个用于描述符匹配。
    • 利用真实的兴趣点位置及其随机选择的对应关系来构建这些损失。
    • 两个损失共同工作,使得模型能够同时优化这两个任务。

Synthetic Pre-Training

  1. 背景介绍

    • 文章提到了一个名为MagicPoint的基础检测器,该检测器使用了“同态自适应”(Homographic Adaptation)方法来生成伪标注的兴趣点标签,为无标签图像进行自监督训练。

  1. 合成形状(Synthetic Shapes)

    • 由于没有大规模的带有兴趣点标签的图像数据库,作者首先创建了一个大型的合成数据集,称为“Synthetic Shapes”。
    • 这个数据集包括了2D简化的几何形状的合成数据渲染,例如四边形、三角形、线条和椭圆。通过这种方式,作者能够在数据集中移除某些歧义,模拟简单的Y型连接、L型连接、T型连接以及极小的椭圆点。
    • 一旦合成图像被渲染,文章描述了如何应用单应性变换来增加训练样本。这种方法在没有任何标注的情况下生成了数据。
  2. 合成形状的检测器性能

    • 文章通过SuperPoint的检测器路径使用合成形状数据对其进行训练,同时忽略了描述器头部。
    • 文章进一步对MagicPoint与其他经典检测器(例如FAST、Harris、Shi-Tomasi)进行了比较。结果显示MagicPoint在合成形状数据上的性能明显优于这些经典方法,尤其是在存在图像噪声的情况下。
    • 为了进一步证明这一点,文章提供了一个表格(Table 2)来显示不同检测器在合成形状数据上的性能。结果显示MagicPoint在没有噪声的情况下的mAP(平均精确度)为0.979,而在有噪声的情况下的mAP为0.971。这与其他经典检测器相比,MagicPoint的性能明显更好。

图4显示了合成形状数据集中的一些形状样本,以及MagicPoint与其他检测器在这些样本上的性能比较。从图中可以看出,MagicPoint比其他经典方法更能稳定地检测到形状中的角点,尤其是在存在噪声的情况下。

综上所述,第四页的内容强调了MagicPoint在合成形状数据上的优越性能,并展示了其与其他经典检测器的对比。

同态自适应 (Homographic Adaptation)

  1. 背景介绍

    • 文章提及,MagicPoint在合成形状数据集上表现出色,但在真实图像上是否同样有效呢?答案是肯定的,但效果并不如预期。
    • 特别是在有强烈角点结构的真实世界场景中,例如椅子和窗户,同态自适应的需求变得尤为明显。这推动了研究者为真实图像开发同态自适应的自监督方法。

  1. 同态自适应的定义

    • 系统首先从基础兴趣点检测器(例如MagicPoint)中引导自己,并在某个域(例如MS-COCO)中进行自监督操作。
    • 同时利用伪地面真实兴趣点位置标签为每个图像进行训练。
    • 核心方法是一种称为“同态自适应”的过程,它操作输入图像并组合结果。
  2. Formulation

    • 同态提供几乎或完全精确的图像到图像变换,适用于中心旋转、远距离的场景以及平面场景。
    • 因为大多数世界是平面的,所以同态在模型中的作用至关重要,尤其是当观察3D点从不同的视角时。
    • 文章定义了一个表示初始兴趣点功能的函数f0​(⋅)和一个随机的同态H
  3. 理想的兴趣点算子

    • 理想的兴趣点算子应与同态协变,意味着输出应随输入变换。
    • 为了处理同态相关的项,文章提供了数学公式和解释。
    • 在实践中,检测器不会完美地协变,因此使用同态自适应的基本思想是基于随机的H值对其进行经验上的平均。
  4. Choosing Homographies
    • 本节描述了如何选择用于同构适应的同构。为了模拟可能的相机变换,将一个潜在的同构分解为简单、少表达的变换类,如平移、缩放、平面旋转和对称透视失真。这些变换被组合起来,以避免由于制成品引入的任何视觉伪像。
    • 在应用同构适应到图像时,使用大量同构的平均响应。其中,Nh是方法的一个超参数,用于强制同构应用的频率与身份操作一样频繁。
    • 实验表明,使用适中的Nh值(如100)在持续性和可重复性方面获得了最佳效果。
  5. Iterative Homographic Adaptation
    • 介绍了迭代同构适应技术。该技术在训练时间内应用于提高模型的泛化能力。该过程可以多次迭代进行,从而不断地自我监督并提高模型的效果。在应用同构适应之后,将得到的模型称为SuperPoint。文章还展示了使用HPatches图像的定性进展

实验细节

  • 使用了VGG-like的架构,该编码器包含8个3x3卷积层,其大小依次为64-64-64-128-128-128。每两个卷积层之间有一个2x2最大池化层。每个解码器也具有一个3x3卷积层,它有256个输出单元用于兴趣点检测器和描述符表示。

  • 对于兴趣点检测器和描述符表示,使用ReLU非线性激活函数和BatchNorm归一化。

  • 使用了完全卷积的SuperPoint模型进行训练,该模型从基础MagicPoint模型开始,并在合成的数据集"Synthetic Shapes"上进行了微调。MagicPoint架构是SuperPoint架构的一个版本,但不包括描述符头部。

  • 对于描述符大小,所有实验中的D值都是256。使用一个权衡项来保持描述符学习平衡,且描述符的hinge loss使用一个正面边界值和一个负面边界值。

  • 所有训练都使用了PyTorch进行,采用了小批量的大小为32,并且ADAM优化器用于训练,其中包括特定的学习率和β参数。为了提高模型的鲁棒性,还引入了随机高斯噪声、运动模糊和亮度水平变化。

Experiments

7.1. System Runtime

  • 讨论了SuperPoint架构的运行时性能。通过Caffe深度学习库,单次前向传递只需1.15毫秒,这足以处理480 x 640的图片并在其中产生点检测结果。
  • 虽然模型可以在半密集分辨率图像上进行描述符生成,但没有必要生成完整的描述符地图。在CPU实现上,创建这样的描述符地图需要约1.5毫秒。
  • 估计SuperPoint模型在GPU上的总运行时为70 FPS。

7.2. HPatches Repeatability

  • 作者在MS-COCO图像上训练了SuperPoint模型,并使用HPatches数据集对其进行了评估。评估的焦点是关键点的重复性。
  • 评估结果显示,SuperPoint在57个场景中表现良好,这些场景在照明变化时展现了高度的重复性。
  • 对SuperPoint的兴趣点检测能力进行了评估,并将其与其他方法(例如MagicPoint,FAST,Harris和Shi)进行了比较。SuperPoint在多数情况下都超越了MagicPoint。

7.3. HPatches Homography Estimation

  • 文章评估了SuperPoint模型在关键点检测和描述符网络方面的性能,并将其与其他知名的关键点和描述符方法(例如SIFT和ORB)进行了比较。
  • 使用LIFT作为一个参考基准,但值得注意的是,LIFT是在一个特定的室外序列上进行训练的。
  • 结果显示,SuperPoint在大多数指标上都超越了LIFT。此外,SuperPoint相对于SIFT、ORB等传统方法在不同情况下都展现出了良好的性能,特别是在对抗光照变化时。

图8. 定性结果在HPatches上

  • 图像展示了通过绿线表示的正确匹配。可以观察到,SuperPoint比LIFT、SIFT和ORB产生更多且更密集的正确匹配。
  • 尽管ORB展示了最高的平均重复性,但检测的簇聚在一起,通常不会导致更多的匹配或更准确的同构估计。
  • 图中的第四行显示了由于在训练样本中未见的极端平面旋转,导致SuperPoint和LIFT的失败案例。

方法的比较

  • SIFT在亚像素精度的同构估计上表现良好,并且有最低的均方定位误差(MLE)。这也意味着当误差小于1像素时,只有SIFT在亚像素定位上执行得很好,而其他方法没有。

  • ORB显示了最高的重复性。但是,如图8所示,它在整个图像中产生了稀疏的簇,这暗示了仅优化单一可重复性任务可能不会在后续的流程中产生更好的匹配或估计。

  • SuperPoint在关注描述符匹配的指标上表现出色,例如平均精确率 (mAP) 和准确度得分 (M Score, Y score)。这些结果与之前的研究一致,说明学习的表示对于描述符匹配超过了手动调整的表示。

结论

  • 介绍了一个完全卷积的神经网络架构,用于特征点检测和描述。这个框架采用自监督的域适应训练方法。

  • 实验证明:

    • 1) 可以将知识从合成数据集迁移到真实世界图像,

    • 2) 提供了一个稳健的特征点检测和描述的方法,

    • 3) 作为一个单一的有效的系统,它对于几何计算机视觉匹配任务,如同构估计,工作得很好。

  • 未来的工作将探讨是否同构适应也可以用于其他视觉任务,如语义分割。

  • 最后,作者相信SuperPoint网络可以被用于视觉SLAM和SfM等高级任务,还有在机器人和增强现实中。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值