面部表情识别(Pytorch):人脸检测模型+面部表情识别分类模型
目录
- 0 相关资料
- 1 基于人脸检测+面部表情分类识别方法
- 2 项目安装
- 2.1 平台与镜像
- 2.2 项目下载
- 2.3 模型下载
- 2.4 上传待测试图片
- 2.5 项目安装
- 3 demo测试
0 相关资料
面部表情识别2:Pytorch实现表情识别(含表情识别数据集和训练代码):https://blog.csdn.net/guyuealian/article/details/129505205
b站视频:https://www.bilibili.com/video/BV1xm4y1p7H3
1 基于人脸检测+面部表情分类识别方法
项目源码:https://github.com/Whiffe/PyTorch-Facial-Expression-Recognition
面部表情识别由两部分组成:人脸检测与表情识别分类
人脸检测:https://github.com/Linzaer/Ultra-Light-Fast-Generic-Face-Detector-1MB
表情识别分类: resnet18,resnet34,resnet50, mobilenet_v2以及googlenet等常见的深度学习模型
2 项目安装
2.1 平台与镜像
我是实用的AutoDL平台
镜像选择:
PyTorch 1.7.0
Python 3.8(ubuntu18.04)
Cuda 11.0

2.2 项目下载
项目下载:
git clone https://github.com/Whiffe/PyTorch-Facial-Expression-Recognition.git
如果网速问题无法下载,我已经同步到码云上(推荐)
git clone https://gitee.com/YFwinston/PyTorch-Facial-Expression-Recognition.git
2.3 模型下载
模型权重下载(latest-model-099-94.7200.pth):https://download.csdn.net/download/WhiffeYF/88196455
将下载的模型放在:
PyTorch-Facial-Expression-Recognition/data/pretrained/mobilenet_v2_1.0_CrossEntropyLoss_20230313090258/model

模型权重下载(rfb-face-mask.pth): https://download.csdn.net/download/WhiffeYF/88196487
将下载的模型放在:
PyTorch-Facial-Expression-Recognition/libs/light_detector/data/pretrained/pth

2.4 上传待测试图片
在该目录下,上传待检测图片:
PyTorch-Facial-Expression-Recognition/data/test_image

2.5 项目安装
在 PyTorch-Facial-Expression-Recognition 目录下执行:
pip install -r requirements.txt
3 demo测试
python demo.py --image_dir data/test_image --model_file data/pretrained/mobilenet_v2_1.0_CrossEntropyLoss_20230313090258/model/latest_model_099_94.7200.pth --out_dir output/


检测结果如下:










