激光与光电子学进展, 2020, 57 (14): 141501, 网络出版: 2020-07-28   

基于集成卷积神经网络的面部表情分类 下载: 1809次

Facial Expression Classification Based on Ensemble Convolutional Neural Network
周涛 1吕晓琪 1,2,3,*任国印 1谷宇 1,3张明 1,4李菁 1
作者单位
1 内蒙古科技大学信息工程学院模式识别与智能图像处理重点实验室, 内蒙古 包头 014010
2 内蒙古工业大学信息工程学院, 内蒙古 呼和浩特 010051
3 上海大学计算机工程与科学学院, 上海 200444
4 大连海事大学信息科学技术学院, 辽宁 大连 116026
摘要
针对传统机器学习中人工提取特征复杂度高,以及单卷积网络提取特征不充分导致识别率不高的问题,提出了一种基于集成卷积神经网络的面部表情识别新方法。该方法是将VGGNet-19改进后的VGGNet-19GP模型和ResNet-18模型进行集成,构建了集成网络(EnsembleNet)模型。该模型首先在训练集上对单模型进行训练,使单模型达到实验最优,然后在测试集上进行集成测试。在FER2013和CK+数据集上分别获得了73.854%和97.611%的平均准确率。与VGGNet-19GP和ResNet-18模型以及现有方法进行对比,结果表明,基于集成的面部表情分类方法具有分类更加准确和泛化能力更强的优点。
Abstract
In view of the high complexity of artificial feature extraction in traditional machine learning and the low recognition rate caused by inadequate feature extraction in single convolutional network, a new facial expression recognition method based on ensemble convolutional neural network is proposed. The method is to construct an ensemble network (EnsembleNet) model based on integrating an improved VGGNet-19GP model after VGGNet-19 with a ResNet-18 model. The model first trains a single model on the training set to make the single model reach the optimal experiment. Then the ensemble test is performed on the testing set. The average accuracy of 73.854% and 97.611% are obtained on FER2013 and CK+ datasets, respectively. By comparison with the VGGNet-19GP and ResNet-18 models and other existing methods, it is shown that the ensemble-based facial expression classification method has the advantages of more accurate classification and stronger generalization ability.

1 引言

人脸表情是人类表达情感的重要方式之一,心理学家Mehrabian[1]早在1968年就曾指出情感信息的55%是由面部表情所传递。计算机理解表情传达的情感信息离不开人脸表情识别(FER)。表情识别研究最早可追溯到19世纪70年代。当时美国的两位学者率先进行肌肉运动和面部表情之间的研究,不久便提出了面部表情的编码系统[2]。深度学习的出现实现了自主式学习特征替代手工提取特征的转变,也为表情识别[3]领域提供了新的研究方法。与图像相关等领域,如图像分类[4]和目标检测[5],最新方法大多是基于卷积神经网络(CNN)[6]完成的,因此在表情识别研究中引入CNN已成为近几年的主要技术路线,并且取得了较好的进展和效果[7]

Lopes等[8]尝试利用预处理技术提取面部特定特征输入到5层CNN中进行表情识别,在CK+上实现了97.75%的识别率。Jung等[9]提出了在5层CNN加入特征点联合训练的DTAGN方法,该方法在CK+数据集上实现了97.25%的识别率。褚晶辉等[10]提出了一种基于通道和空间注意力的11层卷积神经网络,在CK+数据集上实现了97.45%的准确率。卢官明等[11]设计了一个7层CNN直接用于人脸表情识别仅获得了81.5%的准确率,由此可以发现在网络层数相近的情况下,如果人为干预加入特定面部表情特征将有助于提高识别率,同时可以推断出网络层数太少、单网络模型提取特征单一、样本不足也是导致识别率较低的原因。

李勇等[12]提出了一种跨连接的LeNet-5卷积神经网络,旨在融合低层次与高层次特征来构造分类器,在CK+数据集上识别率较文献[ 11]提升了2.24%,达到了83.74%的平均识别准确率。Xie等[13]和何志超等[14]分别设计了3个和2个独立的CNN进行特征融合,在CK+数据集上分别实现了92.06%和92.1%的准确率,由此可以发现,使用并行网络特征融合的方法进行表情识别效果优于单网络多特征融合。姚丽莎等[15]沿用了多网络特征融合的方法,使用3个7层CNN模型提取局部特征进行融合,在CK+数据库上取得了94.56%的准确率。但在输入网络之前人为地对人脸区域进行了划分,进一步证明了关注面部局部特征对提升准确率有积极的作用。与此同时,由于上述研究都是基于标准人脸图像进行识别,且网络层数较少,对于CK+标准人脸进行表情识别,虽然取得了较高的准确率,但难以推断出在复杂环境下,上述方法是否对表情识别依然会有不错的效果。徐琳琳等[16]提出了一种并行卷积神经网络用于表情分类,虽然在CK+数据集上取得了94.03%的准确率,但对表情样本进行了光照补偿以及人脸对齐,因此在一定程度上排除了人脸光照和角度对表情识别的影响。同时,徐琳琳等[16]的方法在FER2013上取得了65.6%的识别率,低于RBM团队在Kaggle比赛上取得的71.16%[17],因此无法充分地证明网络在复杂环境条件下是有效的。

