RCNN 和SPPnet的对比

一。RCNN:

1、首先通过选择性搜索,对待检测的图片进行搜索出2000个候选窗口。

2、把这2k个候选窗口的图片都缩放到227*227,然后分别输入CNN中,每个候选窗台提取出一个特征向量,也就是说利用CNN进行提取特征向量。

3、把上面每个候选窗口的对应特征向量,利用SVM算法进行分类识别。

可以看到R-CNN计算量肯定很大,因为2k个候选窗口都要输入到CNN中,分别进行特征提取,计算量肯定不是一般的大。

二。SPPnet:

1、首先通过选择性搜索,对待检测的图片进行搜索出2000个候选窗口。这一步和R-CNN一样。

2、特征提取阶段。这一步就是和R-CNN最大的区别了,同样是用卷积神经网络进行特征提取,但是SPP-Net用的是金字塔池化。这一步骤的具体操作如下:把整张待检测的图片,输入CNN中,进行一次性特征提取,得到feature maps,然后在feature maps中找到各个候选框的区域,再对各个候选框采用金字塔空间池化,提取出固定长度的特征向量。而R-CNN输入的是每个候选框,然后在进入CNN,因为SPP-Net只需要一次对整张图片进行特征提取,速度是大大地快啊。江湖传说可一个提高100倍的速度,因为R-CNN就相当于遍历一个CNN两千次,而SPP-Net只需要遍历1次。

3、最后一步也是和R-CNN一样,采用SVM算法进行特征向量分类识别。

三。一个问题:

如何在feature maps中找到原始图片中候选框的对应区域?

因为候选框是通过一整张原图片进行检测得到的,而feature maps的大小和原始图片的大小是不同的,feature maps是经过原始图片卷积、下采样等一系列操作后得到的。那么我们要如何在feature maps中找到对应的区域呢?Mapping a Window to Feature Maps。作者直接给出了一个很方便我们计算的公式:假设(x’,y’)表示特征图上的坐标点,坐标点(x,y)表示原输入图片上的点,那么它们之间有如下转换关系:

(x,y)=(S*x’,S*y’)

其中S的就是CNN中所有的strides的乘积。比如paper所用的ZF-5:

S=2*2*2*2=16

而对于Overfeat-5/7就是S=12,这个可以看一下下面的表格:

需要注意的是Strides包含了池化、卷积的stride。自己计算一下Overfeat-5/7(前5层)是不是等于12。

反过来,我们希望通过(x,y)坐标求解(x’,y’),那么计算公式如下:

因此我们输入原图片检测到的windows,可以得到每个矩形候选框的四个角点,然后我们再根据公式:

Left、Top:

Right、Bottom:

时间: 2024-10-09 13:57:22

RCNN 和SPPnet的对比的相关文章

RCNN、SppNET、Fast RCNN、Faster RCNN

一.跟经典的目标检测算法的比较: 1.穷举搜索(Exhaustive Search),选择一个窗口(window)扫描整张图像(image),改变窗口的大小,继续扫描整张图像. 二.RCNN算法分为4个步骤  1.一张图像生成1K~2K个候选区域 (Selective Search) 2.对每个候选区域,使用深度网络提取特征  3.特征送入每一类的SVM 分类器,判别是否属于该类  4.使用回归器精细修正候选框位置 1.合并规则.多样化与后处理 2.首先把候选区域归一化成同一尺寸227×227

R-CNN,SPP-NET, Fast-R-CNN,Faster-R-CNN, YOLO, SSD系列深度学习检测方法梳理

1. R-CNN:Rich feature hierarchies for accurate object detection and semantic segmentation 技术路线:selective search + CNN + SVMs Step1:候选框提取(selective search) 训练:给定一张图片,利用seletive search方法从中提取出2000个候选框.由于候选框大小不一,考虑到后续CNN要求输入的图片大小统一,将2000个候选框全部resize到227*

R-CNN,SPP-NET, Fast-R-CNN,Faster-R-CNN, YOLO, SSD系列

