Faster R-CNN详解
创始人
2024-02-21 23:26:10
0

Faster R-CNN

Faster R-CNN是作者Ross Girshick继Fast R-CNN后的又一力作。使用VGG16作为网络的backbone,推理速度在GPU上达到5fps(包括候选区域的生成),准确率也有进一步的提升。在2015年的ILSVRC以及COCO竞赛中获得多个项目的第一名。

在这里插入图片描述

Faster R-CNN算法流程

1.将图像输入网络得到相应的特征图;
2.使用RPN结构生成候选框,将RPN生成的候选框投影到特征图上获得相应的特征矩阵;
3.将每个特征矩阵通过ROI pooling层缩放到7x7大小的特征图,接着将特征图展平通过一系列全连接层得到预测结果。

在这里插入图片描述

第一步第三步和Fast R-CNN一样,区别是第二步,使用RPN生成候选框。

RPN结构

请添加图片描述

我们在特征图上生成一个滑动窗口,每滑动一次生成一个一维向量,然后通过两个全连接层分别生成目标概率和边界框回归参数。2k指的是针对我们的k个anchor boxes为前景和背景的概率,并不对其进行分类。4k指的是针对我们的k个anchor boxer生成的边界框回归参数。256-d指的是backbone的深度,ZF网络为256,VGG的话为512。

请添加图片描述

对于特征图上的每个3x3的滑动窗口,计算出滑动窗口中心点对应原始图像上的中心点,并计算出k个原图特征图。Faster R-CNN中给出了三种anchor的尺度和比例,分别是{1282,2562,5122},{1:1,1:2,2:1}。所以我们每个滑动窗口在原图中都会有9种anchor。

请添加图片描述

RPN生成的候选框有上万个,对于RPN生成的候选框之间存在大量重叠,基于候选框的cls得分,采用非极大值抑制,IoU设为0.7,这样每张图片大约只剩2k个候选框。训练RPN我们从上万的候选框中采样其中256个anchor,这256个anchor是由正负样本组成的,他们的比例大约是1:1,正样本不足采用负样本补齐。对于正样本,我们把与ground-truth box相交的IOU超过0.7的称为正样本。极少数情况下,如果正样本不足,会取ground-truth box相交的IOU超过最大的anchor为正样本。对于负样本,我们把与ground-truth box相交的IOU低于0.3的称为正样本。

RPN损失函数

在这里插入图片描述

pi表示第i个anchor预测为真实标签的概率;
pi*当为正样本时为1,当为负样本时为0;

ti表示预测第i个anchor的边界框回归参数;
ti*表示第i个anchor对应的GT Box;

Ncls表示一个mini-batch中的所有样本数量256;
Nreg表示anchor位置的个数(不是anchor个数)约2400。
取λ为10,240与256差不了多少,所以pytorch官方实现统一用Ncls
损失函数由两部分,先看分类损失,使用softmax Cross Entropy:

在这里插入图片描述

使用Binary Cross Entropy:

在这里插入图片描述

对于边界回归损失:

在这里插入图片描述

Faster R-CNN训练

原论文中采用分别训练RPN以及Fast R-CNN的方法:
(1)利用ImageNet预训练分类模型初始化前置卷积网络层参数,并开始单独训练RPN网络参数;
(2)固定RPN网络独有的卷积层以及全连接层参数,再利用ImageNet预训练分类模型初始化前置卷积网络参数,并利用RPN网络生成的目标建议框去训练Fast RCNN网络参数;
(3)固定利用Fast RCNN训练好的前置卷积网络层参数,去微调RPN网络独有的卷积层以及全连接层参数;
(4)同样保持固定前置卷积网络层参数,去微调Fast RCNN网络的全连接层参数。最后RPN网络与Fast RCNN网络共享前置卷积网络层参数,构成一个统一网络。

而我们现在直接采用RPN Loss+ Fast R-CNN Loss的联合训练方法。

相关内容

热门资讯

喜欢穿一身黑的男生性格(喜欢穿... 今天百科达人给各位分享喜欢穿一身黑的男生性格的知识,其中也会对喜欢穿一身黑衣服的男人人好相处吗进行解...
发春是什么意思(思春和发春是什... 本篇文章极速百科给大家谈谈发春是什么意思,以及思春和发春是什么意思对应的知识点,希望对各位有所帮助,...
网络用语zl是什么意思(zl是... 今天给各位分享网络用语zl是什么意思的知识,其中也会对zl是啥意思是什么网络用语进行解释,如果能碰巧...
为什么酷狗音乐自己唱的歌不能下... 本篇文章极速百科小编给大家谈谈为什么酷狗音乐自己唱的歌不能下载到本地?,以及为什么酷狗下载的歌曲不是...
家里可以做假山养金鱼吗(假山能... 今天百科达人给各位分享家里可以做假山养金鱼吗的知识,其中也会对假山能放鱼缸里吗进行解释,如果能碰巧解...
华为下载未安装的文件去哪找(华... 今天百科达人给各位分享华为下载未安装的文件去哪找的知识,其中也会对华为下载未安装的文件去哪找到进行解...
四分五裂是什么生肖什么动物(四... 本篇文章极速百科小编给大家谈谈四分五裂是什么生肖什么动物,以及四分五裂打一生肖是什么对应的知识点,希...
怎么往应用助手里添加应用(应用... 今天百科达人给各位分享怎么往应用助手里添加应用的知识,其中也会对应用助手怎么添加微信进行解释,如果能...
苏州离哪个飞机场近(苏州离哪个... 本篇文章极速百科小编给大家谈谈苏州离哪个飞机场近,以及苏州离哪个飞机场近点对应的知识点,希望对各位有...
客厅放八骏马摆件可以吗(家里摆... 今天给各位分享客厅放八骏马摆件可以吗的知识,其中也会对家里摆八骏马摆件好吗进行解释,如果能碰巧解决你...