Bags of Local Convolutional Features for Scalable Instance Search论文翻译

Bags of Local Convolutional Features for Scalable Instance Search论文翻译

转自https://zhuanlan.zhihu.com/p/34194359 仅供个人学习 如有侵权 请联系删除

ABSTRACT
本文使用词袋聚合的方法(BoW)对CNN的卷积特征进行编码,从而提出一种简单的信息检索方法。将卷积层的每个输出与一个视觉单词相对应,从而生成一种将图像区域和视觉单词联系联系在一起的密集表达,称之为assignment map。我们使用assignment map实现了快速空间重排、获得用于扩展查询的目标位置。我们通过将基于局部CNN特征的BoW表达用在图像检索领域,在Oxford 和 Paris数据集上获得不错的结果,证明了该方法的有效性。我们还把我们提出的BoW在更具有挑战的数据TRECVid INS上与使用求和池化的方法进行了对比,结果远胜了求和池化的方法。

1. INTRODUCTION
已经有研究证明,卷积神经网络(CNNs)可以生成具有语义信息的图像全局表达。这些基于CNN的表达[2,3,15,16,20,21]在图像检索上的性能已经超过了目前最好的结果。

尽管基于CNN的表达在检索数据集如Oxford 和 Paris上已经获得了不错的结果,但在更具有挑战的TRECVid Instance Search (INS)数据上还没有只采用CNN特征的不错的方法。当前的INS系统[11,22,23,24]仍然只是对使用词袋编码[18]的局部手工特征进行聚合,产生图像的高维稀疏表达。这种高维的稀疏表达线性可分性更强,有较少的非0值使得这些表达更容易存储和保存。

很多较为成功的图像检索系统是将在图像数据库完成的初始排序与计算量更大但准确率更高的重排机制(如几何验证)结合在一起,以此来获得较好的检索性能。

受基于CNN的表达在图像检索领域先进性的启发,我们使用从CNN卷积层获得的局部特征重新实现了BoW编码方法。本文主要内容如下:

  • 我们基于 Bag of Local Convolutional Features (BLCF)提出一种稀疏视觉表达,通过倒序实现图像的快速检索。
  • 我们介绍一种将图像的特征与视觉单词一一对应的新的图像表达方法,以对图像任一区域快速实现BoW表达的获得。
  • 我们充分利用assignment map的可扩展性,实现对重排阶段多个图像区域的局部分析,之后利用目标位置进行扩展查询。(译者注:作者未给出重排与扩展查询代码)

根据以上内容,本文完成在一些检索数据集上表现良好的图像检索系统设计。使用本文的方法在一些数据集上的排序结果如图1所示。
在这里插入图片描述
2. RELATED WORK
文献中的很多研究都提出了用于图像检索的CNN 表达。早期的一些研究[3,15]关注如何从用图像分类的数据预训练的CNN中提取的全连接特征替代传统的手工特征。之后的一些研究证明使用卷积层之后的求和[2,7]或者最大[16,20]池化之后的特征可以获得更好的结果。和之前的研究相似的是,我们也使用从预训练的CNN中提取的卷积特征。而与它们不同的是,我们使用一种稀疏的、高维的编码方法获得对局部图像特征更好的表达。

也有一些研究将图像的多个子块通过CNN,从全连接层[15,9]或者卷积层[4]获得局部特征,然后使用平均池化[15]、BoW [9]、或者 VLAD [4]的方法进行聚合。尽管上述的这些方法在检索数据集上表现不俗,但由于它们需要从很多的图像块中提取卷积特征,就导致检索时的索引和特征提取效率大大降低。相反的是,也有一些研究[10,1]将不同神经元在卷积层的所有特征图作为局部特征。这样的话,整张图像的局部特征在一次前向传播就可以获得,之后再使用VLAD进行编码。同[10,1],我们也使用卷积层的特征作为局部特征。而我们使用BoW而不是VLAD进行编码,为了利用稀疏表达实现大规模数据的快速检索。

