转R-CNN学习笔记5:Faster R-CNN
Posted 帅气的小王子
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了转R-CNN学习笔记5:Faster R-CNN相关的知识,希望对你有一定的参考价值。
原文地址:http://blog.csdn.net/cv_family_z/article/details/46864473
摘要:SPPNet和Fast R-CNN降低了网络学习特征的时间,SS由于需耗时1~2s,EdgeBoxes
耗时约0.2s,提取proposal的方法成为检测的瓶颈。本文提出了Region Proposal Networks(RPNs)实现实时提取proposals,它能与检测网络共享全图像卷积特征。RPNs是一个能够预测某位置上的目标bbox和objectness的全卷积网络。对于VGG-16网络,检测系统在GPU上的速度为5fps。VOC2007的mAP为73.2%,每幅图像大约300个proposals。
灵感:基于区域的检测使用的卷积特征图,如FRCN,同样可以用来生成proposals。在这些卷积层之后,作者通过增加两个卷积层构建了RPNs,一个将卷积图编码为低维(256d)向量,另外一个在每个卷积图的位置上生成一个objectness score和k个proposals的回归bbox,k=9。
RPNs网络
RPNs将图像作为输入,输出带有objectness score的bbox。使用一个小的网络在最后一个卷积层输出的卷积特征图上产生区域proposals,这个小网络与输入的特征图以n*n的窗口进行全连接,每个滑动窗之后映射到一个低维向量(ZF5-256d,VGG-512d),之后将向量送入两个全连接的子层:一个bbox回归层和一个bbox分类层。网络的结构如下图所示:
平移不变的锚点
每一个滑动窗滑过的位置有k个proposals,cls子层输出每个proposal的object\\non-object的2k个scores,reg子层输出对应坐标的4k个节点。k个proposals根据k个锚点进行参数化,每个锚点是对应尺度和长宽比的中心,文中使用3个尺度,3个长宽比,得到9个锚点。如果特征图大小为
W×H
,则共有WHk个锚点。
Proposals学习的损失函数
按照以下规则对锚点分配二值类别标记。正样本标记:(1)与groundtruth的IoU最高的锚点,(2)与任意groundtruth IoU>0.7的锚点,某个groundtruth有可能对应几个正锚点。负样本:与groundtruth的IoU<0.3的锚点。其余的锚点不在训练使用的范围内。使用FRCN的multi-task loss最小化目标函数,某个锚点box的损失函数为:
式中
pi
是锚点i为物体的预测概率,
Lcls
是而分类object/non-object的softmax loss。
优化
RPN是一个全卷积网络,可使用bp及SGD训练,使用FRCN中的image-centric进行训练,为了避免样本偏斜,每幅图采样256个样本计算loss,正负样本为1:1。
Region proposal与目标检测共享卷积特征
使用交替优化学习共享特征的4步训练法:
1)训练RPN,使用ImageNet初训练的网络进行end-to-end的微调;
2)使用FRCN及RPN生成的proposal训练一个检测网络,该步未共享特征;
3)使用检测网络初始化RPNs训练,固定共享的卷积层只微调为RPN新增的层;
4)固定共享层,微调FRCN的全连接层
实现细节
使用单尺度图像训练RPNs和FRCN,缩放图像使得短边为600像素。对于每个锚点,三个尺度对应的box面积分别为
1282
,
2562
和
5122
,3个长宽比分别为1:1,1:2,2:1,学习到的平均proposal大小如下表所示:
对于
1000×600
的输入图像,约有20k个锚点,如果忽略cross-boundary的锚点,约有6k个用来训练。检测时,基于cls score使用NMS将proposal压缩至2k个,之后用top-N个proposal来检测。
实验结果
使用SS,EB,RBN生成proposal的实验结果及ablation的实验结果如下表所示:
ablation实验结果表明共享卷积特征mAP能提升1.2%,主要是在共享的第三步使用了微调的检测特征来微调RPN。
每一步的运行时间如下表所示
以上是关于转R-CNN学习笔记5:Faster R-CNN的主要内容,如果未能解决你的问题,请参考以下文章
转R-CNN学习笔记3:Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition(SPP-net)
(转)基于深度学习的目标检测技术演进:R-CNNFast R-CNNFaster R-CNN
目标检测基础学习-Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks 阅读笔记