因此,为了让表情识别能够在无约束条件下更加有效,本文在无人为干预图像特征提取和保证数据真实性前提下,排除样本少、网络层数少、单网络特征对表情识别的影响,借鉴特征融合和集成学习的思想,提出了一种基于集成卷积神经网络的面部表情分类方法。首先在训练集上单独训练VGGNet-19GP和ResNet-18模型以获最优值,其次以VGGNet-19GP和ResNet-18为基础网络构建一个集成网络(EnsembleNet),最后在验证集和测试集上进行集成验证和测试。本文在FER2013和CK+数据集上进行了多组对比实验,实验结果证明,EnsembleNet模型能够有效降低表情识别的误差,与其他现有的方法相比,证明了网络具有更好的泛化能力。

2 神经网络集成基本原理

神经网络集成是一种通过训练多个神经网络对其结果进行集成,从而显著提高学习系统泛化能力的方法。该方法首先要用有限单神经网络对同一个问题进行学习,最终输出结果则由构成集成的各神经网络在相同输入示例下的输出共同决定。因此集成神经网络的构建包含两方面的内容,一是选择集成网络中的单个神经网络,二是选择将多个神经网络的输出结果进行有效集成的策略。

2.1 单个神经网络的选择

集成神经网络通过将多个神经网络进行结合,以获得比单一神经网络显著优越的泛化性能。单神经网络的选择直接影响集成神经网络的效果,在集成神经网络中神经网络集成泛化误差的公式为

E=E--A-,(1)

式中: E-表示集成中个体网络的加权平均误差; A-表示集成个体网络之间的差异度。由(1)式可见,集成个体网络的差异度越大,泛化误差越小。通常,增加个体网络之间的差异,可以增强集成的泛化能力,减小预测误差。而不同的网络结构能有效增加个体网络之间的差异。但值得注意的是选取弱学习器,即浅层神经网络进行集成,理论上可以获得较好的性能,但在实践中和复杂情况下,选择强学习器,即深层神经网络为更佳的选择。这是因为要获得更好的集成,个体网络应“好而不同”,即个体网络既要保证充分的准确性,又要保证之间的“多样性”,即差异性。为此在本文的研究中选择了改进之后的VGGNet-19和ResNet-18两个网络作为集成神经网络的个体网络,VGGNet-19改进在3.2节中进行了描述。

2.2 集成策略

假定集成包含T个单神经网络{h1,h2,…,hT},其中hi在输入示例x上的输出为hi(x),针对hi进行结合的常见策略有平均法、投票法、学习法。其中,平均法又分为简单平均和加权平均,投票法分为绝对多数投票法、相对多数投票法和加权投票法,学习法则是通过构建新的网络对个体网络进行集成。在本文的研究实验中,采用的是加权平均的集成策略,其计算公式为

H(x)=1Twihi(x),(2)

式中:wi是个体学习器hi的权重,通常要求wi≥0, i=1Twi=1。其中简单平均法是加权平均法令wi= 1T的特例。

实验中首先保留了改进之后的VGGNet-19 和ResNet-18的网络输出,该输出是一个保存了代表7类表情能量的特征向量。然后利用平均法的集成策略生成一个新的代表7类表情能量值的特征向量。最后返回该特征向量中的最大值索引,其中索引值有与之相对应的真实表情类别标记,以此作为输入示例x下的最终预测分类结果。实验的集成过程在3.3节和3.4节中进行详细的描述。

3 EnsembleNet

3.1 单卷积神经网络的不足

以卢官明等[11]设计的7层CNN直接用于人脸表情识别研究来看,在数据集样本一致,不进行人为干预特征提取以及特征融合的情况下,准确率很难得到理想的效果,许多学者认为CNN网络太浅是导致这一结果的主要原因。因为较浅的CNN模型难以从原始图像中精确的学习面部特征。此外,研究学者也指出网络过深会造成特征图分辨率降低,对纹理细节不敏感,出现梯度衰减和权重减小的问题,进而影响识别分类的效果。从文献[ 8-14]的研究发展趋势可以看出,在方法上逐渐倾向于多网络参与、多特征融合,以及弥补单模型特征提取单一不足对分类的影响。为此,EnsembleNet模型集成了双网络,采用共同决策的方法针对表情分类。

