基于深度学习面部表情识别系统

/ 2

基于深度学习面部表情识别系统

马世阳  李卿  朱德政  李博雅  孙资治

沈阳理工大学信息科学与工程学院 辽宁沈阳 110159

摘要:

抑郁症的确诊需要医师对患者进行综合分析,其中面部表情分析是确诊抑郁症很重要的一步,然而患者多处于羞耻心理从而拒绝进行医疗监测。针对上述问题我组提出构建基于深度学习面部表情识别系统,来对患者进行线上人脸表情识别。帮助医师对抑郁症患者进行诊断以及病情分析,并为患者提供有助于心情的建议。

关键词:面部表情;深度学习;抑郁症



抑郁症是世界范围内普遍存在的精神障碍。早期筛查和治疗对于预防疾病进展至关重要。未经治疗的抑郁症可能会导致其他健康问题的发展,如焦虑症、药物滥用、自杀风险增加以及身体健康问题的恶化。早期发现抑郁症可以减少这些并发症的发生。早期发现抑郁症可以使患者更早地接受治疗,从而防止症状进一步恶化。我组经过调查发现线上的抑郁症检测多为问卷调查,基于问卷结果来对患者做出诊断,该方法得到的结果往往有主观因素强,可信度低等问题。鉴于此,我组提出线上的面部表情识别系统来为抑郁症诊断提供心情依据。本文主要包含VGG深度学习模型的搭建、训练、测试,以及Web系统的构建与测试。

1、VGG16模型的搭建

深度学习是一种基于多层神经网络的机器学习方法,能够从大量的数据中自动提取特征和规律,从而实现复杂的任务,如图像识别。图像识别是指让计算机能够理解和分析图像中的内容,如物体、人脸、场景等。使用深度学习进行图像识别的通常方法是:构建一个以图像为输入,以类别或标签为输出的神经网络模型,然后利用大量的带有标注的图像数据来训练这个模型,使其能够在新的图像上做出正确的预测。

卷积神经网络Convolutional Neural Network, CNN是一种深层前馈神经网络。CNN主要由输入层、卷积层池化层、全连接层输出层构成。如图所示一个卷积模块由连续M个卷积层和b个池化层组成一个CNN中,一般可以堆叠N个连续的卷积块,接K个全连接层

卷积层通过卷积核提取局部区域特征,不同的卷积核相当于不同的特征提取器。卷积层的神经元是一维结构。由于CNN主要应用在图像处理上,为了更充分地利用图像的局部信息,通常将神经元组织为三维结构的神经层,其大小为,由D个大小的特征映射构成。

特征映射是一幅图像(或其他特征映射)经过卷积提取到的特征,每个特征映射可以作为一类抽取的图像特征。为了提高卷积网络的表征能力,可以在每一层使用多个不同的特征映射,以更好地表示图像特征。

在输入层,特征映射就是图像本身。灰度图像只有一个特征映射,输入层的深度;彩色图像有RGB三个颜色通道的特征映射,输入层的深度。

一个卷积层的结构如下:

(1)输入特征映射组:为三维张量(Tensor),其中每个切片矩 阵为一个输入特征映射,;

(2)输出特征映射组:为三维张量,其中每个切片矩阵为一个输出特征映射,;

(3)卷积核:为四维张量,其中每个切片矩阵为一个二维卷积核,,

全连接层 CNN的后端连接1个或1个以上的全连接层,全连接层中的 每个神经元与其前一层的所有神经元进行全连接。全连接层可以整合卷积层或 者池化层中具有类别区分性的局部信息

VGG16共包含13个卷积层,3个全连接层,5个池化层,其中卷积层和全连接层有权重系数的权重层总数目为16。

2、VGG16模型的训练与测试

对模型进行训练的数据集我组选用的是fer2013数据集,该数据集由35886张人脸表情图片组成,其中包括训练图(Training),公有验证图(PublicText)和私有验证图(Private)。数据集中共有7种情绪包括:正常、开心、惊讶、伤心、害怕、生气和厌恶。我组首先将图片缩放到224×224大小,并将像素值调整到[-1,1][-1,1][-1,1]之间,后对VGG模型进行训练。进行100轮迭代训练后模型的随时率为2.5956,准确率为0.6304。

2.1使用deepface人脸探测来进行面部心情识别

deepface是python轻量级人脸识别和人脸属性分析框架,其中人脸探测功能与我组VGG16相结合来实现对面部表情进行分析。deepface来对图片中人脸进行抓取,输出一张RGB的numpy数组图像,后交给VGG16进行面部表情分析。

3、线上人脸心情识别

3.1 Web系统构建

Flask作为一款优雅而简洁的Web框架,以其灵活性、易用性和可扩展性成为Python Web开发的首选之一,无论是小型项目还是大型应用,都能够借助Flask轻松实现高效、可维护的Web应用。

系统前端使用轻量级的JavaScript框架Vue来完成前端页面,Vue通过其简洁、灵活和高效的设计,我组更快得搭建出来前端页面与后端服务器。我组创新性得让用户在前端进行照片的拍摄,后将照片上传至服务器进行分析。

MySQL作为开源的关系型数据库管理系统,具有跨平台支持、高性能、灵活性等特点,适用于各种规模的应用场景。我组使用该数据库来对系统数据进行存储,主要存储的有用户登录信息、用户拍摄照片、人脸表情数据。

3.2 实时心情分析

用户可以在任何地点登录账号后,进行拍照后照片上传至服务器,服务器分析面部表情后将结果交给前端。

3.3 提供建议

系统能够检测出生气、厌恶、害怕、开心、伤心、惊喜、自然七种表情。根据系统检测出的面部表情,系统将给出有助于心情的建议,以及有助于心情的相关运动建议。

4、系统意义

该系统的应用前景相当广泛。首先,它可以广泛应用于抑郁症的早期筛查。许多抑郁症患者在发病初期并无明显症状,这给诊断带来了很大的困难。然而,本系统可以通过分析面部表情,及时发现情绪变化,从而提高早期诊断的准确率。其次,该系统还有助于为患者提供更加个性化的建议。心理障碍的种类繁多,但很多都与情绪状态有关。因此,通过分析面部表情来识别各种心理障碍是一种具有广泛应用前景的方法。我组希望通过本研究,为心理障碍的自动识别提供新的思路和方法。

未来我组将继续努力优化该面部表情系统,提高其在抑郁症识别方面的准确率和泛化能力,并积极推动其在临床实践中的应用。同时,我组也期待该系统能够在其他心理障碍的识别方面发挥更大的作用,为患者带来更好的治疗和关怀。

参考文献:

[1]郑伟鹏. 基于深度学习的人脸表情识别方法研究[D].广西师范学,2022.

[2]吴世豪. 基于深度学习的人脸表情识别研究[D].华南理工大学,2021.

[3]赵艳. 基于深度学习的表情识别研究[D].重庆邮电大学,2016.

项目基金:2023年度大学生创新创业训练计划资助(项目编号:S202310144036)

沈阳理工大学大学生创新创业计划项目资助410381200204265519