通过部分感知深度卷积网络进行人脸特征点定位

人脸特征点定位是一个非常具有挑战性的研究课题。由于纹理和形状的不同,不同人脸特征点的定位精度差异很大。但大多数现有的方法不能考虑特征点的部分位置。

为了解决这个问题,文章提出一个新颖的用深度卷积神经网络(CNN)端到端的回归框架。深度结构首先通过所有特征点编码图像到特征图上;然后这些特征被送到两个单独子网络模型中去回归轮廓特征点和内部特征点。最后在300-W基准数据集上评估,并证明所提出的深度框架实现了最先进的结果。


主要一些贡献:

  • 提出一个新颖的端到端回归CNN模型用于人脸特征点定位,其通过组合一个轮廓子网络和一个内部子网络到一个统一的架构;
  • 本文证明了所有的特征点底层的卷积特征共享,在最后层单独使用可以提高精确度和鲁棒性;
  • 本文还演示了子网络的学习,并可视化了中间层的激活状态;
  • 最后本文在300-W基准数据集上展现了提出的网络能实现先进的结果。

图1 PA-CNN网络结构

所提出的Part-Aware CNN(PA-CNN)框架包含了一个轮廓子网络和一个内部子网络,为了处理不同人脸部分的特征点。如图1所示,由于纹理与形状的差异,将68个特征点分为两类,内部特征点有51个,指的是眉毛,眼镜,鼻子和嘴;轮廓特征点是另外的17个在脸的轮廓上。

在设计底部共享卷积层有两个问题:

第一个,所有的特征点可以结合一般特征,通过共享输入图像和一些卷积层,可以用来定位每一个特征点,与此同时,所有的特征点被隐式编码为几何约束;

第二个,共享底层特征使本文模型时间更有效。在网络的早期阶段,每层用来提取底层特征,这些特征被共享。如果使用单独模型,一个预测17个轮廓特征点和另一个预测51个内部特征点,类似的网络模型需要使用两次输入图像,非常耗时。

优化

在图像I中,令xi,yi∈R为第i个脸部特征点的x,y坐标,则得到向量[x1,y1,...,xN,yN]表示图像I中所有N个两部特征点的坐标,用P表示估计的特征点,G表示真实值。本文定义了如下的误差:E=||P-G||^2。预测的特征点定义为:

P=f(I;w)

其中,f表示非线性函数,I表示输入图像,w表示网络权值。P可以通过网络的前向传播计算可得,最后在训练批次中,网络误差可以表示为:

N表示批次大小,本文在训练阶段设置为70。目标是为了学习优化参数w去最小化损失函数E。最后得:

其中Econ是轮廓子网络的损失函数,Einn是内部子网络的损失函数,λ是权重参数去平衡轮廓子网络和内部子网络的损失,本实验设置为2。

实验

数据集是300-W,其有300张脸,它是基于现有数据集(LEPW,AFW,Helen和IBUG)基础上制作的,每张图像都有68个特征点。

实验还进行了数据增广,采用两种不同形式的数据增强,以扩大数据集,最后得到39561张图像。

  • 图像旋转:随机旋转图像在(-5°,5°),(-10°,10°),(-15°,15°)范围内;
  • 随机翻转:随机翻转图像在(-0.05°,0.05°)范围内。

评估

使用了平均误差(mean error),就是预测特征点与真实值的距离,通过瞳孔之间的间距归一化,得:

其中N表示所有的测试图像,M表示为特征点数量,li,ri表示左眼和右眼的位置。

实施细节

本文网络框架基于VGG-S,输入的图像大小为 ,最小批次大小为70,权重衰减为0.0001,训练学习率为0.0001,模型通过随机梯度下降训练,训练直至收敛。

图2 另外两个模型。左:单独CNN模型;右:Two-CNN模型。

表1 不同网络实验结果

图3 不同模型的误差曲线