3.2 VGGNet-19模型改进

VGGNet探索了CNN深度与性能之间的关系,证明了增加网络深度一定程度上影响最终的性能,但VGGNet-19中存在过多的全连接层造成了参数冗余,影响了网络的训练。因此在受到Lin等[18]和Wei等[19]工作的启发,舍弃了VGGNet-19中的两个全连接层,取而代之的是将最后一层卷积学到的深度描述子分别进行最大和平均的全局池化操作,之后对得到的融合结果分别做L2规范化,将两支得到的特征级联经过一个全连接层(FC)达到分类的目的。这里将改进后的VGGNet-19命名为VGGNet-19GP,GP代表的是全局池化,网络结构如图1所示,Vec表示特征向量,GAP和GMP分别表示全局最大池化和全局平均池化。

选择GAP和GMP带来的优势是最终的图像表示与传统全连接相比具有更低的维度。与此同时Wei等[19]指出在全连接层前加入全局池化能够有效地降低过拟合。

3.3 EnsembleNet详细设计

EnsembleNet模型中作为基础网络的VGGNet-19GP和ResNet-18在FC层之后均未设置softmax层,而是保存了代表7类表情能量值的特征向量。EnsembleNet首先对训练集中的样本进行打乱(shuffle=true),单独训练VGGNet-19GP和ResNet-18模型,使单网络模型分类实验最优。其次在测试集上对样本不进行打乱(shuffle=false),然后对两网络模型的输出结果进行简单平均和加权平均生成新的长度为7的向量。最后通过获取新向量中的最大值返回其索引作为表情的预测值,达到集成测试的目的。实验中为了避免样本不足对分类的影响,在训练集和测试集上均进行了数据增强,具体数据增强操作在4.2节中进行了描述。同时为了进一步避免过度拟合,双模型在全连接层前均加入了Dropout,旨在网络训练过程中,将神经网络单元依概率暂时从网络中丢弃,减少对某些局部特征的依赖,减少错误信息传递,提高模型泛化能力。EnsembleNet模型结构如图2所示,其中上半部分表示训练阶段,下半部分表示测试阶段。

图 1. VGGNet-19GP模型结构

Fig. 1. Model structure of VGGNet-19GP

下载图片 查看所有图片

图 2. EnsembleNet模型结构

Fig. 2. Model structure of EnsembleNet

下载图片 查看所有图片

VGGNet-19GP和ResNet-18中激活函数均采用了线性整流函数(ReLU)。与此同时为了衡量真实标记分布与预测标记分布的相似性,采用交叉熵损失作为VGGNet-19GP和ResNet-18的损失函数,预测标记与真实标记间差异越大,不确定性就越高,熵也就越高,作为损失函数,损失也就越大。其计算公式为

loss(x,class)=-logexp(x[class])jexp(x[j])=-x[class]+logjexp(x[j]),(3)

式中:x为输入,通常为多维矩阵;标签值class,不参与直接计算,作为一个索引,索引对象为实际类别;xj为输入样本x对应网络输出向量索引为j的值,j=1,2,…,N,N为多分类类别数。损失函数中也有权重weight参数设置,若设置权重,则计算公式为

loss(x,class)=weight[class]-x[class]+logjexp(x[j])(4)

卷积神经网络训练算法采用随机梯度下降(SGD),一般来说相对于非随机算法,SGD具有在前期迭代效果卓越,当信息冗余时能有效地利用信息,在面对样本数量大时SGD计算复杂度依然有优势的优点。

3.4 EnsembleNet测试理论依据

结合2.2中的集成策略,进一步说明本文中对基于集成卷积神经网络对表情的分类。集成网络选取了网络不同的VGGNet-19GP和ResNet-18作为个体网络,为此集成只包含两个单神经网络{h1,h2},在示例x上,即测试样本上的输出分别为h1(x)和h2(x)。表情分类任务中,表情将会被分为7类,为此h1(x)和h2(x)均为长度为7的特征向量。以VGGNet-19GP输出h1(x)为例在样本x上的预测输出可以表示为[a0,a1,a2,a3,a4,a5,a6],则在ResNet-18输出h2(x)表示为[b0,b1,b2,b3,b4,b5,b6]。本文中集成策略选择加权投票法,对VGGNet-19GP和ResNet-18的网络输出做加权平均,进而选择能量值最大的值,返回其索引作为样本x的预测类别标记。为此对于样本x在VGGNet-19GP、ResNet-18、EnsembleNet输出向量中最大值分别记为aibjck,其中i,j,k∈{0,1,2,3,4,5,6},i,j,k分别表示VGGNet-19GP、ResNet-18、EnsembleNet输出向量中最大值的索引,k始终代表了EnsemleNet正确分类的索引值,即类别标记对应的数值,其中数值与真实标记对应关系如下:0-生气(angry),1-厌恶(digust),2-恐惧(fear),3-高兴(happy),4-悲伤(sad),5-惊讶(surprised),6-中性(neural)。

