计算机应用   2017, Vol. 37 Issue (12): 3509-3516, 3546  DOI: 10.11772/j.issn.1001-9081.2017.12.3509
0

引用本文 

徐琳琳, 张树美, 赵俊莉. 基于图像的面部表情识别方法综述[J]. 计算机应用, 2017, 37(12): 3509-3516, 3546.DOI: 10.11772/j.issn.1001-9081.2017.12.3509.
XU Linlin, ZHANG Shumei, ZHAO Junli. Summary of facial expression recognition methods based on image[J]. Journal of Computer Applications, 2017, 37(12): 3509-3516, 3546. DOI: 10.11772/j.issn.1001-9081.2017.12.3509.

基金项目

国家自然科学基金资助项目(61702293,41506198);虚拟现实应用教育部工程研究中心开放基金课题(MEOBNUEVRA201601)

通信作者

张树美, E-mail:shumeiz@163.com

作者简介

徐琳琳(1992-), 女, 山东莱芜人, 硕士研究生, 主要研究方向:图像识别与处理、深度学习;
张树美(1964-), 女, 山东莱西人, 教授, 博士, 主要研究方向:时滞非线性系统的分析与控制、图像识别与处理;
赵俊莉(1977-), 山西新绛人, 助理教授, 博士, CCF会员, 主要研究方向:计算机视觉、计算机图形学、虚拟现实

文章历史

收稿日期:2017-06-26
修回日期:2017-09-18
基于图像的面部表情识别方法综述
徐琳琳, 张树美, 赵俊莉    
青岛大学 数据科学与软件工程学院, 山东 青岛 266071
摘要: 近年来,面部表情识别在教育、医学、心理分析以及商业领域得到了广泛关注。针对目前表情识别方法不够系统、概念模糊的问题,对面部表情识别的步骤及其方法进行了综述探讨。首先,介绍了目前常用的人脸表情数据集,并回顾了面部表情识别的发展历程;然后,介绍了人脸表情识别的面部表情编码和面部表情识别过程这两个方面,归纳了人脸面部表情识别的四个过程,重点总结了特征提取和表情分类两个过程中的经典算法以及这些算法的基本原理和优劣比较;最后,指出了目前面部表情识别存在的问题和未来可能的发展趋势。
关键词: 表情识别    表情数据集    表情编码    特征提取    表情分类    
Summary of facial expression recognition methods based on image
XU Linlin, ZHANG Shumei, ZHAO Junli     
School of Data Science and Software Engineering, Qingdao University, Qingdao Shandong 266071, China
Abstract: In recent years, facial expression recognition has received extensive attention in education, medicine, psychoanalysis and business. Aiming at the problems of not systematic enough and fuzzy concept of facial expression recognition method, the steps and methods of facial expression recognition were reviewed and discussed. Firstly, the commonly used facial expression databases were introduced and the development of facial expression recognition was reviewed. Then, two aspects of facial expression recognition were introduced, such as facial expression coding and facial expression recognition. The four processes of face facial expression recognition were summarized. The classical algorithms, the basic principles of these algorithms and the comparisons of their advantages and disadvantages were summarized emphatically in the two processes of feature extraction and facial expression classification. Finally, the existing problems and possible development trends in the future of the current facial expression recognition were pointed out.
Key words: expression recognition    expression database    expression coding    feature extraction    expression classification    
0 引言

面部表情是指通过脸部肌肉、眼部肌肉和口部肌肉的变化而表现出的各种情绪,其中,眼部和口部附近的肌肉群是构成面部表情最丰富的部分。面部表情通过这三部分肌肉的变化传递人的情绪状态,与声音、语言和人体姿势等一起组成了社会中人的交流系统。人脸部的表情识别是一个横跨人工智能、神经学、计算机科学等领域的交叉学科,在心理分析、临床医学、车辆监控以及商业领域都有很广泛的应用。例如,通过人的面部表情推测抑郁症等心理状态[1],根据疼痛测试来检测病人在临床上的进展[2-3],以及Emotient、Affectiva、RealEyes和Kairos等公司通过观众的面部表情,使用情绪识别技术来预测其购买行为等。

在20世纪70年代,著名的国际心理学家Ekman[4]将人脸部表情划分为六类:高兴(Happy)、悲伤(Sad)、恐惧(Fear)、愤怒(Angry)、厌恶(Disgust)和惊讶(Surprise)。该研究将表情用公式化方式传达人的一些生存信息,例如恐惧是看到令人害怕的事情或者听到不好的消息,一般会通过紧蹙眉头、微眯眼睛、张开嘴巴来表达。悲伤则表示想要寻求安慰,最明显的一点是眼角和嘴角下拉。面部表情产生是由情绪的波动导致的,表达了个人的心理状态、交际意图、个性差异等。后来随着对面部表情研究的深入,基于运动单元(Action Unit, AU)的面部动作编码系统(Facial Action Coding System, FACS)被提出,它通过分析这些运动单元的运动特征及区域来说明与之联系的相关表情。

1 表情数据集

目前的人脸表情识别都是在表情数据集所提供的图片或视频上进行测试,例如图 1所提供的六种基本表情(选自JAFFE表情数据集)图片。下面介绍几种常用的表情数据集。

图 1 六种基本表情 Figure 1 Six basic expressions

1) JAFFE数据集。

日本女性面部表情数据集(the JApanese Female Facial Expression, JAFFE)[5]是研究亚洲人表情的重要测试库,它是1998年由日本九州大学心理系建立的。该数据集规模较小,每种表情3~4张,共有213张表情。它主要用于初期的表情识别研究,目前的表情识别技术在该数据集上获得了很高的识别率。

2) CK+数据集。

Cohn-Kanade扩展数据集(the extended Cohn-Kanade, CK+)[6]是目前比较通用的人脸表情数据集,适合于人脸表情识别的研究。它是2010年在Cohn-Kanda数据集的基础上扩展得来的,包含123名参与者、593个图片序列。CK+与CK数据集的区别为CK数据集只有静态图片,CK+数据集中还包括动态视频,两者都含有情绪标签,指出了参与者的表情。

3) MMI数据集。

