时隔这么久终于考完试放假了,现在终于有时间开始研究spp net的相关内容了,看了几篇网上的博客,发现看完之后还是不是很懂,于是乎下载了spp net的原始论文《Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recongnition》开始,由于中间的关键思想来自于Spatial Pyramid Matching(我把它翻译成“空间金字塔匹配”),而“空间金字塔匹配”的思想又来自于Pyramid Match Kernel(金字塔匹配核),本着反正我是图像处理初学者,多写点可以以后做论文的想法,我决定慢慢的看这几篇文章

  • Pyramid Match Kernel(金字塔匹配核)
  1. 预备知识

《The Pyramid Match Kernel:Discriminative Classification with Sets of Image Features》是提出空间金字塔的那篇文章中指明所引用的是这篇文章,在我下载了这篇文章看了前半段后,我发现我在这个方法的第一步,利用特征空间里的特征向量来构建一个多分辨率的特征直方图我都看不懂作者是如何操作的,于是乎在网上找了很久的资料,发现了一篇07年的文章《The Pyramid Match Kernel: Efficient Learning with Sets of Features》,这俩篇论文的作者是同一个人,第二篇比第一篇讲的更加的详细一些,虽然还是有些疑问,但是加上自己的脑补和网上的资料,似乎有点点能看懂了。

假设我们有个特征描述子能够使用d维的向量来描述一些点的特征,d维特征向量的空间称为F,如sift特征(使用128维的特征向量来描述一个特征点),对于一副图片,我们能检测出m个特征点,每个特征点都用一个d维的特征向量来表示,把这些向量放在一个集合X中,X={(x1,x2,x3,...xd)1,(x1,x2,x3,...xd)2,...(x1,x2,x3,...xd)m},则这个向量集x就可以表示一个物体,作为匹配的输入的一系列图片的特征集就构成了输入空间S,S={X|X={x1,x2,x3...xm}},对于不同的实例,d的大小是固定的,m的大小确实不固定的,这就是金字塔匹配核的好处之一。用D表示特征空间F中每个向量中每一列属性的范围的最大值,将特征向量的数据缩放并强制转化为整型,来保证向量间的最小距离为1

对于两个点集,局部匹配就是将数量较小的点集中的点映射到数量较大的点集中的点,例如对于两个点集X,Y,m=|X|,n=|Y|,m<=n,用数组      来表示X中点再Y中的对应点,所以匹配函数就可以记为M,相应的代价函数(也就是对应点之间的不匹配度的度量函数)记为C:

要求得最佳的对应点,就是最小化这个代价函数,得到相应的:

相应的相似度计算就可以用类似于代价函数的方式进行定义:     分母加1是为了防止分母为0。

2. 金字塔匹配算法

金字塔匹配算法就是将一个特征空间中的向量映射到一个多维的,多分辨率的直方图集合中,多维是指直方图的列数是多个的,多分辨率是指这些直方图的每一列的宽度是变化的,从第一个到最后一个逐渐变大。第一层的直方图bin足够小,特征空间中的每一个向量都能单独放到一列中,分辨率最高,后面每一层的直方图的bin是前一个直方图bin的两倍,最后一层的直方图的bin大到可以将整个特征空间中的向量都容纳进去。将两个特征点集合中的点按照直方图所表示的范围顺序放入直方图中,在第一层直方图中可能两个集合中的点都是分散在直方图的各个列中,随着直方图的bin的加宽,两个集合中的特征点逐渐开始被分到同一个bin中,这时我们就认为他们匹配了。匹配的分数不用再像以前那样计算两个点之间的距离,两个点匹配时的直方图的bin的宽度就是这个bin中所容纳点的距离的最大值。具体操作时将每一个特征集都映射到一个多分辨率的直方图中,然后对每个直方图金字塔使用权重直方图交叉的方法进行比较。

对于一个特征集X的特征提取方法记为:

这里X∈S,L=log2D+1(向上取整),

--------------------------------------------------------------华丽丽的分割线------------------------------------------------------------------------------------------------------------------------------------------

为啥突然不看空间金字塔匹配算法了呢。。。因为当我把SPP-NET的论文看完后发现,人家原作者只是从金字塔那里获得了灵感,却没有真的完全运用金字塔的那套原理来实现spp-net,也就是说,没必要去完完整整的看空间金字塔的内容就可以很好的理解SPP-NET了。

