R-CNN系列算法介绍

博客中图片来自霹雳吧啦Wz

文章目录

  • R-CNN
    • 生成候选区域
    • IOU
    • 框架
  • Fast-RCNN
    • 主要流程
    • 获取图像特征的区别
    • ROI pool
    • SVM分类器
    • 损失函数,交叉熵损失
  • Faster-RCNN
    • 主要流程
    • RPN(region proposal network)
    • anchor大小
    • 定义正负样本
    • 损失函数
    • 训练方法

R-CNN

主干使用VGG-16,227 * 227图片大小

R-CNN系列算法介绍_第1张图片

步骤:

​ 1、一张图片生成1-2k个候选区域(ssh方法,select search)

​ 2、对每个候选区域,使用深度网络提取特征

​ 3、特征送入每一类的SVM分类,判别是否属于该类

​ 4、使用回归器细修正候选框位置

生成候选区域

R-CNN系列算法介绍_第2张图片

R-CNN系列算法介绍_第3张图片

R-CNN系列算法介绍_第4张图片

R-CNN系列算法介绍_第5张图片

IOU

R-CNN系列算法介绍_第6张图片

保留最高阈值框,,计算其他框与最高值iou,删除高于设定阈值的框

框架

R-CNN系列算法介绍_第7张图片

Fast-RCNN

主要流程

R-CNN系列算法介绍_第8张图片

1、一张图生成1-2 k候选区域

2、将整个图送入网络得到特征图,将候选框投影到特征图,得特征矩阵

3、将特征矩阵通过ROI pool缩放到7 *7 特征图,将特征图展平,全连接得到预测结果。

获取图像特征的区别

R-CNN系列算法介绍_第9张图片

ROI pool

R-CNN系列算法介绍_第10张图片

不限制输入图片大小

SVM分类器

R-CNN系列算法介绍_第11张图片

并联两个全连接层,1目标概率预测,2边界框回归参数的预测

R-CNN系列算法介绍_第12张图片

损失函数,交叉熵损失

R-CNN系列算法介绍_第13张图片

分类损失用的交叉熵损失函数

R-CNN系列算法介绍_第14张图片

1、多分类,用softmax;

2、二分类,用sigmoid输出

Faster-RCNN

z主干同样使用VGG-16

主要流程

R-CNN系列算法介绍_第15张图片

1、整个图像输入网络得到特征图

2、使用RPN(region proposal network)结构生成候选框,候选框投影到特征图得特征矩阵

3、特征矩阵通过ROI pool得7 *7 特征图,进行展平全连接得预测结果

可将Faster-rcnn看成RPN+fast-RCNN

RPN(region proposal network)

R-CNN系列算法介绍_第16张图片

在特征图使用滑动窗口,分别输出目标概率2 k,k是k个anchor,分别为背景和目标的概率;边界框回归参数4k(x,y,w,h),256是zf网络channel,VGG是512深度;通过滑动窗口提取候选框,之前都是用ss算法

anchor大小

R-CNN系列算法介绍_第17张图片

每个面积大小有3种尺度,每个中心点对应9个anchor

定义正负样本

1、正样本:1anchor与GT的IOU大于设定0.7,为正样本

​ 2,若anchor都没超过0.7,找最大IOU的anchor,认为它为正样本

2、负样本:anchor与GT的IOU小于0.3为负样本

3、除此之外的anchor丢弃

损失函数

R-CNN系列算法介绍_第18张图片

训练方法

1、论文采用分布训练,先用ImageNet预训练网络参数,并开始单独训练RPN网络。

自己代码中直接PRN+fast-RCNN联合训练

R-CNN系列算法介绍_第19张图片

你可能感兴趣的:(算法,cnn)