【SFace】《SFace: An Efficient Network for Face Detection in Large Scale Variations》

在这里插入图片描述
arXiv-2018



1 Background and Motivation

人脸检测是许多人脸相关应用的基础且必要的步骤,例如,人脸标记(face landmark)和人脸识别(face recognition)
在这里插入图片描述 在这里插入图片描述
图片来源:iOS 相机流人脸识别(二)-关键点检测(face landmark --Dlib)

随着数码相机行业的发展,4K超高清分辨率相机,如 3840×2160,变得越来越流行!这种超高分辨率的图片给人脸检测带来了很大的挑战,因为人脸的尺寸范围变化巨大,从 10×10 到 2000×2000.

为了解决人脸检测中的 large scale variation,传统方法采用如下两种方式:

  • from input-level:采用图像金字塔,显然,会增加 computational cost,推理速度很慢,而且还需要 post-processing 来合并图像金字塔的结果!
  • from model or feature level:依赖于精心设计的 anchor 策略,但是 vulnerable to dataset distributions,鲁棒性不强。或者基于 anchor-free 的方法,eg:DenseBox 或者 UnitBox,但是定位能力又不够,往往没有 anchor-based 方法定位的准!精度就下去了

作者观察到,anchor-based 方法能在 32×32 到 512×512 范围内提供很好的定位,anchor-free 的方法有利于检测超大尺寸的脸

于是,作者结合 anchor-based 方法和 anchor-free 的方法,提出了 SFace 来缓解人脸检测问题中尺度变化较大(Large Scale Variations)的问题!

2 Advantages / Contributions

  • 提出 SFace 网络,结合 anchor-based 和 anchor-free 方法来解决人脸检测任务中 large scale variation 问题,采用 re-score approach based IoU 来使两个 branch 更好的 unify
  • 制作开源了高分辨率人脸检测数据集,4K-Face
  • ~ 50 fps,80% AP on 公共数据集 WIDER FACE dataset!(速度提升了一个数量级,精度差不多)

3 Method

在这里插入图片描述
在这里插入图片描述

integrates the anchor-based method and anchor-free
re-score approach based IoU 来融合 anchor-based 和 anchor-free 方法

3.1 Feature Pyramid Backbone

