当前位置: 首页 > article >正文

如何训练表情识别情绪识别数据集 YOLO 格式数据集,覆盖 9 种面部表情:Angry(愤怒)、 Happy(快乐)、 Sad(悲伤)、 Surprised(惊讶)、 Fear(恐

智慧-表情识别情绪识别的 YOLO 格式数据集共包含约 70,000 张图像覆盖 9 种面部表情Angry愤怒、 Happy快乐、 Sad悲伤、 Surprised惊讶、 Fear恐惧、 Disgust厌恶Contempt轻蔑、 Natural中性、 Sleepy困倦每张图像均配有与 YOLO 训练流程兼容的 .txt 标签文件标签中包含目标类别与边界框位置信息可直接用于模型训练与评估支持面部表情的检测与分类一体化任务。数据大小约3.6GB 大规模面部表情检测数据集 (YOLO 格式) —— 技术解决方案与训练指南一、数据集概览表项目维度详细描述数据集名称Large-Scale Facial Expression Detection Dataset (YOLO Format)图像总量约 70,000 张(覆盖多姿态、多光照、多年龄段)数据体积约3.6 GB(压缩后)解压后视分辨率而定标注格式YOLO 格式(class_id x_center y_center width height)任务类型人脸检测 表情分类(一体化端到端训练)适用模型YOLOv5, YOLOv8, YOLOv10, YOLOv11, YOLOv12 等文件结构images/(存放.jpg/.png),labels/(存放对应的.txt)应用场景人机交互、心理分析、驾驶疲劳监测、客服质量评估、安防监控二、类别映射表 (Class Mapping)在训练配置文件中必须严格按照以下顺序定义类别名称确保class_id与标签文件一致。ID英文标签 (Label)中文含义典型特征描述0Angry愤怒眉毛下压嘴角向下或紧绷眼神锐利1Happy快乐嘴角上扬眼角皱纹鱼尾纹脸颊隆起2Sad悲伤嘴角下垂眉毛内角上扬眼神黯淡3Surprised惊讶眼睛睁大眉毛高挑嘴巴微张呈O型4Fear恐惧眼睛睁大且紧张眉毛聚拢并上扬嘴唇拉伸5Disgust厌恶鼻子皱起上唇提升眉毛下压6Contempt轻蔑单侧嘴角上扬不对称眼神斜视7Natural中性面部肌肉放松无明显情绪波动8Sleepy困倦眼睑下垂眨眼频繁打哈欠迹象⚠️注意YOLO 标签文件中的数字0-8必须严格对应上述顺序。三、目录结构规范表为了直接运行训练代码请确保你的数据集目录结构如下dataset_root/ ├── images/ │ ├── train/ # 约 56,000 张 (80%) │ ├── val/ # 约 7,000 张 (10%) │ └── test/ # 约 7,000 张 (10%) ├── labels/ │ ├── train/ # 对应的 .txt 文件 │ ├── val/ │ └── test/ └── data.yaml # 数据集配置文件 (需创建)data.yaml配置文件内容示例# dataset_root/data.yamlpath:./dataset_root# 数据集根目录train:images/train# 训练集图片相对路径val:images/val# 验证集图片相对路径test:images/test# 测试集图片相对路径# 9 种表情类别names:0:Angry1:Happy2:Sad3:Surprised4:Fear5:Disgust6:Contempt7:Natural8:Sleepy四、YOLOv8 训练代码 (Python 脚本)以下代码使用ultralytics库支持自动下载预训练权重、数据增强、训练监控及结果导出。1. 环境准备pipinstallultralytics opencv-python matplotlib seaborn2. 完整训练脚本 (train_expression.py)fromultralyticsimportYOLOimportosimportyamldeftrain_facial_expression():# 配置区域 DATA_YAML_PATHdataset_root/data.yaml# 数据集配置文件路径MODEL_TYPEyolov8n.pt# 模型版本n/s/m/l/x (n最快x最准)EPOCHS100# 训练轮数BATCH_SIZE32# 批次大小 (根据显存调整7万张图建议32-64)IMG_SIZE640# 输入图像尺寸DEVICE0# 0 代表GPU, cpu 代表CPUPROJECT_NAMEexpression_detection_run# 项目保存文件夹名# print(f 开始加载模型:{MODEL_TYPE})# 加载预训练模型 (推荐从COCO人脸检测权重迁移或直接从头训练)# 如果有专门的人脸预训练权重可替换为 yolov8n-face.ptmodelYOLO(MODEL_TYPE)print(f 数据集配置:{DATA_YAML_PATH})ifnotos.path.exists(DATA_YAML_PATH):raiseFileNotFoundError(f未找到数据集配置文件:{DATA_YAML_PATH}, 请先创建 data.yaml)print(f⚙️ 开始训练 (Epochs:{EPOCHS}, Batch:{BATCH_SIZE}, Image Size:{IMG_SIZE}))# 执行训练resultsmodel.train(dataDATA_YAML_PATH,epochsEPOCHS,batchBATCH_SIZE,imgszIMG_SIZE,deviceDEVICE,projectPROJECT_NAME,nameexp_9classes,exist_okTrue,# 覆盖同名实验pretrainedTrue,# 使用预训练权重optimizerauto,# 自动选择优化器verboseTrue,# 详细日志plotsTrue,# 生成训练曲线图saveTrue,# 保存检查点save_period10,# 每10轮保存一次ampTrue,# 开启混合精度训练 (加速)patience20# 早停机制 (20轮无提升则停止))print(✅ 训练完成)print(f 最佳模型路径:{results.best})print(f 最后模型路径:{results.last})# 验证与推理测试 print(\n 开始在验证集上进行评估...)metricsmodel.val()# 自动使用训练时的最佳权重和验证集print(fmAP50:{metrics.box.map50:.4f})print(fmAP50-95:{metrics.box.map:.4f})# 简单推理测试 (可选)# print(\n️ 进行单张图片推理测试...)# results_pred model.predict(sourcedataset_root/images/val/00001.jpg, conf0.25, saveTrue)# print(推理结果已保存至 runs/detect/predict)if__name____main__:try:train_facial_expression()exceptExceptionase:print(f❌ 训练过程中发生错误:{e})五、训练策略与建议表针对 70,000 张图片和 9 类表情特别是Contempt和Sleepy这种较难识别的类别建议采用以下策略策略维度建议方案原因说明模型选择YOLOv8m或YOLOv8l7万数据量较大n/s 模型可能容量不足难以区分细微表情差异如 Fear vs Surprised。输入尺寸640或800表情特征如嘴角微动、眼神需要较高分辨率才能捕捉建议尝试imgsz800。数据增强Mosaic Mixup默认开启。对于表情识别增加HSV色彩抖动有助于适应不同光照下的肤色。类别不平衡Class WeightsContempt(轻蔑) 和Sleepy(困倦) 样本可能较少。若训练中发现这两类 Recall 低可在data.yaml中设置fl_gamma或手动调整损失权重。冻结层Freeze Backbone (前10轮)先冻结骨干网络训练检测头让人脸定位先收敛再解冻训练表情分类防止梯度冲突。评估指标mAP50-95Confusion Matrix重点关注混淆矩阵查看 “Happy” 是否常被误判为 “Natural”或 “Fear” 误判为 “Surprised”。六、预期训练结果表假设使用YOLOv8m在单卡 RTX 3090/4090 上训练指标项预期数值范围说明训练时长4 - 8 小时取决于 GPU 性能和 Batch SizemAP500.85 - 0.92人脸检测框的定位精度通常很高mAP50-950.65 - 0.75综合检测与分类的精度难点类别Contempt, Fear轻蔑和恐惧因特征微弱准确率可能略低于 Happy/Angry推理速度15 - 30 FPS在主流显卡上可实现实时视频流分析七、后续应用扩展建议实时情绪仪表盘结合 PyQt5 或 Web (Vue/Streamlit)实时显示摄像头中人物的情绪变化曲线。驾驶员监控系统 (DMS)重点利用Sleepy,Fear,Angry类别检测疲劳驾驶或路怒症并报警。客户服务分析在银行或柜台部署统计HappyvsAngryvsSad的比例评估服务质量。心理辅助工具记录用户长时间的情绪状态如持续Sad提供心理干预建议。

相关文章:

如何训练表情识别情绪识别数据集 YOLO 格式数据集,覆盖 9 种面部表情:Angry(愤怒)、 Happy(快乐)、 Sad(悲伤)、 Surprised(惊讶)、 Fear(恐

智慧-表情识别情绪识别的 YOLO 格式数据集, 共包含约 70,000 张图像,覆盖 9 种面部表情:Angry(愤怒)、 Happy(快乐)、 Sad(悲伤)、 Surprised(惊讶&#xff0…...

深度剖析AI专著生成工具,开启高效专业学术专著撰写新体验

学术专著写作困境与AI辅助工具介绍 写作学术专著不仅是对学术素养的考验,还是对心理韧性的挑战。与论文写作可以依赖团队合作不同,专著的创作往往需要研究者独立完成。从选题、框架设计到内容创作和修改,几乎每一个环节都需要研究者一个人完…...

金刚石切割片选购指南:从科创研磨看国产刀具的技术突围

在工业制造与精密加工领域,金刚石切割片素有“工业牙齿”之称。面对市场上琳琅满目的品牌,无论是追求锋利度的石材加工厂,还是要求精密切割的电子产品车间,都会陷入同一个困惑:到底什么牌子的金刚石切割片质量比较好&a…...

基于 MATLAB 的改进带记忆模拟退火算法求解 TSP 问题

基于matlab的改进的带记忆的模拟退火算法求解TSP问题,采用多普勒型降温曲线描述迭代过程,在传统算法的基础上增加记忆功能,可测试中国31/64/144以及att48城市的数据,也可自行输入数据进行测试,测试结果基本达到当前最优…...

如何基于页面设计测试点(测试实习经验总结)

在实际测试工作中,经常会遇到这样的情况: 需求文档不完整没有明确测试用例只能看到产品页面 这时候测试人员就需要 基于页面和业务逻辑自行设计测试点。 这里总结一个简单实用的方法: 拿到页面,先问自己 5 个问题。一、拿到页面先…...

前端如何渲染 Markdown 格式:从基础到实战全指南

前端如何渲染 Markdown 格式:从基础到实战全指南(2026 最新版) 在现代 Web 开发中,Markdown 已成为内容创作的标准格式:博客、文档、评论、AI 输出、README 等场景随处可见。前端渲染 Markdown 的核心目标是&#xff…...

YOLOv11涨点改进| CVPR2026 |全网创新首发、Conv卷积改进篇 | 引入MSInit轻量级多尺度卷积,捕获局部细节和结构纹理信息,助力YOLOv11目标检测,图像分割,图像分类高效涨点

一、本文介绍 🔥本文给大家介绍利用MSInit轻量级多尺度卷积模块改进YOLOv11网络模型,MSInit模块为特征提取阶段提供更加丰富的 多尺度和多频率特征表示。该模块通过多尺度卷积分支生成不同感受野的特征响应,使网络能够同时捕获 局部细节信息与全局结构信息,从而增强模型对…...

空间栅格化(体素化)及射线选择原理

对于一个空间的多个primitive,栅格化是计算这些primitive的AABB包围盒bbox,定义或者估计x y z方向分割为多少栅格m n k例如bbox的x方向长度xh12.6 m3则分割的每个小栅格x方向长度xdxh/m4.2对于图元i,假设它的包围盒i.bbox的最小角点i.bbox.m…...

AI Agent 概念

由于基础大模型存在固有的局限性,无法直接解决实际应用中的问题,需要通过开发(即扩展能力)来弥补这些缺陷。AI Agent 大模型 扩展能力(Tool Memory RAG) 三大核心知识点: Tool(工…...

信创CMS推荐:PageAdmin性价比高!2026国产化网站建设选型指南

在众多信创CMS选项中,PageAdmin CMS 以其高度灵活性、强大的扩展能力和持续的信创适配能力,成为中小企业、教育机构及政府事业单位的热门选择。它不仅在功能上媲美主流商业CMS,更在信创国产化进程中展现出独特的优势。 核心优势与信创亮点 1、…...

探秘 FX3U 中定位与气缸的 FB 块:无密码的知识宝库

FX3U的定位和气缸的FB块,没有密码,可以随便直接调用修改 。 写法新颖,思路清晰,是敩习FB块很好的范 例。在自动化控制的世界里,三菱 FX3U 系列 PLC 一直是众多工程师的得力助手。今天咱们就来聊聊 FX3U 中定位和气缸相…...

Lua 5.4 语法与核心知识学习总结

> **学习时间**: 2026 年 3 月 14 日 > **文档来源**: https://lua.org/docs.html > **参考版本**: Lua 5.4 > **参考书籍**: 《Programming in Lua》(第一版) - Roberto Ierusalimschy---## 一、Lua 概述### 1.1 什么是 LuaLua 是一种**轻量、可嵌入、多范式**…...

【LangChain专栏】 Retrieval 入门:RAG核心原理与文档加载全解析

目录 引言 一、RAG与Retrieval模块核心认知 1.1 大模型幻觉与RAG的解决方案 1.2 RAG的核心优势与局限性 1.3 LangChain Retrieval完整流程拆解 二、Retrieval第一步:文档加载器(Document Loaders) 2.1 文档加载器的核心设计思想 2.2 主…...

【解决】RESP.app GUI for Redis 连接不上redis服务器

我的情况是:linux的防火墙端口没有开启可以使用 firewall-cmd --zonepublic --list-ports 查询开放了哪些防火墙端口 比如我的redis是使用6379端口。则我需要开放6379/tcp 操作如下: firewall-cmd --add-port6379/tcp --permanent firewall-cmd --reload…...

2026年塑料托盘粉碎机实力榜:TOP3厂家谁更胜一筹?

在再生资源加工领域,塑料托盘粉碎机作为核心设备,其性能直接影响企业产能与成本控制。据行业数据显示,2025年国内塑料回收市场规模突破1200亿元,但设备能耗高、故障率高、智能化不足等问题仍困扰超60%的从业者。本文基于技术参数、…...

Playwright添加 Trace 录制方法

Playwright添加 Trace 录制方法举例1、Trace 文件使用说明录制生成的 .zip 包可通过 Playwright CLI 查看:bashplaywright show-trace basic_test_trace.zip该命令会打开可视化界面,可逐步骤查看页面操作、网络请求、DOM 状态、截图等,便于调…...

安装配置 VMware 虚拟机VMware Workstation

第一章下载VMware Workstation并进行向导安装第二章项目实施 安装与配置虚拟机1)双击桌面上生成的虚拟机快捷图标,在弹出的如图 1-1 所示的界面中,选择“将 VMwareWorkstation 17 用于个人用途”后单击“继续”按钮。图1-1 许可证密钥验证界…...

【网络】6.UDP和TCP原理

目录 UDP 和 TCP 协议原理详解 一、UDP 协议 1. 通信识别 2. UDP 报头结构 3. 报头分离与分用 4. UDP 特点 5. 缓冲区 6. 报文大小限制 二、报文在内核中的管理 1. 读取与调度 2. 报文管理结构:struct sk_buff 三、TCP 协议 1. 交付与分离 2. TCP 报头…...

26.3 新旅程

本人是一名信息安全专业的大四学生,目前正在全力准备考研复试和毕业设计。 回想大一刚开始接触C语言时,那时候对计算机的了解非常浅,学得很皮毛,基础也不扎实。后来学习数据结构时,由于前期C语言掌握得不够好&#xf…...

基于卷积神经网络模型的图像分类

一.回归任务与分类任务输出的区别从图像上看,回归是将各个预测点回归拟合一条合适的,loss最小的直线或者曲线;分类是将各个不同种类的数据通过一定的分类划分方法,划分为一类或者几类;从向量上看,回归的向量…...

AI时代,最珍贵的能力从不是会用AI,而是这一种

罗振宇与尹烨在一次对话节目中,曾抛出一个直击人心的问题:AI浪潮席卷而来,人人都在焦虑被替代,到底什么能力,才是人生最坚实的底气? 有人说,是驾驭AI的能力,毕竟工具迭代太快&#…...

MYSQL order by , group by练习

一:MYSQL执行顺序 SQL 语句的逻辑处理顺序如下所示。每个步骤都会生成一个虚拟表,作为下一步的输入,直到最终返回结果给客户端-1-5。 执行顺序子句作用描述1FROM / JOIN确定数据源,对指定的表执行笛卡尔积,生成初始的…...

个人博客地址自测试

1...

超实用机器视觉框架:VS2019 一键编译,开启视觉检测新旅程

机器视觉框架源码vs2019可以直接编译 应用于视觉检测 AOI视觉检测 机械手定位 点胶 插件 激光切割 视觉螺丝 视觉贴合 激光焊接机 视觉裁板仅供学习使用,不提供技术,想所有功能都…...

SEO Machine:解锁高效的SEO内容创作之旅!

SEO Machine:提升内容创造与优化的利器 在当今网络环境中,优质的SEO内容不仅是吸引流量的关键,也是品牌形象和市场竞争力的重要一环。为满足商业需求,SEO Machine应运而生。这是一个专为长格式、SEO优化博客内容创造而设计的工作空间,旨在帮助用户更好地研究、撰写、分析…...

【第三十六周】论文阅读02

文章目录摘要Abstract一、《Nougat: Neural Optical Understanding for Academic Documents》1. 摘要2. 介绍3. 相关工作4. 模型4.1 设置4.2 数据增强5. 数据集5.1 页面拆分5.2 真实标注伪影6. 核心贡献总结二、《A Survey of Token Compression for Efficient Multimodal Larg…...

从零开始写一个微信小程序:完整代码实战指南(入门篇)

引言 在移动互联网时代,微信小程序以其“即用即走”、开发成本低、流量获取易等优势,成为开发者必须掌握的技能之一。本文将带你从零开始,不讲废话,只写代码,完成你的第一个微信小程序。我们将从环境搭建开始&#xf…...

从命令行到认知时代:GitHub 指令使用与自动化工作流深度实践

前言在软件开发的历史中,很少有工具像Git这样深刻地改变了我们协作的方式,也很少有平台像GitHub这样,将代码托管变成了一个集成的社交化开发中心。对于许多开发者而言,与GitHub的交互长期处于一种“分裂”的状态:使用G…...

13.jmeter性能测试高并发及高频率弱压力及持续高并发

高并发同一时间有大量请求或用户访问系统,比如春运抢火车票,抢演唱会门票高并发测试是为了发现系统瓶颈,保证上线稳定,了解系统的最大承载量。同步定时器实现高并发同步定时器实现高并发可测试瞬间高负载,比如秒杀/抢购…...

双馈风电机组并网仿真建模:四机九节点系统中的虚拟惯量与下垂控制技术,超速减载与桨距角控制调频策...

双馈风电机组并网matlab/simulink仿真建模,四机两区域/三机九节点系统,虚拟惯量下垂控制/超速减载/桨距角控制调频,风储联合调频,低电压穿越故障等双馈风电机组并网后的动态特性直接影响电网稳定性。咱们直接上Simulink撸个三机九…...