空间金字塔池化

1.提出的原因

下面这里是我们在网上反复可以看见的话(所以关键是理解这些内容):
提出的原因:
在SPP提出之前,传统的网络具有它有两大缺点:
1、通常需要输入固定大小的图片来进行训练和测试。对于大小不一的图片,需要经过裁剪,或者缩放等一系列操作,将其变为统一的尺寸。但是这样往往会降低识别检测的精度。**
2、计算量较大,严重影响速度R-CNN预设1000~2000个候选区域 (采用Selective Search 方法),并分别在每个候选区域进行特征提取。这个想想就害怕,因为图片上有些区域会被重复采样多次。

1.1两点不足是和什么比较?

这里我们要首先理解传统网络是什么意思?他是干什么的?
之前的模型是指R-CNN,这个模型大约就是用于从图片中提取出那些是一个特定的物体的区域,整个过程是:
1)首先,使用算法来找出各种候选的区域
2)之后,我们使用卷积网络来对这些区域进行特征提取
3)完成特征提取之后,我们要将其转化为全连接层进行处理(当时还没有FCN这种好东西)
4)最后,经过全连接层才得出我们的结果。
R-CNN就是后面的2)3)4)

1.2理解第一个不足

在R-CNN模型中最关键的一个问题是,在模型当中我们是对前面得出来的候选区域进行特征提取,这些候选区域大小可是并不一样啊。所以被迫全部的训练上一次。
那么这个原因里面说的其实和R-CNN没有太大联系,说的是秦始皇时代图像识别模型定义好之后,只能对某一种确定大小的内容进行识别,这个就要求我们更改图片,更改图片的话:首先,会降低精度;其次,这个更改的过程凭空增加了很多的工作量。所以,也期待着有一种可以处理不同大小图片的模型出现。

1.3理解第二个不足

因为R-CNN是对候选区域进行验证,每个大小又不一样,所以我们被迫全部重新训练一次,所以训练次数就会非常爆炸,每次forward过程中就相当于进行了1000-2000次forward。
当然这里的1000-2000是R-CNN自己规定的,但是你想精度差不多,这个数据也不能太小

2.金字塔池化

这个金字塔池化,一定可以找到下面的这个图片


我们前面说过这个模型提出非常早,在2014年,那时候还没有FCN这个东西,所以最后使用的是一个全连接,我们注意全连接这个东西最后必须是一个确定长度的输入,不可以是可以变化的,所以图片大小改变的话我们必须改变我们的模型。
这就要求我们必须是确定一种转换方式将不同大小的图片,转化成相同大小的输出,所以就有了金字塔法。这里论文当中提出的方法是,按照比例分别将得到的不同大小的特征图,分成相同个数的部分。
例如将一个图片分成四个部分,或者将一个图片分为两个部分,这就可以获得相同的长度的特征输出。

3.给我们的启发

1.再次使用当时的模型的可能性不大,但是我们可以使用用比例划分块,产生相同个数的特征。