MMI面部表情数据集(MMI-facial expression database, MMI)[7]是一个由视频诱发生成的数据集。它包含两个部分,自发表情和诱发表情,共有2900多个视频,数据集中含有表情的AU标签。

4) BHU数据集。

北京航空航天大学数据集(BeiHang University, BHU)[8]是北京航空航天大学毛峡教授在2007年发表的。该表情数据集是在实验室中受日光灯和自然光的照射下拍摄的,包含正面照和侧面照,侧面照是正面照旋转30°得到的。数据集共有800个动态视频,具有在其他人脸数据集中曾未出现的情感表情,对世界人脸表情数据集进行了有益的补充。

5) USTC-NVIE数据集。

自然可见和红外面部表情数据集(Natural Visible and Infrared facial Expression, USTC-NVIE)[9]是目前世界较为全面的人脸数据集,它是2010年由中国科技大学安徽省计算与通信软件重点实验室建立的。数据集含有自发和诱发的6种基本表情,都为静态照片。

6) AFEW数据集。

野外动态面部表情数据集(Acted Facial Expressions in the Wild, AFEW)[10]数据集为视频情感识别大赛(Emotion recognition in the Wild challenge, EmotiW)系列感情识别挑战赛使用的数据集,该比赛自2013年开始每年举办一次。AFEW数据集的内容是从电影中获取的表情,所以在人脸的检测和特征提取方面有一定的困难。

7) SFEW数据集。

野外静态面部表情数据集(Static Facial Expressions in the Wild, SFEW)[11]是从AFEW数据集中截取的含有表情的静态帧。

表 1根据表情数据集的属性,从内容、获取方式和参与者三个主要方面对以上介绍的数据集进行了总结。

表 1 表情数据集及其简介 Table 1 Expression databases and their brief introduction
2 表情识别的发展

关于自动面部表情识别的最早的研究是在20世纪70年代,通过跟踪20个点的移动对其外表作了一个预先实验。但由于面部检测和面部配准算法较差以及计算能力有限,该研究在接下来的十年中几乎没有受到关注。Mase等[12]使用光流法实现自动提取特征的研究以及对面部表情的理解的研究标志着这个研究主题在20世纪90年代初开始复兴。

在2001年,Tian等[13]将AU用于面部识别分析的研究标志着现代自动面部表情识别的开始。这些早期的研究大多使用几何表示描述面部运动的矢量[14],以及嘴和眉毛形状的动态轮廓[15]或可变形的二维网格模型[16]等。也有些学者关注于外观表示,像Gabor滤波器[17]、光流法和局部二值模式(Local Binary Pattern, LBP)[18]或两者之间的组合[14]。BU-3DFE数据集[19]的发布推动了RGB面部表情识别进入3D的识别研究。3D面部识别方法中有一些方法需要在训练和测试期间手动标记基准顶点[20],也有一些方法是完全自动地标记[21]

近些年来,除了提高对面部表情和动作单元识别的扩展研究外,还有对处于更复杂环境中表情识别的研究。自发面部表情检测、复杂精神状态分析、疲劳检测、挫折、疼痛、抑郁症的严重程度和心理压力分析,以及智能虚拟代理中的自动面部表情识别能力等的研究,在自动面部表情识别研究中开辟了新的领域。

自动面部表情识别(Automatic Facial Expression Recognition, AFER)的研究始于20世纪70年代末,但是十多年来进展缓慢,主要是由于面部检测和面部配准算法的限制以及缺乏足够的计算能力。从提出人为表情的RGB静态表示, 进展到动态表示,后来发展到自然表情的表示,在这期间为了应对由大的姿势变化、照明条件的多样性和微妙的面部行为检测提出的挑战,很多学者提出了新的替代方式,如3D和热模式[22]。目前大多数面部表情识别研究主要集中在面部表情和动作单元上,疼痛、疲劳、挫折或认知状态等方面的检测开拓了表情识别研究的新方向。

3 表情识别介绍

表情识别包括面部表情的编码和面部表情的识别两个方面。面部表情的编码包括描述性的编码和判断性的编码两种形式,面部表情的识别包括四个过程:人脸检测、人脸配准、特征提取以及表情分类。上述表情识别的分类如图 2所示。

图 2 面部表情识别 Figure 2 Facial expression recognition
3.1 面部表情编码

面部表情编码分为描述性编码和判断性编码两种形式。描述性编码是将各种面部动作进行分解,用自然语言对分解出的动作单元进行描述,例如关于眼睛的部位,会有眨眼、闭眼等十余种描述。判断性编码是在描述性编码的基础上对分解出的动作单元加上情绪标签,以帮助研究者们更好地理解。以上两种编码都是用来描述面部表情的,区别是描述性编码的主要依据是脸部表面的动作,而判断性编码的主要依据是潜在的情绪以及情绪可能产生的影响。

在描述性编码的方法中,面部行为编码系统FACS和脸部动画参数(Facial Animation Parameter, FAP)是应用最多的。FACS是Ekman根据人脸解剖学的特点,将脸部肌肉划分为若干个既相互独立又相互联系的运动单元AU,描绘出了不同的脸部肌肉动作和不同表情的对应关系。FACS对大量现实生活中人类的表情进行分类,用面部动作描述了几乎所有可能的面部表情,是目前面部表情肌肉运动的权威参照标准。脸部动画参数FAP用于三维面部表情识别[23],是MPEG-4标准(MPEG-4是一种基于内容的通用的多媒体编码标准)的一套参数,用来合成虚拟人脸表情动画,它的编码方案是基于在脸部的模型网格中人脸关键特征点位置的。FAP是一个完整的脸部基本运动集合,与肌肉运动联系紧密,在描述自然面部表情时有很好的效果。最大限度辨别面部肌肉运动编码系统(MAXimally discriminative facial movement coding system, MAX)同样是以面部肌肉运动为单位,用来测量局部面部肌肉的运动。它将面孔分为额眉-鼻根区、眼-鼻-颊区、口唇-下巴区三个部位,对列出的29个面部运动单元分别编码,每一号码代表面孔某一区域的一种活动,面部表情就是由这三个区域的肌肉运动的各种组合而成。MAX是一个以符号为基础的方法,与FACS相比,它不够全面,不存在对潜在情绪的推导。

