Faster R-CNN

  • 在 Fast R-CNN 降低了卷积的时间时候,region proposal 成为了效率的瓶颈
  • 引入了一个 region proposal 的网络 RPN(region proposal network),这是一个全卷积网络(FCN),可以在每个位置预测目标边界和目标分数
  • 生成区域后用 Fast R-CNN 继续做
  • 将 RPN 和 Fast R-CNN 合并成一个新的网络

introduction·

卷积特征映射也可以用来生成 region proposal

在特征的基础上添加额外的卷积层来构建 RPN

为了将两个网络融合,提出了新的训练方式:在 fine-tune region proposal task 和 fine-tune object detection 之间交替

Region Proposal Networks·

输入任意大小的图像,输出一组矩形的 proposals,每个 proposal 都有对应的分数 objectness score

在这里插入图片描述

  • slide a small network over the feature map
    • input n×nn \times n spatial window of the feature map
    • output 低维向量
    • 就是一个 n×nn\times n 的卷积层
  • 分支出去两个,一个 box-regression layer (reg) 和一个 box-classification layer (cls),刚才得到的低维向量分别进到两个部分中
  • 之前说了是 FCN,所以两个分支其实是两个 1×11\times 1 的卷积层

Anchor·

在每个 sliding window 上,同时 predict kk 个 region proposals,所以 reg 的输出大小是 4k4k(region proposal 的位置参数),cls 的输出大小是 2k2k(只关心这个框是不是background,是的概率和不是的概率,2个数)

我们使用一个 sliding window 在 feature map 上滑动,找到这个 sliding window 的中心点在原图上对应的像素点位置,在原图上以这个像素点为中心生成一系列 anchor boxes,这些 anchor boxes 的大小等是预设的。

we use 33 scales with box areas of 1282128^2, 2562256^2 , and 5122512^2 pixels, and 33 aspect ratios of 1:1,1:2,1:1, 1:2, and 2:12:1

这样就会有 3×33 \times 3 一共 99 种 anchor

基于候选框的 cls 的得分,选出大致 2k 个候选框

Loss·

image-20220624004345039

image-20220624004350654

权值共享·

论文提出一种算法通过交替优化来实现权值共享,有四个步骤:

  1. 利用ImageNet预训练分类模型初始化前置卷积网络层参数,并开始单独训练RPN网络参数;
  2. 固定RPN网络独有的卷积层以及全连接层参数,再利用 ImageNet预训练分类模型初始化前置卷积网络参数,并利用RPN 网络生成的候选框去训练Fast RCNN网络参数。
  3. 固定利用Fast RCNN训练好的前置卷积网络层参数,去微调RPN 网络独有的卷积层以及全连接层参数。
  4. 同样保持固定前置卷积网络层参数,去微调Fast RCNN网络的全连接层参数。最后RPN网络与Fast RCNN网络共享前置卷积网络层参数,构成一个统一网络。对Fast R-CNN的全连接层进行微调。