基于卷积神经网络的人脸表情识别(JAFFE篇)

一.前言

    人脸表情识别依然是计算机视觉中的研究重点,那就意味着它还有水文章的可能性。本专题将专门讨论各种表情识别的研究方法,当然我们从最简单的单一卷积网络开始。本文中的代码直接复制到电脑端(python)或者服务器(ipython)上都可以直接运行(ipython按顺序复制即可),如果有报错只需修改相应的版本或者留言交流。

软硬件配置介绍:

1.win10/11操作系统

2.python3.7以上

3.tensorflow2.4以上版本(2.0其它版本需要微调)

4.内存12G,显卡4G以上(没有独显倒是也能跑...)

dac4a00aea8d41a692bf2b11fdd54eeb.jpeg5cee12935ca74d6f8407b723c56dd358.jpeg1960950ff7af439b9e30f38e55cd0917.jpeg 

 (这个可爱的妹子就是JAFFE数据集中的图片)

二.数据预处理

    在有些论文中,对于数据集的预处理不仅仅是导入之后做归一化处理。而是做特定的裁剪后只保留脸部,在这里我们不做特定的脸部裁剪(留到后续的文章)。JAFFE数据集的下载方式有很多种,你可以去其它的博客或者kaggle中白嫖。

    我这里下载的JAFFE是以本地图片的形式保存的,如果你下载的是csv等其它格式,可以参考后续的博客。

import os
import cv2
import numpy as np
import matplotlib.pyplot as plt
data_path = '../jaffe/'
data_dir_list = os.listdir(data_path)

# img_rows = 256
# img_cols = 256
# num_channel = 1

img_data_list = []
for dataset in data_dir_list:
    img_list = os.listdir(data_path+'/'+dataset)
    print('装载文件来自于文件'+'{}\n'.format(dataset))
    for img in img_list:
        input_img = cv2.imread(data_path+'/'+dataset+'/'+img)
        input_img_resize = cv2.resize(input_img, (128, 128))
        img_data_list.append(input_img_resize)

img_data = np.array(img_data_list)
img_data = img_data.astype('float3
  • 43
    点赞
  • 81
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

物理系的计算机选手

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值