1) VGGNet-19GP和ResNet-18均正确分类,此时i=j,

ai+bi=aj+bj=ck(5)

此时i=j=k,因此在单模型最优情况下,某个样本被个体网络正确分类时,无论对VGGNet-19GP和ResNet-18模型进行简单平均还是加权平均进行集成,最终的分类结果都不会发生改变,而简单平均为加权平均的一种特殊情况。

2) VGGNet-19GP和ResNet-18中一方正确分类,此时ij。当VGGNet-19GP正确分类时,EnsembleNet同样正确分类,则有i=k,jk,

w1ai+w2bi=w1aj+w2bj+ξ1=ck,(6)

或者当ResNet-18正确分类时,EnsembleNet同样正确分类,则有ik,j=k,

w1aj+w2bj=w1ai+w2bi+ξ2=ck,(7)

式中:w1+w2=1;ξ1ξ2均为大于0的数。

对(6)式而言,当VGGNet-19GP正确分类时,可以得出

w1=ξ1+(bj-bi)(ai-aj)+(bj-bi)(8)

同理,若ResNet-18正确分类时,可以得出

w1=ξ2+(bi-bj)(aj-ai)+(bi-bj)(9)

3) VGGNet-19GP和ResNet-18均未正确分类,此时ikjk,若EnsembleNet正确分类,此时ak<ai ,bk<bj,

w1ak+w2bk=ck(10)

VGGNet-19GP和ResNet-18的网络权重则需满足:

w1ai+w2bi<w1ak+w2bkw1aj+w2bj<w1ak+w2bk,(11)bj-bkak-aj<w1w2<bk-biai-ak(12)

由此可知,选择合适的权重值将会使集成效果高于单模型的分类效果。关于权重值的选择,将会通过后续的实验得到。

4 实验过程与结果

本实验在Ubuntu16.04LTS操作系统上进行,采用Pytorch深度学习框架,使用Python编程实现。硬件平台为:Intel(r)Xeon E5-2698 v4 CPU系列,Nvidia V100GPU,显存32 GB。

4.1 数据集选择和预处理

CK+数据集[20]是在人脸表情数据库(CK)基础上扩增而来的,是用于评估人脸表情识别方法最广泛的实验室控制条件下的数据集。该数据集包含来自123名受试者的593个视频序列,其中有327个样本是基于面部动作编码系统被标记的6类表情(愤怒、厌恶、恐惧、快乐、悲伤、惊讶),加上蔑视,总共涵盖了7种基本表情。

图 3. CK+数据库的示例图像

Fig. 3. Example images from the CK+ dataset

下载图片 查看所有图片

FER2013数据集[21]是Pierre和Aaron通过Google图像搜索应用程序接口(API)自动收集的大规模且无约束的数据集。如图4所示,同一列为同一类表情,每一类表情在年龄、光照、面部姿势、表情强度等方面都有着显著的差异,反映了不同环境下人脸表情呈现的真实状态,为此使用该数据集进行表情识别具有一定的挑战性,同样更具有说服力。数据集包含了28709个示例的训练集,3589个示例的验证集(PublicTest)和3589个示例的测试集(PrivateTest)。数据中所有表情均为48×48的灰度图像,涵盖了生气,厌恶,恐惧,高兴,悲伤,惊讶和中性7种表情,在该数据集上人眼的判别准确率在65%±5%内波动。

图 4. 来自于FER2013数据集的示例图像

Fig. 4. Example images from the FER2013 dataset

下载图片 查看所有图片

为了解决FER2013和CK+数据集中样本少的问题,本文对两者进行了数据增强方面的处理。以FER2013数据集为例,如图5所示,在训练之前,将原始图像随机切割为44×44大小,其中蓝色条状部分为随机裁掉部分。裁剪之后的图像利用数据增广技术进行水平翻转(flip_hor),使数据集扩充数据为原来的两倍。测试集上采用TenCrop策略,,即居中(central)、左上(left_top)、右上(right_top)、左下(left_bot)、右下(right_bot)然后分别进行水平翻转,最终裁剪为44×44的图像,进而将数据扩增为原数据的10倍,如图6所示。此外,考虑到人脸表情不可能为倒置状态,在此不做垂直翻转。

图 5. 训练集数据增强示意图

Fig. 5. Schematic of the training set data enhancement

下载图片 查看所有图片

4.2 实验过程

