LIFT:Learned Invariant Feature Transform

Abstract

引入了一种全新的深度网络结构,实现了完整的特征点处理的一系列过程,包括检测、方向估计和特征描述。虽然以前有工作已经成功的解决了这些问题中的每一个,但我们展示了如何在保持端到端可微性的同时,统一的处理这三个问题。

1 Introduction

局部特征在许多计算机视觉应用中起着关键作用。在图像中需找并匹配它们一直是大量研究的主题。直到最近,好的技术都是依赖于人工设计的特征(SIFT,SURF,ORB),在过去的几年里,和计算机视觉的许多领域一样,基于机器学习的方法,尤其是深度学习,已经表现的比传统方法要好。
然而这些新算法只解决了整个链中的一个部分,包括detecting the features、compute the orientations,extracte robust representations。本文采用了一种新的深度体系结构,可以同时执行这三个步骤。
在这里插入图片描述
本文的体系结构,称之为LIFT:学习不变特征变换,如图1所示:它是由三个相互输入的组件组成:Detector、Orientation Estimator、Descriptor。每一种方法都是基于CNN,并且模仿了最近的几篇文献。这些网络已经能够很好地执行这些单独地功能,为了将它们啮合在一起,使用了Spatial Transformers来校正给定的Detector和Orientation Estimator地图像块。我们还使用soft argmax函数取代了传统地非局部极大抑制(NMS),这就可以保持端到端的可微性,并产生一个仍然可以用反向传播来训练的完整网络。
同时,展示如何有效地学习。为此,构建一个孪生网络,并且实用(SFM)算法生成的特征点对其进行训练,该算法对不同的视点和光照条件下拍摄的场景图像进行训练,以学习其权重。我们将此训练问题应用于不同尺度下提取的图像块上,来使优化过程具有可操作性。在实践中,我们发现不可能从头开始训练完整的体系结构,因为各个组件试图针对不同的目标进行优化。相反,我们引入一种针对具体问题的学习方法来克服这个问题。它首先训练Descriptor,然后训练Orientation Estimator,最后根据已经学习的Descriptor和Orientation Estimator训练Detector。在测试时,将整个图像尺度空间中运行的Detector和只处理关键点的Orientation Estimator和Descriptor解耦。

2 Related Work

局部特征相关的文献数量庞大,但它们都是围绕find feature points,compute the orientation和match them.因此这一节分别讨论这三个要素。

2.1 Feature Point Detectors

特征点检测的研究主要集中在寻找能够可靠估计尺度和旋转的特征点位置,早期的角点寻找使用图像信号的一阶近似。FAST使用机器学习加速找角点的过程。除了角点,SIFT在尺度空间找斑点,SURF用Haar滤波加快处理速度;MSER检测区域;检测仿射区域。SFOP使用连接和斑点,边缘焦点使用边缘来增强对照明变化的鲁棒性。最近,基于更复杂和精心设计的滤波器响应的特征点也被提出,以进一步提高特征点检测器的性能。
与这些工程上表现良好的特征点对比,TILDE展示出学习的特征点比之前额那些特征点表现更好。在这个工作中,分段线性卷积滤波器被训练的能鲁棒检测特征点,即使有光照和季节变化。但是,这只能处理一小块图像数据,并且视角不能变化,因此,我们根据它得到灵感,并将它纳入到我们的流程中。

2.2 Orientation Estimation

尽管朝向在匹配特征点上起着关键作用,但与检测或特征描述相比,判别方向估计问题受到的关注明显较少。因此导致SIFT介绍的方法往往成为小改进的标准,比如使用Intensity centroid(强度中心),如ORB设计那样。
最近一篇文章提出了一种基于深度学习的预测稳定方向的方法,这篇文章取得了巨大进步,我们将这个体系结构融入到我们的流程中并展示如何使用我们的问题特定的培训策略来训练它。

2.3 Feature Descriptors

特征描述符被设计用来提供显著图像块的区别表示,并对视角和光照变化保持鲁棒性。有成熟的SIFT由梯度方向的局部直方图计算出来,SURF使用积分图像表示来加速,DAISY依赖于有定向梯度的卷积图来近似直方图,这使DAISY提取稠密描述符时,它会产生很大的计算收益。
尽管它们已经很成功。从无监督的哈希到基于线性判别分析的有监督学习技术,遗传算法和凸优化。一个更近的趋势是直接从原始图像块中提取特征,使用CNN训练大量数据,例如,MatchNet训练一个孪生网络进行特征表示,然后训练一个全连接网络来学习度量。DeepCompare表明,聚焦于图像中心的网络可以提高性能。Kokkinos, I., Fua, P., Moreno-Noguer, F.: Discriminative Learning of Deep Convolutional Feature Point Descriptors. In: ICCV. (2015))中hard negative mining被用来学习compact descriptors,compact descriptors使用欧式距离度量相似性。(Balntas, V., Johns, E., Tang, L., Mikolajczyk, K.: PN-Net: Conjoined Triple Deep Network for Learning Local Image Descriptors. In: arXiv Preprint. (2016))依靠sample triplets to mine hard negatives。
我们依靠PN-Net的架构,因为描述符被训练并用于欧氏距离进行比较,与需要学习度量的描述符相比,它更具有广泛性。
的说法
图2.我们的孪生训练体系有四个分支,它以四个图像块作输入:图像块P1和P2(blue)对应同一物理点的不同视图,并被用作训练描述符的正面事例;P3(green)是一个不同的3D点,作为描述符的反面事例;P4(red)不包含显著特征点,仅作为反面事例来训练检测器。输入一个P,检测器,the soft argmax,and the Spatial Transformer层提供一个小p,然后进入方向估计和Spatial Tranformer层Rot一下,得到旋转的块pθ,然后提供给描述符得到最终的表达向量d。

