目标检测(一)——Two-Stage——RCNN

一、前言

因为是第一篇,所以这里记录一点基础:
分类、检测、分割的区别:
(1)图像分类:只需要指明图像中相应目标所属的类别就可以;
(2)目标检测:需要定位到目标所处的位置,用矩形框表示;
(3)目标分割a. 语义分割:需要找到当前目标所占的区域,去除背景区域,其他目标的区域;b. 实例分割:不仅需要区分不同语义的目标,而且对于同一类别的目标也需要划分出不同的实例;

下面这张图像就对应了上述的情况(图像来源
在这里插入图片描述

接下来都是学习目标检测系列的网络(深度学习)

二、分类

1.Two-Stage目标检测算法

代表:
R-CNN
Fast-RCNN
Faster-RCNN
Mask-RCNN

2.One-Stage目标检测算法

代表:
YOLO系列
SSD系列

3.二者的区别

二者的最大区别在于是否包含RPN(候选区域目标推荐)的过程,即Two-Stage在进入网络前,需要先进行候选框的操作,分为两个阶段完成。

三、R-CNN(Region with CNN features)

1.总体

分为两个阶段:
第一阶段:目标候选框Object Proposals
第二阶段:proposal缩放后放入CNN网络

在这里插入图片描述
上图,R-CNN目标检测算法的步骤:
(1)利用Selective Search方法,在输入图像上选出2000个候选框
(2)将生成的所有候选框,每一个候选框resize之后(即所有的候选框都resize成相同尺寸),传入CNN网络,利用CNN提取特征,输出特征图;
(3)将特征图送入SVM二分类器,判断目标是否属于该类别;
(4)Bounding box regression,根据监督学习训练回归器,调整候选框的大小;

2.详细讲解上面的步骤

整个R-CNN结构分散,可以分为几个部分:候选框的生成、CNN网络、分类器、回归框,这几个部分都是需要单独训练,所以RCNN并不端到端的目标检测。

(1)Selective Search具体的过程:

  • 使用一种过分割方法,将图像分割成比较小的区域;
  • 计算所有邻近区域之间的相似性(可能属于同一个目标);
  • 将相似性比较高的区域合并到一起;
  • 计算合并区域和邻近区域的相似性;
  • 迭代合并,聚合到2000张候选框,就可以停下来;

(2)CNN网络:

预训练的CNN网络,利用AlexNet网络,使用五个卷积层和两个全连接层,对输入的候选框进行特征提取,最终输出的是一个特征向量。
在这里插入图片描述

(3)分类:

R-CNN在每张图片上抽取了2000个候选框,resize之后送入网络中,输出特征,然后利用SVM进行类别判断并产生相应的分数,因为候选框有2000个,所以必然有很多的框是重叠的,因此针对每一个类别,需要计算IoU,采用非极大值抑制(NMS),剔除部分重叠区域。

(4)回归

定位框回归,输入的是第五个池化层输出的特征图,人工标注的框,然后进行训练,将特征图的框去拟合真实的框

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值