论文笔记 SuperPoint:Self-Supervised Interest Point Detection and Description

时间:2024-04-09 15:10:39

摘要:  

本文提出了一种用于训练兴趣点检测器和描述符的自监督框架,适用于计算机视觉中大量的多视角几何问题。与基于patch的神经网络不同,我们的全卷积模型在全尺寸图像上运行,并在一次向前传递中联合计算像素级兴趣点位置和相关描述符。我们引入了Homographic Adaptation(同源自适应),一个多尺度,多同源的方法,以提高兴趣点检测的重复性和执行跨域自适应(例如,synthetic-to-real)。我们的模型,当训练在MS-COCO通用图像数据集使用Homographic与最初的预适应深度模型和任何其他传统的角检测器相比,Homographic Adaptation能够反复检测到更丰富的兴趣点集。与LIFT、SIFT和ORB相比,最终系统在hpatch上产生了最先进的单应性估计结果

    介绍:

几何计算机视觉任务的第一步,如同步定位和绘图(SLAM),基于运动的结构(SfM)、摄像机标定和图像匹配是从图像中提取兴趣点。兴趣点是图像中的二维位置,在不同的光照条件和视点下稳定和可重复。数学和计算机视觉的子领域被称为多视图几何[9],它由一些定理和算法组成,这些定理和算法建立在兴趣点可以被可靠地提取并在图像之间匹配的假设上。然而,大多数真实计算机视觉系统的输入都是原始图像,而不是理想化的点位。

(这一段没什么重点就是说神经网络好的,不翻了)

(。。。。。。)

我们提出了一种使用自我训练的自我监督 解决方案,而不是使用人类监督来定义真实图像中的兴趣点。在我们的方法中,我们在真实图像中创建一个大的伪ground truth兴趣点位置数据集,由兴趣点检测器本身监督,而不是大规模的人工注释工作。(不懂)

为了生成伪ground truth兴趣点,我们首先在一个名为synthetic Shapes的合成数据集的数百万个例子上训练一个全卷积神经网络(见图2a)。合成数据集由简单的几何形状组成,兴趣点位置没有歧义。我们称之为结果训练检测器MagicPoint-在合成数据集上,它的性能明显优于传统的兴趣点检测器。MagicPoint在真实图像上的表现令人惊讶,尽管存在领域适应困难。然而,与经典的兴趣点探测器相比,在一个不同的图像纹理和模式集,MagicPoint错过了许多潜在的兴趣点位置。为了在真是图像上缩小这一差距,我们开发了一种多尺度多变换的技术-Homographic Adaptation.(针对两种数据集,HA更适合真实数据集,MP更适合合成数据集)

设计HA是为了使兴趣点检测器的自我监督训练成为可能。它多次扭曲输入图像,以帮助兴趣点检测器从许多不同的视点和尺度查看场景(见第五节)。我们将HA与MagicPoint检测器结合使用,以提高检测器的性能,并生成伪ground truth兴趣点(见图2b)

在检测到鲁棒性和可重复性兴趣点之后,最常见的步骤是为每个点加一个固定维度的描述向量,用于更高层次的语义任务,如图像匹配。因此,我们最后结合了SuperPoint和一个描述子网络(见图2c)。SuperPoint的体系结构由深度堆叠的卷积层提取多尺度特征,然后直接结合兴趣点网络与额外的子网络计算兴趣点描述符(see Section 3)。系统如图1所示。

相关工作:

这个部分总结一下说的是SP和其他传统方法和深度学习的方法做了简单的比较,得出SuperPoint方法是唯一在单一网络中实时计算兴趣点和描述符的方法,后面有说了一些其他的自监督和HA方法。

SP架构:

我们设计了一种名为SuperPoint的全卷积神经网络结构,它在全尺寸图像上运行,并在单次前向传播过程中产生兴趣点检测,伴随有固定长度描述符(见图)3)。该模型采用单一共享的编码器来处理和降低输入图像的维数。编码器完成后,架构分成两个解码器“头”,分别学习任务特定权重——一个用于兴趣点检测,另一个用于兴趣点描述。网络的大部分参数在两个任务之间共享,这与传统系统首先检测兴趣点,然后计算描述符不同,他们缺乏跨两个任务共享计算和表示的能力。

论文笔记 SuperPoint:Self-Supervised Interest Point Detection and Description

共享的编码器

我们的架构使用VGG-style编码器来降低图像的维度,该编码器由卷积层、池空间下采样和非线性**函数组成。我们的编码器使用三个最大池层,让我们定义Hc = H/8 and Wc = W/8 一个尺寸为H * W的图像。将低维输出的像素称为单元格,其中3个2x2不重叠的最大池操作在编码器产生8X8像素的单元格。该编码器将输入图像I 映射到具有较小空间维数和较大通道深度的中间张量

兴趣点编码器

对于兴趣点检测,输出的每个像素对应于输入中该像素的“点”概率。稠密预测的标准网络设计涉及一个编解码器对,其中空间分辨率通过池化或带状卷积降低,然后通过上卷积操作上采样回全分辨率(应该是指网络中图像的分辨率变为了八分之一,后来又变回了初始大小),如在SegNet。不幸的是,上采样层往往会增加大量的计算量,并会引入不需要的棋盘构件[18],因此我们设计了带有显式解码器的兴趣点检测头来减少模型的计算量(不理解)。兴趣点检测器头计算X 并输出一个张量大小的RHW。这65个通道对应于局部的、不重叠的8个像素网格区域加上一个额外的“无兴趣点”垃圾箱。经过一个通道的softmax,垃圾箱的尺寸被删除和RHcWc64) RHW重塑被执行。

描述符编码器

。。。为了输出L2标准化固定长度描述符的密集映射,我们使用类似于UCN[3]的模型首先输出半密集的描述符网格。学习描述符采用半一致而不是密集的方式可以减少训练记忆,并使运行时易于处理。解码器然后执行描述符的双三次插值,然后l2 -normalize**为单位长度。这个固定的,不需要学习的描述符解码器如图3所示。

损失函数

总损失=关键点检测的损失+描述符损失

使用具有(a)伪ground-truth兴趣点位置和(b)两幅图像之间随机生成的单应性H的ground-truth对应关系的综合变形图像对。
这允许我们同时优化两个损失,给定一对图像,如图2c所示。