Faster-Rcnn

Faster-Rcnn整体流程(学习笔记)

一、从输入到输出

1.1输入:一张图片

输入尺寸:作为输入放入网络训练的话需要限制图片的大小,Faster-Rcnn对于输入图像的大小限制规则是:限制最小边为600,最大边为1000,对于输入图像优先考虑最大边的限制。测试时不需要。
Faster-Rcnn_第1张图片

1.2处理过程:

1.首先,使用一组covn(卷积)+relu+pooling(池化) 提取输入图像的特征图。( 原理看2.1
2.之后,使用RPN网络(区域生成网络)对上一步生成的特征图进行处理,在特征图上标多个框,通过RPN网络对每个框进行打分,通过得分将背景与物体区分开来,可以理解为一个区分是背景还是物体的二分类模型。
(注:RPN网络就是用来提取候选框的网络。RPN网络就是在faster-rcnn中被提出来的,看2.2
3.经过第二步之后特征图就变成了,特征图上带有一个或者多个框的图,比如这样:
Faster-Rcnn_第2张图片
4.采用RoI Pooling层(注:这也是在faster-rcnn中首次提出来)对上述带有锚框的特征图进行处理,先来概述下 RoI Pooling 的操作:
首先将 锚框(红色的框) 映射到特征图上的对应区域位置;
最终需要将尺寸不一的 锚框 变为固定的 n x n 大小,于是将 锚框 平均划分为 n x n 个区域;
取每个划分而来的区域的最大像素值,相当于对每个区域做 max pooling 操作,作为每个区域的“代表”,这样每个 锚框 经过操作后就变为 n x n 大小。
得到固定大小的proposal feature map,进入到后面可利用全连接操作来进行目标识别和定位。
5.将Roi Pooling层形成固定大小的特征图进行全连接操作,利用Softmax进行具体类别的分类,同时,利用L1 Loss完成bounding box regression回归操作获得物体的精确位置。

1.3输出:原图片+锚框+类别

Faster-Rcnn_第3张图片

1.4整体流程:

Faster-Rcnn_第4张图片

二、对应部分原理

2.1特征提取网络结构

Faster-Rcnn_第5张图片
前五阶段是基础的conv+relu+pooling形式,在第五阶段结尾,输入P个候选区域(图像序号×1+几何位置×4,序号用于训练)

2.2RPN网络

RPN专门用来提取候选框,在RCNN和Fast RCNN等物体检测架构中,作者提出RPN,专门用来提取候选框,一方面RPN耗时少,另一方面RPN可以很容易结合到Fast RCNN中,称为一个整体。RPN的引入,可以说是真正的把物体检测整个流程融入到一个神经网络中。
作用:对诸多锚框进行打分,区分出前景和后景,即区分出背景和物体。

参考:
https://www.cnblogs.com/wangyong/p/8513563.html
https://blog.csdn.net/Lin_xiaoyi/article/details/78214874
https://blog.csdn.net/xjtdw/article/details/98945548

你可能感兴趣的:(Faster-Rcnn,目标检测,深度学习,计算机视觉)