RPN自学笔记

2021/10/5 23:13:01

本文主要是介绍RPN自学笔记,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

RPN是用来提取候选框的网络。

rpn出自Faster R-CNN。Faster R-CNN = RPN + Fast R-CNN。

 上图所示为Faster R-CNN的网络结构。

Faster R-CNN的算法流程可以分为三个步骤:

1.将输入图像输入到特征提取网络中的到特征图

2.使用RPN网络生成候选框,投影到特征图上获得相应的特征矩阵。

3.将每个特征矩阵通过ROI pooling层缩放到7*7大小的特征图,将特征图展平通过一系列的全连接层得到预测结果。

RPN网络的结构:

这个滑动的窗口其实是一个3*3*256的卷积(stride=1,padding=1)这样每个点就都能预测的到了。

经过滑动窗口之后生成的shape与特征图是一样的。然后经过1*1*2k的卷积生成对类别的预测,经过1*1*4k的卷积生成对边界框回归参数的预测。(原文k=9)

在网络输出的特征图上有一个滑动的窗口。每滑动一次就生成一个1维的特征向量。然后通过两个全连接层分别输出目标概率以及边界框的回归参数。(这里的256是因为是通过ZF生成的特征图,深度为256,如果是VGG16那深度就是512)

 

 第一个值预测是背景的概率,第二个值预测是物体的概率。所以RPN只会区分前景跟背景。

(x,y)代表对anchor中心坐标预测的偏移量。w,h是对anchor高度和宽度的调整。我们希望调整之后能够尽可能的框住真实的目标。

文中给出的anchor的尺度和比例。所以一共有九种anchor。 每个地方会生成2*9=18个类别分数,以及4*9=36个边界框回归参数。



这篇关于RPN自学笔记的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程