RCNN和SPPnet

RCNN和SPPnetRCNN的提出首次利用了CNN来提取图片特征,大大提高了检测精度。整体思路:输入一张图片,selectivesearch方法提取2000个proposalregion,由于CNN输入图片的大小是固定的,所以需要把proposalregion变成同样的大小(比如227×227),然后通过五层卷积层和两个全连接层,然后用SVM进行分类因为我们后面还要继续用这2000个候选框图片,继续…

大家好,又见面了,我是你们的朋友全栈君。

RCNN的提出首次利用了CNN来提取图片特征,大大提高了检测精度。

整体思路:输入一张图片,selective search方法提取2000个proposal region,由于CNN输入图片的大小是固定的,所以需要把proposal region变成同样的大小(比如227×227),然后通过五层卷积层和两个全连接层,然后用SVM进行分类

RCNN和SPPnet

因为我们后面还要继续用这2000个候选框图片,继续训练CNN、SVM。然而人工标注的数据一张图片中就只标注了正确的bounding box,我们搜索出来的2000个矩形框也不可能会出现一个与人工标注完全匹配的候选框。因此我们需要用IOU为2000个bounding box打标签,以便下一步CNN训练使用。在CNN阶段,如果用selective search挑选出来的候选框与物体的人工标注矩形框的重叠区域IoU大于0.5,那么我们就把这个候选框标注成物体类别,否则我们就把它当做背景类别
预训练:用AlexNet在ILSVRC 2012数据集上训练提取特征。

fine-tuning:由于论文中的数据集有21类(物体类别20+1背景),因此把AlexNet最后的softmax变为21,进行训练。

SVM训练:输入是f7的特征,输出的是是否属于该类别,训练结果是得到SVM的权重矩阵W,这里负样本的选定和前面的有所不同,将IOU的阈值从0.5改成0.3,即IOU<0.3的是负样本,正样本是Ground Truth。IOU的阈值选择和前面fine-tuning不一样,主要是因为:前面fine-tuning需要大量的样本,所以设置成0.5会比较宽松。而在SVM阶段是由于SVM适用于小样本,所以设置0.3会更严格一点。

回归:用pool5的特征6*6*256维和bounding box的ground truth来训练回归

文献paper给我们证明了一个理论,如果你不进行fine-tuning,也就是你直接把Alexnet模型当做万金油使用,类似于HOG、SIFT一样做特征提取,不针对特定的任务。然后把提取的特征用于分类,结果发现p5的精度竟然跟f6、f7差不多,而且f6提取到的特征还比f7的精度略高;如果你进行fine-tuning了,那么f7、f6的提取到的特征最会训练的svm分类器的精度就会飙涨。

据此我们明白了一个道理,如果不针对特定任务进行fine-tuning,而是把CNN当做特征提取器,卷积层所学到的特征其实就是基础的共享特征提取层,就类似于SIFT算法一样,可以用于提取各种图片的特征,而f6、f7所学习到的特征是用于针对特定任务的特征。打个比方:对于人脸性别识别来说,一个CNN模型前面的卷积层所学习到的特征就类似于学习人脸共性特征,然后全连接层所学习的特征就是针对性别分类的特征了。

还有另外一个疑问:CNN训练的时候,本来就是对bounding box的物体进行识别分类训练,是一个端到端的任务,在训练的时候最后一层softmax就是分类层,那么为什么作者闲着没事干要先用CNN做特征提取(提取fc7层数据),然后再把提取的特征用于训练svm分类器?这个是因为svm训练和cnn训练过程的正负样本定义方式各有不同,导致最后采用CNN softmax输出比采用svm精度还低。

事情是这样的,cnn在训练的时候,对训练数据做了比较宽松的标注,比如一个bounding box可能只包含物体的一部分,那么我也把它标注为正样本,用于训练cnn;采用这个方法的主要原因在于因为CNN容易过拟合,所以需要大量的训练数据,所以在CNN训练阶段我们是对Bounding box的位置限制条件限制的比较松(IOU只要大于0.5都被标注为正样本了);

然而svm训练的时候,因为svm适用于少样本训练,所以对于训练样本数据的IOU要求比较严格,我们只有当bounding box把整个物体都包含进去了,我们才把它标注为物体类别,然后训练svm
SPPnet:由于RCNN需要输入固定的大小proposal region,这样检测各种大小的图片的时候,需要经过crop,或者warp等一系列操作,这都在一定程度上导致图片信息的丢失和变形,限制了识别精确度。

