01 R-CNN系列总结

参考:https://www.cnblogs.com/skyfsm/p/6806246.html

https://www.cnblogs.com/dudumiaomiao/p/6560841.html

细节:https://www.cnblogs.com/zf-blog/p/6740736.html

 

步骤一:训练(或者下载)一个分类模型(比如AlexNet)

 

步骤二:对该模型做fine-tuning

将分类数从1000改为20,加上背景共21类;变成21类的分类任务,进行端对端训练。

步骤三:特征提取 

 提取图像的所有候选框(选择性搜索)

对于每一个区域:缩放区域大小以适合CNN的输入,做一次前向运算(第二步已经完成分类模型的训练),将第五个池化层的输出(就是对候选框提取到的特征)存到硬盘

步骤四:训练一个SVM分类器(二分类)

判断这个候选框里物体的类别,每个类别对应一个SVM二分类器,判断是不是属于这个类别,是就是positive,反之negative
比如下图,就是狗分类的SVM 

步骤五:使用回归器精细修正候选框位置

对于每一个类,训练一个线性回归模型去判定这个框是否框得完美。 

类似于下图:

 

注意:使用选择行搜索,确定候选框 ;然后把候选框输入到CNN网络,提取候选框的特征;最后把特征输入到SVM中,进行分类。

 

最后总结一下各大算法的步骤:
RCNN (选框,提特征,分类,定位)

  1. 在图像中确定约1000-2000个候选框 (使用选择性搜索)
  2. 每个候选框内图像块缩放至相同大小,并输入到CNN内进行特征提取 
  3. 对候选框中提取出的特征,使用分类器判别是否属于一个特定类
  4. 对于属于某一特征的候选框,用回归器进一步调整其位置

SPPnet (链接)

  1. SPPnet算法过程和R-CNN一样,只是在提特征方式上做了改进:把整张待检测的图片,输入CNN中,进行一次性特征提取,得到feature map,然后对各个候选框对应的特征采用空间金字塔池化SPP,提取出固定长度的特征向量。
  2. 回顾R-CNN的特征提取过程:对于每一个候选框,缩放候选框大小以适合CNN的输入,做一次前向运算,将第五个池化层的输出(就是对候选框提取到的特征)存到硬盘

Fast RCNN

  1. 输入训练图像;
  2. 利用selective search 算法在图像中从上到下提取2000个左右的候选框(Region Proposal);
  3. 将整张图片输入CNN,进行特征提取,得到feature map;
  4. 把建议窗口映射到CNN的最后一层卷积feature map上;前四步和SPP-net一样。
  5. 通过RoI pooling层(单层sppnet的网络层,即只有一种网格)使每个候选框对应的特征图生成固定尺寸的feature map。而SPPnet采用的空间金字塔池化,生成的是固定尺寸的feature vector
  6. 利用Softmax Loss(分类器) 和Smooth L1 Loss(边框回归器),对分类概率和边框回归(Bounding box regression)联合训练,去掉了SVM。SPPnet是分步训练的。

Faster RCNN

  1. 对整张图片输进CNN,得到feature map;
  2. 卷积特征输入到RPN,提取候选框(主要贡献);
  3. 对候选框中提取出的特征,对其进行分类
  4. 对于属于某一特征的候选框,用回归器进一步调整其位置

      RPN简介:
     • 在feature map上滑动窗口
     • 建一个神经网络用于物体分类+框位置的回归
     • 滑动窗口的位置提供了物体的大体位置信息
     • 框的回归提供了框更精确的位置

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Mr.Q

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值