皇上,还记得我吗?我就是1999年那个Linux伊甸园啊-----24小时滚动更新开源资讯,全年无休!

清华&商汤开源超高精度边缘感知人脸对齐算法

作者 Wayne Wu 等      ,译者 刘志勇

AI前线导读:人脸对齐是找到人脸位置之后,再找出人脸特征点的位置,比如鼻子左侧,鼻孔下侧,瞳孔位置,上嘴唇下侧等等点的位置。可以理解成面部特征点定位或者人脸五官定位。这项技术的应用很广泛,比如自动人脸识别,表情识别以及人脸动画自动合成等。由于不同的姿态、表情、光照以及遮挡等因素的影响,准确地定位出各个关键特征点看似很困难。来自中国的清华大学和商汤提出了新的人脸对齐的算法,让我们先从一部视频开始:

我们提出了一种新的边缘感知人脸对齐(boundary-aware face alignment)算法,利用边缘作为面部的几何结构,进行面部特征点定位(facial landmark localisation)。与传统的两种方法(基于热点和基于回归)不同,我们的方法是从边缘提取面部特征点,消除了特征点定义的模糊性。我们在本文探讨并回答如下三个问题:
  1. 为什么使用边缘?
  2. 如何使用边缘?
  3. 边缘估计和特征点定位之间有什么关系?

我们的边缘感知人脸对齐算法在300-W Fullset实现了3.49%的平均误差,很大程度上,超过了目前最先进的方法。除此之外,我们的方法还可以很轻松地整合来自其他数据集的信息。利用300-W数据集的边缘信息,我们的方法在COFW数据集上实现了3.92%的平均误差,0.39%的失效率;在AFLW-Full数据集实现了1.25%的平均误差。另外,我们还提出了一种新型数据集“ Wider Facial Landmark in the Wild”(WFLW),统一以不同的因素进行训练和测试,这些不同的因素包括姿势、表情、照明、化妆、遮挡和模糊等。有关该系统的详细说明,请参阅论文:https://wywu.github.io/projects/LAB/LAB.html

清华&商汤开源超高精度边缘感知人脸对齐算法

引文

如果你要使用此代码或WFLW数据集进行研究,请引用我们的论文:

清华&商汤开源超高精度边缘感知人脸对齐算法

必备条件

  • Linux
  • Python 2 或 3
  • CPU 或 NVIDIA GPU + CUDA CuDNN

入门指南

安装

  1. 安装 prerequisites for Caffe
    http://caffe.berkeleyvision.org/installation.html#prequequisites
  2. Modified-caffe for LAB
    https://github.com/wywu/LAB.git

下载Wider Facial Landmark in the Wild(WFLW)数据集

Wider Facial Landmark in-the-wild(WFLW)是我们新提出的面部数据集,包含了10000张面部(其中7500张用训练,2500张用于测试),98个完全手动注释的特征点。

  1. WFLW Training 和 Testing images [Google Drive] [Baidu Drive]
  2. WFLW Face Annotations
  3. 将上述两个包解压并放到./datasets/WFLW文件夹

只需运行如下脚本即可下载WFLW的注释:

清华&商汤开源超高精度边缘感知人脸对齐算法

在WFLW上测试LAB

我们提供了两个预训练模型:

WFLW_final: 在论文中,最终模型对WFLW进行了评估。
WFLW_wo_mp: 简化的模型由于没有消息传递层,更易阅读。
  1. 下载预训练模型:

清华&商汤开源超高精度边缘感知人脸对齐算法

  1. 测试模型:

清华&商汤开源超高精度边缘感知人脸对齐算法

测试结果将以文本文件的形式保存到此文件夹中:./evaluation/WFLW/

WFLW_final模型在WFLW上的结果

清华&商汤开源超高精度边缘感知人脸对齐算法

训练

出于我们公司的安全考虑,很遗憾我们不能发布训练脚本。但是,就训练来说,你需要做的就是使用我们发布的代码并添加本文中描述的数据进行扩充。以我们发布的prototxt文件作为参考,并利用本文中描述的超参数,完全可以轻松再现论文报告的性能。

待办清单

支持的数据集:

支持的模型:

参考资料: Look at Boundary: A Boundary-Aware Face Alignment Algorithm

转自 http://www.infoq.com/cn/articles/a-boundary-aware-face-alignment-algorithm