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

毕业设计 深度学习口罩佩戴检测系统

简介2020新冠爆发以来疫情牵动着全国人民的心一线医护工作者在最前线抗击疫情的同时我们也可以看到很多科技行业和人工智能领域的从业者也在贡献着他们的力量。近些天来旷视、商汤、海康、百度都多家科技公司研发出了带有AI人脸检测算法的红外测温、口罩佩戴检测等设备依图、阿里也研发出了通过深度学习来自动诊断新冠肺炎的医疗算法。可以说各行各业的从业者都在为早日战胜这场疫情贡献着力量。图像口罩识别绝对是一个能亮瞎你导师和同学的毕业设计。项目运行效果毕业设计 深度学习口罩佩戴检测系统详细项目介绍及项目分享大家可以在日常聊天工具搜“算法旅行家”效果展示不多说 先上效果实现方法模型介绍在深度学习时代之前人脸检测一般采用传统的、基于手动设计特征的方法其中最知名的莫过于Viola-Jones算法至今部分手机和数码相机内置的人脸检测算法仍旧采用Viola-Jones算法。然而随着深度学习技术的蓬勃发展基于深度学习的人脸检测算法逐步取代了传统的计算机视觉算法。在人脸检测最常用的数据集——WIDER Face数据集的评估结果上来看使用深度学习的模型在准确率和召回率上极大的超过了传统算法。下图的青线是Viola-Jones的Precision-Recall图。下图是众多基于深度学习的人脸检测算法的性能评估PR曲线。可以看到基于深度学习的人脸检测算法的性能大幅超过了VJ算法曲线越靠右越好。近两年来人脸检测算法在WIDER Face的简单测试集easy 部分上可以达到95%召回率下准确率也高达90%作为对比VJ算法在40%召回率下准确率只有75%左右。其实基于深度学习的人脸检测算法多数都是基于深度学习目标检测算法进行的改进或者说是把通用的目标检测模型为适应人脸检测任务而进行的特定配置。而众多的目标检测模型Faster RCNN、SSD、YOLO中人脸检测算法最常用的是SSD算法例如知名的SSH模型、S3FD模型、RetinaFace算法都是受SSD算法的启发或者基于SSD进行的任务定制化改进 例如将定位层提到更靠前的位置Anchor大小调整、Anchor标签分配规则的调整在SSD基础上加入FPN等。在我个人看来SSD是最优雅、简洁的目标检测模型因此我们实现的人脸口罩检测模型也是采用SSD的思想限于篇幅原因本文不会详细介绍SSD的原理只会进行简单的模型配置介绍。在本项目中我们使用的是SSD架构的人脸检测算法相比于普通的人脸检测模型只有人脸一个类别而人脸口罩检测只不过是增加了一个类别变成戴口罩人脸和不戴口罩的人脸两个类别而已。我们开源的模型是一个非常小的模型输入是260x260大小主干网络只有8层有五个定位和分类层一共只有28个卷积层。而每个卷积层的通道数是32、64、128这三种所有这个模型总的参数量只有101.5万个参数。下图是网络的结构图。其中上面八个卷积层是主干网络也就是特征提取层下面20层是定位和分类层注意为了方便显示我们没有画出BN层。训练目标检测模型最重要的合理的设置anchor的大小和宽高比笔者个人在做项目时一般会统计数据集的目标物体的宽高比和大小来设置anchor的大小和宽高比。例如在我们标注的口罩人脸数据集上我们读取了所有人脸的标注信息并计算每个人脸高度与宽度的比值统计得到高度与宽比的分布直方图如下因为人脸的一般是长方形的而很多图片是比较宽的例如16:9的图片人脸的宽度和高度归一化后有很多图片的高度是宽度的2倍甚至更大。从上图也可以看出归一化后的人脸高宽比集中在1~2.5之间。所以根据数据的分布我们将五个定位层的anchor的宽高比统一设置为10.62, 0.42。转换为高宽比也就是约11.612.4:1五个定位层的配置信息如下表所示笔者使用基于Keras实现的目标检测微框架训练的人脸口罩检测模型为了避免一些网友提到的使用手挡住嘴巴就会欺骗部分口罩检测系统的情况我们在数据集中加入了部分嘴巴被手捂住的数据另外我们还在训练的过程中随机的往嘴巴部分粘贴一些其他物体的图片从而避免模型认为只要露出嘴巴的就是没戴口罩没露出嘴巴的就是带口罩这个问题通过这两个规避方法我们很好的解决了这个问题大家可以在aizoo.com体验我们的模型效果。后处理部分主要就是非最大抑制NMS我们使用了单类的NMS也就是戴口罩人脸和不戴口罩人脸两个类别一起做NMS从而提高速度。获取数据集人脸口罩数据集下载下载人脸口罩数据集的目的是利用OpenCV进行模型训练这里采用口罩数据集的正负比列为1:3即500张戴口罩的人脸图片和1500张不戴口罩的人脸图片。数据集获取联系博主获取解压之后将压缩包中的mask文件自行选择文件夹放置以便之后的操作。如下上面带口罩的人脸图像我们命名为正样本相反没带口罩的数据集合命名为负样本 如下由于数据集解压后样本图像命名是乱序的我们要进行重命名上面两幅图是已经处理好的 下面给出示例代码#对数据集重命名#coding:utf-8importos pathE:\\facemask\\mask\\have_mask#人脸口罩数据集正样本的路径filelistos.listdir(path)count1000#开始文件名1000.jpgforfileinfilelist:Olddiros.path.join(path,file)ifos.path.isdir(Olddir):continuefilenameos.path.splitext(file)[0]filetypeos.path.splitext(file)[1]Newdiros.path.join(path,str(count)filetype)os.rename(Olddir,Newdir)count1#对数据集重命名#coding:utf-8importos pathE:\\facemask\\mask\\no_mask#人脸口罩数据集的路径filelistos.listdir(path)count10000#开始文件名1000.jpgforfileinfilelist:Olddiros.path.join(path,file)ifos.path.isdir(Olddir):continuefilenameos.path.splitext(file)[0]filetypeos.path.splitext(file)[1]Newdiros.path.join(path,str(count)filetype)os.rename(Olddir,Newdir)count1最后项目运行效果毕业设计 深度学习口罩佩戴检测系统详细项目介绍及项目分享大家可以在日常聊天工具搜“算法旅行家”

