Geo-localization论文阅读list2

Geo-localization论文阅读list2

1. NetVLAD: CNN architecture for weakly supervised place recognition

1.1 Thinkings

 NetVLAD主要的contributions在两点:

  • 设计了NetVLAD这个pluggable to any CNN的architecture。
  • 设计了一种仅仅利用图像GPS坐标这种label的newly weakly supervised ranking loss

1.2 Principle Analysis

 鉴于本篇论文是一个经典的论文,所以我将论文的详细原理介绍和Thinkings都写到了NetVLAD原理详解和推导这篇单独的博客。

2. Learned Contextual Feature Reweighting for Image Geo-Localization

2.1 Thinkings

 这篇论文提出了一种基于图像上下文学习权重的方式CRN(Contextual Reweighting Network),让网络可以focus on那些对geo-localization有积极贡献的区域。个人感觉就是加入了spatial attention机制。总结下来论文的contributions主要在以下3点:

  • 提出了一个基于图像上下文学习空间权重的end-to-end全卷积网络CRN。
  • 作者整个训练过程只会利用到GPS-tags,而空间权重是作为整个网络学习过程中的byproduct产生的。即训练过程中,空间权重的产生是无监督的。
  • 提出了一个训练的pipeline,仅仅利用图像的geo-tags去自动生成训练集,并且还在其中开发了一个高效且适合geo-localization的hard negative mining。

2.2 Principle Analysis

在这里插入图片描述
 如上图所示,论文的整个网络是基于NetVLAD网络进行改进的,相当于给VLAD soft assignment又乘上了一个空间上面权重。如下公式(2)所示,其中W就是维度为 H × W × 1 H \times W \times 1 H×W×1的权重mask,论文写成 W × H × 1 W \times H \times 1 W×H×1也是一样的,不过实际代码矩阵遍历操作还是前者的写法比较常见:
V ( j , k ) = ∑ i = 1 N a ˉ k ( x i ) ( x i ( j ) − c k ( j ) ) (1) V(j, k) = \sum^{N}_{i=1}\bar{a}_k (x_i)(x_i(j) - c_k(j)) \tag{1} V(j,k)=i=1Naˉk(xi)(xi(j)ck(j))(1)
For k∈K, i ∈ H, j∈ W (不清楚K代表什么就可以看看我前一篇NetVLAD论文总结):
a ˉ k ( i , j ) = W ( i , j ) ∗ a k ( i , j ) (2) \bar{a}_k(i, j) = W(i, j) * a_k(i, j) \tag{2} aˉk(i,j)=W(i,j)ak(i,j)(2)

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

cvpr2015

3.1 Thinkings

 从标题上面就可以看出来本篇论文主要有两个关键点,UnifyingPatch-Based Matching
 先来说Unifying,一般这种匹配问题的pipeline主要由提取图片的representation和对比两张图像的representations这两部分构成。一般基于深度学习获取representations的方式在比较的时候会直接使用欧式距离进行比较,而本篇论文将提取对比这两个过程整合起来,在CNN之后又加入了全连接网络,最后以softmax输出2维向量,第一个元素代表这两个图像匹配的概率,第二个元素代表不匹配的概率(加起来和为1)。
 Patch-Based是作者强调整个网络达到sota是在patch matching datasets上面做的实验,而整个网络学习的也不是image representations而是patch representations。
 总体来说作者的contributions主要为以下四点:

  • 提出了一个sota的patch-based matching网络结构。
  • 用一个bottleneck layer减少representation的维度,还能达到sota的效果。‘
  • 一系列的实验评估这个系统各个部分的贡献,类似于消融实验。
  • 提供了一个public release of MatchNet trained using our own large collection of patches。

3.2 Principle Analyse

在这里插入图片描述
 如上图所示,整个MatchNet就包括Feature Network和Metric Network两个部分。Feature Network就相当于一个Siamese Network,用来提取两个patch的representations。Metric Network就是用全连接网络去学习Metric,而不是直接使用欧式距离,最后以softmax输出2维向量,第一个元素代表这两个图像匹配的概率,第二个元素代表不匹配的概率(加起来和为1)。
 Feature Network中的bottleneck layer也是一个全连接层,它的主要目的就是给representation降维。作者通过实验证明了即使是维度下降了很多,也能达到sota。
 inference的流程是输入两个patch,通过Feature Network提取两个patch的representation,然后把两个representation concatenate起来输入Metric Network。
在这里插入图片描述
 如上图所示,这里是作者开发的一个efficient的训练pipeline。由于在训练的时候会有patch重复地被提取representation(因为两两结合需要 n 1 × n 2 n_1 \times n_2 n1×n2个pairs),所以作者把train的pipeline变成了一个two-stage的过程。先用Feature Network提取全部patch representation,然后把这些向量两两组合成Feature pairs,输入Metric Network后,便可以节省很多重复representation提取的成本。

posted @ 2020-11-19 18:58  JHadoop  阅读(154)  评论(0编辑  收藏  举报