许可优化
许可优化
产品
产品
解决方案
解决方案
服务支持
服务支持
关于
关于
软件库
当前位置:服务支持 >  软件文章 >  人脸对齐:Wing Loss人脸关键点检测算法(2018论文解读)

人脸对齐:Wing Loss人脸关键点检测算法(2018论文解读)

阅读数 4
点赞 0
article_banner

Wing Loss for Robust   Facial Landmark Localisation with Convolutional Neural Networks

  由萨里大学研究人员(第一至四作者)与江南大学研究人员(第五作者)共同研究,被CVPR2018收录,最早于2017年11月在arXiv上发表(美[ˈɑ:rkaɪv]) :
https://arxiv.org/abs/1711.06753v4

近几年,人脸关键点检测大多在“由粗到精”(coarse to fine)上研究,而这篇文章则另辟蹊径。依作者所说,这是第一篇在人脸关键点检测任务上对loss function进行讨论分析的文章,文章在loss function上进行改进,为人脸关键点检测任务提出“专用”的loss function——Wing loss,作者的出发点值得借鉴。

创新点

1.针对人脸关键点检测提出新的loss function —— Wing Loss

  2.针对人脸姿态角度多样而导致的检测精度不高问题,提出一种基于姿态的数据均衡方法从而提升人脸姿态变化时的关键点检测精度,这也是文章题目中“Robust”的体现

主要工作:

  除上述两点外,第三点是采用 two-stage landmark localisation,其实就是级联卷积神经网络的思想,更多人脸关键点检测中的级联思想可参见:
级联MobileNet-V2实现CelebA人脸关键点检测
深度学习人脸关键点检测方法—综述

我将从三个部分进行介绍这篇论文,分别是Wing loss、数据均衡方法 和 Two-stage landmark localisation,重点当然是Wing loss啦~~

Wing loss

命名:文中没有提到为什么命名为Wing loss,但是从 Wing loss的曲线图看到,好像翅膀(Wing),或许因此得名吧
图1

Wing loss 公式如下:
这里写图片描述

这里抛出两个问题:

第一,这是一个分段函数,为什么是分段函数?
第二,当 时,主体是一个对数函数,另外还有两个控制参数,分别是w和ε,为什么是对数函数?为什么要加控制参数?


  先解释第二个问题,通常的人脸关键点检测任务(回归任务)loss function都采用L2、L1和smooth L1 ,其中L2是使用最为广泛的

  这三个loss function曲线如下图所示:

这里写图片描述

这里写图片描述

讲到这里,Wing loss的由来就讲完啦,但是最最关键的还是要调参。要找合适的  ,作者做了一系列实验,给出了推荐值,请实验结果:
这里写图片描述

PBD(Pose-based Data Balancing)

本文除了提出一种新的loss function,还针对人脸关键点检测任务中遇到的人脸姿态多样化问题,提出一种基于姿态的数据均衡方法,来提升人脸关键点检测精度。

在分类任务中,数据不均衡非常容易导致模型性能不佳,而在人脸关键点任务(回归任务)中,作者同样认为,正脸太多,有旋转的脸太少,从而导致模型对有旋转的人脸的关键点检测精度低。 因此,提出一种基于姿态的数据均衡方法——PDB(Pose-based Data Balancing)

PDB方法:首先将 training   shapes进行对齐,将对齐后的training shapes进行PCA,用shape eigenvector将original shapes进行投影至一维空间,用来控制姿态变化。整个训练集投影后的系数通过一个直方图来展示,如下图所示:
这里写图片描述

有了这个直方图,就可以看到哪些姿态的人脸图像多,哪些少,然后通过复制那些占比较少的样本,使得所有样本均衡,这就是PDB方法。实验结果表明PDB方法可以提升人脸关键点检测精度:
这里写图片描述

Two-stage landmark localisation(Pose-based Data Balancing)

为了进一步提升精度,作者采用了级联思想,在文中称之为 Two-stage landmark localisation

level-1 采用的是CNN-6,level-2采用的是CNN-7, CNN-7与CNN-6不同之处在于:

  1. input比CNN-6大一倍,为128*128*3
  2. 多了一组操作——卷积、池化
  3. 第一个卷积层的卷积核个数为64(CNN-6为32)

level-1输出的landmark有两个作用:

  1. 移除人脸角度;
  2. 矫正bounding box 为level-2 提供更好的输入

CNN-6 模型如下:
这里写图片描述

小结

通过阅读该文章可知,在做人脸关键点时,可以注意以下几点:

  1. 由于人脸关键点检测是特殊的回归任务,因而要注意loss function是否对每一个点都“友好”,选用不同的loss function尝试实验,或许有新发现
  2. 数据不均衡问题不仅困扰分类任务,在人脸关键点检测任务中,不同姿态的人脸样本不均衡,同样会影响模型获得更高的精度,因此可尝试使用某一种指标,去衡量训练样本当中,人脸姿态的分布情况,然后对应的做数据均衡(该法数据数据增强)
  3. 级联,利用上一级的output,对iamge进行矫正,使下一级获得更好的input


免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

相关文章
技术文档
QR Code
微信扫一扫,欢迎咨询~
customer

online

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 board-phone 155-2731-8020
close1
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

姓名不为空

姓名不为空
手机不正确

手机不正确

手机不正确
公司不为空

公司不为空

公司不为空