相关文章:

毕业设计 深度学习口罩佩戴检测系统

简介 2020新冠爆发以来,疫情牵动着全国人民的心,一线医护工作者在最前线抗击疫情的同时,我们也可以看到很多科技行业和人工智能领域的从业者,也在贡献着他们的力量。近些天来,旷视、商汤、海康、百度都多家科技公司研…...

相机标定入门:别再混淆DLT、对极几何和PNP了,一文讲清区别与联系

相机标定入门:别再混淆DLT、对极几何和PNP了,一文讲清区别与联系 刚接触计算机视觉时,面对DLT、对极几何、PNP这些术语,就像走进了一个满是镜子的迷宫——每个概念都在反射其他概念的光芒,却让人看不清它们之间的真实关…...

又给老板省钱了[特殊字符]~

说实话,以前企业IT运维真的太折腾了!🥱海外设备一出故障,工程师就得立马打飞的跨国抢修,一趟差旅几万块花出去,还得耗上两三天,既费钱又耽误产能。✅自从用上Splashtop,直接开启办公…...

平台费用继续抬升之后跨境卖家如何判断哪些订单值得接

成本挤压下的订单抉择:跨境卖家的利润保卫战平台费用、物流成本、汇率波动……当一道道无形的“闸门”被抬高,原本宽阔的利润河道正逐渐变得狭窄。对于跨境卖家而言,每一个新订单的提示音,不再仅仅是收入的象征,更可能…...

别再复制粘贴了!手把手教你用C语言实现一个支持任意长度的CRC-8校验函数

从零构建通用CRC-8校验器:C语言实战指南 在嵌入式系统与通信协议开发中,数据完整性校验如同数字世界的"指纹识别"。当我们面对串口传输、文件校验或网络数据包处理时,CRC校验算法以其高效可靠的特性成为工程师的首选武器。本文将带…...

Highcharts 曲线图:深度解析与实战应用

Highcharts 曲线图:深度解析与实战应用 引言 Highcharts 是一个功能强大的图表库,允许用户轻松地在网页上创建交互式图表。其中,曲线图是一种非常受欢迎的图表类型,能够有效地展示数据随时间或其他连续变量的变化趋势。本文将深入解析 Highcharts 曲线图的特点、应用场景…...

别只盯着YOLO!用百元级OpenMV+STM32,5分钟搭建一个低成本运动追踪原型系统