论文笔记-SPP_NET中提到的金字塔的更多相关文章

  1. 论文笔记之:Visual Tracking with Fully Convolutional Networks

    论文笔记之:Visual Tracking with Fully Convolutional Networks ICCV 2015  CUHK 本文利用 FCN 来做跟踪问题,但开篇就提到并非将其看做 ...

  2. Multimodal —— 看图说话(Image Caption)任务的论文笔记(一)评价指标和NIC模型

    看图说话(Image Caption)任务是结合CV和NLP两个领域的一种比较综合的任务,Image Caption模型的输入是一幅图像,输出是对该幅图像进行描述的一段文字.这项任务要求模型可以识别图 ...

  3. cips2016+学习笔记︱NLP中的消岐方法总结(词典、有监督、半监督)

    歧义问题方面,笔者一直比较关注利用词向量解决歧义问题: 也许你寄希望于一个词向量能捕获所有的语义信息(例如run即是动车也是名词),但是什么样的词向量都不能很好地进行凸显. 这篇论文有一些利用词向量的 ...

  4. 论文笔记:Batch Normalization

    在神经网络的训练过程中,总会遇到一个很蛋疼的问题:梯度消失/爆炸.关于这个问题的根源,我在上一篇文章的读书笔记里也稍微提了一下.原因之一在于我们的输入数据(网络中任意层的输入)分布在激活函数收敛的区域 ...

  5. 论文笔记:语音情感识别(四)语音特征之声谱图,log梅尔谱,MFCC,deltas

    一:原始信号 从音频文件中读取出来的原始语音信号通常称为raw waveform,是一个一维数组,长度是由音频长度和采样率决定,比如采样率Fs为16KHz,表示一秒钟内采样16000个点,这个时候如果 ...

  6. Deep Learning论文笔记之(一)K-means特征学习

    Deep Learning论文笔记之(一)K-means特征学习 zouxy09@qq.com http://blog.csdn.net/zouxy09          自己平时看了一些论文,但老感 ...

  7. 论文笔记:CNN经典结构1(AlexNet,ZFNet,OverFeat,VGG,GoogleNet,ResNet)

    前言 本文主要介绍2012-2015年的一些经典CNN结构,从AlexNet,ZFNet,OverFeat到VGG,GoogleNetv1-v4,ResNetv1-v2. 在论文笔记:CNN经典结构2 ...

  8. 论文笔记: Matrix Factorization Techniques For Recommender Systems

    Recommender system strategies 通过例子简单介绍了一下 collaborative filtering 以及latent model,这两个方法在之前的博客里面介绍过,不累 ...

  9. 论文笔记-IGCV3:Interleaved Low-Rank Group Convolutions for Efficient Deep Neural Networks

    论文笔记-IGCV3:Interleaved Low-Rank Group Convolutions for Efficient Deep Neural Networks 2018年07月11日 14 ...

随机推荐

  1. 获取文件名称 basename 用法

    <?phpheader('Content-type:text/html;charset=utf8'); $str = '2390230.png';$str_arr = explode('.',$ ...

  2. 制定clone的用户名

    git clone http://username:password@127.0.0.1/res/res.git指定用户名clone,有时需要切换clone 的用户名,不切换,会默认config us ...

  3. Idrac6 to manage dell server

    最近idrac6挂了,java已经升级了 1.安装firefox浏览器,只有火狐是支持idrac最好的 2.安装JDK 3.配置configure java, 4.添加security,edit si ...

  4. 正确理解WPF中的TemplatedParent

    (注:Logical Tree中文称为逻辑树,Visual Tree中文称为可视化树或者视觉树,由于名称不是很统一,文中统一用英文名称代表两个概念,况且VisualTreeHelper和Logical ...

  5. [LeetCode] Simplify Path,文件路径简化,用栈来做

    Given an absolute path for a file (Unix-style), simplify it. For example,path = "/home/", ...

  6. maven工程pom.xml报Missing artifact net.sf.jasperreports:jasperreports:jar:6.2.0

    有时maven工程的pom.xml报以下类型错误: Description Resource Path Location TypeMissing artifact net.sf.jasperrepor ...

  7. RSA host key has changed 错误

    RSA host key for mysharebook.cn has changed and you have requested strict checking.Host key verifica ...

  8. 集合类HashMap,HashTable,ConcurrentHashMap区别?

    1.HashMap 简单来说,HashMap由数组+链表组成的,数组是HashMap的主体,链表则是主要为了解决哈希冲突而存在的,如果定位到的数组位置不含链表(当前entry的next指向null), ...

  9. 大聊Python----生产消费者模型

    在并发编程中使用生产者和消费者模式能够解决绝大多数并发问题.该模式通过平衡生产线程和消费线程的工作能力来提高程序的整体处理数据的速度. 为什么要使用生产者和消费者模式? 在线程世界里,生产者就是生产数 ...

  10. js刷新页面方法 -- (转)

    1,reload 方法,该方法强迫浏览器刷新当前页面. 语法:location.reload([bForceGet])   参数: bForceGet, 可选参数, 默认为 false,从客户端缓存里 ...