Fater R-CNN 整体把握
在R-CNN中提到过,候选区域的提取和之后的目标检测其实是独立的,所以我们可以使用任意的算法如SS。Fast-RCNN改进的是目标检测部分,但是其实候选区域的提取也挺费时的,Faster R-CNN就把改进方向放在了这里。
我们已经领略到了CNN的强大,所以Faster R-CNN把提取候选框的任务也交给神经网络来做。我们把完成这一任务的神经网络叫做Region Proposal Network(RPN)。
可以看到在Faster R-CNN中候选框的提取不再是第一步。在RPN之前已经有一个CNN用于生成feature map,CNN中包括一系列卷积(Conv+Relu)和池化(Pooling)操作,卷积层的操作由RPN和Fast RCNN共享(提升速度)。在CNN最后一个卷积层后面才是RPN,RPN在feature map上得到候选区域。RPN引入了多尺度Anchor。通过Softmax对anchors属于目标(foreground)还是背景(background)进行分类判决,并使用Bounding Box Regression对anchors进行回归预测,获取Proposal的精确位置,并用于后续的目标识别与检测。简单来说和之后的目标检测一样,就是分类+回归,不同的是这里的分类只需要判断是目标还是背景,不需要知道具体的类别。
除了CNN和RPN。还有两个重要部分:
RoIPooling,综合卷积层特征feature maps和候选框proposal的信息,将propopal在输入图像中的坐标映射到最后一层feature map(conv5-3)中,对feature map中的对应区域进行池化操作,得到固定大小(7×7)输出的池化结果,并与后面的全连接层相连。池化的主要目的还是得到大小固定的向量,便于输入神经网络。原始的对候选框中图像进行大小归一化的方法是crop和warp。
可以看到两种方法都有失真。所以我们换了一种思路,没必要对图像大小归一化,只需要对它们形成的向量归一化就好了。M×N尺度,将proposal的坐标映射到M16×N16大小的conv5-3中,然后将Proposal在conv5-3的对应区域水平和竖直均分为7等份,并对每一份进行Max Pooling或Average Pooling处理,得到固定大小(7×7)输出的池化结果,实现固定长度输出(fixed-length output),如下图所示。水平和竖直方向分别是7等分就可以,不必使得水平和竖直的每一块大小都相同,最后使用最大池化或者平均池化,使得每一块不管大小,都只有一个输出,则得到了统一的7x7的大小。
Classificationand Regression: 全连接层后接两个子连接层——分类层(cls)和回归层(reg),分类层用于判断Proposal的类别,回归层则通过boundingbox regression预测Proposal的准确位置。https://blog.csdn.net/Zachary_Co/article/details/78890768
还没有仔细了解一下ss方法,现在先来看一下RPN。RPN使用一个3x3的卷积核,在feature map上滑动窗口。但是Anchor不是指这个3x3的核,而是3x3卷积核在滑动的过程中,将核中心位置映射回输入图像,生成的3种尺度(scale 边长为128,256,512的正方形),3种长宽比(aspect ratio 1:1,1:2,2:1),共9种的候选框。特征图conv5-3每个位置都对应9个anchors,如果featuremap的大小为W×H,则一共有W×H×9个anchors,滑动窗口的方式保证能够关联conv5-3的全部特征空间,最后在原图上得到多尺度多长宽比的anchors。
因为在候选框的提取RPN和目标检测Fast R-CNN中都需要进行分类classification和回归Regression,所以一共需要4个损失函数。
Reference:
1. https://www.cnblogs.com/skyfsm/p/6806246.html
2. https://blog.csdn.net/Zachary_Co/article/details/78890768
Fater R-CNN 整体把握相关推荐
- 负数比较大小_【教研活动】整体把握负数脉络 深度解读教材意图——鲤城区实验小学数学组单元整体教学系列研讨活动...
目前,单元整体教学已逐渐成为教师提升教学效率和教学质量的新手段.以模块化数学教材的主题单元为依托,对其教学准备.教学手段.教学内容.课后习题等教学资源进行整体把握,有机整合,并实施统一教学对提升教学质 ...
- Faster R CNN
Faster R CNN 3 FASTER R-CNN 我们的Faster R CNN 由两个模块组成,第一个模块是 proposes regions 的全卷积网络,第二个是使用 proposed r ...
- 小学数学教材整体把握的策略研究
小学数学教材整体把握的策略研究 (2012-11-01 13:13:03) 正在上传-重新上传取消转载▼ 标签: 杂谈 分类: 文献研究 小学数学教材整体把握的策略研究 作者:内详 摘 要:数学知 ...
- Tomcat源码分析 | 一文带你整体把握架构及组件
前言 Tomcat的前身为Catalina,而Catalina又是一个轻量级的Servlet容器.在美国,catalina是一个很美的小岛.所以Tomcat作者的寓意可能是想把Tomcat设计成一个优 ...
- Fast R-CNN整体把握
RCNN很好地解决了目标检测分类和定位的问题.但是缺点是速度太慢. 原因1:2k个候选区域都要经过变形成统一的正方形才能依次输入CNN进行特征提取.候选区域可能是互相包含的,这就导致原图同一个特征的重 ...
- 一、(1):开题后的内容整体把握--多目标检测综述
学习目标: 1.多目标检测算法模型 2.主流的用于多目标检测的卷积神经网络框架 3.目标检测算法(one-stage.two-stage) 学习内容: 1. 目标检测算法模型有哪些 目标检测算法模型有 ...
- 快麦erp系统设计开发经验——整体把握
介绍产品时面试官会考察应聘者的沟通能力和思考能力,我们大部分情况都是做产品的一个功能或一个模块,但是即使是这样,自己有没有把整个系统框架或产品搞清楚,并能介绍清楚. 为什么做这个系统?这个系统的价值是 ...
- SEO,搜索引擎优化原理方法等整体把握
SEO 搜索算法: 全文文字 title 标签,title里面的文字 link 链接 link 链接里的文字 站点信任度 最佳实践: 一.设置title 准确的描述当前网页的内容 提高站点内title ...
- 深度学习:卷积神经网络CNN入门
作者:机器之心 链接:https://www.zhihu.com/question/52668301/answer/131573702 来源:知乎 著作权归作者所有.商业转载请联系作者获得授权,非商业 ...
最新文章
- FreeMarker学习2
- 阿里云年会人机大战-技术大揭秘
- HTML里Dom onload和jQuery document ready这两个事件的区别
- #10 Linux硬盘管理
- Bootstrap 模态框(Modal)
- 拷贝构造函数和赋值构造函数的区别
- arduino+16路舵机驱动板连接测试
- Linux中如何设置静态IP和动态ip设定
- 用python做归结演绎推理_python基础归结
- 表数据查询结果的处理
- on duplicate mysql_mysql 避免重复写入数据的三种方式 和insert ...on duplicate updt... 死锁...
- 合同生效需要哪些要件
- 自回归滞后模型进行多变量时间序列预测
- 计算机毕业设计-基于ssm的问卷调查管理系统
- python解决物理问题_python递归解物理题
- 全球机场数据获取(基本信息与影像地图)
- 信息论基础(包含最大熵模型)
- linux进程的高级管理,sched_yield()函数 高级进程管理
- 程序员优秀学习资料整理(不断更新中)
- 2013计算机应用基础试题及答案,2013年计算机应用基础试题及答案.doc