百元级视觉方案实战:OpenMVSTM32运动追踪系统开发指南 当计算机视觉成为热门技术,许多初学者却被动辄数千元的GPU设备和复杂的深度学习框架劝退。其实,在嵌入式视觉领域,有一款仅需百元级的硬件——OpenMV,配合常见的S…...

Nacos客户端日志太吵?Spring Boot/Cloud项目里这样配置,瞬间清净

Nacos客户端日志优化实战:Spring Boot/Cloud项目静音指南 微服务架构下,Nacos作为配置中心和注册中心的核心组件,其客户端日志输出常常成为开发者调试时的"甜蜜负担"。想象一下这样的场景:你在IDEA中启动Spring Cloud服…...

工业物联通信升级方案:蓝牙对讲机如何打通“人、机、场”实时协同

在工业物联场景里,通信从来不是“可有可无”的配套能力,而是保障生产节奏、安全响应和协同效率的关键基础设施。过去很多企业依赖传统对讲系统,虽然满足了基本通话,但在复杂现场中仍面临明显短板:有线耳机束缚作业动作…...

独立站卖家必读:如何低成本申请毛里求斯专利翻译?保姆级教程

独立站卖家必读:如何低成本申请毛里求斯专利翻译?保姆级教程一、背景介绍及核心要点毛里求斯作为非洲与印度洋区域重要的贸易枢纽,其知识产权保护体系正日益受到跨境卖家的关注。对于独立站卖家而言,在毛里求斯进行专利布局&#…...

雷总发福利了!小米100万亿Token免费领,还没上车的速进!

搞AI、敲代码、或者平时爱折腾AI大模型的朋友注意了。 最近小米开源了自家的旗舰大模型 MiMo-V2.5 系列,不仅把支持100万上下文窗口的模型直接开源,还顺手整了个大活——推出了个叫“MiMo Orbit 百万亿 Token 创造者激励计划”的活动。 大白话翻译过来就…...

G-Helper:华硕笔记本的轻量级性能管家,告别Armoury Crate的臃肿体验

G-Helper:华硕笔记本的轻量级性能管家,告别Armoury Crate的臃肿体验 【免费下载链接】g-helper Lightweight Armoury Crate alternative for Asus laptops with nearly the same functionality. Works with ROG Zephyrus, Flow, TUF, Strix, Scar, ProAr…...

Ozon选品工具怎么选?一篇讲透主流工具优劣势

工具选对了,每天省下3小时;选错了,越用越累还不出单做Ozon选品,光靠手动翻热销榜,一天扒几十个品就耗尽精力。市面上选品工具五花八门,功能各有侧重。这篇文章不吹不黑,从新手视角横向对比目前主…...

智能体管理系统架构设计:从容器化到消息队列的工程实践

1. 项目概述:从开源项目标题看智能体管理的核心价值 最近在GitHub上看到一个挺有意思的项目,叫“stainlu/openclaw-managed-agents”。光看这个标题,就能嗅到一股浓浓的“智能体管理”和“自动化”的味道。作为一个在自动化运维和智能体开发领…...

压缩距离(NCD)原理及其在客户端机器学习的应用

1. 压缩距离(NCD)原理与技术背景1.1 压缩距离的核心思想压缩距离(Normalised Compression Distance, NCD)是一种基于数据压缩的相似性度量方法,其核心思想是利用压缩算法的特性来评估两个数据对象之间的相似程度。当我…...

Qt Creator配置ARM64开发环境避坑指南:从源码编译qmake到Kit设置

Qt Creator配置ARM64开发环境避坑指南:从源码编译qmake到Kit设置 在嵌入式开发领域,ARM64架构正逐渐成为主流选择。对于使用Qt框架的开发者来说,如何在Qt Creator中正确配置ARM64交叉编译环境,往往成为项目启动的第一道门槛。本文…...

DS3906数字电位器特性与应用全解析

1. DS3906数字电位器核心特性解析DS3906是Maxim Integrated公司推出的一款三通道非易失性数字电位器,采用伪对数响应曲线设计。与传统的线性数字电位器相比,这种特殊响应曲线使其在小步进调节场景中展现出独特优势。该器件内置EEPROM,可在断电…...

题解:洛谷 P13014 [GESP202506 五级] 最大公因数

本文分享的必刷题目是从蓝桥云课、洛谷、AcWing等知名刷题平台精心挑选而来,并结合各平台提供的算法标签和难度等级进行了系统分类。题目涵盖了从基础到进阶的多种算法和数据结构,旨在为不同阶段的编程学习者提供一条清晰、平稳的学习提升路径。 欢迎大…...