单一的情绪可能会导致一或多个面部表情,多种表情的组合可能会导致多种情绪的混合,脸部动作和情绪之间并没有一对一的对应关系,因此提出了通过特定的符号来描述面部表情的方法。例如情感的面部动作编码系统(EMotional Facial Action Coding System, EMFACS)和表情辨别整体判断系统(system for Identidying AFFect EXpression by holistic judgement, AFFEX)。EMFACS是FACS的简化版本,它并不关注于全部的面部动作,只分析具有表情含义的部分,这能够极大地缩短编码的时间,但它由于忽略了很多面部动作,所以只适合于对简单的情绪进行分析。AFFEX是Izard提出一个表情分析系统,它通过整体判断来对情绪表达进行识别,对表情进行分类,这能够保证有效性的客观分析,但没有对情绪的表达强度或者动态属性进行编码。

3.2 表情识别过程

表情识别的过程为首先获取人脸图像库,进行人脸检测和人脸配准,这两个方法为表情识别的预处理步骤,然后进行特征提取和表情分类,这是表情识别的关键步骤。目前表情识别的研究大多集中在这两个部分,最后确定表情的所属类别。图 3给出了表情识别的具体过程。

图 3 表情识别过程 Figure 3 Process of expression recognition
3.2.1 人脸检测

人脸检测是在人脸图像中找到并框出人脸部分。目前的人脸检测方法有基于传统知识的算法、基于几何特征的算法、基于AdaBoost算法以及基于神经网络的算法等。下面介绍两种经典算法。

1) 基于AdaBoost算法。

AdaBoost算法是经典的机器学习类算法,是Freund等[24]在Boosting算法的基础上提出的,后来有学者将AdaBoost算法应用在人脸检测中,取得了很好的检测效果。

AdaBoost算法的核心思想是针对同一个训练集训练不同的分类器(弱分类器),弱分类器要经过多次迭代,每次迭代后都会对训练进行反馈,让下一轮迭代过程更加注重上次迭代中无法分类的样本,最终把这些弱分类器集合起来构成一个更强的最终分类器(强分类器),可以达到很高的检测率。这种算法主要有三种优势:第一它引入了“积分图像”这一概念,能够快速地计算检测器使用的特征。第二是基于Adaboost学习算法,从较大的集合中选择少量的关键视觉特征,产生了非常高效的分类器。第三是在“级联”中组合使用复杂的分类器方法,能够快速地区分背景。

Viola-Jones算法具有检测速度快、检测率高等优点,但需要大量的训练样本,特别是负样本,并且存在闭塞和大姿态变化的问题,后期有学者提出并改进了该算法。王建[25]提出了Gentle AdaBoost算法,在构造弱分类器的方法上进行了优化,使算法更具有鲁棒性和稳定性。Nakamura等[26]提出BAdaBoost算法,设置困难样本的权值上限,减缓过学习的问题。Zhang等[27]提出FloatBoost算法,设计出一个高性价比的分类器,将效果不好的弱分类器替换,使得强分类器使用的特征数明显减少。

2) 基于卷积神经网络算法。

卷积神经网络(Convolutional Neural Network, CNN)是深度学习和人工神经网络相结合的一种算法,1989年Lecun等[28]首次提出了它的思想,并于1998年完整地提出了卷积神经网络的算法[29]

CNN训练算法包括两个方向:前向传播和反向传播。前向传播的过程为首先从输入层中输入图像样本,然后由卷积层进行卷积操作,通过局部感知野和权值共享的方法来提取初级特征,再传递到池化层进行采样。在这个过程中,经过多次卷积采样向下传递到输出层。但实际得到的输出值与理想输出值误差较大,通过反向传播使用梯度下降法来减少误差。首先计算出两者之间的误差来调整神经元的连接权值,再逐层向前调整其他层的误差,不断调整直至误差达到预期的效果。CNN的优点主要有两个:第一是采用了局部感知野,根据图像空间的联系是局部的这一特点,令每一个神经元只感受局部的图像区域,而非感受全局图像。第二是采用了权值共享,根据神经元之间是局部连接的这一特点,令每个神经元采用相同的卷积核对图像做卷积,再根据不同的图像特征采取不同的卷积核。这两种方法大大减少了网络训练的参数数量[30],降低了网络结构的复杂度。

CNN在处理大的图像上具有绝对的优势,但会受到数据在空间上多样性的影响,且学习到的特征不具有旋转不变性,根据以上问题,有学者提出了改进算法。Jaderberg等[31]提出了空间变换网络,它能够自适应对数据进行空间变换和对齐,而且计算速度很快。Zhao等[32]提出了一个新的SWWAE(Stacked What-Where Auto-Encoders)结构,由卷积结构和反卷积结构组成,其中卷积结构用来对输入进行编码,反卷积结构用来进行重组。该结构适用于具有大量无标注类数据集的情况。李辉等[33]提出了一种优化改进的CNN人脸识别算法,构造一个稀疏自动编码器对CNN滤波器进行非监督预训练,对误差进行最小化重构,再用支持向量机(Support Vector Machine, SVM)代替Softmax分类器,与传统CNN相比,速度和识别率都有所提升。

3.2.2 人脸配准

人脸配准是在人脸检测的基础上去除旋转、遮挡等因素的影响,准确定位人脸特征点的方法。目前人脸配准的算法主要有基于参数化模型的算法和基于回归的算法。

1) 基于参数化模型的算法。

基于参数化模型的算法主要有活动形状模型(Active Shape Model, ASM)[34]、活动外观模型(Active Appearance Model, AAM)[35]、受约束局部模型(Constrained Local Model, CLM)[36]等。

