人脸方向学习(十一):Face Landmark Detection-PFLD解读

整理的人脸系列学习经验:包括人脸检测、人脸关键点检测、人脸优选、人脸对齐、人脸特征提取五个过程总结,有需要的可以参考,仅供学习,请勿盗用。https://blog.csdn.net/TheDayIn_CSDN/article/details/93199307

PFLD解读

论文地址:https://arxiv.org/pdf/1902.10859.pdf

代码地址:https://github.com/guoqiangqi/PFLD

思路

做人脸关键点,找到最新的关机点论文PFLD,文章采用v2主干网,思路很好,实现比较简单,就是很难复现,特别是loss部分和角度预测作者没有公开,自己做到做好的效果300w上测试在NME在6左右,所以感觉还是有点问题,先整理下论文,后续公布实验流程。

一、论文简介

人脸关键点检测作为人脸相关应用的基础部分面对很多挑战,包括检测精度、处理速度、模型size的等多维的因素都要考虑到,在现实场景中很慢获取质量很高的人脸,因此引入了几个挑战:
1) 局部变化: 现实场景中人脸的表情、光照、以及遮挡情况变化都很大;
2)全局变化: 姿态和成像质量也影响图像中人脸的表征,人脸全局结构的错误估计直接导致定位不准;
3)数据不平衡: 不平衡的数据使得算法模型无法正确表示数据的特征;
4)模型的有效性: 由于手机和嵌入式设备计算性能和内存资源的限制,必须要求检测模型的size小处理速度快;
本文贡献
1)设计出一个使用的人脸特征点检测器PFLD,在复杂情况下也能保持高精度;
2)针对全局变化,PFLD采用分支网络来估计人脸样本的集合信息;
3)针对数据不平衡,设计新的loss function,加大对稀少样本错误的惩罚(感觉和focal loss思想类似)
4)使用mult-scale fc层用于扩大感受野精确定位人脸的特征点;
5)使用Mobilenet block构建网络的backbone提升模型的处理速度减少模型计算量

1、损失函数

在数据规模不大的情况下,训练质量取决于损失函数的设计。将几何信息考虑到损失惩罚中是可以帮助解决训练质量问题i的。另一方面,对罕见训练样本相对应的损失值进行更多的惩罚,可以有助于处理数据不平衡问题。作者指出他们提出的方法具备以下三个优势:

1)在3D姿态和2D距离度量之间以耦合的方式进行

2)直观,易于前向计算和反向传播

3)以单阶段方式工作而不是用级联的形式,这提高了优化能力

人脸方向学习(十一):Face Landmark Detection-PFLD解读_第1张图片

人脸方向学习(十一):Face Landmark Detection-PFLD解读_第2张图片

2、主干网络

人脸方向学习(十一):Face Landmark Detection-PFLD解读_第3张图片

其中,主干网络很简单,因为作者想验证的是即使是很简单的网络也能够通过新型的损失函数以及辅助子网络就可以达到SOT的性能。网络结构具体如下表所示

人脸方向学习(十一):Face Landmark Detection-PFLD解读_第4张图片

 

辅助网络只在训练阶段起到辅助作用,测试阶段不需要,

辅助网络特性:在不需要正面人脸作为输入的情况下计算出目标的角度

辅助网络的输入为backbone的第4的block;

人脸方向学习(十一):Face Landmark Detection-PFLD解读_第5张图片

3、训练超参数

训练期间,所有人脸所放到112×112大小,batch size设为256,Adam优化,权值衰减系数0.000001,momentum设为0.9,最大迭代次数64K,学习率0.0001固定不变。对于300W数据集,使用翻转和从-30度到+30度每隔5度的方法增强数据,每个样本随机遮挡20%的区域;对于AFLW,没有进行任何数据增强。

4、实验结果

检测精度对比如下面的表所示:300w上三个测试集测试,以瞳孔距离为归一化方式,比较了小中大网络结构的NME。

人脸方向学习(十一):Face Landmark Detection-PFLD解读_第6张图片

PFLD 0.25X和PFLD 1X两个模型的大小以及计算速度对比如下表所示

人脸方向学习(十一):Face Landmark Detection-PFLD解读_第7张图片

小结:

1)提出FDLD人脸特征点检测器,由主干网络和辅助网络组成,主干网络以mobilenet block为主要结构,同事引入多尺度fc扩大感受野增强面部结构特征的表达能力,辅助网络可以有效估计旋转信息,用来提升特征点的定位能力;
2)有几何规范化和数据不平衡问题引出新loss函数,整个算法在精度、模型尺寸、运行速度上都由于最先进的方法;
3)引入其他几何/结构信息来提升精度, 替换基础的loss(L2),针对训练阶段遇到的问题设计更加复杂的加权策略;
 

你可能感兴趣的:(计算机视觉,人脸系列学习)