相关文章:
面部表情识别(Pytorch):人脸检测模型+面部表情识别分类模型
目录 0 相关资料1 基于人脸检测面部表情分类识别方法2 项目安装2.1 平台与镜像2.2 项目下载2.3 模型下载2.4 上传待测试图片2.5 项目安装 3 demo测试 0 相关资料 面部表情识别2:Pytorch实现表情识别(含表情识别数据集和训练代码):https://blog.csdn.net…...
外卖点餐小程序开源源码——支持扫码点餐
一套支持店内扫码点餐、外卖点餐配送于一体的餐饮系统,支持商家创建优惠券,支持商家自定义打印机功能,支持商家财务管理,支持商户菜品管理,支持菜品自定义分类,支持商家招募骑手入驻功能。系统基于thinkphp…...
十分钟掌握使用 SolidJS 构建全栈 CRUD 应用程序
我们可以开始讨论 SolidJS,说它比React更好,但没有必要做这种比较。SolidJS只是众多前端框架之一,旨在在Web上快速创建数据驱动。那么,我们为什么要突出这个新孩子呢? 首先,我们不能忽视SolidJS不使用虚拟…...
LabVIEW开发多材料摩擦电测量控制系统
LabVIEW开发多材料摩擦电测量控制系统 摩擦电效应是两个物体摩擦在一起,电荷从一个物体转移到另一个物体的现象,从而导致两个物体携带相等和相反的电荷。接触和充电是主导该过程的两个关键因素。当静电荷累积到一定水平时,可能会出现放电现象…...
【Linux】网络基础1
文章目录 网络基础11. 计算机网络背景1.1 网络发展 2. 认识协议2.1 网络协议2.2 OSI七层模型2.3 TCP/IP五层(或四层)模型 3. 网络传输基本流程3. 1 数据报封装和分用 4. 网络中的地址管理4.1 认识IP地址 5. 认识MAC地址 网络基础1 1. 计算机网络背景 1…...
HTML - Javascript - 原生的JS HTTP请求:实用主义的一篇文章
HTML - Javascript - 原生的JS HTTP请求:实用主义的一篇文章 前言 虽然现在使用JQuery等可以做到很方便的HTTP请求,但是这样做毕竟要引入一些JS文件。 如果想使用原生的JS进行HTTP网络请求应该怎样呢?可以使用XMLHttpRequest。 使用方法 …...
Intellij IDEA运行报Command line is too long的解决办法
想哭,vue前端运行起来,对应的后端也得起服务。 后端出的这个bug,下面的博客写的第二种方法,完整截图是下面这个。 Intellij IDEA运行报Command line is too long的解决办法 - 知乎 (zh…...
信号槽传输过程中指针所指对象的生命周期
在子线程中的一个槽函数,当读取到dxf文件完成后,结果通过在该槽函数中的 dx_data* pDxfData 指针变量读取。 然后通过QVariant封装该指针变量。发送到主线程中。 void qcWorker::slotReadDxfFile(QString dir) {bool bRtn{ false }; //定义一个局部指针…...
c++ 递归锁的使用
非递归锁 同一个线程里,在锁未释放的情况下反复加锁,会导致死锁。 示例 #include <iostream> #include <mutex> #include <thread> #include <unistd.h> using namespace std;std::mutex m_mutex;void Func() {m_mutex.lock(…...
Oracle TDE wallet
1. 钱夹密码千万不能忘记,这也是使用TDE 需要承担的风险。 2. 只要将wallet cwallet.sso 拷贝过去,加密没有意义! 钱夹的备份 正如上述,已经加密过的表列或者表空间,钱夹必须打开才能够查询到里面的数据。如果钱夹丢…...
多模态学习
一、目标 三、多模态核心任务 题目:...
Android学习之路(2) 文本设置
Android学习之路(1) 文本 一、设置文本内容 设置文本内容的两种方式: 一种是在XML文件中通过属性android:text设置文本代码如下 <TextViewandroid:id"id/tv_hello"android:layout_width"wrap_content"android:layout_height"wrap_c…...
手写springboot
前言 首先确定springboot在spring基础上主要做了哪些改动:内嵌tomcatspi技术动态加载 一、基本实现 1. 建一个工程目录结构如下: springboot: 源码实现逻辑 user : 业务系统2.springboot工程项目构建 1. pom依赖如下 <dependencies>…...
报错Uncaught (in promise) Error: Manifest request to...
在使用nuxt框架时,出现如下报错: 解决方案: 不要打开两个以上的开发者工具更换nuxt的端口号 参考资料:https://github.com/nuxt/nuxt.js/issues/6202...
微信私域更好玩了
之前分享过,“小绿书”“公众号文章转音频”等内测中或悄悄已升级的功能。 其实,微信还在内测很多新功能,只是没公开 今天,小编又发现新升级 就是『附近』功能 增加了一个本地生活的入口,这里面是短视频和图文 展示…...
基于ant-design的a-modal自定义vue拖拽指令
写一个dragDialog.js 在main.js中引入 import ‘./core/directives/dragDialog.js’ // 让 dialog 支持鼠标拖动 import Vue from vueVue.directive(DragDialog, {update: function (el, binding, vnode) {if (!binding.value || !binding.value.reset) returnconst dialog e…...
【ES】笔记-模板字符串(template string)是增强版的字符串`${expresions}`
模板字符串 传统的 JavaScript 语言,输出模板通常是这样写的(下面使用了 jQuery 的方法)。 $(#result).append(There are <b> basket.count </b> items in your basket, <em> basket.onSale </em> are on sal…...
利用 OLE 对象漏洞的 HWP 恶意文件浮出水面
ASEC 分析人员发现了一个利用 OLE 对象的恶意 HWP 文件,尽管其使用了 2020 年就被识别的恶意 URL,但仍然使用了 Flash 漏洞(CVE-2018-15982),需要用户谨慎对待。 打开 HWP 文件时会在 %TEMP%文件夹中生成如下文件。攻…...
【CSS】倾斜按钮
效果 index.html <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"/><meta http-equiv"X-UA-Compatible" content"IEedge"/><meta name"viewport" content"widthdevice-…...
js 正则表达式
js 正则表达式 http://tool.oschina.net/regex https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Guide/Regular_Expressions 11 22...
揭秘MySQL索引分类致
1. 架构背景与演进动力 1.1 从单体到碎片化:.NET 的开源征程 在.NET Framework 时代,构建系统主要围绕 Windows 操作系统紧密集成,采用传统的封闭式开发模式。然而,随着.NET Core 的推出,微软开启了彻底的开源与跨平台…...
SITS2026平台重构全记录:从单体Java商城到LLM+RAG驱动的AI原生电商,6周完成核心链路迁移并提升GMV 42%
第一章:SITS2026案例:AI原生电商平台实践 2026奇点智能技术大会(https://ml-summit.org) SITS2026是面向下一代电商基础设施的AI原生平台原型,由阿里云与浙江大学联合实验室在2024年Q4启动构建,于2025年Q2完成全链路灰度验证。该…...
保姆级教程:在Ubuntu 20.04上从零配置MoveIt!控制Franka Panda机械臂(含libfranka避坑指南)
保姆级教程:在Ubuntu 20.04上从零配置MoveIt!控制Franka Panda机械臂(含libfranka避坑指南) 当第一次看到Franka Panda机械臂优雅地完成抓取动作时,那种精密机械与智能算法完美融合的震撼感,至今记忆犹新。作为一款广泛…...
2.5D转真人引擎数字人构建:Anything to RealCharacters + LivePortrait联动教程
2.5D转真人引擎数字人构建:Anything to RealCharacters LivePortrait联动教程 1. 什么是2.5D转真人?为什么需要它? 你有没有试过——画了一个精致的二次元角色,或者用AI生成了一张动漫风格的立绘,但想把它变成能用在…...
QTableWidget 表格组件肇
7.1 初识三维模型 7.1.1 三维模型的数据载体 随着计算机图形技术的发展,我们或多或少都会见过或者听说过三维模型。笔者始终记得小时候第一次在电视上看到三维动画《变形金刚:超能勇士》的震撼感受;而现在我们已经可以在手机上玩三维游戏《王…...
Vivado IP核实战:复数浮点乘法器的FPGA实现与精度分析
1. 复数浮点乘法器的工程背景与核心挑战 在数字信号处理领域,复数浮点运算堪称算法实现的"心脏"。特别是在通信系统的信道均衡、雷达信号处理等场景中,每秒需要完成数百万次复数乘法运算。传统DSP处理器受限于顺序执行架构,难以满足…...
AI编程实战:从零到一搭建全栈项目概
1. 核心概念 在 Antigravity 中,技能系统分为两层: Skills (全局库):实际的代码、脚本和指南,存储在系统级目录(如 ~/.gemini/antigravity/skills)。它们是“能力”的本体。 Workflows (项目级):…...
极域电子教室破解终极指南:如何用JiYuTrainer重获电脑控制权
极域电子教室破解终极指南:如何用JiYuTrainer重获电脑控制权 【免费下载链接】JiYuTrainer 极域电子教室防控制软件, StudenMain.exe 破解 项目地址: https://gitcode.com/gh_mirrors/ji/JiYuTrainer 还在为课堂上的全屏广播而苦恼吗?当老师开启极…...
Debugging ‘subscript out of bounds‘ Errors in R: A Practical Guide
1. 理解"subscript out of bounds"错误的本质 当你第一次在R中看到"subscript out of bounds"这个错误时,可能会感到一头雾水。这个错误直译过来就是"下标越界",简单来说就是你试图访问的数据位置根本不存在。想象一下你去…...
Windows安卓开发终极指南:一键安装ADB Fastboot驱动工具
Windows安卓开发终极指南:一键安装ADB Fastboot驱动工具 【免费下载链接】Latest-adb-fastboot-installer-for-windows A Simple Android Driver installer tool for windows (Always installs the latest version) 项目地址: https://gitcode.com/gh_mirrors/la/…...
