分享自:

基于改进MobileNet网络的人脸表情识别

期刊:计算机应用与软件DOI:10.3969/j.issn.1000-386x.2020.04.023

本文介绍的研究发表于《计算机应用与软件》(Computer Applications and Software) 2020年4月第37卷第4期,题为《基于改进MobileNet网络的人脸表情识别》。该研究由四川大学电子信息学院的王韦祥、周欣、何小海、卿粼波、王正勇以及中国信息安全测评中心的周欣共同完成。

一、 学术背景

本研究属于计算机视觉领域,具体聚焦于人脸表情识别(Facial Expression Recognition, FER)这一重要研究方向。人脸表情是人类情绪的直接表达,在人际交互中扮演着关键角色。自动化的面部表情识别系统在人机交互(HCI)、安保、机器人、医疗、通信及智能交通等诸多新兴应用场景中具有巨大的应用潜力。因此,开发高效、准确且能够部署在资源受限设备(如移动端和嵌入式设备)上的表情识别技术,具有重要的理论价值和现实意义。

人脸表情识别的核心挑战在于如何有效地从面部图像中提取具有判别力的表情特征。传统的特征提取方法(如局部二值模式LBP、定向梯度直方图HOG、尺度不变特征变换SIFT等)依赖于人工设计,过程复杂且难以捕捉图像的高阶统计特征。随着深度学习的兴起,以AlexNet、VGG、GoogLeNet和ResNet为代表的深度卷积神经网络(CNN)在图像特征提取与分类任务上取得了巨大成功,也被广泛应用于表情识别。然而,这些网络模型通常结构复杂、参数量庞大,对计算硬件要求高,难以在移动和嵌入式设备上实现实时应用。

为了应对这一挑战,Howard等人于2017年提出了轻量级网络MobileNet。其核心创新在于引入了深度可分离卷积(Depthwise Separable Convolution),将标准卷积分解为深度卷积(Depthwise Convolution)和点卷积(Pointwise Convolution)两步,从而在精度损失不大的情况下,显著减少了计算量和参数量,为移动端部署提供了可能。然而,原版MobileNet在应用于人脸表情识别时仍存在实时性不足、最小输入尺寸(96x96)偏大、识别准确率有待提高等问题。特别是,原模型在深度卷积层后使用了ReLU激活函数,而深度卷积本身不改变通道数,其输出是单通道特征图。在通道数较少时应用ReLU,可能导致神经元“死亡”,造成信息丢失,影响特征提取能力。后续提出的MobileNetV2虽然通过引入倒转残差结构和线性瓶颈层试图缓解信息丢失,但其结构更复杂,参数量和计算量依然较大,在移动端实时性表现不佳,且在人脸表情识别任务上的效果不理想。

针对上述问题,本研究旨在对MobileNet网络进行改进,目标是设计一个更轻量、更高效、更适合人脸表情识别任务的新模型,以提升其在移动设备上的实时性和识别准确率。

二、 详细研究流程

本研究的主要流程包括:提出改进的网络模型M-MobileNet、设计实验验证模型性能、以及对实验结果进行分析。具体步骤如下:

1. 提出M-MobileNet网络模型

研究者设计了一个名为M-MobileNet(Modified MobileNet)的改进网络模型。其核心改进点有两个方面:

  • 改进的深度可分离卷积层: 针对原MobileNet中深度卷积后使用ReLU可能导致信息丢失的问题,M-MobileNet提出了一种改进的深度可分离卷积结构。该结构在深度卷积层后移除了ReLU激活函数,采用线性输出,以尽可能保留深度卷积提取的特征信息。而在随后的点卷积层之后,则依然保留批量归一化(Batch Normalization, BN)层和ReLU激活函数,以确保模型的非线性表达能力。这种设计旨在平衡特征保留和非线性建模能力。整个网络由1个标准卷积层和10个这种改进的深度可分离卷积层顺序级联构成,未采用MobileNetV2中的残差连接,以保持结构简洁。
  • 分类器的替换: 原MobileNet使用Softmax分类器。研究者认为,人脸不同表情之间的类间区分度本身不高,Softmax可能不是最优选择。因此,M-MobileNet采用线性支持向量机(Linear Support Vector Machine, SVM,具体为L2-SVM)作为分类器。SVM以其强大的泛化能力、对高维特征的良好分类支持以及在寻找最大分类间隔方面的优势,被认为更适合处理表情特征分类问题。

