前几个CNN检测的框架要求网络的图像输入为固定长宽,而SPP-Net在CNN结构中添加了一个实现图像金字塔功能的卷积层SPP层,用于在网络中实现多尺度卷积,由此对应多尺度输入,以此应对图像的缩放变换和仿射变换。

原文链接:Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition

原文链接: http://zhangliliang.com/2014/09/13/paper-note-sppnet/

作者主页:http://research.microsoft.com/en-us/um/people/kahe/eccv14sppnet/index.html


一、文章的主要思想

考虑到传统的CNN构架的输入图像的尺寸都是固定的(例如:256*256),这种人工改变输入图像的尺寸破坏了输入图像的尺度和长宽比例。作者认为卷积层的输入的尺寸可以是任意,全连接层的输入是固定不变。针对这个问题,作者提出了spatial pyramid pooling(SPP-net)结构,在目标检测方面,比R-CNN快30-170倍。

二、spatial pyramid pooling(SPP-net)的优势

1、针对不同尺寸的输入可以得到相同维度的输出,而siding window pooling 做不到;

2、SPP使用multi-level spatial bins, 而siding window pooling采用的单一的窗口,multi-level对目标变形非常鲁棒;

3、由于输入尺寸的可变性,SPP可以提取不同尺度的特征。

这样就可以省去对输入图像进行标准化的麻烦,可以节省大量人力。

三、Deep Networks with Spatial Pyramid Pooling

      特征提取的过程其实很简单,就是将SPP放在卷积层的最后一层,pooling层以前,将相当于用SPP代替最后一层pooling。假设最后一层卷积层有256个maps,每个maps的尺寸为a*a,n*n个bins。那么采用窗口win=ceil(a/n)和步长str=floor(a/n)的max-pooling。最后将所有的特征级联起来作为全连接层的输入。这样就保证了无论输入图像的尺寸,输入全连接层的输入都有同样的大小。示意图如下:

四、实验结果

从这个结果来看,确实有不少的提升。在ILSVRC比赛获得了第二名?

五、论文总结

本论文的思想主要还是基于SPM的思想,将CNN和SPM进行了结合,值得借鉴。并且提到了再训练模型的时候,采用不同的尺寸输入交替训练,这种思想还是首次提到。

增加一层神经元消畸变和尺度变换.

CNN结构:SPP-Net为CNNs添加空间尺度卷积-神经元层的更多相关文章

  1. CNN结构:用于检测的CNN结构进化-分离式方法

    前言: 原文链接:基于CNN的目标检测发展过程       文章有大量修改,如有不适,请移步原文. 参考文章:图像的全局特征--用于目标检测 目标的检测和定位中一个很困难的问题是,如何从数以万计的候选 ...

  2. CNN结构演变总结(二)轻量化模型

    CNN结构演变总结(一)经典模型 导言: 上一篇介绍了经典模型中的结构演变,介绍了设计原理,作用,效果等.在本文,将对轻量化模型进行总结分析. 轻量化模型主要围绕减少计算量,减少参数,降低实际运行时间 ...

  3. CNN结构

    神经网络 卷积神经网络依旧是层级网络,只是层的功能和形式做了变化,可以说是传统神经网络的一个改进.多了许多传统神经网络没有的层次. 卷积神经网络的层级结构 数据输入层/Input Layer 卷积计算 ...

  4. CNN结构:图片风格分类效果已成(StyleAI)

    CNN结构:图片风格分类效果已成.可以在色彩空间对图片风格进行分类,并进行目标分类. StyleAI构架:FasterRCnn + RandomTrees 为何不使用MaskRCNN? MaskRCN ...

  5. AI:IPPR的数学表示-CNN结构进化(Alex、ZF、Inception、Res、InceptionRes)

    前言: 文章:CNN的结构分析-------:  文章:历年ImageNet冠军模型网络结构解析-------: 文章:GoogleLeNet系列解读-------: 文章:DNN结构演进Histor ...

  6. CNN结构演变总结(一)经典模型

    导言:    自2012年AlexNet在ImageNet比赛上获得冠军,卷积神经网络逐渐取代传统算法成为了处理计算机视觉任务的核心.    在这几年,研究人员从提升特征提取能力,改进回传梯度更新效果 ...

  7. CNN结构演变总结(三)设计原则

    CNN结构演变总结(一)经典模型 CNN结构演变总结(二)轻量化模型 前言: 前两篇对一些经典模型和轻量化模型关于结构设计方面的一些创新进行了总结,在本文将对前面的一些结构设计的原则,作用进行总结. ...

  8. 改善用户体验之wordpress添加图片弹出层效果 (插件 FancyBox)

    下面说说在改善用户体验之wordpress添加图片弹出层效果.效果图如下:   像这篇文章如何在百度搜索结果中显示网站站点logo? 文章内有添加图片,没加插件之前用户点击图片时,是直接_black打 ...

  9. CNN压缩:为反向传播添加mask(caffe代码修改)

    神经网络压缩的研究近三年十分热门,笔者查阅到相关的两篇博客,博主们非常奉献的提供了源代码,但是发发现在使用gpu训练添加mask的网络上,稍微有些不顺,特此再进行详细说明. 此文是在 基于Caffe的 ...

随机推荐

  1. 曾经遇过的sql问题

    曾经遇过的sql问题 问题一: 语句1: select SUM(level) from Comment 语句2: ELSE SUM(level) END as totalLevel from Comm ...

  2. Wizard's Tour

    F. Wizard's Tour time limit per test 2 seconds memory limit per test 256 megabytes input standard in ...

  3. (39.3) Spring Boot Shiro权限管理【从零开始学Spring Boot】

    在学习此小节之前您可能还需要学习: (39.1) Spring Boot Shiro权限管理[从零开始学Spring Boot] http://412887952-qq-com.iteye.com/b ...

  4. [NOIP2016day2T1] 組合數問題(problem)

    题目描述 组合数C(n,m)表示的是从n个物品中选出m个物品的方案数.举个例子,从(1,2,3) 三个物品中选择两个物品可以有(1,2),(1,3),(2,3)这三种选择方法.根据组合数的定 义,我们 ...

  5. static_cast、dynamic_cast reinterpret_cast

    关于强制类型转换的问题,很多书都讨论过,写的最详细的是C++ 之父的<C++ 的设计和演化>.最好的解决方法就是不要使用C风格的强制类型转换,而是使用标准C++的类型转换符:static_ ...

  6. 反射调用android系统级API函数

    try { Class<?> mClass = Class.forName("com.android.server.wifi.WifiSettingsStore"); ...

  7. ZendFramework2学习笔记 表单过滤、表单验证

    ZF2有非常多内建的Filter和Validator组件,能够方便地对表单数据进行处理. Filter的作用是过滤表单数据.比如,去除一些空格,替换一些敏感词等. Validator的作用是检验表单数 ...

  8. QueryString 地址栏参数

    MXS&Vincene  ─╄OvЁ  &0000002 ─╄OvЁ  MXS&Vincene MXS&Vincene  ─╄OvЁ:今天很残酷,明天更残酷,后天很美好 ...

  9. mysql高可用架构方案之中的一个(keepalived+主主双活)

    Mysql双主双活+keepalived实现高可用           文件夹 1.前言... 4 2.方案... 4 2.1.环境及软件... 4 2.2.IP规划... 4 2.3.架构图... ...

  10. Codeforces Round #281 (Div. 2) D. Vasya and Chess 博弈

    D. Vasya and Chess   Vasya decided to learn to play chess. Classic chess doesn't seem interesting to ...