李悦 山东科技大学
基于级联深度卷积神经网络的面部特征点定位算法
李悦 山东科技大学
面部的特征点准确定位对于表情识别和面部动画合成等应用具有重要的意义。随着网络时代自拍的盛行,人们对于实际应用场景中不同光照,角度和遮挡条件下的准确特征点定位提出了更高的要求。本文设计了一种基于级联的深度卷积神经网络的面部特征点定位算法,在初步特征点识别的基础上利用级联网络进行回归优化拟合,从而达到了精确定位的效果。
深度卷积神经网络 级联 面部特征点
面部特征点识别是指根据输入的人脸图像,自动识别出眼角、眉心、鼻尖、嘴角、轮廓等特征点的位置。面部特征点的识别是面部属性分析、老化模拟、人脸对齐以及动画合成等等问题的基础,实现精确的面部特征点定位具有重要的意义。本文设计的级联深度神经网络算法具有两级网络结构,其中一级网络负责特征点的识别,二级网络实现特征点的定位优化。
深 度 卷 积 神 经 网 络(Deep Convolutional Neural Network,DCNN)是近些年来兴起的一种高效的识别方法,在数字图像处理的诸多领域都取得了很好的效果。DCNN的基本结构由特征提取和特征映射两部分构成,通过局部感知和神经元权值共享的方法,我们可以堆叠出一个深层的结构并能够从数据中学习到很好地效果。
我们首先利用一个9层的深度卷积神经网络实现面部特征点大致区域定位。由于网络的最后两层是全连接层,输入图像的尺寸必须是固定大小,因此针对候选的人脸区域,将其缩放到39×39像素大小。对于输入图像,先后用一个4×4和两个3×3的卷积核对图像进行卷积操作,每个卷积层后面进行最大值池化来降低参数的数量,提高网络的效率。最后,通过两个全连接层对坐标参数进行回归,由于实验中采用了眼角、鼻尖、嘴角的标注,最终输出层的神经元数目为10,代表了回归出的5个特征点的二维坐标值。
在神经网络的选取过程中,本文选取了以下三个优化方法。①适度增加神经网络的深度。在大范围图像上进行特征点识别是一个高层特征的任务,通过增加神经网络的深度,高层的神经元可以接受更大区域的输入信息,增强输入输出的非线性相关程度,实现更好的定位效果。②选取双曲正切函数作为激活函数,并在激活函数层后添加绝对值映射,从而保留更多的对比信息,应对低对比度的情况。③利用局部的神经元权值共享。人脸图像具有相对固定的空间布局,因此全局的神经元权值共享无法反映出局部区域的特征差异。本文针对人脸图像进行分块,对局部的权值进行共享,从而更好地提取图像特征。
通过一级的神经网络,我们得到了面部特征点的大致位置。我们通过五个浅层的神经网络组成次级特征点优化网络,针对特征点所在的局部区域进行分析和处理,从而回归出特征点的精确位置。
五个子网络分别针对五个特征点进行坐标的回归。选取一级网络得到的特征点周围15×15的区域,分别作为五个子网络的输入图像。我们先后采用一个4×4和一个3×3的卷积核对局部图像进行卷积操作,每个卷积层后面接最大值池化层操作。最后是两个全连接层,由于每个子网络只针对一个点进行回归,因此输出层的神经元数目为2,代表了对应坐标点的二维坐标值。由于次级网络的坐标回归是在局部图像上进行的,对于次级网络的输出需要进行线性坐标映射还原到原图上去,从而形成最终的网络输出。
在神经网络的训练过程中,针对一级网络,我们利用现有的人脸标注库作为训练数据。针对二级网络,我们采用相应标注点为中心的图像区域作为训练图像。二级的级联结构能够同时利用图像的深度特征和区域的局部相关信息,利用深度网络在大尺度上进行特征点的区域定位,进而利用浅层网络实现局部的优化和拟合,从而兼顾了精确度和效率,为后续在移动端的部署打下了基础。
下图是我们选取了一些具有代表的实验结果。从左到右,分别代表了大角度侧脸,大幅度特殊表情,区域遮挡和低对比度暗光照四种常见的难处理场景。我们用绿点标记了眼角、鼻尖和嘴角五个特征点的识别情况,可以看到本文提出的基于级联深度卷积神经网络的面部特征点识别算法具有很强的鲁棒性,在各种复杂的场景下都能够实现特征点的准确识别和精确的定位。
本文提出了一种基于级联深度卷积神经网络的面部特征点识别算法,构造了二级级联的网络结构,分别对面部图像进行特征点的区域定位和坐标的优化。相关实验表明算法在实际应用的复杂场景中具有很强的鲁棒性和极高的识别精度,为后续基于面部特征点的操作打下了良好的基础。
[1]谢郑楠.基于多任务特征选择和自适应模型的人脸特征点检测[D].北京交通大学,2016
[2]刘俊权.人脸关键特征点定位与识别研究[D].东南大学,2016
[3]李月龙,靳彦,汪剑鸣,肖志涛,耿磊.人脸特征点提取方法综述[J].计算机学报,2016,(07):1356-1374
[4]刘畅翔.人脸特征点定位算法及其在人脸识别的应用研究[D].东华理工大学,2015