1995年,Cootes等[34]在Snake模型的基础上提出了基于统计模型的ASM算法,它主要有两个部分:模型建立和图像拟合。模型建立主要是训练图像数据,对人脸轮廓手工标定特征点,计算模型中各个参数的统计数据。图像拟合是匹配图像的过程,根据模型上点的局部灰度信息确定匹配度,最后利用形状模型进行拟合。AAM是Cootes等[35]在2001年提出的ASM改进算法,在ASM基础上进一步对纹理进行建模,使用形状和纹理相融合的统计模型。AAM和ASM可以保持形变也能保证只按照人脸合理的方式变化,大大提高了图像表示的有效性和鲁棒性。CLM类似于Snake模型,不同的是目标形状是受约束的,它主要由三部分组成:形状模型、局部外观模型、拟合优化策略。基本思路为利用局部模型在特征点附近搜索确定每个特征点的位置,并结合形状拟合自动准确对图像进行校正。文献[36]中提出了参数PCA-based和非参数exemplar-based受限局部模型,并在拟合精度、拟合效率上进行了比较,基于PCA的参数模型拟合速度更快,而基于exemplar的非参数模型精度更高。

2) 基于回归的算法。

基于回归的算法主要有基于深度卷积神经网络的回归算法[37]和基于级联回归的算法。

基于深度卷积神经网络回归算法的基本思想是裁剪出人脸图像中的人脸部分,利用CNN进行粗定位和精定位。粗定位是针对整个人脸区域,精定位是针对粗定位后得到的局部人脸区域。卷积神经网络具有层级抽象的能力,能够利用全局信息进行学习,用在人脸配准上能够取得很好的效果。基于级联回归算法是一个不断迭代更新的算法,前提是需要知道脸部初始形状,然后通过多个弱回归级联器不断拟合得到脸部真实形状。Cao等[38]提出的线性形状回归(Explicit Shape Regression, ESR)算法可以通过训练数据最小化对齐错误函数,学习一个向量回归函数直接能推断整个面部形状。Ren等[39]提出的局部二值特征回归(regressing Local Binary Ferture, LBF)算法是基于树的方法,学习每个人脸关键点的局部二值特征,结合起来,使用线性回归来检测特征点,取得了很好的效果。

3.2.3 特征提取

特征提取是提取图像上的特征点,判断该点是否属于某一类特征。特征提取目前比较经典的算法是Calder等[40]在2001年提出的主成分分析法(Principal Component Analysis, PCA)和Ahonen等[41]在2004年提出的局部二值模式(LBP)。

1) 主成分分析法(PCA)。

PCA主要用于数据降维,对于一系列特征组成的多维向量,多维向量里的某些元素本身没有区别,用这些元素作特征来区分,贡献会非常小。PCA就是利用协方差矩阵来分析元素之间的相关性,选出图像的主成分排除其他的冗余信息,形成一个变换矩阵,通过这个变换矩阵实现正交变换,对原有的高维图像进行降维。

具体的操作步骤为:第一步,选取合适的训练集,由N幅人脸图片组成一个训练集X,其中每幅图片的矩阵组成都是M×N,则训练集X组成的矩阵为T×N,其中T=M×N。第二步,特征中心化,计算数据的平均值,用原数据减去求出的平均值。第三步,计算元素之间的相关性,首先计算出协方差矩阵的特征值,按照从大到小的顺序排列,选取其中前M个特征值计算其相应的特征向量,将特征向量组成的变换矩阵P进行线性转换,根据矩阵P中的元素对人脸表情识别贡献率大的属性赋予较重的权值。第三步,实现降维,利用正交变换进行降维,其中:PM×T的矩阵,XT×N的矩阵,则正交变换后的矩阵YM×N的矩阵,M < T,实现了属性的降维。

但PCA对存储空间有很大的要求且计算复杂度较高,所以后期有很多学者提出了改进算法。Le等[42]提出了2DPCA(two-Dimensional PCA)算法,可以直接对图像矩阵进行转换,不再需要将图片矩阵转换成向量之后再进行转换,避免出现维数过高的情况,与PCA比较表现力和速度都有所提升。叶学义等[43]在此基础上提出了Tensor PCA算法,引入三阶张量,采用张量的投影方式将人脸图像张量投影到低维的张量子空间中,并改进传统PCA中协方差矩阵最大化准则,其准确率优于2DPCA算法。

2) 局部二值模式(LBP)。

LBP算法是首先通过计算图像中所包含的每个像素与其8-邻域的点的灰度值的关系,形成一个二进制编码,其中中心点为阈值,邻域内的值大于该阈值的部分标1,小于的标0,最后采用多区域直方图作为图像的特征描述,根据计算两个图像LBP直方图的距离来判断两者的相似性。

二值化处理如图 4所示,从左上角第一个值开始顺时针形成的二进制编码为11011010。对应的LBP值为:107+106+104+103+101,中间的值就用LBP代替,计算LBP的值并没有开始顺序的规定,只是要求在同一处理中保持相同顺序,下面是计算LBP的公式,其中:n为像素点的个数,中心像素位置gc(xc, yc),相邻8-邻域的点为g0, g1, …, g7

图 4 像素点LBP处理 Figure 4 LBP processing of pixel points
$ LB{P_{\left( {{x_c}, {y_c}} \right)}} = \sum\limits_{i = 0}^7 {{2^n}d\left( {{g_i}-{g_c}} \right)} $ (1)

其中:

$ d\left( x \right) = \left\{ {\begin{array}{*{20}{c}} {1, \;\;\;\;{g_i} < {g_c}}\\ {0, \;\;\;\;{g_i} > {g_c}} \end{array}} \right.;i = 0, 1, \cdots, 7 $ (2)

LBP对光照具有不变性,复杂度低,消耗内存小,而且算法简单;但是LBP无法区分邻域像素点与中心像素点相等时的情况,并且原始的LBP算子是灰度不变的,但却不是旋转不变的,图像经过旋转后就会得到不同的灰度值,后期有学者针对以上问题提出了改进算法。Fang等[44]提出了旋转不变LBP算法,将其矩形的图像优化为以中心点为圆心的一个圈,按位平移计算LBP值,能够保证图像在发生一定倾斜时也能得到同样的效果。李春利等[45]提出一种改进LBP算子的纹理图像识别算法,将纹理图像均匀分块,获得LBP直方图,根据得到的训练模型决定测试样本的特征留取,该算法减轻了对样本的依赖,具有更高的稳定性。

3) 其他算法。

