Faster R-CNN

  • 在 Fast R-CNN 降低了卷积的时间时候region proposal 成为了效率的瓶颈
  • 引入了一个 region proposal 的网络 RPNregion 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 的输出大小是 4k4kregion 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的全连接层进行微调