表2 不同网络耗时(Tesla K20 GPU

图4 子网络的激活可视化图

表3 不同网络耗时(Tesla K20 GPU

图5 测试图像的特征点检测

总结

这次主要提出一个新颖的端到端回归框架,用卷积神经网络去解决困难的脸部特征点。深度结构首先通过所有的特征点编码图像到特征图上;然后这些特征被送到两个单独子网络模型中去回归轮廓特征点和内部特征点。实验结果在具有挑战性的300-W数据集中实现,并证明提出的框架可以实现最先进的结果,并且对较大的头部姿势和遮挡鲁棒。在未来,可以通过PA-CNN提取更多的人脸部件。

参考文献

【2】Burgos-Artizzu, X.P., Perona, P., Doll´ar, P.: Robust face landmark estimation under occlusion. In: 2013 IEEE International Conference on Computer Vision (ICCV), pp. 1513–1520. IEEE (2013)

【3】Cao, X., Wei, Y., Wen, F., Sun, J.: Face alignment by explicit shape regression. Int. J. Comput. Vis. 107(2), 177–190 (2014)

【8】Kazemi, V., Sullivan, J.: One millisecond face alignment with an ensemble of regression trees. In: 2014 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pp. 1867–1874. IEEE (2014)

【11】Ren, S., Cao, X., Wei, Y., Sun, J.: Face alignment at 3000 fps via regressing local binary features. In: 2014 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pp. 1685–1692. IEEE (2014)

【15】Xiong, X., De la Torre, F.: Supervised descent method and its applications to face alignment. In: 2013 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pp. 532–539. IEEE (2013)

【17】Zhang, J., Shan, S., Kan, M., Chen, X.: Coarse-to-fine auto-encoder networks (CFAN) for real-time face alignment. In: Fleet, D., Pajdla, T., Schiele, B.,Tuytelaars, T. (eds.) ECCV 2014. LNCS, vol. 8693, pp. 1–16. Springer, Heidelberg (2014). doi:10.1007/978-3-319-10605-2 1

原文发布于微信公众号 - 计算机视觉战队(ComputerVisionGzq)

原文发表时间:2017-12-27

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏专知

深入广义线性模型:分类和回归

【导读】本文来自AI科学家Semih Akbayrak的一篇博文,文章主要讨论了广义的线性模型,包括:监督学习中的分类和回归两类问题。虽然关于该类问题的介绍文章...

52560
来自专栏磐创AI技术团队的专栏

干货 | 基于深度学习的目标检测算法综述(一)

目标检测(Object Detection)是计算机视觉领域的基本任务之一,学术界已有将近二十年的研究历史。近些年随着深度学习技术的火热发展,目标检测算法也从基...

26920
来自专栏机器学习从入门到成神

机器学习之深入理解SVM

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/sinat_35512245/articl...

14020
来自专栏新智元

【计算机视觉必读干货】图像分类、定位、检测,语义分割和实例分割方法梳理

作者:张皓 【新智元导读】本文作者来自南京大学计算机系机器学习与数据挖掘所(LAMDA),本文直观系统地梳理了深度学习在计算机视觉领域四大基本任务中的应用,包括...

65560
来自专栏AI科技大本营的专栏

从YOLOv1到YOLOv3,目标检测的进化之路

这是继 RCNN,fast-RCNN 和 faster-RCNN之后,Ross Girshick 针对 DL 目标检测速度问题提出的另外一种框架。YOLO V1...

49930
来自专栏AI科技评论

干货 | 基于深度学习的目标检测算法综述(一)

目标检测(Object Detection)是计算机视觉领域的基本任务之一,学术界已有将近二十年的研究历史。近些年随着深度学习技术的火热发展,目标检测算法也从基...

17720
来自专栏机器之心

教程 | 单级式目标检测方法概述:YOLO与SSD

在这篇文章中,我将概述用于基于卷积神经网络(CNN)的目标检测的深度学习技术。目标检测是很有价值的,可用于理解图像内容、描述图像中的事物以及确定目标在图像中的位...

12110
来自专栏SIGAI学习与实践平台

用一张图理解SVM的脉络

SVM在之前的很长一段时间内是性能最好的分类器,它有严密而优美的数学基础作为支撑。在各种机器学习算法中,它是最不易理解的算法之一,要真正掌握它的原理有一定的难度...

1.2K10
来自专栏机器之心

入门 | 了解神经网络,你需要知道的名词都在这里

338130
来自专栏机器学习原理

机器学习(10)——线性SVM

支持向量机 Support vecor machine,SVM)本身是一个二元分类算法,是对感知器算法模型的一种扩展,现在的SVM算法支持线性分类和非线性分类的...

390100

扫码关注云+社区

领取腾讯云代金券