除了以上两种经典算法外,还有很多学者提出了其他算法。根据提取对象的不同,可以分为静态方法和动态方法。前者用于无变化的静止图片,后者用于动态的图像序列。常用的其他方法有几何特征提取方法,包括ASM、AAM、尺度不变特征转换(Scale-Invariant Feature Transform, SIFT),外貌特征提取方法,包括Gabor滤波器[46]、PCA、LBP。动态的图像序列反映了人脸表情的一个动态变化过程,主要的特征提取方法有光流法[47]、特征点跟踪法[48]、模型跟踪法[49]、弹性图匹配法[50]等。以上方法的介绍如表 2所示。

表 2 特征提取方法 Table 2 Methods of feature extraction
3.2.4 表情分类

表情分类是根据提取的图像特征判断该表情所属的类别。具体归属的类别可以是根据FACS划分的AU单元,也可以是目前通用的六种基本表情,还可以是根据时间信息划分的类别等。下面介绍几种常用的方法。

1) 隐马尔可夫模型算法。

隐马尔可夫模型(Hidden Markov Model, HMM)算法是一种统计模型,用来描述一个含有隐含未知参数的马尔可夫过程[15]。它的状态不能直接观测到,但可以由观测向量序列观察到,而每一个观测向量是由一个具有相应概率密度分布的序列产生。所以,隐马尔可夫模型是一个双重随机过程,一个是马尔可夫链,用来输出状态序列,另一个是随机过程,输出观测向量序列。HMM能够保证在面部表情和头部位置发生较大变动时仍可以得到较高的识别率,但实现复杂度较高,而且需要的存储空间很大。

2) k最近邻算法。

k最近邻(k-Nearest Neighbor, kNN)算法是一种lazy-learning算法[51],分类器不需要使用训练集进行训练。它的基本思路为:随机将所有样本划分为k类,计算每一类的平均值,将所有样本与求出的平均值进行比较,依据距离重新划分,不断迭代更新,直至划分的类中样本不再发生变化。划分的标准为一维的使用两点之间的距离公式,二维的使用欧氏距离,n维的使用明氏距离。kNN主要依靠周围有限的邻近样本,而不是依靠判别类域的方法来确定所属类别,对于类域的交叉或重叠过多的待分样本集来说比较适合。

3) 其他算法.

表情分类方法可分为静态和动态的,静态模型有贝叶斯网络分类器(Bayesian Network Classifier, BNC)[52]、神经网络(Neural Network, NN)[53]、支持向量机(SVM)[54]、卷积神经网络(CNN)[55]等。动态模型有可变状态潜在条件随机场(Variable-state Latent Conditional Random Field, VSL-CRF)[56]和使用多层反馈神经网络(Recurrent Neural Network, RNN)架构的长期短期内存网络(Long Short Term Memory Network, LSTM)[57]等。以上方法的介绍如表 3所示。

表 3 表情分类方法 Table 3 Methods of expression classification
4 部分算法实验分析 4.1 特征提取实验

1) LBP实验。

选择一张原始的人脸图像,首先将其转化为灰度图像,根据灰度图像可以得到LBP图像,再统计出每一个区间内的LBP值的个数,就可以得到人脸LBP直方图, 如图 5所示。

图 5 人脸LBP图像 Figure 5 LBP image of human face

图 5所示,LBP算子的灰度不变性和旋转不变性使其在纹理分割、纹理分类等取得了良好的实验效果, 但是高精度的特征提取会增大内存占用且减慢速度。

2) PCA实验。

在CK+数据集中选取了部分人脸图像进行PCA处理, 得到的特征脸图像如图 6所示。根据特征脸可以构造特征空间,根据训练样本和测试样本在特征空间上的投影距离可以判断表情类别。

图 6 特征脸图像 Figure 6 Images of feature face

图 6可知,PCA算法可以将人脸图像表示为一维的向量,选择相关性大的特征向量而剔除冗余的特征向量,可以很好地表示人脸特征并且达到降维的目的。

4.2 表情分类实验

1) SVM实验。

在CK+人脸表情数据集中选择了1435张人脸图像进行训练,并选择了140张图像进行测试,其识别率如表 4所示。

表 4 SVM分类结果 Table 4 SVM classification results

根据表 4可知,SVM在JAFFE上的识别率达到了平均87.14%。SVM能够实现训练样本到测试样本的推力转换,提高了分类识别率并具有良好的鲁棒性,但对于小样本数据的分类情况较为良好,不适用于大样本。

2) CNN实验。

在CK+人脸表情数据集中挑选了2800张人脸图像分别使用AlexNet和CaffeNet网络模型进行训练,并选择了140张图像进行测试,得出其识别率。根据识别率可知,CNN在CK+表情数据集上分别使用AlexNet和CaffeNet模型训练和测试,识别率分别达到了88.57%和85.45%。CNN自我学习能力较强,速度快,但依赖于大量的训练样本才能够达到较高的识别率,且对图像的前期处理要求较高。

5 存在的问题及未来的发展 5.1 存在的问题

通过查看人脸面部提取的信息,来识别并判断出人的心理状态有助于未来的教育、医疗、商业等服务的发展。目前面部表情识别技术虽然目前已经取得了极大的进展,但是仍存在很多亟须解决以及优化的问题,例如大范围的转变头部姿态、改变光照背景等对表情识别影响很大等,对目前表情识别存在的问题进行总结如下:

1) 表情的分类过于局限,人类表情并非只有六种基本表情,还存在很多复杂和叠加的表情。

2) 目前的算法都需要将人脸图片进行预处理后才能进行运算,处理较为繁琐,实用性不是很大。

3) 动态图像中的人脸表情和三维现实生活中的人脸表情容易受到光照、遮挡物的影响,鲁棒性较差,识别算法的有效性仍有待改进。

4) 大多数论文的算法研究都是在已有的算法基础上进行改进形成的,缺少从新的角度提出实用高效的新算法。

5) 大部分表情识别算法需要大量的训练样本数据才能够得到较好的识别效果,识别效率对训练样本的依赖程度较大。

5.2 未来的发展