以下的一些方法都是基于或者部分基于图像多个区域的空间搜索。Razavian等人[16]通过将空间搜索应用在不同尺寸的任意网格的窗口上,获得了不错的检索结果。尽管论文中说在一些检索数据集上可以获得很高的准确率,但由于计算量大而很难应用到大数据集及实时检索的场景中。 Tolias等人[20]介绍了一种对多个图像块进行局部分析的方法,只用在了初始查询时的最好结果。他们提出一种对整幅图像的子块进行特征池化的方法,这就可以对多个图像窗口进行评估。该方法改进了他们的基本检索结果,还获得了目标的近似位置。我们提出使用assignment map来构建任一图像块的BoW表达,就可以在重排阶段使用空间查询。而与[20]不同的是,我们使用空间重排获得的目标位置来减少背景的影响,并且根据检测到的目标位置完成扩展查询。

3. BAG OF WORDS FRAMEWORK
本文将预训练CNN卷积层在不同位置的输出作为局部特征。与[20,7]相似的是,我们没有使用原始网络中的softmax分类层和全连接层,保留了原始图像的长宽比。网络的每个卷积层都有 D 个不同的 N\times M 特征,可以视为 N\times M 个 D 维的局部表达。

我们提出使用词袋法将图像的局部特征编码成一维向量。尽管文献[5,12]提出了比BoW更好的其他方法,但词袋法可以生成存储成倒序的高维稀疏编码,这有助于实现快速检索。此外,基于BoW的表达具有更紧凑、更快计算和更易编译的特性。

词袋法需要构建一个将向量与最近邻中心对应的视觉码本。我们对局部CNN特征使用k-means对码本进行编译,之后将卷积层的CNN特征与码本中最近的视觉单词对应。如此,就生成一个尺寸为 N\times M 2维assignment map,将每个局部CNN特征与一个视觉单词进行对应。因此,assignment map形成了一个将原始图像的每个像素与视觉单词对应的密集表达。这样的话,我们就可以快速完成图像块的 BoW向量的生成。我们将在第4章详细阐述该方法的使用。

本文提出的BoW方法如图2所示。
在这里插入图片描述

如图2所示,图像被编码成了一种用于信息检索的高维稀疏表达。

4. IMAGE RETRIEVAL
本章主要从初始排序、空间重排和扩展查询这三个方面对图像检索进行了介绍。

(a) Initial search:计算查询图像的BoW向量与数据库所有图像的BoW向量的余弦相似性来实现初始排序。我们将基于倒序的稀疏矩阵与基于GPU的稀疏矩阵相乘来完成快速检索,之后根据其与查询图像的余弦相似性对图像列表进行存储。本文进行了两种查询方式:

Global search (GS):使用从卷积层提取的所有局部CNN特征的视觉单词来构建查询图像的BoW向量。
Local search (LS):查询图像的BoW向量只包含查询边框内的局部CNN特征的视觉单词。
(b) Local reranking (R ):初始查询之后,根据位置得分对排序的前T张图像进行重排。我们选择宽 w ∈ { W , W 2 , W 4 } w ∈\left\{ W,\frac{W}{2} ,\frac{W}{4}\right\} w{W,2W,4W} 和高 h ∈ { H , H 2 , H 4 } h\in \left\{ H,\frac{H}{2},\frac{H}{4} \right\} h{H,2H,4H} 组合的窗口,其中W和H分别表示assignment map的宽和高。我们使用50%的重叠在assignment map的两个方向上使用滑动窗策略。

此外,我们还使用了一个简单的滤波过程将与查询图像长宽比相差太大的窗口舍弃。设查询边界框的长宽比为 A R q = W q H q AR_{q} = \frac{W_{q}}{H_{q}} ARq=HqWq ,窗口的长宽比 A R w = W w H w AR_{w} = \frac{W_{w}}{H_{w}} ARw=HwWw 。窗口w的得分为 s c o r e w = m i n ( A R w , A R q ) m a x ( A R w , A R q ) score_{w} = \frac{min\left(AR_{w},AR_{q} \right)}{max\left(AR_{w},AR_{q} \right)} scorew=max(ARw,ARq)min(ARw,ARq) 。得分低于阈值th的窗口就被舍弃。

