[1] X. Jin, X.Y. Tan, Face alignment in-the-wild: A survey, CVIU2017
[2] E Zhou, H Fan, Z Cao, Y Jiang, Q Yin, Extensive Facial LandmarkLocalization with Coarse-to-Fine Convolutional Network Cascade, ICCV 2014
人脸对齐:根据输入的人脸图像,自动定位出面部关键特征点,如眼睛、鼻尖、嘴角点、眉毛以及人脸各部件轮廓点等,输入为人脸外观图像,输出为人脸形状(特征点集合)。其体系结构可以表示如下:
该体系结构可以大概分为三部分:人脸预处理、形状初始化、特征提取与形状预测的迭代。
1. 人脸预处理包括人脸检测和归一化等处理;
2. 形状初始化方法包括:平均形状(比较常用),随机样本形状、多重随机样本形状、基于固定点的初始化和基于估计的初始化;
3. 特征提取分为三类分别为手工设计的特征(SIFT和HOG等),浅层特征(像素差值,LBF等),深度特征(利用CNN学习到的特征);
4. 形状预测:主要分为两类生成式方法(generative )和判别式方法(discriminative)。生成式方法是对人脸外观和形状进行建模,将人脸对齐问题转化为最优化问题,寻找合适的参数来生成一个能够最佳的拟合人脸形状的模型;判别式方法直接从人脸外观推断特征点的位置,通过学习独立的局部检测器或者回归器来预测每个特征点的位置,这些特征点的位置受到全局形状的约束,确保预测的特征点能够构成一个有效地人脸形状。
在该体系结构中,特征提取和形状预测是人脸对齐算法研究的重点,在初始化形状之后通过不断的迭代这两个步骤来逐步提高预测的精度,具体的算法会后续介绍。
根据建模的原理将主流方法主要分为两类,即生成式方法和判别式方法。
2.1 生成式方法
生成式方法通过调节形状和外观模型参数使得生成的模型能够最佳的拟合测试样本人脸图像。进一步分为两类,AAM模型和基于局部的生成性变模型
AAM模型
最近的进展有三个方向:1)利用自然环境下的训练数据来训练AAM模型;2)从提高鲁棒性的角度出发,将基于像素的图像表示转化为基于特征的表示(HOG、SIFT和SURF等);3)从提高鲁棒性和拟合速度的角度进行改进,能达到实时应用。
缺点有两点:1)由于是全局方法,不能有效的处理部分遮挡问题;2)自然环境下的AAM外观模型参数较多,难以优化而且容易陷入局部解
基于局部的生成形变模型
利用形状模型来约束人脸形状的变形,利用局部的生成方法来构建人脸局部部位的外观模型。主要有两种方法:1)针对人脸的每个部位单独构造生成模型,例如ASM和CLMs;2)同时针对人脸的所有部位构造生成模型,例如Gauss-Newton Deformable Part Model(GN-DPM)
优点:相对于AAM,基于局部的生成模型对自然条件下的光照和遮挡的鲁棒性更强
生成式方法总结
生成式模型的性能主要依赖两个方面:1)模型的表现力2)模型的计算复杂度。
文献[1]中指出在自然条件下,采用相对应的训练数据和拟合算法,无论是AAM还是局部生成模型都能够取得很好的效果(从模型计算复杂度角度,局部生成模型略优于AAM),因而在以往的文献中生成式模型的缺点被放大了。此外,生成式模型对训练样本数量的要求会远低于判别式模型,然而由于近年来大量标注的自然条件下的样本数量使得判别式方法占据了主导地位。
2.2 判别式方法
判别式方法通过学习一个或一组判别式函数,直接从人脸外观来预测特征点的位置。主要有两种技术路线:
1)采用分而治之(divide and conquer)的策略,利用全局的形状模型约束来学习每一个(或局部区域)面部特征点的判别外观模型。可以进一步分为三类:(1)限制的局部模型(CLMs),对每一个特征点分别学习一个独立的检测器,利用形状模型来规范这些检测器的响应;(2)限制局部回归模型,对每一个特征点分别学习一个独立的局部回归器,利用图模型来指导这些回归器的搜索;(3)形变局部模型,在一个判别框架中联合学习局部的外观模型和树形结构的形状模型。
2)直接学习一个向量回归函数来推断整个人脸形状,其中形状约束被隐性的调用。也可分为三类:(1)综合回归投票,通过回归从局部区域来计算所有面部特征点的投票,综合不同区域的投票结果来产生鲁棒性的预测;(2)级联回归方法,采用级联的方法分阶段地的学习向量回归函数来估计人脸形状;(3)深度神经网络,采用深度卷积网络或者自编码网络来建立人脸外观和形状的非线性关系。
分而治之策略
1) CLM算法优点:比全局特征(AAM)对局部遮挡和光照变化更加鲁棒。
缺点:1)检测的特征点模糊导致产生性能瓶颈;2)对每一个特征点进行标注,计算复杂度高。
2)限制局部回归方法优点:由于结合马尔科夫随机场(MRF)和局部回归模型,使得对每一个特征点标注的时间小于CLM算法。
缺点:1)局部回归模型检测的特征点模糊,会影响整体性能;2)全局基于图的MRF算法最优化问题难以求解,可以选择树结构模型来代替。
3)形变局部模型(DPMs)优点:比基于图结构的方法容易求解,而且能够有效地捕捉全局弹性形变;能够解决人脸检测、人脸对齐和姿势估计问题。
缺点:1)运算速度慢,无法实时;2)基于树结构的形状模型会出现非人脸结构,使得其性能不如CLM算法。
这三种方法的共同缺点:局部外观模型产生的特征点定位模糊会影响整体性能,成为整个算法的瓶颈。
向量回归方法
1)综合回归投票优点:利用不同的局部区域进行投票的结果进行特征点定位,比上述的局部模型具有更高的鲁棒性。
缺点:对于自然条件下不能很好的平衡性能和效率,随机森林方法效率高但不够精确,非参数特征投票方法精确但计算复杂度高
2)级联回归:在自然条件下的人脸对齐算法中占据主要地位,由于具有以下几个特点:1)通过对一个人脸图像的初始形状进行调整,能够有效的进行数据扩充;2)能够有效地处理大规模训练数据;3)能够隐性的将形状限制条件编码到回归算法的计算过程中,比参数形状模型更加灵活;4)级联回归模型的简单和通用性,能够方便地采用不同的回归模型和特征,与综合回归投票方法相比能够兼顾性能和效率。
缺点:在极端的姿态和表情条件下,无法有效地将纹理特征映射到形状模型。对于更加灵活的局部定位,例如姿态估计,基于局部检测的算法仍然占据主导地位。
3)深度神经网络:能够有效地学习人脸外观和人脸形状的非线性映射关系
面临的问题:1)不能通过迁移学习算法将已有的CNN框架应用到人脸对齐,因为已有的大规模的CNN网络都是针对分类问题,而人脸对齐是一个结构预测问题;2)从零构建一个人脸对齐的深度学习框架需要考虑过拟合问题,每个阶段的网络结构都要综合考虑当前阶段的任务和模型的复杂度问题;3)需要考虑训练数据的规模。
判别式方法总结
采用分而治之技术路线的三种模型将人脸对齐问题简化为每一个特征点构造独立的判别外观模型,由于采用局部的方法,当人脸外观受光照、姿态、表情等影响较大时会产生特征点定位模糊的问题,进而影响全局的人脸形状,成为整个算法的瓶颈。为了突破这个瓶颈,另一条技术路线被提出,通过隐性的利用人脸特征点之间的空间约束,从人脸图像直接预测整个的人脸形状。这其中级联回归方法由于其定位精度高,鲁棒性强,时间复杂度低等特点被广泛应用。深度神经网络由于能够学习到具有高鉴别力的特征,在人脸对齐领域也被广泛的应用,但是需要考虑过拟合的问题。此外,该六类分类方法是有交叉的,比如许多神经网络模型也用到级联的结构来进行特征定位,可以划分到级联回归方法。下表为六类判别式方法外观模型,形状模型及其特点对比
现有的方法得到的面部特征点个数较少,文献[3]通过构造四层的级联CNN,采用由粗到细的方法来定位更多面部特征点个数。级联网络的两个特点:1)每一层网络改善上一层网络产生的面部特征点的一个子集;2)每一层网络预测一个精确地几何约束(特定人脸部位的位置和旋转角度等,例如左眼,右眼)来修正当前网络层的输入。
文献[3]中采用级联的神经网络来由粗到细的定位更多的特征点,包括51个内点(眼睛、眉毛、鼻子和嘴)和17个轮廓点。主要的框架如下:
第一层网络:采用两个神经网络分别估计内点和轮廓的边界
对于内点:第二层网络在边界内初步估计51个内点的位置,第三层网络分别改善每个人脸部位(共六个)的特征点位置,然后根据每个部位的旋转角度进行修正使其垂直,第四层网络接受上一层的输出作为输入并产生最终结果。
对于轮廓:仅利用第二层网络从裁剪的图像中计算17个轮廓点的坐标。
其中每一层的网络结构采用DCNN来构建,将原始图片的像素点作为输入,然后对特征点的坐标进行回归。具体的网络结构如下:4个卷积层加一个全连接层,卷积层后跟的都是最大池化层。最后一个卷积层为非权值共享卷积层,在不同位置采用的权值是不同的。
采用最大池化的原因:由于特征点定位涉及到像素级别的精度,采用最大池化策略看起来不太合理,然而最终还是采用最大池化的原因在于最大池化能够给系统带来的鲁棒性弥补了其所带来的精度的损失,而且特征点的整体形状和相对位置信息比像素级别带来的信息更加重要。每一层网络大小设置如下:
实验对比了不同部位的定位精度(eye>nose>51个内点>mouth>eyebrow>68个点>contour),不同层数带来精度的提高(第三层提高最大),并和其他算法进行了比较(均有提高)。
分析:由粗到精的策略可以利用,将轮廓与内点分别进行训练的方式也可以借鉴