随着大数据时代的到来,使得实时处理面部表情的需求量急剧增加,面部表情识别技术的应用具有更加广阔的发展空间和利用价值。对表情识别未来的发展总结如下:

1) 考虑时间变化。加入时间变化所提供的信息,可以帮助识别微妙表情和区分自发表情[58];且与表情的空间变化相比,表情的时间变化受到身份偏差的影响要小得多。目前的表情识别技术以独立于相邻帧的顺序配准每个帧,未来发展的新配准技术是通过考虑后续帧之间配准的一致性来对齐帧,该技术可以支持时空表示。

2) 纳入深度信息。目前大多数表情识别设备都依赖于2D图像作为输入,在克服了头部姿势和照明变化相关的挑战之后,基于深度的成像技术得到快速发展,该技术支持3D脸部分析,且深度变化的分析有助于识别2D外观不能察觉的表情。

3) 融入非视觉形式。单从视觉形式即提取面部信息来判断表情具有一定的局限,未来可以通过整合热、声音、环境等因素来帮助判断面部表情。如通过热成像捕获不同面部区域的辐射,根据血液的流动变化来判断面部表情。声音可以通过声学属性来提供特定情绪的指示。根据环境中相互作用的人、地点等也可以改善情绪推理。

6 结语

表情识别是目前研究的热门领域,具有广阔的研究前景。本文对表情识别的常用数据集和发展历程进行了简要的介绍,总结了表情识别四个过程即人脸检测、人脸配准、特征提取和表情分类的经典算法,并且对特征提取和表情分类两个重要过程给出了实验对比分析其每个算法的性能,最后对表情识别存在的问题和未来的发展作出了总结。

