MatchNet: Unifying Feature and Metric Learning for Patch-Based Matching

 

 

MatchNet: Unifying Feature and Metric Learning for Patch-Based Matching

 

摘要:由于在学习特征表示和学习特征比较函数的成功,我们提出了一种统一的方法来结合训练块匹配系统。我们的系统成为MatchNet,由深度卷积网络组成从块来提取特征,和三个全连接层的网络来计算提取特征的相似性。为了确保实验可重复性,我们在标准数据集训练MatchNet,并使用输入采样器来增加训练集用合成实例来减少过拟合。一旦经过训练,我们在匹配实现了更好的计算效率,分解MatchNet并在两个连续步骤分别应用特征计算和相似性网络。我们在标准数据集进行了全面的实验以仔细研究网络各方面的贡献,并与已有的方法进行了比较。我们的结果证明,我们组合的方法提高了比先前最近研究在块匹配数据集提高了精确度,同时降低了描述符的存储要求。

 

 

 

基于块图像特征匹配

learning to Compare Image Patches via Convolutional Neural Network

Image Patch Matching Using Convolutional Descriptors with Euclidean Distance

大体上说,这些文章的思路都是利用一对CNN来提取一对图像特征,然后通过欧氏距离(经典如Saimese网络)或者通过全连接网络(Matchnet)来实现特征的对比,最后通过交叉熵函数来完成优化。

 

 

1介绍

 

基于块的图片匹配方法应用于计算机视觉问题。在块之间找准确的对应关系有着广泛的应用,宽基线立体、目标实例检测、细粒度分类,多视图重建、图片拼接和运动结构。

 

1999年来,有影响力的SIFT描述符的出现,基于块的匹配研究尝试提高精度和速度。早期的努力集中于识别更好的仿射区域检测器,设计更稳健的局部描述符,探索提高在描述符匹配用备用距离度量。

早期努力在无监督数据驱动学习局部描述符通常优于现代特征描述符,如SURF,ORB。然而,标记训练数据的更大可用性和提高了计算资源最近扭转了这种趋势。导致了新一代学习描述符和比较度量。这些方法通常使用已知地面真实值匹配的大型数据库区别的训练非线性模型,并且作为我们工作的动力。

 

同时,基于深度卷积神经网络的方法在最近一系列困难的计算机视觉问题上取到了显著进展。包括图像分类、目标检测、人体姿态估计、视频动作识别。这一系列研究强调了联合学习特征表示和分类(距离度量)的好处。这些知识在基于块的匹配没有得到充分研究。

 

此文,我们提出了统一方法,联合学习深度网络的块表示和鲁棒特征比较。我们MatchNet,每个块都通过卷积神经网络生成固定维度表示与SIFT相似。但是不像SIFT,两个描述符在特征空间比较用欧几里得距离。Matchnet,表示比较用距离度量,实现为一组全连接层。

我们贡献:

1用深度卷积网络基于块的匹配最新系统,显著提高了先前的结果

2改进了先前技术水平的性能使用较小描述符

3使用标准数据集进行了一系列实验,研究系统不同部分的相对贡献,表明了matchnet提高了手工制作和学习描述符添加比较函数。

4提供了用我们自己大型块集合训练的matchnet公共发布

 

2最近工作

许多最近工作考虑提高块匹配流程检测器—描述符—相似性的一些组件。这里我们讨论了学习描述符和相似性的最近工作,按模板和使用的非线性类型组织。

特征学习方法:把块强度映射的过程非线性编码到描述符中。他们的目标是学习描述符,相对于所选距离度量的相似性和地面真实值相匹配。

 

度量学习方法学习描述符之间的相似形函数,近似地面真实值概念的块应该相似,实现提高简单相似性函数的结果,大部分欧几里得距离。

 

语义散列或者嵌入式学习方法学习非线性映射来生成低维度表示,相似性在一些易于计算的距离度量和语义相似性相关。

 

我们的网络结构和最近立体匹配的与打印相似,明显不同的是我们使用池化层从块来学习紧密表示。Matchnet,宽基线专为视点不变匹配而设计,这是与立体匹配中局部匹配明显不同的问题。比如,宽基线匹配,来自关键点描述符的尺度估计也许不正确。池化层增加了对这种变化稳健网络的鲁棒性。Matchnet有几处不同的结构差异,一个增加的卷积层,两个全连接层,滤波支持和层复杂性的各种差异。

 

3网络结构

 

(填充卷积层和池化层,因此输出高度和宽度是输入除以步长)

 

 

Matchnet是一个深度网络结构,联合学习特征网络把块映射到特征空间,度量网络映射特征对到相似性。

