本文已参与「新人创作礼」活动,一起开启掘金创作之路。
参考:
1.1Faster RCNN理论合集 (bilibili.com)
R-CNN
算法流程
总体步骤
1候选区的生成(SS算法)
2对候选区域提取特征
3对特征判定类别
4非极大值抑制算法
5 使用回归器修正候选框
Fast R-CNN
对比R-CNN的改进之处
- 候选框到特征提取的处理上。R-CNN是对每一个候选框提取特征, Fast R-CNN是对整个图片做特征提取, 然后将候选框映射到特征图上。
- 直接通过全连接预测分类和边界框回归器
算法流程
总体步骤
ROI Pooling
将候选框缩放到统一尺寸。eg:统一缩放到7 x 7大小。
如下图:不管是多大的候选框, 将候选框分成7 x 7的网格区域, 然后再每个网格区域进行最大池化下采样(只选取区域内最大的一个值)。这样便得到了7 x 7的缩放。
分类器
两个分类器是并联的
损失函数
p0是目标为背景的概率
Faster R-CNN
对比Fast R-CNN的不同
- 主要是将生成候选框的SS算法换成RPN(Region Proposal Network)算法。
算法流程
总体步骤
RPN算法
feature map为backbone生成的特征图,eg:ZF网络最后生成特征图的深度为256.
在feature map 每滑动一次窗口就会有K个anchor(给定的固定的可能存在的一种窗口,在算法中通过步距和滑动窗口大小的乘积确定中心点, 然后通过anchor给定的宽高等等,计算anchor窗口.)生成,然后将小窗口特征图生成一维向量,连接全连接,分成背景和前景两类进行打分,所以有2k(前景和背景的概率)个scores,和4k个coordinates(边界框回归参数.) [中心点确定,边界需要调整]
anchor的尺度为: