Faster RCNN AnchorTargetLayer ProposalLayer ProposalTargetLayer详细对比

Faster RCNN中三个比较重要的层,其作用位置、功能详细对比如下。三种层的出现顺序依次为AnchorTargetLayer、ProposalLayer、ProposalTargetLayer:

  Alt trainging End2End trainging 输入框个数 输出框个数
AnchorTargetLayer train train 6000个anchor 256个anchor与其对应的groundtruth
ProposalLayer train/test train/test

训练:20000

测试:6000

训练:2000

测试:300

ProposalTargetLayer

(端到端训练中这部分功能RoIDataLayer实现)

/ train 由ProposalLayer输入的2000个proposal 128个proposal与其对应的groundtruth

通过上表可以发现,AnchorTargetLayer与ProposalTargetLayer极其相似,都是只用于训练阶段,输出都是n个“框”与其对应的groundtruth,输入稍有不同,AnchorTargetLayer的输入是原始的anchor,而ProposalTargetLayer的输入是经过回归后生成的proposal。

现对两者通过下表进行详细对比:

  输入框个数 输出框个数 正负样本比例 正负样本阈值
AnchorTargetLayer 6000个anchor 256 1:1(正:负)

正样本:>=0.7

负样本:<0.3

与groundtruth

ProposalTargetLayer 2000个proposal 128 1:3(正:负)

正样本:>=0.5

负样本:<0.5 && >=0.1

与groundtruth

这个还要再额外解释一点:ProposalLayer产生的RoI都是正样本,与groundtruth算了一次IoU后,根据阈值又分成了正负样本,然后送入Fast RCNN继续训练。AnchorTargetLayer、ProposalTargetLayer在测试阶段干脆就没有了。ProposalLayer直接产生300个RoI,送入Fast RCNN进行预测。

你可能感兴趣的:(图像目标检测)