人脸表情识别技术研究综述

2022-09-01 08:54刘建华唐雷
信息通信技术与政策 2022年8期
关键词:人脸分类文献

刘建华 唐雷

(1.中国艺术科技研究所,北京 100012; 2. 中国信息通信研究院科技发展部,北京 100191)

0 引言

作为交流的一个重要媒介,在日常生活中,表情的使用往往能起到增强交流的效果。人脸表情是人们表达自身各种情绪和信息的一个重要手段,心理学家A.Mehrabia曾经深入地研究过,一个人在一天中,通过语言传递的信息只占传递的总信息的7%,然而通过面部表情传递的信息占比却高达55%[1]。因此,关于人脸面部表情的识别有极高的科研价值,对人脸面部表情的研究可获得大量有价值的信息。

早在1971年,美国的两位心理学家:Ekman和Friesen就已经对面部表情做过系统的研究,并建立了包含上千幅图像的资料库。1978年,在更深入地研究了人类表情与情感的内在联系后,他们自主开发了FACS[2-3](面部表情编码系统),该系统通过对人脸的解剖学研究和生理特征将人脸划分为46个独立的位置和运动单元(AU),并详细地分析了这些位置和其运动单元的主要控制区域以及与之对应的表情和生理特征。

人脸表情识别系统如图1所示,主要由人脸图像的获取、面部图像预处理、特征提取、特征分类组成。下面将从使用传统方法和深度学习方法来研究面部表情识别两个角度对以上各个步骤进行阐述。

1 人脸表情图像预处理

在自然场景中,光照影响、头部朝向以及非头部区域的差异等是常见的与面部表情识别无关的影响因素。所以在对图像进行分析前,就需先做预处理来排除以上干扰。其常用方法是:人脸检测、人脸对齐和人脸归一化。

1.1 人脸检测

要想进行人脸识别,首先的目标是对图像进行人脸检测,以此确定图像中所有人脸的所在位置,去除非面部区域。以往进行的人脸检测是通过哈尔特征等特征对分类器进行训练的,但无法应对剧烈的环境变化情况。一种计算过程简单的方法是使用Viola-Jones(V & J)人脸检测器,但对非正面人脸视图时鲁棒性低。深度学习阶段,Faster-RCNN以及速度更快的YOLO等方法被提出,用来解决环境变化和人脸不完整等问题。目前来说,级联结构的卷积神经网络因其高速性和准确性已经成为最流行先进的人脸对齐方法。

1.2 人脸对齐

为了进一步提高面部表情识别的精度,需要在人脸检测后进行人脸对齐的操作。人脸对齐可以表示为在一张人脸图像中搜索人脸预先定义的点的问题,它通常从粗糙的初始形状开始,并通过逐步细化形状估计直到收敛。

监督下降法(Supervised Descent Method,SDM[4])是常用的人脸对齐方法,另外还有如混合树结构模型(Mixture of Trees,MOT[5])、判别响应图拟合(Discriminative Response Map Fitting,DRMF[6])、Dlib C++库[7]、多任务级联卷积神经网络(Multi-task Cascaded Convolutional Network,MTCNN[8])、Dens-eReg[9]和小人脸检测[10]等方法。

1.3 人脸归一化

对于用户面部人体表情特征识别技术任务来说,光照的不同方向和头部面朝方向的差异会对识别面部特征的性能表现有很大的影响,一般通过对图像进行归一化来解决此类问题。如基于各向同性扩散的归一化、基于离散余弦变换的归一化、高斯差分和基于同态滤波的归一化[11-12]。此外,有资料显示,在光照归一化的基础上进行直方图均衡化的性能优于单独使用前者。为了增强图像的全局对比度,DEEP FER文献[13-15]中的许多论文都引入了直方图均衡化。然而,在用直方图均衡化的方法对图像进行处理前后会对图像的局部对比度产生较大改变。为了彻底解决这一问题,文献[16]提出了一种将直方图均衡化和线性映射相结合并进行加权求和的方法。为了便于特征提取,还需要将人脸图像均转化为正面视图,这个过程被称为姿态归一化。最近FF-GAN[17]、TP-GAN[18]、DR-GAN[19]等深度模型被提出用于姿态归一化。

2 特征提取

特征提取的目的是减少图像数据集中信息的数量,用来反映图像的特征,在拥有一定鲁棒性和保证识别率的基础上,对大量的数据进行降维处理。

2.1 传统研究方法

目前面部表情识别中的研究主要是针对二维的静态图像研究、视频序列等三维的动态图像研究2个方向,前者表征的是表情发生时单幅图像的表情状态,后者表征的则是表情的动态强度变化。

