RCNN论文学习
【Rich feature hierarchies for accurate object detection and semantic segmentation】
Abstract
论文的方法结合了两个关键的观察:1.可以通过hight-capacity CNN来进行bottom-up 区域提名以定位和划分对象;2.如果训练集不足,那监督预训练是个有用的方法,再经过fine-tuning,可以有很好的性能提升。R-CNN: Regions with CNN features。
整体结构:1. 输入一张图; 2.提取出2000左右的区域; 3.用一个CNN对每个区域进行特征提取; 4. 通过SVM来对每个区域分类
建立图像分类和识别的桥梁:用一个深网络来记性图像定位,只用少量的检测数据来训练high-capacity模型
检测任务的方法:把定位看成回归问题;建立滑动窗口检测器(一些特定的类别,如人脸、行人,形状是比较固定的)。
本文采用的方法:recognition using regions
检测的第二个问题:数据不足。解决方法:在一个大型的数据集ILSVRC上进行监督的预训练,然后在小数据集上进行domain-specific fine-tuing
R-CNN的三个模块
1. 生成category-independent的区域提名,按类别来做区域提名selective search
2. 大型的CNN网络,用来从每个区域提取出固定长度的特征向量
AlexNet,网络要求输入为227x227,所以对数据进行处理:把图片压缩到227x227的大小
3. 一系列的class-specific 线性SVM
训练过程
- 在大数据集上进行预训练:在ILSVRC2012 classification上做预训练,只使用image-level标签,没有bounding box
- Domain-specific fine-tuning:用提名的区域对模型进行fine-tuning。用warped region proposals来继续SGD训练。除了把分类层换成(N+1),就是类别数+1(背景),其他没有变。从lr=0.001(预训练的1/10)。每次SGD迭代使用生成32个正窗口(和ground truth IoU大等于0.5)以及96个bacground 窗口,构成128个
- fine-tune时最后用的还是softmax层
- fine-tune后就可以得到一个分类的网络,可以把conv层的部分固定,用于后续操作的特征提取
- 用svm训练分类:为每个分类设计一个SVM分类器
- bounding box回归:只对IoU大于阈值的框做为输入进行训练
测试
SVM分类概率最大的为分类结果,SVM分类后执行非极大抑制保留概率极大的框,把这些做为输入进行bounding box调整,结果就是目标的位置
其它注意点
1. 为什么SVM和fine-tune的参数不同(对positive example的定义) fine-tune:IOU>=0.5,SVM:只有ground-truth为真,IOU<0.3为假,其它 的忽略
原来的时候,是在预训练的feature map上做SVM,使用的参数和现在fine-tune是一样的。后来引入fine-tune后,两者使用相同参数,但是结果并不好 猜测是由于fine-tuning数据的限制导致,因为其中引入了很多overlap在0.5-1(但不是gr)的数据,这些数据是有必要的,可以防止过拟合。但是,他们会 导致结果变差,因为他们没有对精确的位置进行fine-tune 2. 为什么要SVM 如果只是使用fine-tune的softmax结果,mAP会下降
主要因素是因为在fine-tuning时没有强调精确的位置,而且negtive example是随机的,而不是har negtives
3. bounding box回归
正则化很重要
4. bounding box回归训练时对候选框P的选择(P,G)
如果P和G太远的话,那这个计算就没什么意义了。把一个P分配给某个G,如果P和G的IoU最大,且大于一个阈值,其它没有分配的就忽略。
RCNN论文学习的更多相关文章
- Faster RCNN论文学习
Faster R-CNN在Fast R-CNN的基础上的改进就是不再使用选择性搜索方法来提取框,效率慢,而是使用RPN网络来取代选择性搜索方法,不仅提高了速度,精确度也更高了 Faster R-CNN ...
- R-CNN论文学习
Rich feature hierarchies for accurate object detection and semantic segmentation Tech report (v5) pr ...
- Fast RCNN论文学习
Fast RCNN建立在以前使用深度卷积网络有效分类目标proposals的工作的基础上.使用了几个创新点来改善训练和测试的速度,同时还能增加检测的精确度.Fast RCNN训练VGG16网络的速度是 ...
- Make R-CNN论文学习
在论文是在Faster R-CNN的基础上的改进 ,实现的效果有: 目标检测:能够在输入图像中绘制出目标的边界框,预测目标位置 目标分类:判别出该划定边界的目标的类别是什么,如人.车.猫和狗等类别 像 ...
- R-CNN论文翻译
R-CNN论文翻译 Rich feature hierarchies for accurate object detection and semantic segmentation 用于精确物体定位和 ...
- CVPR2019 | Mask Scoring R-CNN 论文解读
Mask Scoring R-CNN CVPR2019 | Mask Scoring R-CNN 论文解读 作者 | 文永亮 研究方向 | 目标检测.GAN 推荐理由: 本文解读的是一篇发表于CVPR ...
- [Network Architecture]Mask R-CNN论文解析(转)
前言 最近有一个idea需要去验证,比较忙,看完Mask R-CNN论文了,最近会去研究Mask R-CNN的代码,论文解析转载网上的两篇博客 技术挖掘者 remanented 文章1 论文题目:Ma ...
- Mesh R-CNN 论文翻译(实验部分)
本文为 Mesh R-CNN 论文翻译(原理部分)的后续.Mesh R-CNN 原论文. 4 实验 我们在ShapeNet上对网格预测分支进行基准测试,并与最先进的方法相比较.然后,我们在野生的有 ...
- [原创]Faster R-CNN论文翻译
Faster R-CNN论文翻译 Faster R-CNN是互怼完了的好基友一起合作出来的巅峰之作,本文翻译的比例比较小,主要因为本paper是前述paper的一个简单改进,方法清晰,想法自然.什 ...
随机推荐
- plus调用android原生页面
var main = plus.android.runtimeMainActivity(); var Intent = plus.android.importClass("android.c ...
- Zookeeper+Kafka集群部署(转)
Zookeeper+Kafka集群部署 主机规划: 10.200.3.85 Kafka+ZooKeeper 10.200.3.86 Kafka+ZooKeeper 10.200.3.87 Kaf ...
- 利用Python查看微信共同好友
思路 首先通过itchat这个微信个人号接口扫码登录个人微信网页版,获取可以识别好友身份的数据.这里是需要分别登录两人微信的,拿到两人各自的好友信息存到列表中. 这样一来,查共同好友就转化成了查两个列 ...
- Adding appsettings.json to a .NET Core console app
This is something that strangely doesn’t seem to be that well documented and took me a while to figu ...
- hdu-4635(tarjan缩点)
题意:先给你一个n个点,m条边的有向图,问你最多能够增加多少条边,使得这个图不是一个强连通图 解题思路:考虑最多要添加的边数,所以如果能把初始图划分成两个部分,每个部分都是完全图,这两个部分分别用单向 ...
- 内存泄漏(Memory Leak)
什么情况下会导致内存泄露(Memory Leak)? Android 的虚拟机是基于寄存器的Dalvik,它的最大堆大小一般是16M,有的机器为24M.因此我们所能利用 的内存空间是有限的.如果我们的 ...
- QComboBox使用方法,QComboBox详解
fromComboBox = QComboBox() 添加一个 combobox fromComboBox.addItem(rates) 添加一个下拉选项 fromComboBox.addItems( ...
- P1177 【模板】快速排序(学完归并和堆排之后的二更)
P1177 [模板]快速排序 不用说,连题目上都标了是一道模板,那今天就来对能用到的许多排序方式进行一个总结: 选择排序 选择排序(Selection sort)是一种简单直观的排序算法.它的工作原理 ...
- JavaScript中数据类型判断
做判断前先来了解下 JavaScript 中的基本数据类型 一.七大数据类型 基本类型:存储在栈( stack )中 Number(包括整型和浮点型) String. Boolean. Symbol ...
- Redisson分布式锁实现
转: Redisson分布式锁实现 2018年09月07日 15:30:32 校长我错了 阅读数:3303 转:分布式锁和Redisson实现 概述 分布式系统有一个著名的理论CAP,指在一个分布 ...