对于余下的窗口,我们构建BoW表达,然后计算其与查询表达的余弦相似性。余弦相似性得分最高的窗口就是目标的位置。我们还使用空间金字塔匹配的方式增强BoW的窗口表达,令 分辨率水平L = 2 ,即整个窗口和它的四个子区域。我们构建了该水平下所有子区域的BoW表达,并且使用区域分辨率水平的反比对相似得分进行加权。因此,子区域r对查询子区域的权重为 w r = 1 2 L − l r w_{r} = \frac{1}{2^{L-l_{r}}} wr=2Llr1 ,其中 l r l_{r} lr 表示区域r的分辨率水平。这样的话,就将根据区域与查询区域的余弦相似性进行排序的前T个结果进行了存储,并且得分最高的区域就是目标的大致位置。

( c) Query expansion 我们使用了基于全局和局部BoW表达的两种扩展查询方式:

Global query expansion (GQE):将排序得到的前N张图像的BoW向量与查询图像的BoW向量进行平均处理,就得到查询图像新的表达。
Local query expansion (LQE):在局部重排阶段获得的位置被用来忽略背景的影响,以及构建排序得到的前N张图像的感兴趣区域的BoW表达。将这些BoW向量与查询边界框的BoW向量进行平均处理,再进行第二次查询。
5. EXPERIMENTS
5.1 Preliminary experiments
我们在三种图像检索数据集上对本文提出的方法进行了验证:Oxford [13], Paris [14] 和 TRECVid Instance Search 2013 (INS 23k) [19]的部分图像(只有那些与至少一个查询图像相关的图像)。此外,我们还在Oxford 105k和Paris 106k数据集上进行了实验。

我们基于Caffe[6]和预训练的VGG16[17]网络来完成特征提取工作。我们从最后三个卷积层(conv5_1, conv5_2和conv5_3)提取特征,并且在Oxford 5k上进行了对比实验。我们用不同尺寸的输入图像进行了实验:1/3 和2/3 的原图。根据文献[2,7],我们对所有特征进行了 l 2 l_{2} l2 归一化、PCA白化和 l 2 l_{2} l2 归一化。其中PCA模型的编译是在测试数据上进行的。除非做出特别的说明,数据集所有图像的局部CNN特征都使用25,000个中心的视觉码本进行编译。

我们对卷积层运用双线性插值来得到分辨率更大的特征图,可以获得和更大尺寸输入图像相似的效果。我们发现这种方法在我们实验的所有层中都获得了不错的结果,其中在conv5_1层上的结果最好。受SPoC特征[2]的高斯中心优先带来效果提升的启发,我们对属于图像中心的视觉码本进行了加权处理。

5.2 Reranking and query expansion
我们使用第4章介绍的滑动窗的方法对初始查询的前100张图像进行局部重排(R)。使用阈值 th = 0.4 进行长宽比的滤波,该值是通对Oxford 5k的部分图像进行观察得到的。之后对初始重排得到的前10张图像进行扩展查询。在不同阶段得到的结果如表1所示。
在这里插入图片描述
如表1所示,局部重排仅仅用在全局BoW表达(GS)之后才会得到很大的提升。这和 Tolias等人[20]的结果相似,他们在使用整张图像的表达完成一次查询之后使用空间重排和扩展查询。他们在Oxford 5k上的mAP值为0.66,使用空间重排和扩展查询之后增加到了0.77,我们也有与之相似的结果(从0.652增加到了0.769)。但我们的实验发现在基于局部查询(LS)的排序之后使用空间重排的效果并不好。因为BoW表达已经可以对数据库中的图像进行很好的局部查询(LS),因此我们发现在LS之后使用局部重排来提高检索性能就显得多余了。然而,根据图1可以看到,局部重排确实提供了图像中目标的大致位置。据此,我们对局部特征(LQE)进行扩展查询。