与 FPN 不同点在于,只采用了 P3-P5,作者说这足够了,FPN中 3×3 的平滑卷积被替换成了 1×1 ,256-D 的 channels 缩减到了 32-D
(FPN 的解读可以参考 【FPN】《Feature Pyramid Networks for Object Detection》
在这里插入图片描述
主干采用的是 Xception-39,感受野达到了 1679,在 ImageNet 上,top1 error 44.9%,top5 error 21.4%

3.2 Anchor-based Branches

P3 到 P5 上的 anchor 大小为 1 6 2 16^2 162 3 2 2 32^2 322 6 4 2 64^2 642,每个 anchor 2 个 ratios {1:1,1:1.5},3 个 scales { 2 0 2^0 20 2 1 / 3 2^{1/3} 21/3 2 2 / 3 2^{2/3} 22/3}(没想到在 FPN 的结构中还用了不同的 scale),尺度覆盖范围: 1 6 2 16^2 162 to 101.5 9 2 101.59^2 101.592

101.59 计算方法是如下(python)

64*2**(2/3)

分类 sub-net 是二分类,face or background

回归 sub-net 用的 IoU Loss(IoU Loss 的解析可以参考 【IoU Loss】《UnitBox: An Advanced Object Detection Network》),而不是 smooth-L1,回归中心坐标和长宽四个参数的改变量

3.3 Anchor-free Branch

在这里插入图片描述
anchor-free 的分支插在了 P3 层上,辅助 anchor-based 分支,用来捕获那些 anchor-based 覆盖不到的尺度!

这里的 anchor-free 的方法借鉴,DenseBox 和 UnitBox 方法,直接回归当前像素到 GT 的四个边界的距离
在这里插入图片描述
公式化表达如下,可以用左上角 ( x t , y t ) (x_t,y_t) (xt,yt) 和右下角 ( x b , y b ) (x_b,y_b) (xb,yb) 坐标表示 target bbox,对于当前像素 ( x i , y i ) (x_i,y_i) (xi,yi) 来说,能通过如下 4-D 的 vector 来描述 target bbox(到目标框四个边界的距离)
在这里插入图片描述
然后,用 IoU Loss 来回归,计算方式如下
在这里插入图片描述
N bbox 的面积,除以 N 是来做尺度归一化的

3.4 Classi cation with IOU

anchor-based 和 anchor-free 的方法在 localization manners 和 confidence scores 上有很大的不同,很难把两种方法合并到一起

anchor-based 和 anchor-free 方法的分类子网络自信度含义不同,都无法表示定位的准确度

  • anchor-based 方法的 classification confidence 主要表示的是 anchor 是否为目标的概率
  • anchor-free 方法的 confidence score mostly indicates whether the corresponding pixel falls on a face(FDDB 数据集,落在椭圆区域中)
    在这里插入图片描述
    在这里插入图片描述
    http://vis-www.cs.umass.edu/fddb/samples/

贸然将二者的分类结果合为一体是不合理的,会导致检测性能极具下降!

作者把分类分支表示成 IoU 得分,将 anchor-free 和 anchor-based 方法融合在一起,具体如下,anchor-based 和 anchor-free 的方法训练完成后都会产生 bbox prediction,计算这些 prediction 与 GT 的 IoU,IoU > 0.5 的anchor(anchor-based)或 pixel(anchor-free)视为 positive,其它视为 negative,用 binary cross entropy 分类!(作者试过用regression 的方式来训练分类分支,效果没有用 binary cross entropy 好

这样一来,原来 anchor-based 和 anchor-free 分类分支的作用会被强制替换成表示定位精度的得分!可以理解为是一种后处理操作!

作者也采用了 focal loss 来缓解正负样本不均衡!

论文中,anchor-based 和 anchor-free 方法的回归分支都采用的是 IoU loss(positive 的 IoU 才计算 Loss),anchor-free 回归分支中的 IoU Loss 好理解,和 UnitBox 一样,anchor-based 方法应该就是,回归出 delta,作用在 anchor 上,得出 prediction,然后 -log IoU

这样两个分支就完全统一了,分类分支表示的是定位的精度,回归分支都采用 IoU Loss,表示的是定位坐标!

4 Experiments

4.1 Datasets

  • A new dataset called 4K-Face:5012 张超高分辨率的图像 with extremely large face scale variations,30,000+ face,3840×2160
  • WIDER FACE dataset:32,203 images and 393,703 annotated faces,
    • 158,989,train
    • 39,496,validation
    • rest,test(验证集和测试集分为 easy,medium 和 hard,样本逐渐增多,hard 包含所有)

两个数据集尺度分布方面的比较(我有点比较奇怪,4K-Face 人脸比较少,怎么画出来比 WIDER FACE 的人脸还多,把纵坐标画成百分比不好吗?)

在这里插入图片描述
在这里插入图片描述
可以看到,作者制作的 4K-Face 数据集,尺度分布更广

WIDER FACE 数据集中,1%的人脸 size 大于 512 pixels,30% 以上的图片尺寸小于 32 pixels

4.2 Overall performance

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
可以看到,easy 上不是表现的最好,medium 和 hard 上傲视群雄,hard 好才是真的好

4.3 Ablation study

和 RetinaNet 和 UnitBox 比较一下,
在这里插入图片描述
AP(hard)最猛,就说明了一切
在这里插入图片描述

输入尺寸,推理时间和精度的比较
在这里插入图片描述
最后来感受一下检测效果

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

5 Conclusion(own) / Future work

  • anchor-free 的方法,DenseBox,UnitBox(IoU loss),这两种方法是 trained in a segmentation-like way,有椭圆的 seg-map
  • 在 IoU Loss 基础上,做了个尺度归一化
  • 通过把分类分支表示成定位精度 IoU score,来合并 anchor-based 和 anchor-free 的方法!两类方法的回归分支都采用的是 IoU Loss
  • 3.4 小节要仔细品读

附录——R Talk | 旷视科技目标检测概述:Beyond RetinaNet and Mask R-CNN

R Talk | 旷视科技目标检测概述:Beyond RetinaNet and Mask R-CNN

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值