S3FD:Single Shot Scale-invariant Face Detector

来源:互联网 发布:程序员的工作环境 编辑:程序博客网 时间:2024/06/08 08:31

1、主要贡献:

      (1) proposing a scale-equitable face detection framework to handle different scales of faces well.

      (2) improving the recall rate of small faces by a scale compensation anchor matching strategy.

      (3) reducing the false positive rate of small faces via a max-out background label.

2、Anchor-based 方法的主要问题:

      (1) 较小的人脸在用于检测的层上对应的特征太少

      (2) anchor scale和感受野的不匹配,而且两者对于较小的人脸而言都太大了

      (3) anchor的匹配策略导致小的人脸只能匹配到很少的anchor

      (4) 如果使用较小的anchor来检测较小的人脸,对于同样大小的图像,就会产生更多的negative

3.1、Scale-equitable framework

       为了保证较小的人脸也能有足够的特征表示,这里采用了wide range的anchors,anchor的stride size从4像素到128像素,网络结构如图所示:

       (补图)

         conv5_3之前用的是VGG16的层,conv_fc6和conv_fc7也是由VGG16的全连接层转换过来的。他们之后还有4个conv层,一共有6个层作为detection layer。

         文中具体解释了一下如何设计anchor的scale。对于6个detection layer,他们对应的anchor scale是不同的,也是为了检测不同大小的人脸,所有的anchor的长宽比均为1,因为人脸是接近于1:1的。 这里对effective receptive field进行了详细的说明,主要是两个概念。ERF:有效感受野,即认为理论感受野(TRF)的外围区域对结果的贡献很少,而实际上对结果做出贡献的是TEF中中间的部分,即ERF,而当anchor scale和ERF差不多大的时候才能比较准确的检测人脸。另一个概念是Equal-proportion interval principle,也就是说每一个anchor的scale是它interval的4倍(这作者怕不是我厂球迷),这样能保证不同scale的anchor在图像上的density一直,也就是说对于任意大小的人脸,它能匹配到的anchor数量是近似一致的。

3.2、Scale compensation anchor matching strategy

        首先指出了人脸和anchor匹配过程中的问题,即anchor scale是离散的而人脸尺寸是连续的,也就是说如果人脸的尺寸如果和算法中设定的anchor尺寸差异比较大的话,那么这些人脸会匹配到很少的anchor,从而导致recall的下降。在这里作者通过实验分析得到了两个结论:每个人脸对应的anchor数平均为3;人脸匹配的anchor数与人脸尺寸高度相关。于是作者通过两个stage来处理这个问题。

        stage1:把匹配的IOU阈值从0.5下降到0.35,也就是整体提高了匹配anchor平均数;

        stage2:对于tiny and outer face,找出overlap大于0.1的anchor,并挑选top-N作为匹配anchor,这里N由stage1中的average number决定。(这里的问题就是具体是如何实现的,是stage1以后再找出小于一定匹配数的face作为tiny&outer么?)

3.3、Max-out background label

        在训练过程中99.8%的anchor都是negative,而这些neg主要都是由conv3_3,也就是用来检测小尺度人脸的那个层产生的。所以对于每一个最小的anchor,预测Nm个background label并选择最大值作为它最后的分数。(这段其实并没有理解,等作者放出源码来再看看吧,是为了让背景anchor的p尽量大从而降低其产生的loss么?)

原创粉丝点击