使用传统研究的方法在进行人脸信息特征提取时,针对静态的人脸信息,如果从整体来看,提取目的就是为了尽可能地降低对原始人脸信息的损害和破坏,用分类器对整个人脸信息进行处理后来获得特征值,主元分析法、独立分量分析法以及线性判别分析法等都是其中一些经典的算法,文献[20-21]是上述方法的改进在FER中的应用。

从表情识别局部上看,算法可以通过分析局部肌肉和皮肤褶皱的细微变化来进行表情识别,其中Gabor小波法和LBP算子法是两种经典的表情识别方法,文献[22]以Gabor小波等多种特征提取算法为手段,分类过程被分解为多个两类分类问题,一个选择是分析证明,并为每个分类问题提取唯一的特征集。文献[23]使用Gabor小波来模仿人类视觉皮层的地形图结构以实现面部表情识别。

对动态表情的处理分为光流法、模型法和几何法等。光流法是利用图像中像素随时间的变化,来反映不同帧之间人脸单元灰度的改变,以此确定表情状态的方法;模型法是先通过训练建立形状模型,再结合模型与人脸图片匹配的方法,主要包括活动形状模型(Active Shape Models,ASM)和主动外观模型(Active Appearance Model,AAM);几何法通过标识人脸器官的特征点,计算各个特征点之间的距离与曲线曲率来进行特征识别。文献[24]开发了一种基于光流的特征点跟踪方法,可以识别人类的微表情的变化;文献[25]在计算人脸的多渠道灰度模型时采用了光流法;文献[26]提出了基于ASM的人脸特征识别方法,实现了对局部动作单元的跟踪和识别。

2.2 特征提取的深度框架

传统的FER系统需要使用手动提取的特征,或是浅层学习,识别功能有限。随着人类情绪认知识别技术在国际情感识别大赛中的应用与提高,基于机器学习的脸部表情认知识别技术也越来越火热。以下是近年来应用较好且功能比较强大的基于深度学习技术的FER框架。

2.2.1 深度信念网络

深度置信网络(Deep Belief Network,DBN)这一概念在2006 年由Hinton等[27]提出,DBN是神经网络特殊中的一种。一般,由多层串联的受限玻尔兹曼机(Restricted Boltamann Machine,RBM)和反向传播层(Back Propagation,BP)神经网络构成。

在DBN的基础上,增强深度置信网络(Boosted Deep Belief Network,BDBN)于2014年被Ping Liu等人提出。特征被联合微调,并被选择在一个全新的增强的自上向下的监督特征强化(BTD-SFS)的过程中形成一个强分类器,通过这个框架,可以从面部图像中学习到高度复杂的特征。文献[29]提出了一个由3个顺序模块组成的受AU启发的深层网络(AU-inspired Deep Networks,AUDN),并在CK+、MMI和SFEW三个数据库上的实验中取得了最佳效果。

2.2.2 自动编码器方法

1986年,Rumelhart提出自动编码器这一概念,自动编码器可以提取数据的隐含特征并学习用这些特征重构数据。早期的自动编码器应用于数据压缩和数据处理方面,但压缩效果很大程度上取决于压缩数据自身,并且会出现数据损失的情况。

文献[31]介绍了用深度自动编码器(Deep Auto Encoder,DAE)将高维数据转化为低维数据,DAE的思想是在预训练中逐层训练整个模型,与自动编码器相比,DAE被优化使重构误差尽可能低来重构其输入。文献[31]提出了一种利用深度稀疏自动编码器(DSAE)进行面部表情识别的新方法,将几何特征和外观特征相结合起来判断,能自动高精度地识别表情。文献[32]提出了改进的局部三元模式(LTP)和堆叠自动编码器(SAE)相结合的方法用于面部表情识别,改进的LTP模型对纹理特征进行提取,最后利用SAE对特征进行提取和分类。

2.2.3 深度卷积神经网络

卷积神经网络(Convolutional Neural Networks,CNN)一般由3个处理层组成:卷积层、池化层和全链接层。卷积层针对的是图像的特征提取;池化层用来对特征图像进行稀疏处理,减少数据运算量(降维);在全链接层中,每一层的神经元均与后续层中的全部神经元建立连接,神经元是否触发由与之相连的神经元的输入权重之和决定。CNN相较于其他神经网络的不同是局部连接和权重共享,这让CNN网络中的参数风少,效率更高,正则化效果更好等。以CNN为架构的经典网络有AlexNet、GoogLeNet、VGGNet等。

除了这些网络之外,还存在许多在此基础上的派生框架。在文献[33-34]中,基于区域的CNN[35]用于学习FER的特征。文献[36]提出一种基于感兴趣区域(Region of Interest,ROI)的面部表情识别方法。文献[37]结合感兴趣区域和K最近邻(K-nearest Neighbor,KNN)算法提出 ROI-KNN 训练改进方法,改善了由于面部表情训练数据过少而导致深度神经网络模型泛化能力不佳的问题,从而提高了鲁棒性。