别再只当复位工具!深入STM32H7的IWDG窗口模式,实现更精准的故障检测

解锁STM32H7 IWDG窗口模式:从复位工具到智能监控策略的蜕变 在嵌入式系统开发中,看门狗定时器(WDT)常被视为最后的防线——当系统跑飞时触发复位。但STM32H7系列的独立看门狗(IWDG)提供的窗口模式,彻底颠覆了这一传统认知。想象一下&#xff…...

在多轮对话场景下体验taotoken路由策略对api调用稳定性的提升

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 在多轮对话场景下体验 Taotoken 路由策略对 API 调用稳定性的提升 效果展示类,分享在构建需要长时间会话的 AI 应用时&…...

LSI转型启示:从PowerPC到ARM架构的通信处理器战略演进

1. 从垂直整合到无晶圆厂:LSI的转型之路 在半导体这个行当里待久了,你会发现一个有趣的现象:那些能活下来并且活得不错的公司,往往不是技术最激进的,而是最能适应变化的。LSI(LSI Corporation,后…...

【优化求解】基于Sarsa强化学习的异构网络切换算法matlab仿真

✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、程序设计科研仿真。 🍎完整代码获取 定制创新 论文复现点击:Matlab科研工作室 👇 关注我领取海量matlab电子书和数学建模资料 &…...

LLM 可观测性工具选型评测:从成本到性能的五款工具实测对比

上个项目交付时,我们遇到一个诡异的问题:生产环境的 Agent 偶尔会输出完全错误的财务数据,但开发和测试环境复现不了。换了三个 prompt 版本,调了两次 temperature,还是查不到原因 —— 因为根本看不到模型"心里&…...

多温区烘胶台选型报告

报告编号: WH-TR-2026-001 编制单位: 苏州汶颢 日期: 2026年5月7日 引用格式建议: 苏州汶颢. 多温区烘胶台(WH-HP-02/03)选型报告[R]. 苏州, 2026.1. 选型背景与目的苏州汶颢为满足光刻工艺中对前烘、中烘、…...

2025届最火的六大AI论文网站实际效果

Ai论文网站排名(开题报告、文献综述、降aigc率、降重综合对比) TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 专为研究生以及科研人员所设计的AI开题报告工具,乃是基于大语言模型的智能写作辅…...

保姆级教程:用Docker Compose一键部署青龙面板,告别手动敲命令

青龙面板的现代化部署:Docker Compose全栈解决方案 青龙面板作为一款强大的定时任务管理工具,已经成为许多开发者和运维人员的得力助手。但传统的Docker run命令部署方式存在诸多不便——冗长的参数、难以维护的配置、缺乏版本控制等问题常常让新手望而却…...

VoltAgent/awesome-design-md集成qoder使用

我来帮你了解如何使用 design-md 技能。让我先检索相关的记忆信息。 让我再获取更多使用细节: 如何使用 design-md 技能 design-md 已经安装在你的 Qoder 技能系统中,包含 70 个真实产品的设计规范(如 Vercel、Stripe、Apple、Linear 等&…...

TMC2226的UART单线通信到底怎么玩?一个案例讲透从接线、寻址到StallGuard4调参

TMC2226单线UART通信实战:从菊花链拓扑到StallGuard4精准调参 在小型自动化设备开发中,如何用一根信号线同时控制四台步进电机并实现无传感器堵转检测?这正是TMC2226/TMC2209单线UART接口的独特价值。相比传统脉冲方向控制方案,这…...

不用打开相机也能玩转闪光灯:Android CameraManager的setTorchMode()手电筒功能详解

Android CameraManager手电筒模式深度解析:不启动相机也能玩转闪光灯 在移动应用开发中,闪光灯控制是一个常见但容易被忽视的功能点。传统认知里,要控制手机闪光灯必须先打开相机设备,配置复杂的预览会话——这种认知在Android Ca…...

别再混淆了!5分钟搞懂Linux里的TTY、PTS和PTY到底啥关系(附常用命令清单)

别再混淆了!5分钟搞懂Linux里的TTY、PTS和PTY到底啥关系(附常用命令清单) 第一次在Linux终端里敲who命令时,看到输出结果里的pts/0和tty1是不是一头雾水?更别提/dev/ptmx这种神秘路径了。别担心,今天我们就…...