英语原文共 4 页,剩余内容已隐藏,支付完成后下载完整资料
基于深度卷积网络的实时面部表情识别系统
Jinwoo Jeon
韩国科学技术高等研究院291, 韩国大田儒城区大鹤路,82-42-350-8172
Jun-Cheol Park
韩国科学技术高等研究院291, 韩国大田儒城区大鹤路,82-42-350-8172
YoungJoo Jo
韩国科学技术高等研究院291, 韩国大田儒城区大鹤路,82-42-350-817
摘要:随着基于深度学习的识别模型被使用于越来越广泛的领域,针对智能家居设备的实时用户状态识别这一特殊需求已经出现。本文提出了实时的面部表情识别器以满足该需求。我们通过使用HOG特征描述来检测人脸,使用跟踪器跟踪检测到的脸部和基于深度卷积神经网络(CNN)的识别器。我们的卷积神经网络模型经过Kaggle面部表情识别挑战数据集的训练和测试。实验结果表明,我们的分类器实现了高测试精度和低计算时间,从而满足了针对移动应用所需要的实时高性能人脸表情识别。
关键词:深度学习;机器学习;神经网络;卷积神经网络;CNN;实时识别;面部表情识别;计算机视觉;模式识别
1.引言
面部表情是了解他人的情绪状况的重要信息。比起其他任何迹象,大多数人的情绪,都可以更容易的通过他们的表情在他们的脸上观察到。因此,对于需要用于与用户交互的前沿技术,必须利用实时的面部表情识别系统进行情境识别。在本文中,我们基于深度神经网络构建了一个具有对主体不变性的实时面部表情识别器。
深度神经网络[1]已被广泛用于模式识别和分类任务。更重要的是,卷积神经网络(CNN)在面对这些任务时,具有比其他类型的神经网络更好的性能。卷积神经网络是由几个卷积层和全连接层组成的。每个卷积层从训练集中的图像中提取特征。为了实现空间不变性,提取的特征会经过最大池化层下采样。然后,随着连续的卷积层,特征变得更加复杂,难以被人理解。在最高卷积层中,卷积滤波器最终反映了可以代表物体的特征。来自卷积层的几个滤波器的输出进过全连接层被分类。
方向梯度直方图(Histogram of Oriented Gradient, HOG)特征[2]是一种特征描述子,被广泛应用于计算机视觉中的目标检测。该特征对图像几何的和光学的形变都能保持很好的不变性,这两种形变只会出现在更大的空间领域上。将输入的每帧图像分割为若干个像素的单元。这些单元像素值乘以微分内核来计算图像的梯度。比如Sobel掩模[3]或简单的一维导数核被广泛用于计算梯度。通过以各种角度应用这些滤波器可以获得图像的边缘梯度。由于特征描述的目的,可以使用8个角度为45度的盒子、9个24度的盒子或24个15度的盒子进行方位量化。生成的梯度图中具有边缘梯度强度的单元被组合成更大的空间单元,被命名为块。在这个过程中,为了更好地保持对光照和阴影的不变性,梯度强度通过对比度进行归一化。通过从块中的单元收集梯度强度形成的一维数据来获得直方图。最后使用传统的支持向量机分类器作为方向梯度直方图描述符重叠网格的最终检测步骤。
Tang [4]和Bergstra [5]将卷积神经网络用于完成面部表情识别任务,并在Kaggle面部表情识别挑战(2013)中取得了最佳的成绩。Tang在分类阶段使用线性的支持向量机(Support Vector Machine,SVM)取代传统卷积神经网络模型的softmax层。他的模型在挑战中获得了69.77%的最高准确率。Bergstra使用了由卷积,主成分分析(PCA),积分,归一化和线性读出组成的Null模型。他的模型集中在超参数的优化。
2.模型概述
本文的模型通过两个步骤检测人脸并识别出面部表情:人脸的跟踪检测以及基于卷积神经网络的表情识别。
方向梯度直方图特征描述子与线性分类器相结合进行人脸检测。这种类型的探测器是通用的,不仅适用于人脸探测器,而且适用于半刚性物体。只有面部检测的人脸定位需要太长的计算时间。因此,为了执行实时识别器,人脸位置由第一帧的脸部检测器启动,并使用相关跟踪器[6]跟踪其余帧的脸部。在一定的跟踪周期后重新初始化,以防止跟踪视线外物体和补偿跟踪误差(见图1.1的左侧)。
在定位人脸后,裁剪脸部使其尺寸缩小为42pxtimes;42px,使其与卷积神经网络模型的输入尺寸大小一样。来自输入图像的特征被本文的卷积神经网络模型提取和分类。然后,最终我们得到实时的面部表情识别结果(参见图1.1和图1.2的右侧)。
图1.1 表情识别模型的概貌
图1.2 卷积神经网络的结构
3.数据集和方法
3.1 卷积神经网络模型的数据集
·本文使用Kaggle [7] 面部表情识别挑战数据库来训练和测试性能。该数据集包含7种面部表情类别(愤怒,厌恶,恐惧,快乐,悲伤,惊奇和中性),28,709张训练图像用于模型的训练,3,589张验证图像用于模型训练过程中的验证和3,589张测试图像用于最终测试模型的性能表现,图像都是尺寸为48pxtimes;48px的单通道灰度图像。该数据集包含具有各种光照条件,姿势和位置的人正面照片图像,甚至包括了卡通人物。
图1.3 kaggle数据集示例
3.2人脸检测和跟踪
当模型初始化时,程序开始执行人脸检测在每一帧图像中试图找到人脸。然后,一旦成功的检测到脸部,检测到的脸部位置和检测到的区域内的像素数据将被用于脸部追踪模块。 在这个阶段,连续输入帧的20帧中将只有一帧用于检测面部表情,帧的其余部分将被用于跟踪模块,这样通过减少重复检测面部表情能够有效减少实时识别器的计算时间。 我们使用公共C 库dlib [8]进行基于HOG特征的人脸检测和相关性跟踪。
3.3基于卷积神经网络的识别
3.3.1 卷积神经网络模型
本文的卷积神经网络模型由三层带有下采样的池化层的卷积层和两层全连接层组成。三个卷积层分别使用了32个5*5大小的卷积核、32个4*4大小的卷积核、64个5*5大小的卷积核,卷积过程中边缘部分不足的选择用0进行填充。并且在每个卷积层后都设置有一个3*3大小,步长为2的下采样池化层,池化层都采用了最大池化,最后是两层全连接层和通过softmax函数激活的输出(见表1.1)。
种类 |
核 |
步长 |
填充 |
输出 |
丢弃 |
输入 |
42*42*1 |
||||
卷积层1 |
5*5 |
1 |
2 |
42*42*32 |
|
池化层1 |
3*3 |
2 |
21*21*32 |
||
卷积层2 |
4*4 |
1 |
1 |
20*20*32 |
|
池化层2 |
3*3 |
2 |
10*10*32 |
||
卷积层3 |
5*5 |
1 |
2 |
10*10*64 |
|
池化层3 |
3*3 |
2 |
5*5*64 |
||
全连接层1 |
1*1*2048 |
40% |
|||
全连接层2 |
1*1*1024 |
40% |
|||
输出 |
1*1*7 |
表1.1 卷积神经网络结构
卷积神经网络的实现是通过公共C 深度学习库Caffe [9]完成的。
3.3.2卷积神经网络模型训练阶段
在训练阶段,我们首先去除了训练集中的错误图像。在这个过程中我们消除了其中像素全部为黑色的9个图像。为了将更多数据加入我们的卷积神经网络模型的训练中,我们进行了数据增强。我们使用42pxtimes;42px大小随机裁剪原先为48px*48px的图像,将裁减所得的图像作为训练数据输入。通过这种数据增强方法,为我们的卷积神经网络的训练生成8倍以上的数据并且可以诱导模型产生局部的空间不变性。我们使用增强的数据训练了图1.2所示的模型。在训练开始之前,训练集中的图像顺序被随机打乱。该模型通过使用反向传播算法[10]和随机梯度下降的方法使损失函数最小化来训练整个网络。为了避免过度拟合,将Dropout层[11]应用于全连接的层之后。
3.3.3卷积神经网络模型测试阶段
在测试阶段,我们使用平均方法来减少异常值。具体方法为四角切割图像并分别产生他们的镜像(水平翻转)用于测试数据。然后,他们的概率对最终产出进行平均。通过这个程序,我们可以稍微减少分类错误。
4.性能
4.1处理时间
本文的系统在未检测到面部时,只激活人脸检测模型。尽管没有执行卷积神经网络模型,但仍然需要110ms(9.1fps)来处理单个帧。这意味着在最糟糕的情况下,我们的模型需要110ms才能从未检测到人脸到检测到人脸并做出识别响应。但在检测到脸部后,处理时间会下降到平均43.7ms(22.9fps),以处理单个帧。这是因为人脸跟踪和分类需要比起面部检测只需要更短的处理时间。处理时间是在Nvidia GeForce GTX 650 Ti GPU上测量得的。
4.2基于卷积神经网络的识别
使用测试集在测试阶段的分类准确率见表1.2,所有类别的平均准确率为70.74%。开心和惊喜类别的准确性高于其他类别,但恐惧类别的准确性较差。
表1.2 基于本文CNN模型测试集的混淆矩阵
5.致谢
本研究得到以下支持:(1)Brain Korea 21 项目,BK电子和通信技术部门,2015年KAIST,(2)SK Telecom,(3)POONGSAN和(4)韩国MSIP由IITP监督的G-ITRC支持计划(IITP-2015R6812-15-0001)。
6.结论
本文提出了基于深度卷积神经网络模型的实时表情识别器。本文的实验表明,我们的识别器能够以高帧速率和高分类准确度来检测、跟踪并分类人脸表情。某些类别的测试精度低的原因被认为是该类别的图像数量不平衡。在Kaggle面部识别挑战训练数据集中,7215张图像处于幸福类别,436张图像处于厌恶类别。考虑到单个类别平均有4101个图像,这种不平衡的类别大小足以导致分类错误。使用来自相应类别或数据增强的其他数据集的更多数据可能会提高卷积神经网络模型的性能。
参考文献
- Krizhevsky A, Sutskever I, Hinton G E. ImageNet classification with deep convolutional neural networks[C]// International Conference on Neural Information Processing Systems. Curran Associates Inc. 2012:1097-1105.
- Dalal N, Triggs B. Histograms of Oriented Gradients for Human Detection[C]// IEEE Computer Society Conference on Computer Vision amp; Pattern Recognition. IEEE Computer Society, 2005:886-893.
- Sobel, Irwin. 2014. History and definition of the sobel operator. Retrieved from the World Wide Web.
- Tang Y. Deep Learning using Linear Support Vector Machines[J]. Computer Science, 2013.
-
Bergs
剩余内容已隐藏,支付完成后下载完整资料
资料编号:[22749],资料为PDF文档或Word文档,PDF文档可免费转换为Word
以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。
您可能感兴趣的文章
- 为非政府组织OG慈善基金会设计的基于社区的救灾管理系统外文翻译资料
- 基于UML建模的医疗系统电子健康服务软件外文翻译资料
- 开发一种具有增强现实功能的智能手机应用程序, 以支持护理学生对心衰的虚拟学习外文翻译资料
- 在开发 Web 应用程序中应用 Vue.JS 框架外文翻译资料
- 基于MES系统的生产车间信息管理研究外文翻译资料
- 基于Vue.js和MySQL的电子商务平台的设计与实现外文翻译资料
- 详细的Spring配置和SpringBoot外文翻译资料
- 基于NS2的DSR和AODV协议的性能比较研究外文翻译资料
- 不同仿真参数下NS2的TCP吞吐量性能外文翻译资料
- 基于Spring Boot和VUE的车辆管理系统实现外文翻译资料