2.2.4 生成对抗网络

2014年,Ian Goodfellow提出了采用非监督式架构的生成对抗网络(Generative Adversarial Networks,GAN)。生成对抗网络由生成器网络(Generator)和判别器网络(Discriminator)组成,通过让二者相互博弈得到更好的输出结果。

文献[19]提出解缠表示学习的生产对抗网络(DR-GAN),通过编解码器结构发生器,可以正面化或旋转一个具有任意姿态甚至是极端轮廓的脸,对于野外低鲁棒性的面部表情识别研究有着深远的意义;文献[38]利用GAN来对小样本的目标数据集生成伪标签样本;Zhang等人[39]提出了一种基于GAN的模型,该模型可以在任意姿态下生成具有不同表情的图像用作多视角FER。

3 特征分类

特征分类是为了通过特征来判断人脸图片所属的表情类别。在传统的表情识别步骤中,特征提取和特征分类是两个无关联的独立步骤。然而在深度神经网络中特征提取和特征识别均在神经网络中完成。此外,也可以使用深度学习网络来提取特征,然后用其他分类器根据表情的类别来分类。本节列出了一些传统方法和深度学习方法中都常用到的分类方法。

3.1 基于贝叶斯网络的分类方法

贝叶斯网络(BayesianNetwork)一般是指节点之间通过贝叶斯公式具有一定关系的有向无环的图形化网络,是推理领域内最有效的模型之一。在表情识别领域中,概率推理可以应用在从一个已知表情的信息中进行推断得到一个未知表情所属类的概率。通过贝叶斯网络的分类方法主要有各种贝叶斯网络分类算法及隐马尔科夫模型。

文献[40-41]就是采用贝叶斯网络对表情进行分类的方法。HMM算法通过计算观察值的后验概率,实现对表情属性的判断。同时由于引入了时间变量,HMM算法可以看成一种动态贝叶斯网络。文献[42]采用HMM 算法识别动作单元,实现了于刚性和非刚性运动分离以及三维位置估计的人脸表情识别系统。

3.2 基于距离度量的分类方法

基于距离的分类器通过计算样本之间的距离来实现表情分类。代表性算法有最近邻法和支持向量机(Support Vector Machines,SVM)算法。最近邻法从一类训练样本中,选取与测试样本距离最近的样本,作为该类的原型;SVM算法的目的是通过优化目标函数,来确定一个超平面,使得离超平面最近的点的距离最远。

在文献[43-44]中,二者均在基于SVM的基础上提出了新的表情分类机制。前者将K近邻分类器与SVM结合提出了Local SVM(LSVM)算法;后者提出的混淆交叉支持向量机树(CSVMT)模型将SVM和树型结构结合起来,相较于SVM有更好的泛化性和鲁棒性。

4 相关数据集

4.1 The Japanese Female Facial Expression Database(JAFFE)

JAFFE数据集在1998年创建,其中有213张人脸照片,包括愤怒、憎恶、恐惧、高兴、悲戚、惊诧、中性7种不同的表情。

4.2 The Extended Cohn-Kanade Dataset(CK+)

CK+发布于2010年,包含593个图像序列,是当前人脸表情特征识别技术领域中相对受欢迎的数据库。

4.3 Acted Facial Expression in the Wild(AFEW)

AFEW数据集中的表情图像或视频均来自于电影剪辑片段其中表情分为6类基本表情外加中性表情。从2013年开始AFEW为EmotiW比赛所用的数据集。

4.4 FER2013

FER2013数据集内总共有35 886张人脸照片,其中包含28 709个训练用图像、3 589个用于公共验证的图像和3 589个用来私有验证的图像。数据集中每张图像同样按照6种基本表情加上中性表情分类。

4.5 MMI

MMI数据集包含了超过2 900个视频和75个主题的高清图片,源自实验室控制条件下的32位受试者。此数据集存在主题差异,许多受试者佩戴眼镜或是留有胡须。

5 结束语

数据集方面,随着FER越来越多采用深度学习方法来进行研究,可靠高质的数据集就显得尤为重要。目前FER任务中使用到的标准人脸面部表情数据集大多是来自以下两种方式:受控实验室中采集记录或者电影等视频中截取(如Affectiva-MIT和AFEW),两者都是一种受刺激下的非自发带表演性质的表情数据,与自然场景下的人脸面部表情仍相差甚远,同时在实验室处理环境下,采集到的人脸表情一般是头部姿势正面、光照合适且无遮挡的高质图像,识别的难度和复杂度相对降低,而这在真实的外部环境中难以满足,如果要在现实环境下识别面部表情,可能还需要在构建真实面部表情数据集等相关方面进一步努力。

