Advertisement

人脸表情识别

阅读量:

应用表情识别

这个项目是我尝试应用从面部表情识别中学到的知识(https://www.coursera.org/learn/facial-expression-recognition-keras/home/welcome)

当然。我用从课程中学到的笔记和技巧来“准确”地描绘我的朋友、家人和最喜欢的电视剧中人物的面部表情。

说明:如果要使用此应用程序,请克隆文件(通过绿色代码按钮),将所需视频放入“videos”文件夹,然后更改camera.py文件中视频的路径。在包含“main.py”的文件夹中运行terminal/bash、cd并运行“python main.py”。

目标:建立一个机器学习应用程序,用于视频中的“方形”人脸,并识别该人脸创建的表情。

过程1:前面提到的Coursera课程包含了30000多个图像,我将这些图像用作训练模型的样本数据集。图像被分成训练集和数据集。
在这里插入图片描述

过程2:将数据拆分为训练集和测试集后,我根据图像包含的表达式将这些集拆分为7个文件夹。文件夹名称包含输出标签。
在这里插入图片描述

过程3:我用4层创建了卷积神经网络,明确地改变了整个网络中每一层(64、128和512)的过滤器数量。每个层都有一个BatchNormalization()、relu激活、2x2池大小和0.25退出。最后,在构建ConvNet层后,对模型进行展平。
在这里插入图片描述

过程4:然后每个ConvNet层用密集层连接起来。有3个连接层,以“softmax”输出层结束,因为输出应该是分类的。

过程4:汇编、培训和评估。该模型采用Adam优化器、分类交叉熵损失和精度记录进行编译。拟合模型的训练准确率为73%,验证(测试)准确率为66%。我曾考虑增加更多的时代,但为了时间,我决定增加25个时代。

过程5:保存模型、模型权重和JSON文件。我保存了模型,以防我想返回模型。然后在JSON文件中写出模型,以准备Flask应用程序。

过程6:创建烧瓶应用程序。为了创建Flask应用程序,我创建了一个model.py文件(从jupyter笔记本调用并存放模型)、一个camera.py文件(对视频的面部区域进行“快照”)和一个main.py文件(启动应用程序并从其他两个python文件中获取参数)。

完成:应用程序在调试后完成。遇到的一些错误包括错误的文件类型(主要使用mp4和png文件)、python文件的错误文件路径等。images来自Flask应用程序本身并用于本自述。

链接:https://pan.baidu.com/s/1eAv28hjH-QLxz51QgqBlyg
提取码:6pt2
复制这段内容后打开百度网盘手机App,操作更方便哦

全部评论 (0)

还没有任何评论哟~