【CV论文阅读】:Rich feature hierarchies for accurate object detection and semantic segmentation
R-CNN总结
不总结就没有积累
R-CNN的全称是 Regions with CNN features。它的主要基础是经典的AlexNet,使用AlexNet来提取每个region特征,而不再是传统的SIFT、SURF的特征。同时,还利用了AlexNet本来的功能:分类,这时所得的分类结果相当于预分类。最后,由于每个Region是有边界的,使用SVM对其进行分类得到一个score,定位每个物体的bounding box。
预处理:
先看一看AlexNet的网络结构

可以看到,它的输入图像是一个224*224*3的3通道的图像,包含有五层的卷积层,两层的全连接层,最后输出是softmax层。
R-CNN开始对图片进行提取region,称为Region proposal,并且使用的是selective search。对每张region图片warp,可以认为是调整图片的大小,但论文上提到的图片的大小是227*227,与AlexNet有一点区别。在图片warp之前,会先扩张bounding box的大小为p=16个像素。我猜这是为了消除图像的边缘效应。
训练:
这里会先做pre-training。Pre-training的好处是可以加快训练的速度,参数可以直接从其他AlexNet迁移过来,也可以重新训练,AlexNet的类别数是1000的。从图中的结构看出,最后输出的特征向量有4096维。
AlexNet的参数训练完之后,就更改它的类别数(论文使用21维,包括20维的类别,和一维的背景)。这时使用有监督训练微调参数(fine tuning),这个fine tuning我认为是由于初始的学习率较小吧,是0.001。有监督训练会涉及到类别的问题(因为这里网络最后的结果还是分类),于是,当region proposal和人工标注的ground truth 的IOU(即交集/并集)大于等于0.5时,把相应的region标记为正的,即有类别的,否则标记为负样例即background。训练的方法使用随机梯度下降的方式,与AlexNet类似,可以参考文献《ImageNet Classification with Deep Convolutional Neural Networks》。
训练的一个batch的大小为128,其中包括38个正样例,和90个负样例。(batch代表批,训练一批又叫1 iteration,所有的批训练了一次成为epoch)。
得到region即bounding box的类别之后,使用SVM训练一个二分类的分类器。算法为每一个类别都训练一个SVM分类器,注意,SVM训练的数据是经过R-CNN提取特征的4096维特征向量。此处SVM标记为负样例的阈值为IOU小于0.3,而正样例直接取ground truth box的region。训练的过程如下图:

测试:
测试的过程相对简单,对每一张图片进行region proposal之后,一般是2000个region proposal,使用R-CNN提取每个region proposal的4096维特征向量。使用SVM分类器进行分类,对得到的每个bounding box(region proposal本身是有边界的)都有一个score,在排序前先把那些IOU低于某个阈值的bounding box去掉。然后再使用非极大值抑制的方法选出最好的bounding box,从而实现定位。
论文中还做了一个对比实验,就是如果只提取特征用于分类,对于最后一个pooling层和两个全连接层fc6、fc7,当没有fine-tuning时,发现三者的分类精度其实差不多,但是如果有fine-tuning时,加入全连接层所提取的特征所得的精度会高很多。
减少定位错误:
这里定位错误使用了一种方法叫做bounding box regression,而且使用的特征就是pooling层提取的特征向量(这里是为什么呢?)。
关于bounding box regression的内容来自
http://blog.csdn.net/u011534057/article/details/51235964,这篇文章里说的很好。