为了获得更好的表情分类效果,EnsembleNet模型分别进行了简单平均(即w1=w2=0.5)和加权平均[22]的实验,最终确定VGGNet-19GP和ResNet-18参与决策的权重。w1代表VGGNet-19所占权重,w2代表ResNet-18所占权重。为了获得客观的准确率,以50 epoch为间隔进行实验,求每次实验的最后50 epoch准确率的均值作为实验的平均准确率(A_Acc),其中未对实验前50 epoch求平均,实验结果如图7所示。

图7(a)、(b)实验结果可以看出,在400 epoch之内,准确率虽有波动但属于平稳上升状态,在400~550 epoch之间,准确率在±0.05上下波动,由此可以得出在EnsembleNet模型在500 epoch已经达到了饱和。与此同时可以发现,在相同Epoch情况下,ResNet-18较VGGNet-19GP准确率较高。由此可以推断,若使ResNet-18的权重大于VGGNet-19GP的权重,实验结果的准确率将会进一步得以提升。考虑到VGGNet-19GP和ResNet-18在最优情况下准确率实验相差较小,在接下来的实验中为保证网络得到充分拟合,将epoch设置为500,并把集成网络中ResNet-18权重以每次增加0.01的方式进行实验,实验结果如图8所示。

图 6. 测试集数据增强示意图

Fig. 6. Schematic of the test set data enhancement

下载图片 查看所有图片

图 7. 简单平均实验结果图。在(a) PublicTest和(b) PrivateTest下,EnsembleNet、ResNet-18、VGGNet-19GP的平均准确率随着epoch增加的变化对比情况

Fig. 7. Result graphs of simple average experiment. Comparison of the average accuracy of EnsembleNet, ResNet-18, and VGGNet-19GP under (a) PublicTest and (b) PrivateTest with the increase of epoch

下载图片 查看所有图片

根据图8实验结果对比发现,将VGGNet-19GP和ResNet-18网络权重分别设为0.47和0.53时,集成效果最好。图9图10 分别给出了FER2013数据集上PublicTest和PrivateTest的平均准确率随着epoch增加的变化情况。

图 8. 加权平均实验结果图。在(a) PublicTest和(b) PrivateTest下,EnsembleNet随着ResNet-18权重变化的波动情况,以及与ResNet-18、VGGNet-19GP的对比情况

Fig. 8. Result graphs of weighted average.Fluctuations of EnsembleNet with the change of ResNet-18 weights under (a) PublicTest and (b) PrivateTest, and the comparison with ResNet-18 and VGGNet-19GP

下载图片 查看所有图片

图 9. PublicTest上VGGNet-19GP、ResNet-18、EnsembleNet准确率变化

Fig. 9. VGGNet-19GP, ResNet-18, and EnsembleNet accuracy curves on PublicTest dataset

下载图片 查看所有图片

图 10. PrivateTest上VGGNet-19GP、ResNet-18、EnsembleNet准确率变化

Fig. 10. VGGNet-19GP, ResNet-18, and EnsembleNet accuracy curves on PrivateTest dataset

下载图片 查看所有图片

4.3 实验结果与分析

为了评估EnsembleNet的有效性,本文选取了CK+数据集进行评估。因为CK+数据集样本较小,为确保实验结果的有效性,实验采取了10倍交叉验证。图11所示为实验准确率随着epoch增加的变化情况。

图 11. CK+数据集上VGGNet-19GP、ResNet-18、EnsembleNet准确率变化

Fig. 11. VGGNet-19GP, ResNet-18, and EnsembleNet accuracy curves on CK+ dataset

下载图片 查看所有图片

为了更加准确地显示在FER2013和CK+数据上的分类准确率,表1所示为在FER2013和CK+数据集上EnsembleNet、VGGNet-19GP、ResNet-18测试准确率的对比结果。

结合图9~11以及表1的实验对比结果来看,EnsembleNet在FER2103上的分类效果优于单模型的分类。当CK+数据集对Ensemble模型进行评估时,相比单模型准确率有明显提升,取得了很好的效果。

表2所示为本文方法与现有方法的准确率对比结果。其中n_CNN表示模型为N层卷积神经网络,“√”表示存在此操作,“-”表示无此操作,“FACS”表示Facial Action Coding System,“AU”表示Action Units。

表 1. FER2013和CK+数据集平均准确率

Table 1. Average accuracy on the FER2013 and CK+ datasets%

ModelFER2013CK+
Public_Avg_AccPrivate_Avg_AccAvg_Acc
VGGNet-19GP70.61671.84891.107
ResNet-1871.32772.27192.845
EnsembleNet71.69773.85497.611

查看所有表

表 2. 本文方法与现有方法在FER2013和CK+数据集上识别率对比

Table 2. Comparison of proposed model with existing methods on the FER2013 and CK+datasets

