# 表情识别
> 2019.12更新了仓库依赖。
## 简介
使用卷积神经网络构建整个系统,在尝试了Gabor、LBP等传统人脸特征提取方式基础上,深度模型效果显著。在FER2013、JAFFE和CK+三个表情识别数据集上进行模型评估。
## 环境部署
基于Python3和Keras2(TensorFlow后端),具体依赖安装如下(推荐使用conda或者venv虚拟环境)
- `git clone https://github.com/luanshiyinyang/ExpressionRecognition.git`
- `cd ExpressionRecognition`
- `pip install -r requirements.txt`
## 数据准备
数据集和预训练模型均已经上传到百度网盘,[链接](https://pan.baidu.com/s/1LFu52XTMBdsTSQjMIPYWnw)给出,提取密码为2pmd。
## 项目说明
1. 传统方法
- 数据预处理
- 图片降噪
- 人脸检测
- HAAR分类器检测(opencv)
- 特征工程
- 人脸特征提取
- LBP
- Gabor
- 分类器
- SVM
2. 深度方法
- 数据预处理
- 人脸检测
- HAAR分类器
- MTCNN(效果更好)
- 卷积神经网络
- 用于特征提取+分类
## 网络设计
使用经典的卷积神经网络,模型的构建主要参考2018年CVPR几篇论文以及谷歌的Going Deeper设计如下网络结构,输入层后加入(1,1)卷积层增加非线性表示且模型层次较浅,参数较少(大量参数集中在全连接层)。
![](./asset/CNN.png)
![](./asset/model.png)
## 模型训练
主要在FER2013、JAFFE、CK+上进行训练,JAFFE给出的是半身图因此做了人脸检测。最后在FER2013上Pub Test和Pri Test均达到67%左右准确率(该数据集爬虫采集存在标签错误、水印、动画图片等问题),JAFFE和CK+5折交叉验证均达到99%左右准确率(这两个数据集为实验室采集,较为准确标准)。
训练过程见train.ipynb文件
![](/asset/loss.png)
## 模型应用
与传统方法相比,卷积神经网络表现更好,使用该模型构建识别系统,提供GUI界面和摄像头实时检测(摄像必须保证补光足够)。预测时对一张图片进行水平翻转、偏转15度、平移等增广得到多个概率分布,将这些概率分布加权求和得到最后的概率分布,此时概率最大的作为标签。
注意,**GUI预测只显示最可能是人脸的那个表情,但是对所有检测到的人脸都会框定预测结果并在图片上标记,标记后的图片在results目录下**。
- GUI界面
- 运行scripts下的gui.py即可(图片来自百度,侵删。)
- 效果图
- ![](./asset/rst_gui.png)
- ![](./asset/rst_gui2.png)
- 实时检测
- 运行scripts下的recognition_camera.py即可
- 效果图(图片来自百度,侵删。)
- 演示不便
## 补充说明
具体项目代码、数据集、模型已经开源于我的Github,欢迎Star或者Fork。
没有合适的资源?快使用搜索试试~ 我知道了~
ExpressionRecognition-master_人脸识别_facerecognition_python人脸识别_CK+
共53个文件
png:16个
py:13个
jpg:12个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 171 浏览量
2021-10-04
02:19:06
上传
评论
收藏 17.37MB ZIP 举报
温馨提示
Python最简易的CNN人脸识别算法,自行下载fer2013,jaffe,ck+等人脸数据库进行识别
资源详情
资源评论
资源推荐
收起资源包目录
ExpressionRecognition-master.zip (53个子文件)
ExpressionRecognition-master
models
tips.txt 96B
dataset-cite.txt 863B
images
sad.png 16KB
neutral.png 12KB
happy.png 16KB
anger.png 14KB
fear.png 16KB
disgust.png 16KB
surprised.png 14KB
data
tips.txt 54B
test
happy1.jpeg 59KB
happy3.jpg 21KB
surprised2.jpeg 21KB
IMG_20190702_105444.jpg 1.86MB
fear1.jpg 149KB
happy4.jpg 136KB
zy_gray.png 2KB
sad1.jpg 21KB
happy5.jpg 1.16MB
happy6.jpg 6KB
anger1.jpg 25KB
disgust1.jpg 17KB
surprised1.jpg 25KB
neutral1.jpg 213KB
happy2.png 1.53MB
params
haarcascade_frontalface_alt.xml 898KB
demo.jpg 2KB
asset
model.png 59KB
rst_gui.png 179KB
Kuo_A_Compact_Deep_CVPR_2018_paper.pdf 549KB
CNN.png 446KB
loss.png 216KB
rst_gui2.png 1.07MB
fonts
simsun.ttc 17.37MB
results
rst_border.png 1.14MB
requirements.txt 93B
train_results
loss.png 216KB
.gitignore 67B
README.md 3KB
scripts
Gabor.py 10KB
gui.py 476B
utils.py 8KB
test.py 2KB
LBP.py 7KB
recognition_camera.py 3KB
recognition.py 3KB
ui
ui.py 8KB
preprocess.py 6KB
paper.py 2KB
model.py 4KB
visualize_training.py 1KB
ExpressionRecognition.ipynb 400KB
data.py 12KB
共 53 条
- 1
鹰忍
- 粉丝: 66
- 资源: 4707
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0