RCNN算法之清晰讲解

本人将其定位为:基于深度学习的目标检测技术开始自成体系的开山之作

论文中比较笼统,分散式的讲解了技术的要点,本文则将这些流程串起来便于新手理解。

1、提出region proposal划分正负样本集

采用selective search算法对原图提出2000个region proposal,对于每个region proposal计算其与每一个groud truth(GT)的IOU,选择最大值IOU,若大于0.5,那么将该region proposal 作为 该GT类别的一个正样本,其余都是负样本。依次类推,对每一个region proposal 进行这样的操作,那么所有region proposal都被划分为各个类别的正样本和负样本。(对于VOC来说是20类+1类背景)。IOU是两个框的 交集/并集。

2、alexnet预训练模型+fine-tune

使用著名的AlexNet(5个卷积层和2个全连接层)在imagenet上得到预训练模型。将1中得到的正负样本随机选取batch(32个正样本+96个负样本),resize到227*227,每一个proposal+标签进入CNN得到fc7特征(2000*4096),将输出由1000类改为21类别。

3、每一个类别的SVM二分类器

重新界定正负样本,选GT作为正样本,IOU小于0.3的作为负样本,收紧标准递进学习。加之fc7的特征,共同输入训练。训练结果是得到SVM的权重矩阵W,W的维度是4096*20。

4、回归

用CNN得到的pool5的6*6*256特征和bounding box的ground truth来训练bounding box regression(每个bbox-GT样本对的坐标和长宽值),每种类型的回归其单独训练。只对那些跟ground truth的IoU超过某个阈值的proposal进行训练,其余的不参与。

这里有一个别的博客解释回归的问题:对于某个region proposal:R,以及其对应的Ground truth:G,我们希望预测结果是:P,那么我们肯定希望P尽可能接近G。这里通过对pool5层的特征X做线性变换WX得到变换函数F(X),这些变换函数作用于R的坐标达到回归的作用(包括对x,y的平移以及对w,h的缩放)。因此损失函数可以表达为:R和G的差距减去P和G的差距要尽可能小。后面的测试过程也参照以下链接。

链接:https://blog.csdn.net/u014380165/article/details/72851035

测试过程:

1、输入一张图像,利用selective search得到2000个region proposal。

2、对所有region proposal变换到固定尺寸并作为已训练好的CNN网络的输入,得到f7层的4096维特征,所以f7层的输出是2000*4096。

3、对每个类别,采用已训练好的这个类别的svm分类器对提取到的特征打分,所以SVM的weight matrix是4096*N,N是类别数,这里一共有20个SVM,N=20注意不是21。得分矩阵是2000*20,表示每个region proposal属于某一类的得分。

4、采用non-maximun suppression(NMS)对得分矩阵中的每一列中的region proposal进行剔除,就是去掉重复率比较高的几个region proposal,得到该列中得分最高的几个region proposal。NMS的意思是:举个例子,对于2000*20中的某一列得分,找到分数最高的一个region proposal,然后只要该列中其他region proposal和分数最高的IOU超过某一个阈值,则剔除该region proposal。这一轮剔除完后,再从剩下的region proposal找到分数最高的,然后计算别的region proposal和该分数最高的IOU是否超过阈值,超过的继续剔除,直到没有剩下region proposal。对每一列都这样操作,这样最终每一列(即每个类别)都可以得到一些region proposal。

5、用N=20个回归器对第4步得到的20个类别的region proposal进行回归,要用到pool5层的特征。pool5特征的权重W是在训练阶段的结果,测试的时候直接用。最后得到每个类别的修正后的bounding box。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值