(双塔提取特征+度量网络比较特征  与传统方法不同,此文度量方式并非欧氏距离而是学出来的。怎么体现学出来的呢——先从两张图像中提patch,将两种patch分别采样,输给两个提取特征的网络,然后将pool4 的输出降维(通过Bottleneck layer),将“双塔”的输出串联起来,输入到 fc 层,两层fc之后,输入给softmax,此时输出 0 或者 1,分别代表匹配或者不匹配,然后将此结果输出到 交叉熵计算loss,通过这样的方式,完成整个网络的训练,只是此处,提取特征的网络层 和 度量网络 是单独训练的,“双塔”的参数也是共享的。)

特征网络:特征网络受AlexNet影响,可是实现好的目标识别表现。我们使用更少的参数没有用局部响应规范化和Dropout。我们用ReLU作为卷积层的非线性。(主要用于提取输入patch的特征,主要根据AlexNet改变而来)(输入64x64块,输出B全连接层)

 

度量网络:我们的模型,特征的相似性用三个全连接层和ReLU非线性。FC3也用SoftMax。网络收入是特征对的串联。FC3的两个单元输出【0,1】两个值。(二分类)(输出得分)(输入全连接层B  Siamese 连接双塔)

 

绑定参数的双塔结构:基于块的匹配任务通常假设计算相似性前块经过相同特征编码。因此我们只需要一个特征网络。训练期间,这可以采用两个特征网络来实现,连接到比较网络,双塔共享相同参数。任何塔的更新将用相同的参数。

这种方法类似siamese结构,也使用双塔结构,但是有精心设计的损失函数,而不是度量网络。立体匹配学习网络的最近的预打印也使用双塔加全连接比较网络方法。相反,MatchNet包括池化层来解决尺度改变,目前没有应用到立体重建问题中,相比他有更多的卷积层。

其他设置,相似性定义块的两个显著不同的区域,matchnet框架可以推广位具有两个塔,可以共享更少的层或者塔有不同的结构。(双塔输出连接成度量网络输入。)

 

瓶颈层:瓶颈层可以用来减少特征表示的维度,控制网络过拟合。他是一个全连接层,大小B,4096(8x8x64)个节点,Pool4的输出和最终特征网络输出之间。我们评估了B如何影响网络性能并绘制了图。(B(64,128,256,512) F(,128,256,512,1024))

 

预处理层:输入灰度块的每个像素对其强度进行了归一化x【0,255】到(x-128)/160。

 

训练和预测:特征和度量网络联合训练,用介绍的双塔结构在有监督设置中。最小化交叉熵误差。

训练集n个块对使用随机梯度下降SGD,,批量代大小32。Yi是输入对xi的0/1标签。1表示匹配。Yi和1-yi是softmax激活根据FC3两个节点的值计算,v0(xi)和vi(xi)如下,

Yi当做概率估计。

我们用不同的学习率和动量值进行了试验,发现使用普通SGD0.01的学习率有更高的验证精确度相比于使用更大的学习率或者动量,即使后者设置中收敛的更快。根据网络结构,培训整个网络需要18小时到一周,用学习率计划可以显著加快训练。

 

4.1 训练采样

训练采样非常重要,匹配和不匹配对非常不平衡,我们使用采样器生成相同数量的正和负在最每个最小批量,这样网络就不会过度厌恶做出消极的决定。采样器也加强多样性防止过拟合到一个限制消极集。

特别的在我们的设置中,训练集已经被分组到匹配快,比如,UBC块数据集被平均分组大小数据集一次读取一组。对于正采样,从分组中随机选择两个,对于负采样,我们使用reservoir采样器,用R块缓冲区大小。在任何时间T,缓冲区保持R块,就行从块流一样均匀采样直到T,允许有效的生成各种不匹配的对。缓冲区代销控制内存和负变化的权衡。在我们的实验,R=128太小导致过拟合,R=16384持续有效。

比如,如果快大小32,在每个循环我们SGD输入16个正集16个负集。通过数据库读取接下来的16个组并从每个组随机选择一对获得正集,网络仍然获得良好的正面覆盖,尤其当平均组大小较小时。通过从存储先前加载的块的存储缓冲器中取样来自不同组的两对来获得16个负集。在前几次迭代中,缓冲区将为空或者仅包含匹配的块。在这种情况下,我们使用最新的正对填充批处理的插槽。

 

4.2两步预测流程

基于块匹配的常见场景是从两个图像提取块集。目标是计算N1xN2矩阵成对匹配得分,N1N2是图像中块的数量。把每个块添加的全部网络是不高效的,因为特征塔会在同一个快上多次运行。代替,我们分别使用特征塔和度量网络。我们首先获得所有块的特征编码。然后我们把块对输入度量网络获得得分。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值