参考文献(References)
[1] GIRARD J M, COHN J F, MAHOOR M H, et al. Nonverbal social withdrawal in depression:evidence from manual and automatic analyses[J]. Image and Vision Computing, 2014, 32(10): 641-647. DOI:10.1016/j.imavis.2013.12.007
[2] LUCEY P, COHN J F, MATTHEWS I, et al. Automatically detecting pain in video through facial action units[J]. IEEE Transactions on Systems, Man, and Cybernetics, Part B:Cybernetics, 2011, 41(3): 664-674. DOI:10.1109/TSMCB.2010.2082525
[3] IRANI R, NASROLLAHI K, SIMON M O, et al. Spatiotemporal analysis of RGB-D-T facial images for multimodal pain level recognition[C]//Proceedings of the 2015 IEEE Conference on Computer Vision and Pattern Recognition Workshops. Piscataway, NJ:IEEE, 2015:88-95. https://www.computer.org/csdl/proceedings/cvprw/2015/6759/00/07301341-abs.html
[4] EKMAN P. Universal and cultural differences in facial expression of emotion[J]. Nebraska Symposium on Motivation, 1972, 19: 207-284.
[5] LYONS M, AKAMATSU S, KAMACHI M, et al. Coding facial expressions with Gabor wavelets[C]//Proceedings of the 1998 IEEE International Conference on Automatic Face and Gesture Recognition. Piscataway, NJ:IEEE, 1998:200-205. http://doi.ieeecomputersociety.org/resolve?ref_id=doi:10.1109/AFGR.1998.670949&rfr_id=trans/tp/2000/12/ttp2000121424.htm
[6] LUCEY P, COHN J F, KANADE T, et al. The extended Cohn-Kanade dataset (CK+):a complete dataset for action unit and emotion-specified expression[C]//Proceedings of the 2010 IEEE Computer Society Conference on Computer Vision and Pattern Recognition Workshops. Piscataway, NJ:IEEE, 2010:94-101. http://ieeexplore.ieee.org/xpls/icp.jsp?arnumber=5543262
[7] VALSTAR M F, PANTIC M. Induced disgust, happiness and surprise:an addition to the mmi facial expression database[EB/OL].[2017-04-16]. https://ibug.doc.ic.ac.uk/media/uploads/documents/EMOTION-2010-ValstarPantic-CAMERA.pdf.
[8] 薛雨丽, 毛峡, 张帆. BHU人脸表情数据库的设计与实现[J]. 北京航空航天大学学报, 2007, 33(2): 224-228. (XUE Y L, MAO X, ZHANG F. Design and realization of BHU facial expression database[J]. Journal of Beijing University of Aeronautics and Astronautics, 2007, 33(2): 224-228.)
[9] WANG S F, LIU Z L, LYU S L, et al. A natural visible and infrared facial expression database for expression recognition and emotion Inference[J]. IEEE Transactions on Multimedia, 2010, 12(7): 682-691. DOI:10.1109/TMM.2010.2060716
[10] DHALL A, GOECKE R, LUCEY S, et al. Collecting large, richly annotated facial-expression databases from movies[J]. IEEE Multimedia, 2012, 19(3): 34-41. DOI:10.1109/MMUL.2012.26
[11] DHALL A, GOECKE R, LUCEY S, et al. Static facial expression analysis in tough conditions:data, evaluation protocol and benchmark[C]//Proceedings of the 2011 IEEE International Conference on Computer Vision Workshops. Piscataway, NJ:IEEE, 2011:2106-2112. http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=6130508
[12] MASE K, PENTLAND A. Automatic lipreading by optical-flow analysis[J]. Systems & Computers in Japan, 2015, 22(6): 67-76.
[13] TIAN Y L, KANADE T, COHN J F. Recognizing action units for facial expression analysis[J]. IEEE Transactions on Pattern Analysis & Machine Intelligence, 2001, 23(2): 97-115.
[14] COHEN I, SEBE N, GARG A, et al. Facial expression recognition from video sequences:temporal and static modeling[J]. Computer Vision & Image Understanding, 2003, 91(1/2): 160-187.
[15] ALEKSIC P S, KATSAGGELOS A K. Automatic facial expression recognition using facial animation parameters and multi-stream hmms[J]. IEEE Transactions on Information Forensics & Security, 2006, 1(1): 3-11.
[16] KOTSIA I, PITAS I. Facial expression recognition in image sequences using geometric deformation features and support vector machines[J]. IEEE Transactions on Image Processing, 2007, 16(1): 172-187. DOI:10.1109/TIP.2006.884954
[17] LITTLEWORT G, BARTLETT M S, FASEL I, et al. Dynamics of facial expression extracted automatically from video[J]. Image & Vision Computing, 2006, 24(6): 615-625.
[18] SHAN C F, GONG S G, MCOWAN P W. Facial expression recognition based on local binary patterns:a comprehensive study[J]. Image and Vision Computing, 2009, 27(6): 803-816. DOI:10.1016/j.imavis.2008.08.005
[19] YIN L J, WEI X Z, SUN Y, et al. A 3D facial expression database for facial behavior research[C]//Proceedings of the 20067th International Conference on Automatic Face and Gesture Recognition. Piscataway, NJ:IEEE, 2006:211-216. https://www.computer.org/csdl/proceedings/fg/2006/2503/00/25030211-abs.html
[20] TANG H, HUANG T S. 3D facial expression recognition based on automatically selected features[C]//CVPRW 2008:Proceedings of the 2008 IEEE Computer Society Conference on Computer Vision and Pattern Recognition Workshops. Piscataway, NJ:IEEE, 2008:1-8. https://www.computer.org/csdl/proceedings/cvprw/2008/2339/00/04563052-abs.html
[21] VRETOS N, NIKOLAIDIS N, PITAS I. 3D facial expression recognition using Zernike moments on depth images[C]//Proceedings of the 201118th IEEE International Conference on Image Processing. Piscataway, NJ:IEEE, 2011:773-776. http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=6116669
[22] KONG S G, HEO J, ABIDI B R, et al. Recent advances in visual and infrared face recognition-a review[J]. Computer Vision & Image Understanding, 2005, 97(1): 103-135.
[23] 王国胤, 龚勋. 人脸感知:从二维到三维[M]. 北京: 科学出版社, 2011: 10-30. (WANG G Y, GONG X. Human Face Perception:from 2D to 3D[M]. Beijing: Science Press, 2011: 10-30.)
[24] FREUND Y, SCHAPIRE R E. A decision-theoretic generalization of on-line learning and an application to boosting[C]//Proceedings of the 1995 European Conference on Computational Learning Theory, LNCS 904. Berlin:Springer, 1995:23-37.
[25] 王建. 基于Gentle AdaBoost算法的人脸检测研究[D]. 成都: 电子科技大学, 2011: 24-38. (WANG J. Research on face detection based on Gentle AdaBoost algorithm[D]. Chengdu:University of Electronic Science and Technology of China, 2011:24-38.) http://cdmd.cnki.com.cn/Article/CDMD-10614-1011073448.htm
[26] NAKAMURA M, NOMUYA H, UEHARA K. Improvement of boosting algorithm by modifying weighting rule[J]. Annals of Mathematics & Artificial Intelligence, 2004, 41(1): 95-109.
[27] ZHANG Z Q, LI M J, LI S Z, et al. Multi-view face detection with FloatBoost[C]//Proceedings of the 2002 IEEE Workshop on Applications of Computer Vision. Washington, DC:IEEE Computer Society, 2002:184. http://dl.acm.org/citation.cfm?id=836849
[28] LECUN Y, BOSER B, DENKER J S, et al. Backpropagation applied to handwritten zip code recognition[J]. Neural Computation, 1989, 1(4): 541-551. DOI:10.1162/neco.1989.1.4.541
[29] LECUN Y, BOTTOU L, BENGIO Y, et al. Gradient-based learning applied to document recognition[J]. Proceedings of the IEEE, 1998, 86(11): 2278-2324. DOI:10.1109/5.726791
[30] 汪济民. 基于卷积神经网络的人脸检测和性别识别研究[D]. 南京: 南京理工大学, 2015: 42-47. (WANG J M. Research on face detection and gender recognition based on convolution neural network[D]. Nanjing:Nanjing University of Science and Technology, 2015:42-47.) http://cdmd.cnki.com.cn/Article/CDMD-10288-1015365937.htm
[31] JADERBERG M, SIMONYAN K, ZISSERMAN A, et al. Spatial transformer networks[C]//NIPS 2015:Proceedings of the 201528th International Conference on Neural Information Processing Systems. Cambridge, MA:MIT Press, 2015:2017-2025.
[32] ZHAO J B, MATHIEU M, GOROSHIN R, et al. Stacked what-where auto-encoders[EB/OL].[2017-04-10]. http://xueshu.baidu.com/s?wd=paperuri%3A%28c2e4cc91c19dc2d85fe0c72fcf535763%29&filter=sc_long_sign&tn=SE_xueshusource_2kduw22v&sc_vurl=http%3A%2F%2Farxiv.org%2Fpdf%2F1506.02351.pdf&ie=utf-8&sc_us=5921033091152195876.
[33] 李辉, 石波. 基于卷积神经网络的人脸识别算法[J]. 软件导刊, 2017, 16(3): 26-29. (LI H, SHI B. Face recognition algorithm based on convolution neural network[J]. Software Guide, 2017, 16(3): 26-29.)
[34] COOTES T F, TAYLOR C J, COOPER D H, et al. Active shape models-their training and application[J]. Computer Vision & Image Understanding, 1995, 61(1): 38-59.
[35] COOTES T F, EDWARDS G J, TAYLOR C J. Active appearance models[C]//Proceedings of the 1998 European Conference on Computer Vision, LNCS 1407. Berlin:Springer, 1998:484-498.
[36] 金鑫, 谭晓阳. 受限局部模型在人脸特征点定位中应用综述[J]. 小型微型计算机系统, 2017, 38(2): 371-375. (JIN X, TAN X Y. Facial feature point detection with constrained local models:a survey[J]. Journal of Chinese Computer Systems, 2017, 38(2): 371-375.)
[37] SUN Y, WANG X G, TANG X O. Deep convolutional network cascade for facial point detection[C]//CVPR 2013:Proceedings of the 2013 IEEE Conference on Computer Vision and Pattern Recognition. Piscataway, NJ:IEEE, 2013:3476-3483. http://doi.ieeecomputersociety.org/10.1109/CVPR.2013.446
[38] CAO X D, WEI Y C, WEN F, et al. Face alignment by explicit shape regression[J]. International Journal of Computer Vision, 2014, 107(2): 177-190. DOI:10.1007/s11263-013-0667-3
[39] REN S Q, CAO X D, WEI Y C, et al. Face alignment at 3000 FPS via regressing local binary features[C]//Proceedings of the 2014 IEEE Conference on Computer Vision and Pattern Recognition. Piscataway, NJ:IEEE, 2014:1685-1692. http://doi.ieeecomputersociety.org/10.1109/CVPR.2014.218
[40] CALDER A J, BURTON A M, MILLER P, et al. A principal component analysis of facial expressions[J]. Vision Research, 2001, 41(9): 1179-1208. DOI:10.1016/S0042-6989(01)00002-5
[41] AHONEN T, HADID A, PIETIKAINEN M. Face recognition with local binary patterns[C]//Proceedings of the 2004 European Conference on Computer Vision, LNCS 3021. Berlin:Springer, 2004:469-481. http://link.springer.com/chapter/10.1007/978-3-540-24670-1_36
[42] LE H T, HA D T T. Facial expression representation and classification using 2DPCA[C]//Proceedings of the 2012 International Conference on Control, Automation and Information Sciences. Piscataway, NJ:IEEE, 2012:42-47. http://ieeexplore.ieee.org/xpls/icp.jsp?arnumber=6466628
[43] 叶学义, 王大安, 宦天枢, 等. 基于张量的2D-PCA人脸识别算法[J]. 计算机工程与应用, 2017, 53(6): 1-6. (YE X Y, WANG D A, HUAN T S, et al. Novel 2D-PCA face recognition based on tensor[J]. Computer Engineering and Applications, 2017, 53(6): 1-6. DOI:10.3778/j.issn.1002-8331.1608-0390)
[44] FANG Y C, LUO J, LOU C S. Fusion of multi-directional rotation invariant uniform LBP features for face recognition[C]//ⅡTA 2009:Proceedings of the 2009 Third International Symposium on Intelligent Information Technology Application. Piscataway, NJ:IEEE, 2009:332-335. https://www.computer.org/csdl/proceedings/iita/2009/3859/02/3859b332-abs.html
[45] 李春利, 沈鲁娟. 基于改进LBP算子的纹理图像分类方法[J]. 计算机工程与设计, 2016, 37(1): 232-236. (LI C L, SHEN L J. Texture image classification method based on improved LBP operator[J]. Computer Engineering and Design, 2016, 37(1): 232-236.)
[46] LIU C, WECHSLER H. Gabor feature based classification using the enhanced Fisher linear discriminant model for face recognition[J]. IEEE Transactions on Image Processing, 2002, 11(4): 467-476. DOI:10.1109/TIP.2002.999679
[47] 孔健. 基于MLBP-TOP与光流多特征的人脸表情融合识别研究[D]. 镇江: 江苏大学, 2009: 40-44. (KONG J. Research on face expression fusion recognition based on MLBP-TOP and optical flow multi-feature[D]. Zhenjiang:Jiangsu University, 2009:40-44.) http://cdmd.cnki.com.cn/Article/CDMD-10299-2010033114.htm
[48] BOUREL F, CHIBELUSHI C C, LOW A A. Robust facial expression recognition using a state-based model of spatially-localised facial dynamics[C]//Proceedings of the 2002 Fifth IEEE International Conference on Automatic Face and Gesture Recognition. Piscataway, NJ:IEEE, 2002:106-111. http://dl.acm.org/citation.cfm?id=875460
[49] TIE Y, GUAN L. A deformable 3D facial expression model for dynamic human emotional state recognition[J]. IEEE Transactions on Circuits & Systems for Video Technology, 2013, 23(1): 142-157.
[50] WISKOTT L, FELLOUS J M, KRVGER N, et al. Face recognition by elastic bunch graph matching[J]. IEEE Transactions on Pattern Analysis & Machine Intelligence, 1997, 19(7): 775-779.
[51] VOGL T P, MANGIS J K, RIGLER A K, et al. Accelerating the convergence of the back-propagation method[J]. Biological Cybernetics, 1988, 59(4/5): 257-263.
[52] HASTIE T, TIBSHIRANI R. Discriminant adaptive nearest neighbor classification[J]. IEEE Transactions on Pattern Analysis & Machine Intelligence, 1996, 18(6): 607-616.
[53] SEBE N, LEW M S, SUN Y, et al. Authentic facial expression analysis[J]. Image & Vision Computing, 2007, 25(12): 1856-1863.
[54] YOSHITOMI Y, MIYAWAKI N, TOMITA S, et al. Facial expression recognition using thermal image processing and neural network[C]//Proceedings of the 19976th IEEE International Workshop on Robot and Human Communication. Piscataway, NJ:IEEE, 1997:380-385. http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=647016
[55] HERNÁNDEZ B, OLAGUE G, HAMMOUD R, et al. Visual learning of texture descriptors for facial expression recognition in thermal imagery[J]. Computer Vision & Image Understanding, 2007, 106(2/3): 258-269.
[56] RANZATO M, SUSSKIND J, MNIH V, et al. On deep generative models with applications to recognition[C]//Proceedings of the 2011 IEEE Conference on Computer Vision and Pattern Recognition. Piscataway, NJ:IEEE, 2011:2857-2864. https://www.computer.org/csdl/proceedings/cvpr/2011/0394/00/05995710-abs.html
[57] WALECKI R, RUDOVIC O, PAVLOVIC V, et al. Variable-state latent conditional random fields for facial expression recognition and action unit detection[C]//Proceedings of the 201511th IEEE International Conference and Workshops on Automatic Face and Gesture Recognition. Piscataway, NJ:IEEE, 2015:1-8. http://doi.ieeecomputersociety.org/10.1109/FG.2015.7163137
[58] AMBADAR Z, SCHOOLER J W, COHN J F. Deciphering the enigmatic face:the importance of facial dynamics in interpreting subtle facial expressions[J]. Psychological Science, 2005, 16(5): 403-410. DOI:10.1111/j.0956-7976.2005.01548.x