就是想保存下来,没有其他用意 原博文:http://blog.csdn.net/qq_26898461/article/details/53467968 3. 空间定位与检测 参考信息<基于深度学习的目标检测研究进展> 3.1 计算机视觉任务 3.2 传统目标检测方法 传统目标检测流程: 1)区域选择(穷举策略:采用滑动窗口,且设置不同的大小,不同的长宽比对图像进行遍历,时间复杂度高) 2)特征提取(SIFT.HOG等:形态多样性.光照变化多样性.背景多样性使得特征鲁棒性差) 3)分类器(主要

R-CNN系列与SPP-Net总结

目录 1. 前言 2. R-CNN 2.0 论文链接 2.1 概述 2.2 pre-training 2.3 不同阶段正负样本的IOU阈值 2.4 关于fine-tuning 2.5 对文章的一些思考 3. SPP-Net 3.1 概述 3.2 一次性full-image卷积 @ 1. 前言 ??最近读完了R-CNN三部曲+SPP-Net,算是Detection里比较经典的一个系列,最近也在读CVPR或者ECCV的其他Detection相关的论文,发现很多都是在改进R-CNN系列的一些细节.因此

faster r-cnn学习(一)

http://closure11.com/rcnn-fast-rcnn-faster-rcnn%E7%9A%84%E4%B8%80%E4%BA%9B%E4%BA%8B/ 首先看fast r-cnn这篇论文,中间加入了有些博友的想法. 问题 目标检测主要面临两个问题:过多的候选位置(proposals):必须由这些粗略的候选位置中选出准确的位置. 这篇论文将学习目标proposals分类和精确定位结合起来. 1. R-CNN和SPPnet存在的问题 (1)R-CNN的问题 训练需要多阶段:先用Co

论文笔记-RCNN

CAFFE玩了也有段时间了,现在开始准备研究一下物体检测,现在知道的有RCNN.spp-net.Fast-RCNN和Faster-RCNN,作为菜鸟我还是从头学习,决定先看RCNN,因为有项目要做还要上课,可能得用一段时间才能看完,慢慢写,开始以翻译为主,以后有自己的想法了再慢慢更新,如果有理解错误的地方还希望各位博客园的大神指教--这也是我第一次用博客园,纪念一下,顺便熟悉一下怎么用 论文全称<Rich feature hierarchies for accurate object detec

r-cnn学习系列(三):从r-cnn到faster r-cnn

把r-cnn系列总结下,让整个流程更清晰. 整个系列是从r-cnn至spp-net到fast r-cnn再到faster r-cnn.  RCNN 输入图像,使用selective search来构造proposals(大小不一,需归一化),输入到CNN网络来提取特征, 并根据特征来判断是什么物体(分类器,将背景也当做一类物体),最后是对物体的区域(画的框)进行微调(回归器). 由下面的图可看出,RCNN分为四部分,ss(proposals),CNN,分类器,回归器,这四部分是相对独立的.改进的

Fast R-CNN(RoI)简介

Fast R-CNN是一个基于区域的目标检测算法.Fast R-CNN建立在先前的工作之上,并有效地使用卷积网络分类目标建议框.与先前的工作相比,使用几点创新改善了训练和测试时间并增加了检测准确率. 2. Fast R-CNN结构和训练 图1展示了Fast R-CNN的结构.该网络输入一个完整的图像和一组目标建议框.首先用卷积和池化来产生一个特征图.然后,对每一个目标建议框使用RoI(Region of Interest)池化层从特征图提取一个固定长度的向量.每个特征向量送人两个兄弟般的全连接层

基于深度学习的目标检测研究进展

前言 开始本文内容之前,我们先来看一下上边左侧的这张图,从图中你看到了什么物体?他们在什么位置?这还不简单,图中有一个猫和一个人,具体的位置就是上图右侧图像两个边框(bounding-box)所在的位置.其实刚刚的这个过程就是目标检测,目标检测就是"给定一张图像或者视频帧,找出其中所有目标的位置,并给出每个目标的具体类别". 目标检测对于人来说是再简单不过的任务,但是对于计算机来说,它看到的是一些值为0~255的数组,因而很难直接得到图像中有人或者猫这种高层语义概念,也不清楚目标出现在