M-MobileNet的输入被设定为48x48x1的单通道灰度图像,这比原MobileNet的96x96输入更小,更符合人脸表情识别通常处理较小尺寸图像的特点。模型最终通过平均池化层、全连接层和SVM分类器输出表情类别。经计算,M-MobileNet的参数量约为0.4M(百万),远低于MobileNetV1的4.2M和MobileNetV2的3.4M,体现了其轻量级特性。

2. 实验设计与数据准备

研究在两个国际常用的人脸表情数据库上进行了实验验证: * CK+数据集: 包含123名受试者的593个表情序列,选取其中带标签的327个序列(共7类表情:愤怒、蔑视、厌恶、恐惧、高兴、伤心、惊讶)的峰值帧(每序列最后三帧),得到981幅图像用于实验。分别进行了7分类和6分类(剔除“蔑视”类)实验。 * KDEF数据集: 包含70位演员的7类表情图像,共4900幅。本研究选取其中的正面角度图像,每类140幅,共980幅图像用于实验。

在训练前,所有图像均经过统一的预处理流程:转换为灰度图、使用人脸检测算法定位人脸区域、裁剪并缩放到48x48像素大小,以去除无关背景信息并统一输入尺寸。

3. 实验环境与评估方法

PC端实验基于Keras深度学习框架(后端为TensorFlow),使用Python 3.5语言,在Windows 7系统上进行。硬件配置为Intel Core i5-7500 CPU和8GB内存。模型训练采用Adam优化器,训练周期(Epoch)为100,批大小(Batch Size)为32。模型性能评估采用10折交叉验证策略,以确保结果的可信度。

移动端实时性测试在小米8手机(骁龙710处理器,6GB内存,Android 9.0系统)上进行,通过Java编程实现,测量模型单次预测的平均耗时。

4. 对比实验设置

为了全面评估M-MobileNet的性能,研究者设计了一系列对比实验: * 与原始及变体模型对比: 将M-MobileNet与MobileNetV1、MobileNetV2进行对比。 * 消融实验(Ablation Study): 为了验证两个核心改进点(改进的卷积层和SVM分类器)各自的作用,设置了以下对比模型: * M-MobileNet + Softmax:使用改进的卷积层,但分类器换回Softmax。 * MobileNet + SVM:使用原始MobileNet的卷积层,但分类器换成SVM。 * MobileNet + Softmax:原始MobileNet模型。 通过比较这些模型的性能,可以分离出每个改进点的贡献。

三、 主要结果

实验结果表明,M-MobileNet在多个指标上均表现出色。

1. 识别准确率

  • 在CK+数据集(7分类)上: M-MobileNet取得了99.29% 的最高准确率。对比实验显示:M-MobileNet + Softmax(99.19%)和MobileNet + SVM(98.88%)的准确率均高于原始MobileNet + Softmax(98.26%),这分别证明了改进的深度可分离卷积层使用SVM分类器都能有效提升准确率。M-MobileNet的准确率也显著高于MobileNetV2(98.16%)以及文献中其他先进模型如DERF(97.30%)、2B(N+M) Softmax(97.10%)等。
  • 在CK+数据集(6分类)上: M-MobileNet同样以99.25% 的准确率领先。M-MobileNet + Softmax(98.59%)优于MobileNet + Softmax(98.38%),再次验证了改进卷积层的有效性。M-MobileNet比M-MobileNet + Softmax高0.66%,比MobileNet + SVM(98.17%)高1.08%,进一步凸显了SVM分类器在表情识别中的优势。其性能也超过了表中列出的其他先进模型。
  • 在KDEF数据集(7分类)上: M-MobileNet取得了96.70% 的最高准确率,优于M-MobileNet + Softmax(95.97%)、MobileNet + SVM(95.66%)、MobileNet + Softmax(95.39%)以及MobileNetV2(95.17%)。这一结果在另一个独立数据集上交叉验证了模型改进的有效性和泛化能力。