结果表明,扩展查询在 Oxford 5k上可以获得很不错的结果,尽管使用LS + R + LQE的方法获得了最好的结果,但在Paris 6k数据集上使用重排和QE我们没有看到很大的改进。

5.3 Comparison with the state-of-the-art
我们将本文提出的方法与其他基于CNN卷积特征的方法在Oxford 和 Paris数据集上效果进行了比较,比较结果如表2所示。
在这里插入图片描述
如表2所示,本文提出的方法与Ng 等人[16]的结果相近。然而,它们使用的是来自VLAD的特征,这就带来很大的计算量及高维的密集表达,很难扩展到大规模的数据集上。同样我们也可以看到,Razavian 等人对数据库中所有图像使用不同尺寸的空间重排方法在Oxford 和 Paris数据集上获得了最好的结果。这种方法在处理大数据,特别是实时查询问题上花费有点大。但是我们提出的基于BoW的方法因为是高度稀疏的,所以可以使用倒序的方法完成快速索引,并且在所有测试数据集上获得不错的结果。

我们还将我们提出的局部重排和扩展查询的方法与现存的其他方法进行了比较。R-MAC [20]的作者使用空间查询的方法完成重排,并且在之后使用了扩展查询,而CroW [7]的作者只是在初始查询之后使用了扩展查询。通过本节的实验,我们提出的方法在Oxford 5k上获得了最好的结果。

5.4 Experiments on TRECVid INS
本节,我们将BLCF的方法与文献中阐述的求和池化的方法进行了比较。我们将[7]中的uCroW表达进行了完善,并且将其在TRECVid INS上的结果进行了比较。为了更好的比较,我们在我们选定的CNN层和输入尺寸(conv5_1和1/3图像尺寸)上和[7]中介绍的pool5和完整图像上都使用了求和池化。对于BoW表达,我们使用随机从INS数据中选择的3M个局部特征训练码本。这里,我们就没有对特征使用中心优先原则,是为了不降低图像中目标可能出现区域的权重。求和池化与BoW在Oxford、Paris和 TRECVid数据上比较结果如表3所示。
在这里插入图片描述
如表3所示,求和池化与BoW在Oxford和Paris数据上的结果相近。而对于TRECVid数据来说,BoW的方法远胜求和池化的方法,这表明BoW的方法用在查询不在图像中央、尺寸变化等因素影响的数据上效果更好。我们还可以发现当使用查询目标位置(LS)进行查询时,在Oxford和Paris数据上可以获得很高的结果,而在TRECVid数据上却没有得到提升。我们猜测可能是因为TRECVid上的目标比Oxford和Paris上的更小的原因,才导致性能的下降。全局搜索(GS)在TRECVid数据上的结果更好,这表明在很多情况下查询图像可以根据上下文信息顺利的检索出来。

6. CONCLUSION
我们提出一种使用词袋法将卷积层的特征编码成用于信息检索的稀疏表达的方法,这种方法在Oxford和Paris数据上可以获得与其他基于CNN的方法相近的结果,但在索引尺寸、索引花费和检索时间方面具有更大的优势,因此可扩展性更高。此外,我们还将我们提出的BoW方法用在了难度更大的TRECVid数据上,实验发现我们的方法表现性能更好。然而,我们的方法对大量的错误选择图像的敏感性比求和池化和最大池化更强,我们猜测可能是因为错误选择图像的分布与原始图像的分布不同导致的原因,因此这就需要更大的码本量来更好的表达视觉单词的多样性。

原文链接:https://arxiv.org/pdf/1604.04653.pdf

文章代码:imatge-upc/retrieval-2016-icmr

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值