RCNN,Fast-RCNN 理解

目录

RCNN

Fast-RCNN


RCNN

深度学习目标检测的开山之作。

RCNN的算法流程:

1、一张图像生成1k-2k个候选区域(使用Selective Search方法)

2、对每个候选区域,使用深度网络提取特征

3、特征送入每一类的SVM分类器,判别是否属于该类

4、使用回归器精细修正候选框位置

 --1、Selective Search算法

     

    输入:彩色图片。

    输出:物体可能的位置,即是很多的矩形坐标。

    首先,我们使用Graph-Based图像分割将图片初始化为很多小区域 R=ri,…,rn。

    初始化一个相似集合为空集: S=∅。

    计算所有相邻区域之间的相似度,放入集合 S 中,集合 S 保存的是区域对以及它们之间的相似度。

    找出 S 中相似度最高的区域对,将它们合并,并从 S 中删除与它们相关的所有相似度和区域对。重新计算这个新区域与周围区域的相似度,放入集合 S 中,并将这个新合并的区域放入集合 R 中。重复这个步骤直到 S 为空。

    从 R 中找出所有区域的 bounding box(即包围该区域的最小矩形框),这些 box 就是物体可能的区域。

    另外,为了提高速度,新合并区域的 feature 可以通过之前的两个区域获得,而不必重新遍历新区域的像素点进行计算。这个 feature 会被用于计算相似度。

原文链接:https://blog.csdn.net/qq_37394634/article/details/103976244

--2、对每个候选区域,使用深度网络提取特征

        将2000候选区域缩放到227*227,将候选区域输入预先训练好的AlexNet CNN 网络,获取4096维的特征得到2000*4096矩阵。

--3、特征送入每一类的SVM分类器,判别是否属于该类:

将2000*4096的特征矩阵与20个SVM组成的权值矩阵4096*20相乘,获得2000*20的概率矩阵,每一行代表一个建议框属于每个目标的类别的概率,每一列代表不同框属于特定目标类别的不同概率(如猫)。分别对上述2000*20的矩阵中每一列即每一类进行非极大值抑制剔除重叠建议框。得到该列即该类中得分最高的建议框。

非极大值抑制(NMS)剔除重叠边界框:

IoU:交并比

先寻找得分最高的目标,再计算其他目标与该目标的iou值,删除所有iou值大于给定阈值的目标。

经过ss算法得到的边界框不是太准确,需要修正位置

--4、使用回归器精细修正候选框位置

        针对CNN输出的特征向量进行预测

        对NMS处理后剩余的建议框进一步筛选,分别用20个回归器对上述20个类别中剩余的建议框进行回归操作,最后每个类别修正后得分最高的bounding box。根据预测的边界框中心点坐标,高,宽 和真实的边界框4个点进行回归。(回归操作见faster RCNN)

RCNN问题:

1、检测一张图片需要53秒,用ss算法大约2秒,一张图像的候选框有太多重复,冗余

2、SVM 和边界框回归器,需要将每个图像的每个目标候选框进行提取特征,再放入磁盘,占内存很大。 

Fast-RCNN

流程:

1、一张图像生成1k-2k个候选区域(使用Selective Search方法)

2、将图像输入网络得到相应的特征图,将SS算法生成的候选框投影到特征图上获得相应的特征矩阵

3、将每个特征矩阵通过ROI pooling(Region of Interest 感兴趣区域)层缩放到7*7大小的特征图,接着将特征图展平通过一系列全连接层得到预测结果。(分类结果和回归结果)

 一次性计算整张图的特征:

大幅度提高速度 

训练数据(正样本,负样本),不是取ss算法提取后的所有边界框

将预测的边界框与真实的边界框的Iou大于0.5,设为正样本,并不是所有的都用,随机采取一部分

IOU在0.1-0.5之间,认为是负样本

ROI pooling层经过最大池化下采样,缩放到7*7大小的特征图,

将特征图分成7*7个网格,每个网格进行最大池化下采样

 分类器:经过softmax后,概率和为1,全连接层N+1个节点

 边界框回归器:

 dx,dy是用来调整候选边界框的回归的参数,归一化后的,vx=(Gx-Px)/Pw,vy一样,

vw = log(Gw/Pw)

用指数防止出现负值

 

 p0是候选区域为背景的概率

即softmax交叉熵损失,pu指当前候选区域预测为u的概率

边界框回归损失:

 

 

 当u>=1,这一项为1,否则为0,u>=1当前的候选区域为真实的类别才用边界框损失,为背景时,u=0,不用边界框损失

 参考:1.1Faster RCNN理论合集_哔哩哔哩_bilibili

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值