2. 移动端实时性

在小米8手机上的测试显示,M-MobileNet及其变体M-MobileNet + Softmax具有极佳的实时性。预测单张图像的平均时间分别为39毫秒36毫秒。相比之下,MobileNetV1和MobileNetV2的预测时间分别为243毫秒和347毫秒。M-MobileNet的预测速度比它们快了一个数量级,这得益于其极低的参数量(0.4M)和精简的网络结构,充分证明了其适用于移动端实时应用的优势。

3. 结果逻辑关系与结论支撑

实验结果形成了清晰的逻辑链条: * 改进的深度可分离卷积层(线性输出)在多个数据集和对比模型(M-MobileNet + Softmax vs MobileNet + Softmax)中都带来了准确率的提升,说明该设计有效缓解了信息丢失,增强了特征提取能力。 * 使用SVM分类器相较于Softmax分类器(M-MobileNet vs M-MobileNet + Softmax),在三个实验设置下均一致地带来了准确率提升(尽管在CK+ 7分类上提升较小,但在6分类和KDEF上提升明显),表明SVM更适合处理表情特征的分类问题。 * 将两项改进结合而成的M-MobileNet,在准确率上达到了最高,同时在移动端实现了最快的预测速度。这综合证明,本研究提出的两项核心改进是协同有效的,共同促成了一个在精度和速度上都优于基线模型及对比变体的轻量级表情识别网络。

四、 研究结论与价值

本研究成功提出并验证了一种改进的轻量级卷积神经网络模型M-MobileNet,用于人脸表情识别。主要结论如下: 1. 模型有效性: M-MobileNet通过改进深度可分离卷积层(深度卷积后采用线性输出)和使用SVM分类器,显著提升了在人脸表情识别任务上的准确率。 2. 轻量与高效: 模型参数量大幅减少(仅0.4M),在移动设备上实现了毫秒级的预测速度,满足了实时性应用的需求。 3. 泛化能力: 在CK+和KDEF两个公开数据集上的优异表现,证明了模型具有良好的泛化性能。

该研究的价值体现在: * 科学价值: 为轻量级神经网络设计提供了新思路,即针对特定任务(如表情识别)的特征特性,调整网络激活函数策略(深度卷积后线性化)和分类器选择(SVM替代Softmax),可以有效提升模型性能。这为后续面向移动端的视觉任务模型设计提供了参考。 * 应用价值: M-MobileNet模型兼具高精度和低延迟的特性,使其能够直接部署到智能手机、嵌入式系统等计算资源受限的设备上,推动人脸表情识别技术在实时人机交互、在线教育、智能监控、车载系统、情感计算等领域的实际应用落地。

五、 研究亮点

  1. 针对性的结构创新: 不是简单套用现有轻量级网络,而是深入分析了原MobileNet在表情识别任务上的不足(信息丢失、分类器不适配),提出了具有针对性的改进方案。
  2. 显著的性能提升: 在保持甚至增强轻量级特性的前提下,在多个标准数据集上取得了当时领先的识别准确率,同时移动端实时性表现突出。
  3. 严谨的消融实验: 通过设置多个对比模型(M-MobileNet + Softmax, MobileNet + SVM),清晰地分离并证明了每一项改进(卷积层线性化、SVM分类器)对最终性能的独立贡献,增强了结论的说服力。
  4. 完整的评估体系: 研究不仅关注识别准确率这一核心指标,还全面评估了模型的参数量、计算效率以及在真实移动设备上的运行速度,体现了面向应用的研究导向。

六、 其他有价值内容

研究中对深度可分离卷积的计算量与传统卷积进行了量化对比分析(公式1-5),从理论层面解释了其轻量化的原理。同时,对ReLU激活函数可能导致神经元“死亡”和信息丢失的机理进行了阐述,为改进提供了理论依据。此外,论文详细介绍了图像预处理流程和实验采用的交叉验证策略,保证了实验的可重复性和严谨性。

上述解读依据用户上传的学术文献,如有不准确或可能侵权之处请联系本站站长:admin@fmread.com