基于轻量卷积网络多层特征融合的人脸表情识别 下载: 1063次
1 引言
人脸表情是反映人类情感的重要信息,心理学家研究发现,在人类交流活动中人脸表情传递的情感信息占总体信息的55%[1]。因此,通过人脸表情获得人类情绪信息的面部表情识别(FER)技术在服务机器人、驾驶员疲劳监测、医疗服务等需要人机交互的系统中具有重要应用价值,是当前的研究热点之一[2-4]。
FER方法大致可分为两类,即传统方法和基于深度学习的方法。传统方法包括特征提取和特征分类两个步骤:提取的特征可以是局部二值模式(LBP)[5]、方向梯度直方图(HOG)[6]及小波特征[7]等;特征分类方法主要有K近邻法[8]、支持向量机[9]、Adaboost分类器[10]及神经网络等。传统方法虽然在实验室的摆拍数据集上表现良好,但在真实复杂多变的场景下效果欠佳。
近几年,随着深度学习技术的兴起,特别是卷积神经网络(CNN)在计算机视觉领域的广泛应用,许多传统视觉领域的研究开始采用深度学习方法。FER作为一个经典的模式识别问题,也有大量关于深度学习方面的研究出现。Yu等[11-12]均采用集成多个CNN模型的方法,提升了FER模型的性能;Li等[13]提出一种Boosted-CNN方法,该方法先训练一个CNN模型,在此基础上,采用随机抽样方法对每个表情进行不平衡学习,获得了较好的效果;Mollahosseini等[14]通过向网络中加入Inception模块来提升FER模型的学习能力,在多个数据集下实现了较高的识别率;张红颖等[15]提出了一种双通道卷积神经网络,一个通道输入LBP图,另一个通道输入梯度图,将两种特征结合进行表情识别,在几个数据集上的测试结果表明提升了识别准确率。上述几个方法为提高FER模型的准确率,均采用了复杂的网络结构,识别速度有限。为了提高识别速度,Arriaga等[16]结合残差模块和深度可分离卷积,设计了一个精简的网络结构,该网络可以实时地识别表情,但是结构过于简单,在FER2013数据集上只能达到基线准确率;吕诲等[17]先采用人脸分割网络,得到与表情识别最相关的区域,再通过FER网络对分割后的图像进行识别,两个网络均采用轻量型网络,实现了不错的识别准确率和识别速度。但该方法较为复杂,首先要在表情数据集上构建一个人脸分割的数据集,然后训练人脸分割网络和表情识别网络,步骤较为繁琐。综上所述,现有的基于深度学习的FER方法仍无法实现识别准确率与识别速度的平衡。
为了平衡识别准确率和识别速度,本文提出了一种基于CNN多层次特征融合的轻量型FER方法。使用改进的倒置残差网络为基本单元,搭建轻量型卷积网络模型,并在此基础上对CNN的深层信息和浅层信息进行融合,以提高表情识别精度;此外,针对使用全连接层直接进行深层和浅层特征融合会产生大量参数的问题,采用先对卷积网络中的几个浅层特征进行筛选,再与深层特征进行融合的方法。在两个常用表情数据集上进行实验,验证了所提方法的有效性。
2 基本原理
在CNN模型中,不同卷积层由于卷积深度不同,浅层的特征图中相对感受野较小,对局部的特征信息比较敏感,深层特征图中相对感受野较大,对整体的轮廓信息比较敏感。文献[ 18-19]中的研究采用全连接层对CNN模型深浅层的特征进行融合,虽然提升了模型性能,但也使模型参数大量增加。为减少融合所产生的参数量,首先对浅层特征进行筛选,然后再融合卷积网络深浅层特征。
2.1 总体网络架构设计
设计的融合多层次特征的卷积网络整体架构如
该网络模型称为ms_model_v1,输入图像首先经过尺寸为3×3的普通卷积(Conv2D 1)进行初步的特征提取,后连接10个改进的倒置残差单元(Bottleneck_M),以更轻量的方式进一步提取特征;然后对特定几个中间层的特征图进行筛选,得到更精炼的中间层特征,并通过特征合并操作(concat)对这些特征与卷积网络主干输出的特征进行融合,达到深浅层特征融合的目的,提升模型性能;再经变形操作(reshape 1)将融合后特征的尺寸重新变为1×1,使用丢弃操作,以一定概率丢弃部分神经元,防止过拟合,使用1×1卷积(Conv2D 3)将特征图个数变为与表情类别数k相同;最后经Softmax函数和变形操作(reshape 2)输出关于表情类别的概率向量。具体参数设置如
表 1. CNN参数
Table 1. Parameters of the CNN
|
2.2 改进的倒置残差单元Bottleneck_M
Bottleneck_M单元参考MobileNetV2[20]中的倒置残差结构。倒置残差结构的基本原理是先对特征图进行通道扩张,在特征图通道数较多的情况下使用可分离卷积提取特征,最后再对特征图进行通道压缩。实验表明,在特征图通道数较多的情况下,倒置残差结构有利于可分离卷积提取图像特征,且由于使用1×1卷积进行特征图的通道变化,所以该结构参数量也较少。
对倒置残差结构的改进主要在于,使用Mish激活函数[21]替代原来结构中的ReLU6激活函数。相较ReLU6,Mish激活函数更加平滑且对负值有轻微允许,对卷积网络参数的更新更容易。
在
2.3 多层特征融合设计
对中间层输出的特征图进行筛选的特征选择模块如
Bottleneck_M3输出的特征图尺寸为28×28×24。输入图先经2个Bottleneck_M模块,增加特征图深度,特征图尺寸变为28×28×32;然后使用池化核为4×4、步长为4的最大池化和平均池化,得到两个7×7×32的特征图,对两个特征图进行元素叠加,得到一个7×7×32的特征图;再进行1×1卷积、全局平均池化,得到32维的特征向量。对Bottleneck_M5(特征图尺寸为14×14×32)和Bottleneck_M7(特征图尺寸为14×14×40)输出的特征图,不需要增加深度,直接使用池化核为2×2、步长为2的最大池化和平均池化操作,然后进行元素叠加、1×1卷积及全局平均池化操作,分别得到32维和40维的特征向量。经特征筛选后,尺寸为28×28×24、14×14×32及14×14×40的特征图分别变为32维、32维及40维的特征向量。
多层特征融合设计如
式中:O1和O2均为32维向量,O3为40维向量。对这些筛选后的特征进行融合,则
式中:[·]为特征向量合并操作;Ofusion为168维向量。
如果使用全连接层进行深浅层特征融合,需要首先将特征图X3(尺寸为28×28×24)、X5(尺寸为14×14×32)、X7(尺寸为14×14×40)及X10(尺寸为7×7×64)展平为向量,然后拼接这四个向量,最终得到融合特征向量的维度为28×28×24+14×14×32+14×14×40+7×7×64=36064,这是所提ms_model_v1模型得到的特征向量维数的214倍。
2.4 Softmax分类
使用Softmax函数输出表情类别概率,Softmax函数将一个多维向量输入的每一维转换到[0,1]之间,表达式为
式中:xi为Softmax函数的输入;pi为第i类的概率。
采用交叉熵计算卷积网络模型的损失值,计算公式为
式中:yi为输入样本的预测值;zi为输入样本的真实值;y和z也分别为样本预测值和真实值,但为r维向量。将该交叉熵损失函数作为优化卷积网络模型的目标函数。
3 实验结果及分析
本次实验在Ubuntu16.04操作系统上进行,使用Python编程语言和Keras深度学习框架搭建卷积网络模型。计算机硬件配置为Intel E5430 CPU、32G内存、NVIDIA 980Ti显卡(6G显存)。
3.1 数据集与训练细节介绍
为验证所提方法的有效性,采用RAF-DB[22]和AffectNet[23]两个人脸表情公共数据集进行测试。
1) RAF-DB(real-world affective faces database):该数据库是一个大型的真实世界表情数据库,包含从互联网下载的29672个高度多样化的面部图像。该数据库包含基本表情和复合表情2部分。本次实验主要用到基本表情部分的数据,包含12271个训练样本和3068个测试样本,被标注为惊奇、害怕、厌恶、高兴、悲伤、生气、无表情7类基本表情。
2) AffectNet:该数据库包含来自互联网的超过1000000张图片,这些图片是通过使用情感关键词在多个搜索引擎上搜索得到的。AffectNet中的数据被标注为无表情、高兴、悲伤、惊奇、害怕、厌恶、生气、轻视8类表情,包含手动标注部分和自动标注部分。手动标注部分相对而言更加可靠,所以本次实验主要使用该部分数据集,由于该数据集数据存在类别不均衡现象,厌恶、轻视两个类别数据较少,其他几个类别数据较多,所以对数据量较多的类别进行随机筛选,避免样本过度不均衡。具体训练数据和测试数据的类别数量如
表 2. 随机筛选后AffectNet数据集的类别数量
Table 2. Number of categories in AffectNet dataset after random screening
|
所提卷积网络模型训练输入为112×112的人脸表情图像,批量大小为20,训练140轮,采用自适应矩估计(Adam)优化器,初始学习率为0.001,当测试集的loss值不再下降时,学习率进行0.5的衰减。在训练中,使用Keras在线数据增强策略进行数据扩充,主要包括对表情数据进行随机旋转、水平和竖直方向的平移、剪切变换、随机缩放、随机水平翻转等操作。
3.2 实验结果和分析
本次实验测量指标为模型在测试集上的总体准确率(Acc),即分类正确的图像数量与总体数量的比值。不同模型的训练结果如
表 3. 不同模型的性能
Table 3. Performance of different models
|
改进倒置残差结构对模型性能的影响如
深浅层特征融合方法对模型性能的影响也如
图 4. 所提方法在RAF-DB数据集上的混淆矩阵
Fig. 4. Confusion matrix of RAF-DB dataset using the proposed method
图 5. 所提方法在AffectNet数据集上的混淆矩阵
Fig. 5. Confusion matrix of AffectNet dataset using the proposed method
表 4. RAF-DB和AffectNet数据集上不同方法的准确率
Table 4. Accuracy of different methods in RAF-DB and AffectNet datasets
|
4 结论
提出了一种基于多层次特征融合的轻量型卷积网络表情识别方法。采用改进的倒置残差结构设计网络模型,使模型在兼具轻量化的同时具有较好的特征提取能力,在此基础上融合卷积网络深层特征和浅层特征,进一步提升了模型准确率。在RAF-DB和AffectNet两个公开数据集上的实验结果表明,所提方法与全连接层直接融合的方法相比,性能相当,但参数量仅为后者的6%,较好地实现了识别准确率与识别速度的平衡。下一步将对模型剪枝和权值量化进行研究。
[1] MehrabianA, Russell JA. An approach to environmental psychology[M]. Cambridge: MIT Press, 1974: 56- 63.
[2] Huang Y X, Chen F, Lü S, et al. Facial expression recognition: a survey[J]. Symmetry, 2019, 11(10): 1189.
[3] Li S, Deng W H. Deep facial expression recognition: a survey[J]. IEEE Transactions on Affective Computing, 2020.
[4] 叶继华, 祝锦泰, 江爱文, 等. 人脸表情识别综述[J]. 数据采集与处理, 2020, 35(1): 21-34.
Ye J H, Zhu J T, Jiang A W, et al. Facial expression recognition: a survey[J]. Journal of Data Acquisition and Processing, 2020, 35(1): 21-34.
[5] 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.
[6] DalalN, TriggsB. Histograms of oriented gradients for human detection[C] //2005 IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR'05), June 20-25, 2005, San Diego, CA, USA.New York: IEEE Press, 2005: 886- 893.
[7] Bashyal S, Venayagamoorthy G K. Recognition of facial expressions using Gabor wavelets and learning vector quantization[J]. Engineering Applications of Artificial Intelligence, 2008, 21(7): 1056-1064.
[8] Dino HI, Abdulrazzaq MB. Facial expression classification based on SVM, KNN and MLP classifiers[C] //2019 International Conference on Advanced Science and Engineering (ICOASE), April 2-4, 2019, Zakho-Duhok, Iraq.New York: IEEE Press, 2019: 70- 75.
[9] 钟伟, 黄元亮. 基于特征融合与决策树技术的表情识别方法[J]. 计算机工程与科学, 2017, 39(2): 393-398.
Zhong W, Huang Y L. Afacial expression recognition algorithm based on feature fusion and hierarchical decision tree technology[J]. Computer Engineering & Science, 2017, 39(2): 393-398.
[10] Wang YB, Ai HZ, WuB, et al.Real time facial expression recognition with AdaBoost[C] //Proceedings of the 17th International Conference on Pattern Recognition, ICPR 2004, August 26-26, 2004, Cambridge, UK.New York: IEEE Press, 2004: 926- 929.
[11] Yu ZD, ZhangC. Image based static facial expression recognition with multiple deep network learning[C]∥ICMI'15: Proceedings of the 2015 ACM on International Conference on Multimodal Interaction, November 9-13, 2015, Seattle, WA, USA. Seattle: ACM, 2015: 435- 442.
[12] 周涛, 吕晓琪, 任国印, 等. 基于集成卷积神经网络的面部表情分类[J]. 激光与光电子学进展, 2020, 57(14): 141501.
[13] LiH, Li GM. Research on facial expression recognition based on LBP and DeepLearning[C] //2019 International Conference on Robots & Intelligent System (ICRIS), June 15-16, 2019, Haikou, China.New York: IEEE Press, 2019: 94- 97.
[14] MollahosseiniA, ChanD, Mahoor MH. Going deeper in facial expression recognition using deep neural networks[C] //2016 IEEE Winter Conference on Applications of Computer Vision (WACV), March 7-10, 2016, Lake Placid, NY, USA.New York: IEEE Press, 2016: 1- 10.
[15] 张红颖, 王汇三. 结合局部二值模式和梯度特征的双通道表情识别[J]. 激光与光电子学进展, 2020, 57(14): 141005.
[16] ArriagaO, Valdenegro-ToroM, PlögerP, Real-time convolutional neural networks for emotion and gender classification[EB/OL]. (2017-10-20)[2020-06-29].https:∥arxiv.org/abs/1710.07557.
[17] 吕诲, 童倩倩, 袁志勇. 基于人脸分割的复杂环境下表情识别实时框架[J]. 计算机工程与应用, 2020, 56(12): 134-140.
Lü H, Tong Q Q, Yuan Z Y. Realtime architecture for facial expression recognition in complex scenes based on face region segmentation[J]. Computer Engineering and Applications, 2020, 56(12): 134-140.
[18] 李勇, 林小竹, 蒋梦莹. 基于跨连接LeNet-5网络的面部表情识别[J]. 自动化学报, 2018, 44(1): 176-182.
Li Y, Lin X Z, Jiang M Y. Facial expression recognition with cross-connect LeNet-5 network[J]. Acta Automatica Sinica, 2018, 44(1): 176-182.
[19] 何志超, 赵龙章, 陈闯. 用于人脸表情识别的多分辨率特征融合卷积神经网络[J]. 激光与光电子学进展, 2018, 55(7): 071503.
[20] SandlerM, HowardA, Zhu ML, et al.MobileNetV2 inverted residuals and linear bottlenecks[C] //2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition, June 18-23, 2018, Salt Lake City, UT, USA. New York: IEEE Press, 2018: 4510- 4520.
[21] MisraD. Mish:a self regularized non-monotonic neural activation function[EB/OL]. (2019-08-13)[2020-06-29]. https://arxiv.org/abs/1908.08681?context=cs.LG.
[22] LiS, Deng WH, Du JP. Reliable crowdsourcing and deep locality-preserving learning for expression recognition in the wild[C] //2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), July 21-26, 2017, Honolulu, HI, USA.New York: IEEE Press, 2017: 2584- 2593.
[23] Mollahosseini A, Hasani B, Mahoor M H. AffectNet: a database for facial expression, valence, and arousal computing in the wild[J]. IEEE Transactions on Affective Computing, 2019, 10(1): 18-31.
[24] Liu ZW, LiS, Deng WH. Boosting-POOF: boosting part based one vs one feature for facial expression recognition in the wild[C] //2017 12th IEEE International Conference on Automatic Face & Gesture Recognition (FG 2017), May 30 - June 3, 2017, Washington, DC, USA. New York: IEEE Press, 2017: 967- 972.
[25] SimonyanK, Zisserman A. Verydeep convolutional networks for large-scale image recognition[EB/OL]. (2015-04-10)[ 2020-06-29]. https://arxiv.org/abs/1409.1556.
[26] Li Y, Zeng J B, Shan S G, et al. Occlusion aware facial expression recognition using CNN with attention mechanism[J]. IEEE Transactions on Image Processing, 2019, 28(5): 2439-2450.
[27] Cao S, Yao Y Q, An G Y. E2-capsule neural networks for facial expression recognition using AU-aware attention[J]. IET Image Processing, 2020, 14(11): 2417-2424.
Article Outline
申毫, 孟庆浩, 刘胤伯. 基于轻量卷积网络多层特征融合的人脸表情识别[J]. 激光与光电子学进展, 2021, 58(6): 0610005. Shen Hao, Meng Qinghao, Liu Yinbo. Facial Expression Recognition by Merging Multilayer Features of Lightweight Convolutional Networks[J]. Laser & Optoelectronics Progress, 2021, 58(6): 0610005.