人脸检测为目标检测的特例,是商业化最早的目标检测算法,也是目前几乎各大 CV 方向 AI 公司的必争之地。
WIDER FACE 数据集是由香港中文大学发布的大型人脸数据集,含 32,203幅图像和 393,703 个高精度人脸包围框,该库中人脸包含尺度、姿态、表情、遮挡和光照等变化。
WIDER FACE 几乎是目前评估人脸检测算法最权威的数据集。
RetinaFace 是今年 5 月份出现的人脸检测算法,当时取得了 state-of-the-art,作者也开源了代码,过去了两个月,目前仅以极其微弱的精度差屈居第二名,但因为第一名的 AInnoFace 算法(来自北京创新奇智公司)没有开源,所以目前 RetinaFace 可称得上是目前最强的开源人脸检测算法。
RetinaFace 来自论文《RetinaFace: Single-stage Dense Face Localisation in the Wild》,作者来自帝国理工学院、InsightFace、Middlesex University London、FaceSoft。
相信很多朋友对 InsightFace 并不陌生,它是目前针对 2D 与 3D 人脸分析(含检测、识别、对齐、属性识别等)最知名和开发者最活跃的开源库。RetinaFace 代码已经并入该库。
下图为在 WIDER FACE 数据集上验证集三个子集的排名靠前的算法结果曲线和精度:
下图为在WIDER FACE 数据集上测试集三个子集的排名靠前的算法结果曲线和精度:
在 6 个子集中,RetinaFace 取得 1 个第一名,2 个并列第一名,3 个以极其微弱精度差屈居于第二名。
RetinaFace 使用特征金字塔网络架构:
其主要创新点在损失函数的设计。
下图说明了 RetinaFace 的核心思想:
在人脸检测多任务学习中,除了传统的人脸分类损失函数和包围框回归损失函数,作者额外标注了人脸 5 点信息,并以此引入人脸对齐的额外监督信息损失函数,还引入了 self-supervised 解码分支预测 3D 人脸信息分支。
集合了更多监督信息和自监督信息,是 RetinaFace 取得成功的关键。
很多时候,人脸检测是为了后续的识别,作者特意将检测结果送入人脸验证网络,在 IJB-C test set 上测试结果表明可以提高 ArcFace 的人脸验证精度 (TAR=89.59% for FAR=1e-6)。
由上图可知,相对于 MTCNN,在助力人脸验证上有一致性精度提高的表现。
更为难能可贵的是,使用轻量级骨干网络,RetinaFace 算法在 CPU 上测试 VGA 图片可以达到实时。如下图: