龙源期刊网基于深度神经网络的微表情识别作者:唐爽来源:《电子技术与软件工程》2017年第03期摘要微表情是一种极为短暂的面部表情,当人们想要掩饰内心的真实情感时,就会不自觉的流露出来。由于微表情的持续时间短,动作幅度小等特点,检测和识别微表情就变得尤为困难。为了解决传统图像识别的方法的识别率低和预处理复杂等缺点,本文提出了采用深度神经网络的方法来对微表情进行识别。该深度神经网络由卷积神经网络(CNN)和长短时记忆型(LSTM)递归神经网络组合而成,CNN层负责提取微表情的静态图像特征,LSTM层将提取到的卷积特征进行整合,而得到这些特征在时域上的信息,进而对这些信息进行分类训练。在CASM2数据集下,该方法对5类表情的识别率比传统方法高。【关键词】微表情识别卷积神经网络长短时记忆1引言人们的内心想法通常都会表现在面部表情上,然而在一些极端环境下,人们为了压抑自己的真实内心情感时,他们的面部变化十分微小,我们通常称之为微表情。在刑侦、医学、教育、心理和国防等领域上,微表情的应用前景十分远大,不过即便是经过训练的人也很难用肉眼来准确的检测和识别微表情。其主要原因就是它的持续时间短,仅为1/5~1/25s,而且动作幅度很小。人脸表情识别技术早已发展到一定程度了,甚至不少研究团队提出的方法针对6种基本表情的识别率已经达到90%。然而微表情识别技术的研究在近几年来才刚刚开始,如Pfister等提出了一种结合时域插值模型和多核学习的方法来识别微表情;Wu等设计了一种使用Gabor特征和支持向量机的微表情识别系统;唐红梅等在LTP做出改进而提出的MG-LTP算法,然后采用极限学习机对微表情进行训练和分类;Wang等提出了基于判别式张量子空间分析的特征提取方法,并利用极限学习机训练和分类微表情。上述的识别技术都是基于传统机器学习的方法,而近几年来,利用深度学习技术来解决图像识别问题是当前的研究热点。在ILSVRC-2012图像识别竞赛中,Krizhevsky等利用深度卷积神经网络的自适应特征提取方法,其性能远远超过使用人工提取特征的方法,并且在近几年内的ImageNet大规模视觉识别挑战比赛中连续刷新了世界纪录。本文决定使用卷积神经网络(CNN)来提取人脸微表情特征,它能让机器自主地从样本数据中学习到表示这些微表情的本质特征,而这些特征更具有一般性。由于微表情的特性,要充分利用微表情的上下文信息才能更为精确的识别微表情,这里我们采用长短时记忆网络(LSTM),它是递归神经网络(RNN)中的一种变换形式,它能够充分的利用数据的上下文龙源期刊网信息,在对序列的识别任务中表现优异,近几年来它被充分的利用到自然语言处理、语音识别机器翻译等领域。综上所述,本文提出一种CNN和LSTM结合的微表情识别方法。2相关工作2.1卷积神经网络模型卷积神经网络模型(CNN)最早是由LeCun等在1990年首次提出,现已在图像识别领域取得巨大成功,它能够发现隐藏在图片中的特征,相比人工提取的特征更具有区分度,而且不需要对原始数据做过多的预处理。卷积神经网络(CNN)通过三种方式来让网络所学习到的特征更具有鲁棒性:局部感受野、权值共享和降采样。局部感受野是指每一个卷积层的神经元只能和上一层的一部分神经元连接,而不是一般神经网络里所要求的全连接,这样每一个神经元能够感受到局部的视觉特征,然后在更高层将局部信息进行整合,进而得到整个图片的描述信息。权值共享是指每一个神经元和上一层的部分神经元所连接的每一条边的权值,和当前层其他神经元和上一层连接的每一条边的权值是一样的,首先这样减少了需要训练的参数个数,其次我们可以把这种模式作为提取整个图片特征的一种方式。降采样是指通过将一定范围内的像素点压缩为一个像素点,使图像缩放,减少特征的维度,通常在卷积层之后用来让各层所得到的特征具有平移、缩放不变形,从而使特征具有更强的泛化性。2.2长短时记忆型递归神经网络模型长短时记忆(LSTM)模型是由Hochreiter提出,它解决了传统RNN在处理长序列数据时存在的梯度消失问题,这一切都要归结于LSTM结构的精心设计。一个常规的LSTM结构如图1所示。每一个LSTM结构都有一个记忆单元Ct(t表示当前时刻),它保存着这个时刻LSTM结构的内部状态,同时里面还有三个门来控制整个结构的变化,它们分别是输入门(xt),忘记门(ft)和输出门(ht),它们的定义如下所示:(1)(2)(3)(4)(5)龙源期刊网(6)其中σ是一个sigmod函数,而则表示输入数据的非线性变化,W和b是模型需要训练得到的参数。等式5展示了当前的记忆单元是由忘记门和上一时刻的内部状态所控制的,ft决定了上一时刻的内部状态对当前时刻的内部状态的影响程度,而it则确定了输入数据的非线性变换得到的状态对当前时刻记忆单元的影响程度。等式6展示了输出门和当前时刻的内部状态决定了该LSTM的输出。正因为这个巧妙的设计,LSTM就能处理长序列的数据,并且能够从输入序列中获取时间上的关联性,这一特性对于微表情的识别尤为重要。3网络结构调优和改进3.1卷积神经网络设计本文针对输入大小为96×96的灰度图,构建了4个卷积层(C1,C2,C3,C4),4个池化层(S1,S2,S3,S4),1个全连接层(FC1)和1个Softmax层组成的卷积神经网络结构,如图2所示。卷积核(C1,C2,C3,C4)的大小分别为3×3,3×3,5×5,5×5,分别有32,32,32,64个。池化层的降采样核大小均为2×2,并且全部采用的是最大采样,每一个池化层都在对应的卷积层之后,而在所有的卷积层之后,连接了一个包含256个神经元的全连接层,为了尽可能的避免过拟合问题,本文在全连接层后加入一个p=0.75的Dropout层,除了softmax层,其余层的激活函数全部是采用ReLU,CNN的参数训练都是采用随机梯度下降算法,每一批次包含100张图片,并设置冲量为0.9,学习速率为0.001。3.2长短时记忆型递归神经网络设计尽管CNN已经从人脸微表情图片从学习到了特征,但是单一的CNN模型忽略了微表情在时域上的信息。于是我们提出通过LSTM来学习不同人脸表情在时域上的关联特征。我们构建了多个LSTM层,以及一个softmax层。我们首先先训练好CNN的参数,然后把训练好的CNN模型,作为一个提取人脸微表情的工具,对于每一帧图片,我们把最后一个全连接层的256维的向量输出作为提取的特征。那么给定一个时间点t,我们取之前的W帧图片([t-W+1,t])。然后将这些图片传入到训练好的CNN模型中,然后提取出W帧图片的特征,如果某一个序列的特征数目不足,那么用0向量补全,每一个特征的维度为256,接着将这些图片的特征依次输入到LSTM的节点中去,只有t时刻,LSTM才会输出它的特征到softmax层。同样LSTM网络的参数训练还是采用随机梯度下降算法,每一批次为50个序列,冲量为0.85,学习速率为0.01。4实验4.1微表情数据集龙源期刊网。该数据库从26名受试者中捕捉到近3000个面部动作中选取的247个带有微表情的视频,并且给出了微表情的起始和结束时间以及表情标签,由于其中悲伤和害怕表情的数据量并不多,因此本文选取了里面的5类表情(高兴,恶心,惊讶,其他,中性),由于数据库中的图片尺寸不一样并且是彩色图片,因此先将图片进行灰度处理,并归一化到大小作为网络的输入。本实验采用5折交叉验证的方法,选取245个微表情序列等分成5份,每个序列的图片有10张到70张不等,每份均包含5类表情。4.2CNN+LSTM和CNN的对比实验从图2中可以看出不同策略在五类表情里的识别率。当我们采用单一的CNN模型来对人脸微表情进行分类时,我们采取了dropout策略和数据集扩增策略来防止CNN过拟合。CNN+D表示采取了dropout策略的CNN模型,CNN+A表示采取了数据扩增策略的CNN模型,即对每一张图片进行了以下四种变换:旋转、水平平移、垂直平移、水平翻转。从而能将数据集扩增至4倍。CNN+AD表示采取了两种策略的CNN模型。CNN+LSTM表示结合了CNN和LSTM的网络模型。从表1中我们可以看出,添加了策略的CNN,在人脸微表情识别上的表现要好于没有添加策略的CNN,这可能是因为训练图片较少,而CNN网络层次较深,导致没有添加策略的CNN在训练参数的过程中很容易就过拟合了。而对于CNN+LSTM的表现要好于单一的CNN模型,这说明LSTM的确能够充分利用时域上的特征信息,从而能够更好识别序列数据,这证明了CNN+LSTM的模型可以用于识别人脸微表情的可行性。从表1中,我们还可以看出高兴和惊讶的表情识别率较高,而其他的则相对较低,这可能是因为高兴和惊讶的区分度较大,并且样本较多。4.3LSTM的参数调整下面我们逐一的研究不同参数对CNN+LSTM模型的微表情识别率的影响程度。图4显示输入的序列个数为100左右能够拥有相对较高的准确率,这说明只有充分利用每一个微表情序列的时域信息,这样,训练出的模型才更加具有一般性。图5显示出当LSTM隐层的神经元个数为128时,此时的微表情平均识别率最高,这说明隐层需要足够多的神经元才能保留更长的时域信息,对于微表情识别来说,能够拥有更高的精度。图6显示了LSTM隐层的个数为5时,该模型拥有最好的识别率,这说明较深的LSTM网络才能充分挖掘特征的时域信息。因此经过以上实验,我们得到了一个由5层LSTM,每一层包含128个神经元,并能够处理长度为100的特征序列的模型。4.4和非深度学习算法的实验对比龙源期刊网为了比较传统机器学习算法和深度学习算法孰优孰劣,我们使用传统机器学习算法在Casme2进行了一样的实验,从表2中可以看出,本文所提出的CNN+LSTM模型相对于这些传统机器学习模型,有着较为优异的表现。本文中的实验均是基于Google的开源机器学习库TensorFlow上进行的,硬件平台是dell工作站:Intel(R)Core(TM)i7-5820KCPU、主频3.3GHZ,内存64GB、NvidaGeForceGTXTITANXGPU、显存12GB。5结束语本文针对传统方法对微表情识别率低,图片预处理复杂的情况,提出了采用卷积神经网络和递归神经网络(LSTM)结合的方式,通过前面的卷积网络层来提取微表情的静态特征,省去了传统机器学习方法,需要人工提取特征的过程,简化了特征提取的工作。然后再通过后面的递归神经网路,充分利用表情特征序列的上下文信息,从而在序列数据中发现隐藏在其中的时域信息,从实验结果中可以看出,利用了时域信息的CNN+LSTM比单纯使用CNN的识别率更高,而且相对于传统机器学习方法也更为优秀。但是当数据量越大时,如果网络的层次比较深的话,模型的训练时间就会很长,并且极度依赖硬件设备,这算是深度学习通有的弊病。为了进一步投入到应用中去,接下来还得提高微表情的识别率,以及在实时环境下,如何能够动态和准确的识别微表情,这些都将会是以后研究的重点。参考文献[1]PORTERS,TENBRINKEL.ReadingbetweentheLiesIdentifyingConcealedandFalsifiedEmotionsinUniversalFacialExpressions[J].PsychologicalScience,2008,19(05):508-514.[2]PfisterT,LiX,ZhaoG,PietikainenM(2011)Recognisingspontaneousfacialmicro-expressions.2011ProcIEEEIntConfComputVis(I