SourceMethodDataaugmentedDropoutAccuracy /%
FER2013CK+
Ref. [8]Pre-processing+5_Layer_CNN---97.75
Ref. [9]Landmark+5_Layer_CNN---97.25
Ref. [10]CSACNN--97.45
Ref. [11]7_CNN---81.50
Ref. [11]7_CNN-82.90
Ref. [11]7_CNN84.42
Ref. [11]7_CNN84.55
Ref. [12]Cross-connect LeNet-5---83.74
Ref. [13]Siamese network with multiple channels---92.06
Ref. [14]Multi-resolution feature fusion---92.10
Ref. [15]Local feature fusion---94.56
Ref. [16]Parallel CNN-65.694.03
Ref. [17]Ensemble CNNs+L2_Loss--71.16-
Ref. [23]CNN+FACS+AU--72.198.62
Ref. [24]11_Layer_CNN-65.3-
Ref. [25]Fully-convolution neural network--66-
Ref. [26]8_CNN(filters decreases with net depth)--65-
ProposedVGGNet-19GP71.84891.107
ProposedResNet-1872.27192.845
ProposedEnsembleNet73.85497.611

查看所有表

本文的目标是在FER2013数据集上实现更高的识别效果,以及使用CK+数据集对EnsembleNet可行性和泛化性的验证。在FER2013数据集上,文献[ 16,24-25]中表情的识别误差在1%以内,其共同之处在于网络太浅或数据样本不足,实验中不能全面提取到脸部特征,影响了分类效果。而文献[ 17,23]、VGGNet-19GP、ResNet-18的方法识别率均突破了71%,其中Tang[17]是2013年Kaggle比赛Facial Expression Recognition的冠军获得者,使用了集成学习的思想,Breure等[23]识别效果的提升在于为表情识别引入了FACS和AU操作,为表情特征的提取提供了参考。VGGNet-19GP和ResNet-18的优势在于网络深度的增加和使用数据扩增的策略,促使表情特征得到更加精确、全面的提取,而Dropout策略则能够有效地防止过拟合的发生。引入数据增强和Dropout有效提升识别率在文献[ 11]中也得到了有效的证明。EnsembleNet的识别效果均优于文献[ 16,17,23-26]的识别效果,原因在于EnsembleNet利用了ResNet-18和VGGNet-19GP结构上的差异性,采用加权平均的策略让VGGNet-19GP和ResNet-18共同决定输出示例的分类结果,体现了EnsembleNet对于表情分类的互补性,解决了单网络模型决策的片面性。

VGGNet-19GP和ResnNet-18单模型在CK+数据集上与文献[ 11,12]相比准确率有7%~10%的提升,文献[ 11]中采取数据扩增和dropout策略与没有二者的识别效果提升2%,但准确率与其他方法相比还有一定的差距,其原因在于网络深度较浅难以精确提取面部特征。与文献[ 13-16]相比,准确率变化很小,说明多特征融合的优势依然胜过了单一模型加深网络以及数据增强对准确率的影响。与文献[ 8,9,23]相比,本文中单一模型识别率与三者相比低了6%,同时与之相比,EnsembleNet模型准确率在±1%内波动,由此可见人为对脸部图像进行标记或重点关注脸部局部特征,对于表情识别有积极的作用。与文献[ 11-16]中阐述的方法相比,EensembleNet的表情识别效果明显,为此可以认定EnsembleNet在CK+数据集上是有效的,也证明了本文方法在表情识别上具有一定的泛化性和鲁棒性。为了更直观地观察数据集中表情的分类结果,图12图13所示为FER2013和CK+数据集某次测试的混淆矩阵。

图 12. EnsembleNet在FER2013数据集上的混淆矩阵。(a) PublicTest Confusion Matrix;(b) PrivateTest Confusion Matrix

Fig. 12. Confusion matrix of EnsembleNet on the FER2013 dataset. (a) PublicTest Confusion Matrix; (b) PrivateTest Confusion Matrix

下载图片 查看所有图片

图 13. EnsembleNet在CK+数据集上的混淆矩阵

Fig. 13. Confusion matrix of EnsembleNet on the CK+ dataset

下载图片 查看所有图片

从FER2013的混淆矩阵可以发现,在7类表情识别中恐惧识别难度最大,高兴和惊讶相对于其他表情识别较为容易。图14所示为EnsembleNet模型在PrivateTest上正确与错误分类的部分示例,其中correct classification 表示正确分类,每一列在数据中为同类表情, mis-1st表示最易混淆的表情示例,mis-2nd表示其次易混淆表情示例。

图 14. PrivateTest上正确和错误分类的部分示例

Fig. 14. Examples of correct classification and misclassification of PrivateTest

下载图片 查看所有图片