同时,数据集偏差也是一个需要考虑的问题。如上述提到的两个数据集,目前研究人员大多在几个广泛使用的数据集上验证自己的算法,这会产生一种风险,即研究的主要目的转为最大限度地提高算法在特定数据集的性能,而这些数据集很可能存在偏差。虽然利用特定的偏差可以提高算法在特定数据集上的性能,但如果用来解决一般性问题,却往往会失败,这也是为什么会出现一个经数据集训练后的模型在另一个数据集下测试的结果却并不理想的原因,即模型的跨数据集性能较差。

表情分类方面的工作也有继续研究的空间。 目前,表情识别领域内很多论文中表情分类的标准都源自于1971年提出的6种基本表情。但在现实中,人类可以使用的表情远不止6种,仅这6种表情相互组合所衍生出的表情也是极为复杂的。已经证明,人类在日常生活中表现出多达7 000个面部动作单元组合[45],由于动作单元的定义方式,这意味着这些组合中的每一个都会产生明显不同的视觉输入,尽管其中许多组合可能会被归类为6种基本表情中相同的那一类。此外,一些没有采用Ekman经典表情分类的研究,如文献[46-47]等,研究人员认为一些面部表情是多种基本情绪结合的结果。

因此,一种思路是在Ekman经典表情分类基础上增加新的表情分类,但随着所考虑的类数的增加,这可能会导致表情识别任务变得低效,另一种思路则是对面部动作单元(AU)进行研究,由于AU是编码面部表情的低维单元,所以相同的AU模型可以应用于任何其他表情的分析,但是使用该方法同样存在两个问题:一是人工注释AU标签的成本远远高于以分类方式标记面部表情;二是要检测的信号通常更微妙,从而放大了滋扰因素带来的挑战。

真实野外环境中,面部被遮挡、头部姿势非正面、光照影响等都是常遇到的状况,以面部遮盖举例,解决这个问题的难点在于不同图像中的遮蔽物往往在图像的不同位置并且大小、形状不同。数据集中如果存在着这样的问题数据,不仅使得模型难以拟合,还严重拉低了最后的精度,因此,如何对上述情况进行精准有效的面部表情识别是一直困扰研究者们的课题。

目前,已经有相关的研究在展开,文献[48]中在CNN的基础上改进出基于注意力机制的卷积神经网络(Convolution Neutral Network with Attention Mechanism,ACNN),该ACNN 模型可以感知出人脸的遮挡区域,并且可聚焦于最具辨识力的未遮挡区域,可以有效解决面部遮挡这一问题;文献[39]则提出了一种通过生成对抗性网络进行多任务学习的多视角面部表情识别方法,利用GAN中生成器和鉴别器之间的对抗性关系,生成器可以在保持表情特征不变的前提下,将以侧脸输入的表情转化为正脸表情。

目前有一个有趣的趋势是,能够在计算能力较低的设备,特别是移动电话上运行的算法,将会有越来越大的影响力,这涉及到计算效率的问题。一个显著例子是IntraFace软件,它允许在移动平台上进行人脸分析。利用通用移动平台提供的计算资源进行人脸表情分析既是一个挑战,也具有深远的实际意义。

结合多模态来研究FER将是未来的发展方向。无论是利用多模态方法来更好地识别人脸表情,还是将面部表情信息作为机器理解人类行为的一部分,都有着很强的实际意义。一个理想的人机交互系统需要将音频分析(包括情感分析、说话者身份识别等)、其他不同形式的视觉分析(身体姿态估计、动作识别、头部姿态等)、脑电分析,甚至包括用于自然语言处理的工具等整合到一起,在这种情况下,将面部表情识别视为一个孤立的问题的处理结果并不令人满意。

对人脸的微表情进行研究,也有着很强的应用价值。微表情可能携带着更具真实的情感信息,能够反映个体的内心真实想法,在测谎、抑郁症诊断、广告效果评估等领域都有着一定的实用价值。此外,不同的人类个体往往具有不同的肤色、外貌、性别、年龄、宗教文化等差异,这些差异都可能会对其做出表情的方式产生影响。因此,理想的表情数据库中的标签应包含以上各种特征而不是单单的表情种类,这将有助于更广泛的相关研究。

猜你喜欢
人脸分类文献
有特点的人脸
Hostile takeovers in China and Japan
一起学画人脸
玻璃窗上的人脸
Cultural and Religious Context of the Two Ancient Egyptian Stelae An Opening Paragraph
按需分类
教你一招:数的分类
The Application of the Situational Teaching Method in English Classroom Teaching at Vocational Colleges
说说分类那些事
The Role and Significant of Professional Ethics in Accounting and Auditing