PFLD 人脸关键点检测论文详解

#PFLD :A Practical Facial Landmark Detector 人脸关键点检测
这是19年2月份发出的一篇人脸关键点检测的论文,它在追求速度的同时保证了很高的精度,可以达到140fps(Qualcomm ARM 845)
作者把关键点检测的难点主要分为4个方面(人脸的光照等局部变化,姿势等整体变化,数据不平衡,模型效率)
##论文的主要贡献

  1. 作者认为整体变化比局部变化起着更重要的作用,因此设计了网络去预测人脸的几何信息并正则化每一个关键点的定位
  2. 解决数据不均衡,比如大角度的人脸数量远远多于正脸数量。作者通过对数据少的那一类惩罚更多的损失来解决这个问题。
  3. 为了扩大感受野以及更好的捕捉人脸的全局结构信息,添加了multi-scale fully-connected (MS-FC) layer。
  4. 为了加快速度,采用了mobilenet作为backbone。
    ##损失函数的设计
    原始的L1或L2损失没有充分考虑人脸的几何信息。它认为同一个人脸在不同的相机设备,关键点的直接差值是不一样的。因此需要把人脸的几何信息添加到惩罚项中会有助于解决这个问题。
    由于训练集中,一般角度大的人脸图片会较少,所以需要在损失函数去平衡这一现象。其损失函数如下:
    PFLD 人脸关键点检测论文详解
    ||*||表明n个landmarks的距离或者误差,M为检测人脸的landmarks数量,N为一次训练多少个人脸。替换其中的系数,最终的损失函数如下,总体意思就是角度越大,惩罚项系数越大,更多的参数说明可以看论文。
    PFLD 人脸关键点检测论文详解
    ##网络结构
    网络结构很简单,一个主网络和一个辅助网络
    PFLD 人脸关键点检测论文详解

主网络如下,用来输出最终预测的136/2个landmarks
PFLD 人脸关键点检测论文详解

辅助网络如下,用来预测3个角度
PFLD 人脸关键点检测论文详解