[SRN] Selective Refinement Network for High Performance Face Detection

SRN 网络结构图

SRN网络结构

和 Refine Det 有比较类似的思路,基于 Retina Net,并引入focal loss,在 anchor based 人脸检测器中引 入了two-step 的 cls+reg 任务,有效地降低了人脸检测中的 false positives,提开了人脸定位的精度,且 有利于小尺度人脸的检出。

STC(Selective Two Step Classification)

通过C2,C3,C4(1st-step)/P2, P3, P4(2nd- step)完成2-stage的分类;

1st-step 通过预定义的 object ness 阈值过滤大部分易分负样本,减少2nd-step 分类器所需处理的样本 量。
解析: anchor_based 检测器为检出小尺度人脸,都会在特征金字塔的浅层 feature maps 上做 anchor的 密集采样,小尺度人脸虽保持了高召回率,但带来了海量 false positives,进一步导致了正负样本数量不 均衡; 从这一点上看, STC 就是作用于浅层 feature map 上。

2-Step 分类操作通常在浅层 feature map 上进行,因为浅层feature maps anchor 数量特别多,且特征 表达能力较弱, context 信息也不够, 语义信息缺乏,因此在浅层 feature maps 上做2-step 分类会有 很好的效果

SRN 在两阶段中都引入了 focal loss 操作,可以更全面地利用所有样本,且 STC 中两阶段的分类器共享 了大部分参数(仅预测的分类分支参数不一样),因为两者任务相同:都是从 bg 中判别出前景的人脸 区域

STR (Selective Two-step Regression)

1-stage 的检测只对回归框做一次调整是不够的,但cascade rcnn 里表明盲目地迭代 multi-Step 的bbox reg,并不能进一步提升时的定位精度.

原因:
三个浅层 feature maps 本职是通过密集某样的anchor 检测小尺度人脸,这些 feature maps 特征本身的表达能力也不够,因此要其进一步完成bbox 回归,精准度就显得不够了
训练阶段,让浅层 feature map 也参与 bbox 回归任务,不太适合,会导致模型过于关注其产生的 reg loss, 忽略 cls loss。
基于此, SRN 选择仅在高层 P5、P6、 P7上使用 STR 操作,出发点很简单:
低层 feature maps 专注于分类任务, 高层 feature maps 充分利用大尺度人脸的高级语义信息,训练出 更适于 bbox 精准定位的分支。

SRN与Refine Det 的关系

STC 与 STR 是 Refine Det 中 ARM、 ODM 的进一步深入探索

Receptive Field Enhancement

RFE 模块引入了多样化的感受野信息,有助于 SRN检出极端尺度、姿态下的人脸,融合了 shortcut 和 Inception 的思想


RFE结构

你可能感兴趣的:([SRN] Selective Refinement Network for High Performance Face Detection)