本文来自2019第五届IEEE国际WIE电气和计算机工程大会(WIECON-ECE),原文链接
https://ieeexplore.ieee.org/document/9019937
《使用面部表情分类器的开发神经网络》
作者:Vandana Jha(印度)Deepa Shenoy(印度)Venugopal K R(印度)
摘要
随着年龄,性别,种族的发展,一个人的情感和心理健康状况可以轻易地用一张脸来描绘。面部表情在日常社交互动中起着至关重要的作用。这些表达方式可以解释一个人的情感水平和行为方式。
面部表情分类器是一个不断发展的,苛刻的和好奇的计算机视觉问题。它在机器人技术,行为科学,人机交互,视频游戏等领域具有潜在的应用。它有助于构建更智能的系统,这些系统具有更好的解释人类情感的能力。
本文提出了一种基于卷积神经网络(CNN)的面部表情分类器。 CNN是多层受体(MLP)网络的生物学启发变体。他们使用特别适合分类的架构图片。可以通过学习面部特征的能力来增强面部表情的检测。结果显示深层的CNN很适合执行此任务。我们已使用CNN将面部表情标签解释和分类为七个不同的类别:愤怒,幸福,恐惧,悲伤,厌恶,惊奇和中立。
关键词:卷积神经网络,面部表情检测,OpenCV,Python,TensorFlow。
引言:“脸是心灵的镜子,眼睛没有说话承认心中的秘密。”
—拉丁天主教神父St. Jerome
最近对非语言交际的研究表明面部表情是传达55%的人的情感或故意信息的一种手段,因此面部表情是人类在交流中展现情感的重要角色。近年来,关于情感分析的研究已经大大增加。由于神经科学和认知科学的发展,简化了情感分析的路径,因此这成为可能。此外,计算机视觉和机器学习领域的技术进步也为情感分析和学习的发展做出了贡献。使它达到了公众的视野。面部识别研究表情正在迅速发展,因为它是情绪分析的重要子领域。面部表情识别在人机交互系统,多媒体,监视和驾驶员安全等领域具有许多应用。Ekman等人的工作是该研究方向上的初步工作者之一。
1.1研究动机
我们的面部表情分类器背后的动机是建立一个自动的系统,用于阅读和站立的面部表情,这进一步有助于了解人的情绪和心理状态。通常,面部表情可以分为七个基本类别,包括愤怒,幸福,恐惧,悲伤,厌恶,惊奇和中立。因此,将表情分类为这些基本类别是我们提出的系统的首要任务。面部表情的自动识别和分类是自然人机界面的重要组成部分。它在医学领域和行为科学中都有其应用,特别是在治疗昏迷的情况下患者或孩子的心理。即使面部表情识别快速且无需人为费力,但要由学习型机器执行仍然是一项具有挑战性的任务。我们的工作所做出的贡献是在减少处理时间的同时提高了准确性,这是通过使用深度卷积神经网络(DCNN)功能来实现的。
1.2本文组织结构
本文继续以下组织结构:在第二节中对相关工作进行了简要分析。 第三节介绍了拟议的系统,该系统具有张量流平台形式和涉及面部表情识别的过程。模拟在kaggle数据集上运行,所有相关结果在第四节中讨论。 第五节总结全文。
从很长一段时间以来,卷积神经网络算法用于面部并基于这些方法或对现有算法进行修改,相关工作可以分为两部分:
•卷积神经网络
•混合卷积神经网络
2.1卷积神经网络
Meng等人开发了一个身份识别卷积神经网络(IACNN),该网络同时使用与表情相关和与身份相关的信息来识别面部表情。他们引入了一个新的具有身份敏感对比损失的辅助层,该辅助层有助于学习与身份相关的表示,以减少高主体间的差异。已经提出了一种联合损失函数,该函数检查了表达和同一性相似性以及用于识别表达的分类错误。此损失功能用于同时调整两个功能(与表达相关以及与身份相关的功能)。结合这两个特征后,可用于识别身份不变的面部表情。已经在两种不同的面部进行了实验表达式构成数据集。结果表明,所提出的IACNN模型比基线CNN方法以及大多数利用从图像序列中提取的动态信息的现有方法提供了更好的结果。
Zhang et al.提出了一个模型,在该模型中,给定训练的面部图像及其表情标签,生成了许多面部部分斑块,其中包含本地和全球个人身份信息。生成的图像补丁被送入CNN进行深度模型训练。
为了计算方便,所有修补程序共享同一网络。从第二层到最后一层输出被连接为特征,并在这些特征上训练了强大的分类器支持向量机(SVM)以预测表达类。这个的主要限制之一方法,是照明的条件,是人体的姿势,人脸,种族差异对人脸表情识别有重要影响。面部表情识别的另一个限制是如何提取可以更好地区分不同情绪的关键面部特征,但是为CNN调整最佳参数非常耗时。
拉希德等人提出了一种使用自然界中不平衡的不同表情数据集识别面部表情的技术。进行了数据预处理,后来又变得平衡了。脸的显着特征使用一种技术进行提取,并将这些提取的特征作为分类器模型的输入。已经可以确定卷积神经网络可产生最佳识别精度。例如,一个人通过各种方式传达强烈的和交流的感觉。态度,体格,感觉,运动,自然标志等。关于卷积的这项研究已使用神经网络来实现一种可以识别静态图像中面部表情的方法。面部行为可分为多种类型。通过使用这些数据集对建议的技术进行了评估。
Mayya等人提出了一种方法。使用深度卷积神经网络(DCNN)功能自动识别面部表情。该模型的主要重点是从单个图像识别人的面部表情。通过使用通用图形处理单元(GPGPU),可以大大减少特征提取时间。已经对两个公开的面部表情数据集进行了实验。根据这些实验的结果,已经观察到,在分类不同的面部时,可以使用DCNN特征来实现现有的识别率。表达式分成不同的类。
2.2混合卷积神经网络
使用密集尺度不变特征变换聚合器,提出了一种用于面部表情识别的混合卷积神经网络。通过使用尺度不变特征变换(SIFT)功能,可以处理小数据。由于SIFT不需要大量的培训数据即可生成有用的功能,因此可以增加该值。对SIFT和Dense SIFT均进行了详细研究,发现Dense SIFT比常规SIFT运行得更快。比较了所有这些优点和缺点,并决定将其与CNN功能合并。CNN与Dense SIFT的组合所获得的面部表情识别的准确性要优于单个模型(仅CNN)和CNN与SIFT的组合。通过Dense SIFT模型获得的精度提高了大约1%。实验已在FERC-2013和CK +数据集上进行。获得的结果表明,使用Dense SIFT和CNN的组合模型取得了出色的结果。
Dachapally和Raj提出了两种独立的面部情绪检测方法。在第一种方法中,自动编码器用于构造每个情绪的唯一表示,而在第二种方法中,使用8层卷积神经网络(CNN)。该模型的评估表明,与现有的情感识别方法相比,CNN模型可以提供更好的准确性和性能,具有更深的深度和滤波器的微调。面部表情识别还有助于了解任何产品广告或竞选活动中群众的情绪,并且可能对作品有帮助,朝这个方向进行。
提出的系统具有固定的输入图像大小为42x42x1。它由卷积层,池化层和完全连接的层组成。在每个卷积层和完全连接的层之后使用ReLu激活功能。 输出层包含7个神经元,以显示7种面部表情:愤怒,幸福,恐惧,悲伤,厌恶,惊奇和中立。在以下情况下,可应用softmax层是可选的多类SVM丢失功能。在训练阶段,我们可以在输出层之后放置一个softmax层,以利用交叉熵损失函数。
3.1 模型规格
该模型的灵感来自于VGGNet的简单设计架构,包含四个模块。表1列出了模型规格,可以解释如下:第一块由两个3x3卷积层组成,滤镜数为32。第二块由两个3x3卷积层组成,滤镜数为64。第三块由两个3x3卷积层组成,滤镜数为64。第四个块由三个3x3卷积层组成,滤波器的数量为64。
输入图像大小= 42x42x1 |
第一块:两个3x3 conv. layers, filters = 32, Stride = 1 |
最大池化层:size 2x2, Stride = 2 |
第二块: 两个3x3 conv. layers, filters = 64, Stride = 1 |
最大池化层:size 2x2, Stride = 2 |
第三块:两个 3x3 conv. layers, filters = 64, Stride = 1 |
最大池化层:size 2x2, Stride = 2 |
第四层: 三个3x3 conv. layers, filters = 64, Stride = 1 |
第四块:256个神经元的完全连接层 |
第五块:256个神经元的完全连接层 |
输出层=具有7个神经元的7个表达式的完全连接层 |
表1.模型规格表
对于所有四个块,步幅为1。我们在每个块之后(最后一个除外)采用了最大池化层,其过滤器大小为2x2,步幅为2。在使用了四个块之后,两个完全连接的层每层具有256个神经元。最后,输出层是一个具有7个神经元的完全连接层,代表7个面部表情。如前所述,应用softmax层是可选的。我们添加了它,在输出层之后的训练阶段应用了交叉熵损失函数。可以跳过此softmax层,如果在训练阶段,使用多类SVM损失。
3.2实施
面部表情识别过程涉及以下步骤:
输入是通过网络摄像头作为实时输入。由于系统无法识别彩色图像,因此必须将其转换为灰度图像。然后,我们一一获取相机的帧并将其转换为灰色。后来转换为二进制评估值。
眼睛特征提取步骤:
(a)封闭眼睛的基本矩形块
(b)眼睛轮廓的决定性界标点
(c)提取眼睛轮廓
拔牙程序:
(a)基本的矩形块将口封闭
(b)嘴轮廓的决定性界标点
(c)提取嘴轮廓
我们将TensorFlow体系结构用于面部表情检测任务。之所以称TensorFlow,是因为采用了多维数组形式的张量作为系统的输入。我们可以构造要在其上执行的有状态操作流程图(Graph)输入。输入从一端进入,然后流经此系统的多个操作,然后从另一端出来作为输出。它分为三个部分:
在此步骤中,在两个级别上执行数据归一化:图像级别和像素级别。在训练数据和测试数据上执行此步骤。
数据集分为训练和测试数据集。在训练阶段,可以应用两种不同的损失函数:交叉熵和多类支持向量机。最小化损失函数是我们的任务。为此,我们使用了带有动量的梯度下降和反向传播算法。训练数据集用于训练模型,并计算其在检测面部表情中的准确性。训练将以最高的精度停止,并且模型已准备就绪,可以进入测试阶段。
在此步骤中,我们将训练后的模型应用于测试数据,并找出其在识别面部表情方面的准确性。给定的数据集图像的大小为48x48,但对于CNN,输入图像的大小为42x42,因此图像裁剪是必需的步骤。我们使用图像尺寸为42x42的10个被裁剪图,其中5个是原始图,另外5个是前5个图的镜像。对于每个裁剪后的图像,将应用在交叉熵和多类别SVM两种方法上训练的模型,并计算其在类别标签上的得分。得分最高的类别标签为图像提供最终的类别标签和相关的面部表情类别。
4.1数据集
该实验已在FERC-2013数据集上进行。数据集由48x48像素的灰度,居中的人脸图像组成。训练数据集的大小为28,709张图像。公开测试数据集的大小为3,589张图像,而私人测试数据集则由另外3,589张图像组成,因此数据集的总大小为35,887张图像。Pierre-Luc Carrier和Aaron Courville已准备好此数据集。每个图像是在训练阶段与数字代码(0 =愤怒,1 =厌恶,2 =恐惧,3 =高兴,4 =悲伤,5 =惊喜,6 =中立)相关联。任务是在测试阶段预测此数字代码(和相关的情绪)。
4.2评估结果
我们已经使用第三部分中给出的模型规范构建了CNN模型。该模型适用于两个不同的损失函数,交叉熵损失函数和多类SVM损失函数。在训练阶段,我们在输出后使用了具有交叉熵损失函数的softmax层,但是在SVM损失的情况下会跳过该层功能。在每个卷积层和完全连接的层之后使用ReLu激活功能。对训练后的模型进行公共测试数据集和私有测试数据集的评估,获得的结果显示在表2中。结果表明,具有多类SVM损失函数的CNN模型的性能优于交叉熵损失功能。另一个观察结果是,识别幸福和悲伤的面部表情比其他类别的面部表情具有更好的准确性,因为相似的面部特征负责其他表达。
架构 |
公开测试数据精确度 |
私有测试数据精确度 |
CNN模型、交叉熵损失函数 |
69.4% |
70.2% |
CNN模型、多类SVM损失函数 |
69.9% |
70.8% |
表2.模型的精确度
在这里,我们提出了一种用于表情识别的自动模型。该系统经过训练,可以将人的面部表情分为七个类别,即愤怒,幸福,恐惧,悲伤,厌恶,惊奇和中立。与FERC-2013竞赛的获胜团队相比,该系统以更快的处理时间和更简单的设计架构确保了面部表情识别的良好结果。我们的模型的灵感来自于VGGNet的简单设计架构。该模型是全自动的,对于处理视频供稿非常有用以及图像。它为面部表情识别提供了大约70%的准确结果。将来,通过合并时间信息,可以更准确地识别视频中的面部表情。将面部表情分类器与情感分析领域相结合,可以扩展未来的工作,主要用于产品广告领域。它将提供消除写虚假在线评论问题的正确方法。
参考文献
[1] R. Ekman, What the face reveals: Basic and applied studies of spontaneous expression using the Facial Action Coding System (FACS).Oxford University Press, USA, 1997.
[2] Z. Meng, P. Liu, J. Cai, S. Han, and Y. Tong, “Identity-aware convolutional neural network for facial expression recognition,” in 12th IEEE International Conference on Automatic Face & Gesture Recognition (FG2017). IEEE, 2017, pp. 558–565.
[3] C. Zhang, P. Wang, K. Chen, and J.-K. Kam¨ ar¨ ainen, “Identity-aware ¨ convolutional neural networks for facial expression recognition,” Journal of Systems Engineering and Electronics, vol. 28, no. 4, pp. 784–792,2017.
[4] T. A. Rashid, “Convolutional neural networks based method for improving facial expression recognition,” in The International Symposium on Intelligent Systems Technologies and Applications. Springer, 2016, pp.73–84.
[5] V. Mayya, R. M. Pai, and M. M. Pai, “Automatic facial expression recognition using dcnn,” Procedia Computer Science, vol. 93, pp. 453–461, 2016.
[6] T. Connie, M. Al-Shabi, W. P. Cheah, and M. Goh, “Facial expression recognition using a hybrid cnn–sift aggregator,” in International Workshop on Multi-disciplinary Trends in Artificial Intelligence. Springer,2017, pp. 139–149.
[7] Y. Tang, “Challenges in representation learning: Facial expression recognition challenge implementation https://www.kaggle.com/c/ challenges-in-representation-learning-facial-expression-recognitionchallenge,” University of Toronto, 2013.
[8] P. Lucey, J. Cohn, T. Kanade, J. Saragih, Z. Ambadar, and I. Matthews,“The extended cohn-kanade dataset (ck+): A complete dataset for action unit and emotion-specified expression,” 2010, pp. 94 – 101.
[9] P. R. Dachapally, “Facial emotion detection using convolutional neural networks and representational autoencoder units,” arXiv preprint arXiv:1706.01509, 2017.
[10] V. Jha, R. Savitha, P. D. Shenoy, and K. Venugopal, “Reputation System: Evaluating Reputation Among All Good Sellers,” in Proceedings of NAACL-HLT, 2016, pp. 115–121.
[11] V. Jha, R. Savitha, P. D. Shenoy, K. Venugopal, and A. K. Sangaiah, “A Novel Sentiment Aware Dictionary for Multi-Domain Sentiment Classification,” Computers & Electrical Engineering, vol. 69, pp. 585–597, 2017.
[12] A. Krizhevsky, I. Sutskever, and G. E. Hinton, “Imagenet classification with deep convolutional neural networks,” in Advances in neural information processing systems, 2012, pp. 1097–1105.
[13] K. Simonyan and A. Zisserman, “Very deep convolutional networks for large-scale image recognition,” arXiv preprint arXiv:1409.1556, 2014.
[14] L. Ma and K. Khorasani, “Facial expression recognition using constructive feedforward neural networks,” IEEE Transactions on Systems, Man, and Cybernetics, Part B (Cybernetics), vol. 34, no. 3, pp. 1588–1595,2004.