博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【目标检测】RCNN
阅读量:2382 次
发布时间:2019-05-10

本文共 1069 字,大约阅读时间需要 3 分钟。

前言


 

RCNN


 (2014 CVPR)

作者:

流程图:

 

 

特点


1、RCNN是利用深度学习进行目标检测的开山之作,首次将CNN运用到目标检测问题上。

2、用选择搜索(Selective Search)替代暴力滑框。选择搜索选出2000个候选框,用CNN等识别技术进行分类。

3、使用识别库进行预训练,而后用检测库调优参数。

4、使用SVM代替了CNN网络中最后的Softmax,同时用CNN输出的4096维向量进行Bounding Box回归。

5、流程前两个步骤(候选区域提取+特征提取)与待检测类别无关,可以在不同类之间共用;同时检测多类时,需要倍增的只有后两步骤(判别+精修),都是简单的线性运算,速度很快。

 

算法流程


本文数据集采用pascal VOC,这个数据集的object一共有20个类别。首先用select search方法在每张图像上选取约2000个region proposal,region proposal就是object有可能出现的位置。然后根据这些region proposal构造训练和测试样本,注意这些region proposal的大小不一,另外样本的类别是21个(包括了背景)。然后是预训练,即在ImageNet数据集下,用AlexNet进行训练。然后再在我们的数据集上fine-tuning,网络结构不变(除了最后一层输出由1000改为21),输入是前面的region proposal进行尺寸变换到一个统一尺寸227*227,保留f7的输出特征2000*4096维。针对每个类别(一共20类)训练一个SVM分类器,以f7层的输出作为输入,训练SVM的权重4096*20维,所以测试时候会得到2000*20的得分输出,且测试的时候会对这个得分输出做NMS(non-maximun suppression),简单讲就是去掉重复框的过程。同时针对每个类别(一共20类)训练一个回归器,输入是pool5的特征和每个样本对的坐标即长宽。

 

缺点


1、候选框选取耗时,会漏掉一些框

2、传入CNN前的归一化227*227产生的形变会导致信息丢失

3、候选框重叠较多,每个候选框都会输入进一个CNN进行特征提取,会造成重复计算

4、训练分成多个阶段,不利于全局最优

5、训练耗时,用GPU,VGG16处理一张图片要花47s

6、卷积出来的特征数据要单独保存,占空间大(5000张图片生成的特征文件有几百G)

 

损失函数

 


SVM,bounding-box回归损失,softmax损失,三个损失函数

 

代码实现


待更...

 

 

 

 

 

你可能感兴趣的文章
C#获取CPU序列号代码、硬盘ID、网卡硬件地址等类文件
查看>>
Html常用符号
查看>>
WinForm控制Webbrowser自动登录
查看>>
access表(.mdb文件) 导入 power designer
查看>>
PowerDesigner如何设计表之间的关联
查看>>
SQLite通用数据库类
查看>>
CMD下修改IP地址!
查看>>
安卓手机可以连上wifi但无法上网的解决办法
查看>>
C++程序员常用工具集
查看>>
在CSDN博客中添加量子恒道统计功能的做法
查看>>
C++调用IDL程序的做法(一)
查看>>
外部修改应用程序图标的做法
查看>>
database disk image is malformed解决方法
查看>>
有关error PRJ0003错误的思考
查看>>
实现自定义对话框程序快捷键的两种方法
查看>>
如何对抗微软霸权,google给我们上了一课
查看>>
未能将基于用户的Visual C++项目设置保存到user文件错误的解决
查看>>
获取windows版本信息的做法
查看>>
忆父亲
查看>>
png库结合zlib库使用出现的一个链接问题的解决
查看>>