3 Method

接下来,将讨论训练网络所需的数据类型以及如何收集这些数据。详细描述训练过程。

3.1 Problem Formulation

我们使用图像块作为输入,而不是完整的图像。这使得学习在不丢失信息的情况下具有可伸缩性,因为大多数图像区域不包含关键点。图像块是从SfM算法使用的关键点提取的,将在第3.2节中讨论。我们认为它们足够小,我们可以假设它们在给定的尺度下只包含一个主要的局部特征,这就减少了学习过程,从而找到了图像块中最具特色的点。
为了训练我们的网络,我们创建了图2中所示的四分支孪生体系结构。每个分支包含三个不同的cnn、一个检测器、一个方向估计器和一个描述符。为了训练的目的,我们使用了四个图像块。每个图像块包括对应于同一3D点的不同视图的两个图像块P1和P2、包含不同3D点的投影的图像块P3和不包含任何区别特征点的图像块P4。训练时,每只四胞胎的第i片Pi将穿过第i支。

1.给定一个输入图像块P,检测器就会提供一个得分图S。
2.我们在评分映射S上执行soft argmax,并返回单个潜在特征点的位置x。
3.我们提取了一个以x为中心的较小的图像块p,使用Spatial Transformer layer Crop( 图2),作为Orientation Estimator的输入。
4.Orientation Estimator预测一个patch orientation θ。
5.我们根据这个方向旋转p使用第二个Spatial Transformer layer,贴上Rot在图2中,产生pθ。
6.Pθ送到Descriptor网络,计算特征向量d。

注意,空间变换层仅用于操作图像块,同时保持可微性。它们不是学习模块。同时,detector提出的位置x和patch建议的方向θ都是隐式处理的,这意味着我们让整个网络在学习时发现不同的位置和稳定的方向。
由于我们的网络由不同目的的组件组成,所以权制的学习是非常重要的。我们试图从零开始训练整个网络,但没有成功。因此,我们设计了一种特定于问题的学习方法,首先学习描述符,然后学习给定学习描述符的方向估计器,最后是检测器,以其他两个为条件。这使得我们可以调整描述符的方向估计器,以其他两个为条件。这使得我们可以调整描述符的方向估计器,以及其他两个分量的检测器。

3.2 Creating the Training Dataset

有一些数据集可以用来训练feature descriptors和orientation estimators。然而,如何训练一个关键点探测器并不十分清楚,而且绝大多数技术仍然依赖于手工制作的功能。TILDE detector是一个例外,但是训练数据集没有显示任何视点变化。
为了实现不变性,我们需要图像捕捉同一场景在不同光照条件下的视图,并从不同的角度观察。因此,我们转向摄影旅游图像集。我们使用了Pic- cadilly Circus in London 和Roman Forum in Rome收集的资料,利用VisualSFM重建了3D,它依赖于SIFT功能。皮卡迪利包含3384张图像,重建有59k个独特点,每个点的平均观测值为6.5个。罗马论坛包含1658张图片和51k个独特点,平均每幅5.2个观察点。图3显示了一些示例。
我们将数据分成训练集和验证集,丢弃验证集中训练点的视图,反之亦然。为了构建正训练样本,我们只考虑在Sfm重建过程中幸存的特征点。为了提取不包含任何特征点的斑块,我们根据训练方法的要求,随机抽取不包含SIFT特征的图像区域,包括未被SfM使用的区域。
针对特征点和非特征点图像区域,根据点的尺度σ提取灰度训练块。从这些位置的24σ✖️24σ支持区域提取斑块P,并且标准化为S✖️S像素,其中S=128。作为方向估计器和描述符的输入的较小的面片p和pθ是这些面片的裁剪和旋转版本,每个面片的大小为s×s,其中s=64。更小的图像块有效对应于SIFT描述符支持区域大小12σ。为了避免数据的偏差,我们将均匀随机扰动应用于20%(4.8σ)的斑块位置。最后,我们用整个训练集的灰度平均值和标准差来规范化这些图像块。

3.3 Descriptor

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值