Press "Enter" to skip to content

【目标检测】R-CNN

本站内容均来自兴趣收集,如不慎侵害的您的相关权益,请留言告知,我们将尽快删除.谢谢.

目录

 

R-CNN是将CNN用于目标检测领域的 开山之作 (虽然不一定是最早的,但确实最早出现好效果的),也是两阶段目标检测技术的开山之作,是后面一个系列的第一篇文章。

 

检测流程

 

流程概述:

 

 

    1. 在原图上进行选择性搜索,获得2000个候选框

 

    1. 将每个候选框进行缩放,通过网络进行特征提取

 

    1. 每个候选框对应一个特征,借助这些特征,通过SVM进行分类,通过NMS剔除部份候选框

 

    1. 通过一个bbox回归器对比原始候选框进行微调

 

 

 

详细流程:

首先从输入图片中使用选择性搜索获得2000个与类别无关的候选框
将这些候选框缩放到固定尺寸(227×227)逐一喂到同一个网络中(如AlexNet)进行特征提取,得到 2000*4096 维的矩阵
之后使用各个类别的线性SVM基于这些特征对候选框进行打分,判断是否为该类。如voc数据集20个类别就有20个SVM,他们对应的权重矩阵就是 4096*20 ,经过SVM之后我们就得到了 2000*20 的矩阵,接着使用NMS剔除部分候选框。
首先是对于NMS之后的候选框进一步剔除,只保留与GT相交并且IOU大于一定阈值的候选框,接着20个回归器对20个类别中剩余的候选款进行回归操作,最终得到每个类别得分最高的bbox。

第三步补充一: 中间过程如下图所示:左边的每一行都代表一个候选框的特征,中间的每一列代表一个分类器的权重,那幺他们相乘得到的就是某个候选框为某个类别的概率。因此右边的每一行代表的是每个候选框在各个类别下的概率,每一列表示某个类别下各个候选框的概率。而 NM S就是对于每一列(也就是每一类)做的,每次取这一列得分最高的候选框,然后与该列其他框计算IOU,若是该IOU大于我们给定的阈值,就将后者的剔除(得分置0),得分最高的候选框处理完之后就是得分第二高的候选框,以此类推。

 

一些细节

 

预训练: 首先是特征提取网络会在ImageNet上预训练,然后将最后的分类层替换成随机初始化的参数,接着在当前数据集上微调(固定前面层的参数,只训练最后的分类层)。

 

选择性搜索: 是一个类似于聚类的过程,开始根据颜色、纹理、大小等找到一些相似的初始区域,然后慢慢加权合并,最终得到2000+的候选框。

 

缩放: 文中列举了三种方式:1、包含临近的像素,保留长宽比例进行等比例缩放;2、不包含临近的像素,保留长宽比例进行等比例缩放;3、不包含临近的像素,强行缩放不等比例,如下面的BCD,但是最终作者选用的包含临近的像素,强行缩放不等比例的方式,其实就相当于是将候选框放大一点(捕捉上下文信息),然后调整大小放入网络。

 

缩放结果如下:

 

为什幺不用softmax分类而是采用SVM呢? 好像也没有看到很信服的解释,可能是作者实验下来,确实是SVM效果会好一点。

 

网络微调和SVM训练时的正负样本: 网络微调时候的正样本是与GT的IOU最大并且大于0.5的候选框,其余样本是负样本;训练SVM时候的正样本是与GT完全重合的候选框,而负样本是与GT的IOU小于0.3的候选框,而IOU在0.3到1之间的候选框就被忽略了。(训练SVM的最优策略实验得到的,且采用困难错误样本挖掘的方式姿训练)

 

bbox回归: 就是得到一组偏移量,对候选框施加这个偏移量,实现对候选框的精调,得到最终的预测框。

 

说起来简单,但是到底怎幺做呢?其实就是网络训练的过程。我们有标注框的信息,有候选框的信息,只需要四个参数就可以使得候选框变得和标注框一样,接着网络训练就是为了去得到这四个参数。刚开始网络预测的四个参数很差,我们根据这四个参数,得到的预测框也很差,但是我们使用真实的标注框信息监督这个过程,网络的预测输出会越来越精确。

 

那幺当网络训练完毕之后,网络输入候选框信息,就能输出精确的偏移,我们再使用这个偏移就得到了预测框了。

 

在实际中,bbox回归器的训练用的都是网络最后一层的 2000*4096 的向量。

 

存在的问题

 

时间消耗大: 检测的速度很慢,由图可见,主要的耗时来自于选择性搜索、候选框预处理(缩放裁剪)以及每个候选框的特征提取,并且这些操作是与类别无关的,相对而言,后面的候选框分类打分以及NMS虽然与类别相关,但是耗时很少很少。

 

流程臃肿: 算法中的每个流程对于算法性能都是至关重要的,严重依赖上下游,不端到端,所以需要对每个流程都进行优化,才能得到最终的效果。

Be First to Comment

发表回复

您的电子邮箱地址不会被公开。