那么为什么CNN要有固定大小的图片输入呢?主要是因为约束的长度来源于全连接层,因此SPP-Net在最后一个卷积层后,接入了金字塔池化层,使用这种方式,可以让网络输入任意的图片,而且还会生成固定大小的输出。

RCNN和SPPnet

参考地址:https://blog.csdn.net/hjimce/article/details/50187029

                  https://blog.csdn.net/v1_vivian/article/details/73275259

                  https://www.cnblogs.com/gongxijun/p/7172134.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/132506.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • PAT考试经验总结(甲乙级均适用)~~想满分的请看这里!~~

    PAT考试经验总结(甲乙级均适用)~~想满分的请看这里!~~emmmmmmm总算是考了个满分,不用以后再交PAT考场一日游入场费了T^T第一次在去年秋天,被第一题狼人杀给干掉了〒▽〒,最后得了81分,第二次就是今年春季,侥幸满分通过了==为了总结自己踩过的坑,给后面要考的同学们提供一些微薄的帮助,遂作此文。考场经验一.注意,考试的运行时的黑框,是不能使用Crtl+V进行粘贴的,但这不代表考试不能进行复制粘贴,PAT考试系统里的代码…

    2022年4月29日
    60
  • 金山词霸2007升级v10.0.0.4

    金山词霸2007升级v10.0.0.4词霸2007不但产品功能更加完善,而且在用户的体验方面也做了很多改进。首先,词霸07收录了150余本权威词典,70余个专业词库,同时支持28种常备资料线实时更新,让您随时拥有奥运知识、常用工具(货币单位等)等最新的资料;其次全面支持简体中文、英文、日文查词功能,满足更多用户需求;值得一提的是,词霸07收录了与朗文、牛津、韦氏齐名四大词典的《美国传统词典》最新版,英汉、英英双解,包含96000余词条

    2022年7月15日
    15
  • ssm框架过时了吗_spring实战

    ssm框架过时了吗_spring实战SpringSpring是一个开源的免费的框架Spring是一个轻量级的,非入侵式的框架控制反转(IOC),面向切面编程(AOP)支持事务的处理,对框架整合的支持IOC理论UserDaoUserDaoImpUserSeviceUserServiceImp在之前,用户的需求可能会影响原来的代码。使用一个set。public void setUserDao(UserDao userDao){ this.userDao = userDao;}之前是主动创建对象,控制

    2022年8月9日
    1
  • 常见数据库简答题_数据库基础知识试题

    常见数据库简答题_数据库基础知识试题数据库简答题第一章1.简述数据、数据库、数据库管理系统、数据库系统的概念(期末题库、课后题、大纲要求、试题三)数据:描述事物的符号记录数据库:(什么是数据库?答下面所有)长期存储在计算机内、有组织、可共享的大量数据的集合基本特征:(1)数据按照一定的数据模型组织、描述和存储(2)可为各种用户所共享(3)具有较小的冗余度(4)数据独立性较高(5)易扩展性数据库管理系统:(什么是数据库管理系统?答下面所有)(2001研招)位于用户与操作系统之间的一层数据管理软件,他与操作系统一样都是计

    2022年9月19日
    0
  • java swt griddata_SWT的GridData一些参数的图示

    java swt griddata_SWT的GridData一些参数的图示1.参数;verticalSpanGridDatagridData=newGridData();gridData.verticalSpan=100;finalTextnameText=newText(shell,SWT.BORDER);nameText.setLayoutData(gridData);可以发现,verticalSpan代表的是控件占据的行数。若代码如下:public…

    2022年5月26日
    33
  • Quartus-II 13 和Modelsim的安装「建议收藏」

    目录一、QuartusII的下载1、下载2、安装三、QuartusII的注册四、安装完成二、ModelsimSE的下载安装与注册一、下载二、安装三、ModelsimSE的注册四、安装完成一、QuartusII的下载1、下载百度网盘下载安装包链接:https://pan.baidu.com/s/1a9d-bq9RZmWrRV542X4IEA提取码:ifte2、安装复制这一串ID三、QuartusII的注册注册器下载:https://pan.baidu.

    2022年4月16日
    59

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号