高兴和惊讶两种表情因更易识别的特征而有别于其他表情。高兴表情中大部分具有嘴巴微微张开、嘴角翘起、面颊上抬起皱,以及眼睛尾部会形成“鱼尾纹”、眼睑收缩等显著特征,少部分存在嘴巴紧闭微笑或者闭眼的情况易与中性表情和悲伤混淆。惊讶表情中眼睛睁大、嘴巴张开等特征,是区别于其他表情的重要之处,但在恐惧和高兴表情中也存在嘴巴张开的情况,但恐惧时的嘴巴张开幅度更大,这一特点有时会与恐惧混淆。在其余表情中恐惧识别难度最大,恐惧最易与悲伤混淆,这是因为在两表情中均具有眉毛收紧、紧张前额和拉开嘴唇等相同特征。厌恶容易与生气混淆,两种表情中均具有眉毛下垂以及眯眼的相同特征,过分的生气也会伴随嘴巴张开,产生与恐惧混淆的情况。通常人在自然状态下(即中性表情),眼角和嘴角会微微下拉,这也是悲伤表情的主要特征,因此这两个表情在分类时也会被混淆。

5 结论

本文在无约束条件的情况下,提出了基于集成卷积神经网络的面部表情分类方法。该方法首先将VGGNet-19模型改进为VGGNet-19GP模型,其次在训练集上最优化了VGGNet-19GP和ResNet-18模型对表情的分类,最后采用加权平均的集成策略,构造了EnsembleNet模型。在FER2013和CK+数据集上将本文方法与多种现有方法进行对比,结果表明,EnsembleNet模型实现了单模型表情分类决策的互补性,提高了分类的识别率,具有识别率高、泛化能力强、稳健性好等优点。基于表情识别在情感计算研究的重要作用,本研究有助于促进人机交互系统和计算机图像理解的发展,实现人体语言与自然语言的融合,促进语言与表情连接模型的建立与实现。

参考文献

[1] Mehrabian A. Communication without words[J]. Psychological Today, 1968, 2(4): 53-55.

[2] Ekman P, Friesen W V. Constants across cultures in the face and emotion[J]. Journal of Personality and Social Psychology, 1971, 17(2): 124-129.

[3] 王琳琳, 刘敬浩, 付晓梅. 融合局部特征与深度置信网络的人脸表情识别[J]. 激光与光电子学进展, 2018, 55(1): 011002.

    Wang L L, Liu J H, Fu X M. Facial expression recognition based on fusion of local features and deep belief network[J]. Laser & Optoelectronics Progress, 2018, 55(1): 011002.

[4] CholletF. Xception: deep learning with depthwise separable convolutions[C]∥2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), July 21-26, 2017. Honolulu, HI. IEEE, 2017: 1251- 1258.

[5] Gu Y, Lu X Q, Yang L D, et al. Automatic lung nodule detection using a 3D deep convolutional neural network combined with a multi-scale prediction strategy in chest CTs[J]. Computers in Biology and Medicine, 2018, 103: 220-231.

[6] Lecun Y, Boser B, Denker J S, et al. Handwritten digit recognition with a back-propagation network[J]. Advances in Neural Information Processing Systems, 1997, 2(2): 396-404.

[7] 吴慧华, 苏寒松, 刘高华, 等. 基于余弦距离损失函数的人脸表情识别算法[J]. 激光与光电子学进展, 2019, 56(24): 241502.

    Wu H H, Su H S, Liu G H, et al. Facial expression recognition algorithm based on cosine distance loss function[J]. Laser & Optoelectronics Progress, 2019, 56(24): 241502.

[8] Lopes A T, de Aguiar E, de Souza A F, et al. Facial expression recognition with convolutional neural networks: coping with few data and the training sample order[J]. Pattern Recognition, 2017, 61: 610-628.

[9] JungH, LeeS, YimJ, et al. Joint fine-tuning in deep neural networks for facial expression recognition[C]∥2015 IEEE International Conference on Computer Vision (ICCV), December 7-13, 2015. Santiago, Chile. IEEE, 2015: 2983- 2991.

[10] 褚晶辉, 汤文豪, 张姗, 等. 一种基于注意力模型的面部表情识别算法[J]. 激光与光电子学进展, 2020, 57(12): 121015.

    Chu J H, Tang W H, Zhang S, et al. A facial expression recognition algorithm based on attention model[J]. Laser & Optoelectronics Progress, 2020, 57(12): 121015.

[11] 卢官明, 何嘉利, 闫静杰, 等. 一种用于人脸表情识别的卷积神经网络[J]. 南京邮电大学学报(自然科学版), 2016, 36(1): 16-22.

    Lu G M, He J L, Yan J J, et al. Convolutional neural network for facial expression recognition[J]. Journal of Nanjing University of Posts and Telecommunications(Natural Science Edition), 2016, 36(1): 16-22.

