RPN网络处理流程:
1、在底层共享卷积层的输出特征图上,以每个位置为中心生成k个anchor,计算anchor与原始图像GT的IoU,根据IoU结果设置anchor的label为正类1,负类0,忽略-1
2、然后对feature map进行两路卷积,卷积核分别为1x1x2k和1x1x4k,分别表示RPN网络输出的每个anchor中包含物体的概率值以及物体的坐标
3、将RPN网络输出的每个anchor的概率得分和每个anchor中物体的坐标作为预测信号,将第1步中计算的每个anchor的label以及阈值对应的GT的坐标作为监督信号,计算RPN网络的损失
4、基于损失函数优化RPN网络的输出结果,使得RPN网络输出的anchor中包含物体的概率得分和物体坐标位置更准确
5、RPN网络的输出结果(anchor的概率得分和坐标位置)就是region proposal,对region proposal进行NMS后送入RoI Pooling层完成进一步的分类与回归(参照Fast R-CNN)
备注:Faster R-CNN论文中anchor_scale=[128, 256, 512]是相对于原始像素的,对于采用VGG16作为骨干网络来说,anchor_scale对应到VGG16输出的feature map上是[8, 16, 32],存在16倍的关系