周涛,孙亚新
(嘉兴学院,嘉兴 314001)
人脸表情识别是对人脸的表情信息进行特征提取和分析,进而使机器理解人类情感的人工智能技术。在机器人、人机交互、远程教育、游戏娱乐等领域都有非常广泛的应用。目前已经有大量的研究者针对人脸表情识别展开研究。
何俊提出了一个新的多角度人脸表情识别方法,该方法首先提取回归模型的增量修正特征,然后用主成分分析法进行特征选择,最后采用判别共享高斯过程隐变量模型识别多角度人脸表情[1]。黄寿喜采用改进的深度信念网络作为提取人脸表情特征的检测器,堆叠自编码器作为识别表情的分类器,实现在人脸表情识别研究中深度信念网络与堆叠自编码器的结合[2]。齐梅提出了一种韦伯梯度编码特征描述的人脸表情识别算法[3]。卢官明提出一种基于协作表示的分类算法,并应用于人脸表情识别[4]。罗源将训练样本切割出眼眉、脸颊和嘴三部分,对分割的各部分利用K-SVD算法得到块字典向量,再用层次分析法的权重赋值方法求块字典向量的权重值,构成各类子字典[5]。周宇旋针对完全局部二值模式存在直方图维数过高和特征冗余,会导致识别速度降低和识别率低的问题,提出基于有判别力的完全局部二值模式的人脸表情识别算法[6]。
从上述文献的描述可以看到,这些文献主要从特征提取[2,3,6]和分类器[1,4,5]上展开研究。这些方法在分类上均采用单个分类器完成任务。但是本文注意到在人脸数据中,不同人、不同角度、不同光照往往比不同表情对人脸的影响更大,导致导致不同表情的数据可能比同一表情的数据更相似。然而人类在这种情况下,却能比较容易的发现不同表情的人脸之间的差异。究其原因可能是人类在识别不同的人脸表情时,会自动寻找合适的特征和分类方法将其区分开来。
为了模拟上述人类识别人脸表情的过程,本文提出一种基于两阶段分类与自适应特征变换的人脸表情识别方法。第1阶段,在维数约简结果上,分别使用KNN和SVM对测试样本分类。这里KNN和SVM分别表示两个不同的人采取同一特征识别人脸表情。如果该特征适合用来识别该表情,显然两者结果应该一致。如果该特征不适合用来识别该表情,则两个人可能会持不同的意见。此时应该寻找另外一种特征来识别该表情,所以接下来采取新的阶段再次识别该表情。
第2阶段,首先使用一种自适应特征变换,将维数约简结果变换到新的特征空间,然后使用稀疏表示分类进行分类。其中,对于自适应特征变换,本文发现文献[7]给出的基于引力感知模型的自适应特征变换能够很好的完成任务。另外,本文使用稀疏表示分类的原因稀疏表示分类的原理与KNN和SVM差异较大。
TSAFTC的主要过程是对分类难度较大的测试样本,将特征映射到新的空间,使用新的分类器进一步识别。其原理是模拟人类在识别目标时会自动选择合适的特征和分类方法。本节先给出TSAFTC的框架,然后给出自适应特征变换(Adaptive Feature Transform,AFT),最后给出TSAFTC算法。
图1给出了TSAFTC的流程图。从图1可以看到给定一个测试样本的表情特征。第1阶段,使用KNN和SVM分别进行识别,并判断分类结果是否相同,如果相同则输出分类结果,否则进入第2阶段。第2阶段,首先使用AFT将特征变换到新的特征空间,然后使用SRC进行分类,得到最终分类结果。
图1 TSAFTC流程图
本文采用文献[7]研究得到的自适应特征变换方法。给定 n个训练样本其中 p是数据的维度,n是数据的个数,对于训练样本xi自适应特征变换定义如下:
根据前面两小节的描述,TSAFTC算法可以总结如下:
算法1 TSAFTC
输入:训练样本集X=[x1,x2,…,xn]∈Rp×n和其类别标签L=[l1,l2,…,ln],测试样本x
输出:测试样本的类别c
1:对x分别使用KNN和SVM得到分类结果c1和c2。
2:如果c1和c2结果相同,则分类结果c=c1。否侧,进入第3步。
3:使用式(1)得到训练样本的自适应特征变换结果Y=[y1,y2,…,yn]∈Rn×n,使用式(9)得到测试样本的自适应特征变换结果y∈Rn×1。
4:根据Y,L,y使用SRC得到分类结果c
为了实现人脸表情识别,还需要特征提取和维数约简。流程图如图2所示。接下来简要介绍本文采用的特征提取和维数约简方法。
图2 基于TSAFTC的人脸表情识别方法流程图
其中梯度方向直方图(Histogram of Oriented Gradients,HOG)用于提取特征。首先将人脸图像归一化为128×128大小。然后使用两种不同的参数提取HOG特征,其中方向组数为16。第1种参数设置如下:人脸图像划分成8×8不重叠的块,这样总共有256块。第2种参数设置如下:人脸划分成16×16不重叠的块,这样总共有64块。
文献[8]给出的增强的相关反馈(Enhanced Rele⁃vance Feedback,ERF)方法用于维数约简。
两个基准数据库用于实验。第1个数据库是日本女性人脸表情数据库(Japanese female facial expression,JAFFE)。该数据库总共包含213张256×256大小的灰度图。由10位日本女性,每种表情提供2到4张图片组成。
第2个数据库是扩展 Cohn–Kanade(Extended Cohn–Kanade,CK+)数据库。该数据库包含123个对象的327个标注了人脸表情的图像序列,其中表情标签有高兴、悲伤、愤怒、害怕、厌恶、藐视、惊奇等。本文选择序列中的最后3张图片用于实验。
TSAFTC是一种分类器,所以本文将与其他的分类器比较,包括SVM,KNN,SRC三种方法。其中SVM使用多项式核,KNN中的邻域参数k由在训练数据中的交叉算法确定。
采用人独立的实验策略,即每次采用一个人的数据作为测试数据,其他人的数据作为训练数据。所有人的数据均作为一次测试数据,所有实验结果的平均作为最终的实验结果。
表1 两数据库上使用不同分类器的人脸表情识别结果
表1给出了不同分类器在两个数据库上的人脸表情识别结果。从表1可以看到TSAFTC在两个数据库上均能取得最好的效果。在CK+数据上,TSAFTC比SVM,KNN,SRC分别高 2.11%,2.02%,1.27%。在JAFFE数据库上比 SVM,KNN,SRC分别高 1.43%,2.36%,5.75%。这些实验结果证明了本文算法在人脸表情识别上的有效性。
因为各个分类器的输入数据需要先使用维数约简算法降维,所以在图3和图4中还给出了维数约简结果取不同维度的实验结果,其中维度分别取20,40,60,80,100,120,140,160。从图3和4可以看到,在取不同维度时,TSAFTC算法相对其他算法能够得到更稳定的实验结果。特别是TSAFTC在降低的维度时就能达较好的实验结果。这样有两个好处:首先,维数约简结果的维度,目前来说,并没有一个很好的选择方法,如果分类器在不同维度时的结果更稳定,则更有利于维数约简结果维度的选择。其次,在更低维度上就能达到更好的效果,有利于提高后续步骤的执行速度。
本文提出一种基于两阶段分类与自适应特征变换的人脸表情识别方法。该方法能够模拟人类以下的目标识别过程:当一种特征或者识别方法不能够很好地识别物体时,会自动的切换至另外一种特征或者方法来识别该目标。通过在JAFFE和CK+上的人独立的表情识别实验可以看到,本文算法能够取得更好的实验结果。
图3 ERF取不同维度时在CK+数据库上的分类结果
图4 ERF取不同维度时在JAFFE数据库上的分类结果
本文算法使用两个不同的分类器对测试样本进行识别,然后根据识别结果,判断该样本使用该特征和方法是否能够比较容易的识别该表情。虽然在一定程度上能够发现该特征和方法是否有利于该表情,但是依旧会出现较多的、两者识别结果一致时,识别结果却不对的情况。所以在将来研究一种更合理的方法,来发现采用的特征和方法是否有利于识别该表情。
参考文献:
[1]何俊,何忠文,蔡建峰,房灵芝.一种新的多角度人脸表情识别方法.计算机应用研究.2018(35):1-8
[2]黄寿喜,邱卫根.基于改进的深度信念网络的人脸表情识别.计算机工程与设计,2017(6):1580-1584
[3]齐梅,李艳秋.WGC特征描述的人脸表情识别.电子测量与仪器学报,2017(4):566-572
[4]卢官明,石婉婉,李霞,张正言,闫静杰.基于协作表示的人脸表情识别.南京邮电大学学报(自然科学版),2017(2):51-56
[5]罗源,张灵,陈云华,朱思豪,田小路.基于层次结构化字典学习的人脸表情识别,2017(11):3514-3517
[6]周宇旋,吴秦,梁久祯,王念兵,李文静.判别性完全局部二值模式人脸表情识别.计算机工程与应用,2017(4):163-169
[7]Ya-xin Sun,Gu-ihua Wen.Cognitive Gravitation Model-Based Relative Transformation for Classification.Soft computing,2017,21(18):5425-5441.
[8]Ya-xin Sun,Gui-huaWen.Cognitive Facial Expression Recognition with Constrained Dimensionality Reduction.Neuro computing,2017,239:397-408.