[12] 李勇, 林小竹, 蒋梦莹. 基于跨连接LeNet-5网络的面部表情识别[J]. 自动化学报, 2018, 44(1): 176-182.

    Li Y, Lin X Z, Jiang M Y. Facial expression recognition withcross-connect LeNet-5 network[J]. Acta Automatica Sinica, 2018, 44(1): 176-182.

[13] Xie S Y, Hu H F. Facial expression recognition with FRR-CNN[J]. Electronics Letters, 2017, 53(4): 235-237.

[14] 何志超, 赵龙章, 陈闯. 用于人脸表情识别的多分辨率特征融合卷积神经网络[J]. 激光与光电子学进展, 2018, 55(7): 071503.

    He Z C, Zhao L Z, Chen C. Convolution neural network with multi-resolution feature fusion for facial expression recognition[J]. Laser & Optoelectronics Progress, 2018, 55(7): 071503.

[15] 姚丽莎, 徐国明, 赵凤. 基于卷积神经网络局部特征融合的人脸表情识别[J]. 激光与光电子学进展, 2020, 57(4): 041513.

    Yao L S, Xu G M, Zhap F. Facial expression recognition based on local feature fusion of convolutional neural network[J]. Laser & Optoelectronics Progress, 2020, 57(4): 041513.

[16] 徐琳琳, 张树美, 赵俊莉. 构建并行卷积神经网络的表情识别算法[J]. 中国图象图形学报, 2019, 24(2): 227-236.

    Xu L L, Zhang S M, Zhao J L. Expression recognition algorithm for parallel convolutional neural networks[J]. Journal of Image and Graphics, 2019, 24(2): 227-236.

[17] Tang Y C. Deep learning using support vector machines[EB/OL]. ( 2015-02-21)[2019-10-08]. https:∥arxiv.org/abs/1306. 0239.

[18] LinM, ChenQ, Yan S C. Network in network[EB/OL]. ( 2014-03-04)[2019-10-08]. https:∥arxiv.org/abs/1312. 4400.

[19] Wei X S, Xie C W, Wu J X, et al. Mask-CNN: Localizing parts and selecting descriptors for fine-grained bird species categorization[J]. Pattern Recognition, 2018, 76: 704-714.

[20] LuceyP, Cohn JF, KanadeT, et al. The Extended Cohn-Kanade Dataset (CK+): a complete dataset for action unit and emotion-specified expression[C]∥2010 IEEE Computer Society Conference on Computer Vision and Pattern Recognition-Workshops, June 13-18, 2010. San Francisco, CA, USA. IEEE, 2010: 94- 101.

[21] Goodfellow I J, Erhan D, Luc Carrier P, et al. Challenges in representation learning: a report on three machine learning contests[J]. Neural Networks, 2015, 64: 59-63.

[22] Gu Y, Lu X Q, Zhang B H, et al. Automatic lung nodule detection using multi-scale dot nodule-enhancement filter and weighted support vector machines in chest computed tomography[J]. PLoS One, 2019, 14(1): e0210551.

[23] BreuerR, Kimmel R. A deep learning perspective on the origin of facial expressions[EB/OL]. ( 2017-05-10)[2019-10-08]. https:∥arxiv.org/abs/1705. 01842.

[24] WeierW, YangC, YangL. Facial expression recognition using convolutional neural network[R]. Stanford University Reports, 2016: 1- 6.

[25] ArriagaO, Valdenegro-ToroM, Plöger P. Real-time convolutional neural networks for emotion and genderclassification[EB/OL]. ( 2017-10-20)[2019-10-08]. https:∥arxiv.org/abs/1710. 07557.

[26] Agrawal A, Mittal N. Using CNN for facial expression recognition: a study of the effects of kernel size and number of filters on accuracy[J]. The Visual Computer, 2020, 36(2): 405-412.

周涛, 吕晓琪, 任国印, 谷宇, 张明, 李菁. 基于集成卷积神经网络的面部表情分类[J]. 激光与光电子学进展, 2020, 57(14): 141501. Tao Zhou, Xiaoqi Lü, Guoyin Ren, Yu Gu, Ming Zhang, Jing Li. Facial Expression Classification Based on Ensemble Convolutional Neural Network[J]. Laser & Optoelectronics Progress, 2020, 57(14): 141501.

本文已被 4 篇论文引用
被引统计数据来源于中国光学期刊网
引用该论文: TXT   |   EndNote

相关论文

加载中...

关于本站 Cookie 的使用提示

中国光学期刊网使用基于 cookie 的技术来更好地为您提供各项服务,点击此处了解我们的隐私策略。 如您需继续使用本网站,请您授权我们使用本地 cookie 来保存部分信息。
全站搜索
您最值得信赖的光电行业旗舰网络服务平台!