【CV论文阅读】:Rich feature hierarchies for accurate object detection and semantic segmentation的更多相关文章
- 论文笔记:Rich feature hierarchies for accurate object detection and semantic segmentation
在上计算机视觉这门课的时候,老师曾经留过一个作业:识别一张 A4 纸上的手写数字.按照传统的做法,这种手写体或者验证码识别的项目,都是按照定位+分割+识别的套路.但凡上网搜一下,就能找到一堆识别的教程 ...
- 深度学习论文翻译解析(八):Rich feature hierarchies for accurate object detection and semantic segmentation
论文标题:Rich feature hierarchies for accurate object detection and semantic segmentation 标题翻译:丰富的特征层次结构 ...
- 2 - Rich feature hierarchies for accurate object detection and semantic segmentation(阅读翻译)
Rich feature hierarchies for accurate object detection and semantic segmentation Ross Girshick Jeff ...
- 目标检测--Rich feature hierarchies for accurate object detection and semantic segmentation(CVPR 2014)
Rich feature hierarchies for accurate object detection and semantic segmentation 作者: Ross Girshick J ...
- 目标检测系列 --- RCNN: Rich feature hierarchies for accurate object detection and semantic segmentation Tech report
目标检测系列 --- RCNN: Rich feature hierarchies for accurate object detection and semantic segmentation Te ...
- 论文阅读笔记二十四:Rich feature hierarchies for accurate object detection and semantic segmentation Tech report(R-CNN CVPR2014)
论文源址:http://www.cs.berkeley.edu/~rbg/#girshick2014rcnn 摘要 在PASCAL VOC数据集上,最好的方法的思路是将低级信息与较高层次的上下文信息进 ...
- 论文笔记(一)---翻译 Rich feature hierarchies for accurate object detection and semantic segmentation
论文网址: https://arxiv.org/abs/1311.2524 RCNN利用深度学习进行目标检测. 摘要 可以将ImageNet上的进全图像分类而训练好的大型卷积神经网络用到PASCAL的 ...
- R-CNN(Rich feature hierarchies for accurate object detection and semantic segmentation)论文理解
论文地址:https://arxiv.org/pdf/1311.2524.pdf 翻译请移步: https://www.cnblogs.com/xiaotongtt/p/6691103.html ht ...
- 目标检测论文解读1——Rich feature hierarchies for accurate object detection and semantic segmentation
背景 在2012 Imagenet LSVRC比赛中,Alexnet以15.3%的top-5 错误率轻松拔得头筹(第二名top-5错误率为26.2%).由此,ConvNet的潜力受到广泛认可,一炮而红 ...
随机推荐
- 日期时间选择器插件flatpickr
前言:在网页上需要输入时间的时候,我们可以用HTML5的inputl中的date类型.但是如下入所示,有些浏览器不支持.flatpickr这个小插件可以解决这个问题. 1.flatpickr日期时间选 ...
- NodeJs学习记录(一)初步学习,杂乱备忘
2016/12/26 星期一 1.在win7下安装了NodeJs 1)进入官网 https://nodejs.org/en/download/,下载对应的安装包,我目前下载的是node-v6.2.0- ...
- [ USACO 2010 FEB ] Slowing Down
\(\\\) \(Description\) 给出一棵 \(N\) 个点的树和 \(N\) 头牛,每头牛都要去往一个节点,且每头牛去往的点一定互不相同. 现在按顺序让每一头牛去往自己要去的节点,定义一 ...
- Android requestWindowFeature(Window.FEATURE_NO_TITLE)无效解决方法
今天在<第一行代码>上学习做自定义标题栏,需要将系统自带的标题栏隐藏掉,使用自定义的标题栏,结果发现,requestWindowFeature(Window.FEATURE_NO_TITL ...
- Fiddler—重复发送一个请求的设置
https://jingyan.baidu.com/article/b2c186c829a85dc46ff6ff60.html 选中一个request——>Reissue Sequentaill ...
- HDU_1520_Anniversary party_树型dp
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1520 Anniversary party Time Limit: 2000/1000 MS (Java ...
- Jmeter的面板介绍
一.jmeter面板介绍,这里是5.1.1版本 1.jmeter面板大致分为菜单区,图标区,目录树以及详细配置区域. 2.大多数人用着英文的面板不太舒服,可以在options里切换jmeter的语言 ...
- python实现二叉树的遍历以及基本操作
主要内容: 二叉树遍历(先序.中序.后序.宽度优先遍历)的迭代实现和递归实现: 二叉树的深度,二叉树到叶子节点的所有路径: 首先,先定义二叉树类(python3),代码如下: class TreeNo ...
- 洛谷——P3018 [USACO11MAR]树装饰Tree Decoration
P3018 [USACO11MAR]树装饰Tree Decoration 比较水的一道树上模拟水题,更新每个点的价值为以这个点为根的子树中的价值最小值,同时更新以每个节点为根的$sum$值,即以这个节 ...
- Python使用Flask框架,结合Highchart,搭配数据功能模块,加载 HTML 表格数据
参考链接:https://www.highcharts.com.cn/docs/data-modules 1.javascript代码 var chart = Highcharts.chart('co ...