RCNN笔记

传统目标检测方法流程
置信度的评分,结合评分以及候选框的IOU作为NMS的输入,使用NMS算法来对候选框进行过滤和筛选得到最终的结果输出
在这里插入图片描述
RCNN也是遵循了传统目标检测方法流程,但是有一点区别,就是在特征提取部分进行了优化,使用了卷积网络提取特征(代替了传统方法提取到的颜色、纹理等浅层特征)

RCNN(Regions with CNN features)是RBG在2014年提出的一种目标检测算法,RCNN是将CNN方法应用到目标检测问题上的一个里程碑,借助CNN良好的特征提取和分类性能,通过Region Proposal方法实现目标检测。
滑动窗口法可以得到目标所在的区域,但是会产生大量的计算。除了滑动窗口法之外还有另外一类基于区域(Region Proposal)的方法,selective search(这个算法后面没有使用了,具体细节没有去了解)就是其中之一。RCNN就是使用selective search来生成候选区域。

使用selective search算法生成2000个候选区域;然后把2000个候选区域图片固定大小,比如固定成224x224;然后放到一个卷积网络(如Vgg16、GoogLenet)里面作特征提取;提取完特征后会做两件事情,一是做回归(调整生成的候选区域的大小和位置,使得其更接近真是标注),二是做分类(用的SVM)
在这里插入图片描述

算法流程

选择一个分类模型(比如AlexNet,VGGNet等),在Imagenet上进行预训练,得到预训练模型
在这里插入图片描述

  1. 去掉最后一个全连接层。
  2. 将分类数从1000改为(N+1)。对于VOC,N=20;对于ILSVRC2013,N=200; 1表示背景
  3. 对该预训练模型做fine-tuning。(主要目的是优化卷积层和池化层的参数)
  4. 特征提取,提取候选框(使用SS算法);

在这里插入图片描述
论文中用到的网络是Vgg16,第5个池化层pool5后面的一层是fc6全连接层。
前面生成的2000个候选区域,对每一个候选区域进行特征提取:
Resize区域大小,然后然后放到(选用训练好了参数的)卷积网络里面做一次前向运算,将第五个池化层的输出(也就是候选框提取到的特征)保存到硬盘。
在这里插入图片描述
训练阶段:
上一步使用pool5输出的图像特征作为输入训练SVM分类器(二分类)来判断这个候选框里面的物体类别,有21个类别就需要21个分类器。
测试阶段:
每个类别对应一个SVM,判断是不是属于这个类别。下图是狗分类的SVM:

在这里插入图片描述
训练阶段:
使用pool5输出的图像特征训练一个回归器(dx,dy,dw,dh)。
dx代表水平平移,dy代表竖直平移,dw代表宽度缩放,dh代表高度缩放
测试阶段:
使用回归器调整(精修)候选框位置,利用线性回归模型判定框的准确度
如下面,第2张图片候选框靠左,则调整dx=0.25,就是框往右边移动25%
第3张图片候选框太宽了,则调整dw=-0.125,就是宽度缩小12.5%
在这里插入图片描述

缺点:

依然有传统的目标检测算法所存在的问题,
检测速度或效率低下
检测精度相对于传统的目标检测算法有了一定的改善,但是依然难以满足实际的需要
候选框选择算法耗时严重,很难做到实时性
重叠区域特征重复计算
分步骤进行,过程繁琐

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值