这篇应用是我的同事做的一些工作,感谢@张翼翔
一、人脸关键点检测的目标
人脸关键点检测目标就是自动定位人脸关键区域,之后对人脸进行对齐校正,本质属于人脸识别前的预处理过程
二、人脸关键点检测的应用
- 美颜/美妆
- 换脸
- 表情识别
三、落地方案
3.1 reference
PFLD:A Practical Facial Landmark Detector
3.2 关键点面临的挑战
- 遮挡,姿态
- 分辨率,亮度
- 表情变化
- 精度与模型大小
- 数据不平衡
PFLD是一个多任务的模型同时解决了角度检测和关键点定位,在实际测试中角度回归的准确度也很准确
3.3 pipeline
3.4 改进措施
a. 模型层面
b. 数据层面
融合多个数据集WLFW、LAPA、300W,其中包含许多大角度的侧脸,闭眼,遮挡等情况,同时使用bounding-box随机扰动,随机旋转,随机水平翻转,随机亮度做数据增强
c. loss
关键点损失:WingLoss
姿态损失:smoothL1
L=关键点损失+姿态损失
3.5 结果对比
四、评价指标
e
i
=
∣
∣
x
i
−
x
i
∗
∣
∣
2
d
e_i= {||x_i-x^*_i||_2\over d}
ei=d∣∣xi−xi∗∣∣2
d
=
两
个
外
眼
角
的
距
离
−
I
O
N
d=两个外眼角的距离-ION
d=两个外眼角的距离−ION
e
i
=
∑
i
=
1
N
∣
∣
x
i
−
x
i
∗
∣
∣
2
N
∗
d
e_i={\sum^N_{i=1}||x_i-x_i^*||_2 \over N*d}
ei=N∗d∑i=1N∣∣xi−xi∗∣∣2
N
∗
d
=
两
个
瞳
孔
的
距
离
∗
关
键
点
数
−
N
M
E
N*d=两个瞳孔的距离*关键点数-NME
N∗d=两个瞳孔的距离∗关键点数−NME