空间金字塔池化SPP相关推荐

  1. 深入理解空间金字塔池化(SPP,ASPP)

    读Lawin Transformer这篇论文,里面有介绍到在Transformer结构中使用ASPP,有很多细节没有理解,于是打算从CNN里的SPP开始学习. SPP[Space Pyramid Po ...

  2. [Neck] 空间金字塔池化【池化策略】(Space Pyramid Pool, SPP)模块和路径聚合网络【增强】(Path Aggregation Network, PANet)的结构

    文章目录 背景 yolo v4 中的空间金字塔池化(Space Pyramid Pool, SPP)模块和路径聚合网络(Path Aggregation Network, PANet)的结构 SPP ...

  3. 空间金字塔池化(Spatial Pyramid Pooling, SPP)原理和代码实现(Pytorch)

    想直接看公式的可跳至第三节 3.公式修正 一.为什么需要SPP 首先需要知道为什么会需要SPP. 我们都知道卷积神经网络(CNN)由卷积层和全连接层组成,其中卷积层对于输入数据的大小并没有要求,唯一对 ...

  4. CNN应用之SPP(基于空间金字塔池化的卷积神经网络物体检测)-ECCV 2014-未完待续

    基于空间金字塔池化的卷积神经网络物体检测 原文地址:http://blog.csdn.net/hjimce/article/details/50187655 作者:hjimce 一.相关理论 本篇博文 ...

  5. Spatial Pyramid Pooling(空间金字塔池化)-变尺度CNN训练

    1. 需求创造好的产品,产品拓宽原始的需求 当前的深度神经网络一般都需要固定的输入图像尺寸(如224*224). 这种需求很明显是人为的,潜在性的弊端会降低识别精度(为了使图像尺寸相同,一定会涉及到图 ...

  6. 用于视觉识别的深度卷积网络空间金字塔池化方法

    摘要 现有的深卷积神经网络(CNN)需要一个固定大小的神经网络(例如224x224)的输入图像.这种要求是"人为的",可能会降低对任意大小/尺度的图像或子图像的识别精度.在这项工作 ...

  7. 基于空间金字塔池化的卷积神经网络物体检测

    基于空间金字塔池化的卷积神经网络物体检测 原文地址:http://blog.csdn.net/hjimce/article/details/50187655 作者:hjimce 一.相关理论 本篇博文 ...

  8. 深度学习(十九)基于空间金字塔池化的卷积神经网络物体检测-ECCV 2014

    基于空间金字塔池化的卷积神经网络物体检测 原文地址:http://blog.csdn.net/hjimce/article/details/50187655 作者:hjimce 一.相关理论 本篇博文 ...

  9. 深度学习(十九)基于空间金字塔池化的卷积神经网络物体检测

    基于空间金字塔池化的卷积神经网络物体检测 原文地址:http://blog.csdn.net/hjimce/article/details/50187655 作者:hjimce 一.相关理论 本篇博文 ...

最新文章

  1. LeetCode 202. Happy Number--Python解法--数学题
  2. (管道| / 重定向 / xargs)/find 与xargs结合使用/vi,grep,sed,awk(支持正则表达式的工具程序)
  3. [资源分享] 吴恩达最新《机器学习训练秘籍》中文版可以免费下载了
  4. 离散数学求交并差java代码_离散数学交并补运算、差运算、异或运算的实现--biaobiao88...
  5. 分享关于网站跳出率需要控制在多少
  6. 微信刷票怎么查实_怎么检查“微信公众平台投票”是否有刷票?
  7. UID/DID/SID总结
  8. android 下的 WATCHDOG(2)
  9. Linux系统账号安全和登录控制(安全很重要)
  10. 51nod 1677——treecnt
  11. Project的分组依据
  12. jQuery实现悬浮窗口
  13. Tensorflow2.0之用循环神经网络生成周杰伦歌词
  14. 【计算机视觉】关于用opencv 设置摄像头读分辨率问题的若干说明
  15. Mysql Oracle Sql server 三种数据库默认端口
  16. WebSocket之仿QQWeb即时聊天系统(下)
  17. jq ajax xhrfields,为什么jQuery的.ajax()方法不发送会话cookie?
  18. python实践3——利用爬虫爬取“广州各大行业微信群二维码信息”及存入数据到MySQL数据库
  19. 非标机械设计Excel表格伺服电机选型计算公式软件机器设备自动化
  20. 6.tendermint默克尔树

热门文章

  1. CentOS 7 为firewalld添加开放端口及相关资料
  2. Jenkins创建Maven项目及SSH部署
  3. shell脚本:批量检查并更改MySQL数据库表的存储引擎工作中总结
  4. android手势操作滑动效果触摸屏事件处理
  5. Jackson 框架使用教程,轻易转换JSON
  6. android,iOS,win8我的观点
  7. Raid mdadm lvm
  8. 基于Linux的socket编程模板
  9. 关于控件ID的试验(涉及MasterPage)
  10. CSP认证202012-2 期末预测之最佳阈值[C++题解]:遍历、前缀和