Python课程设计基于python的人脸识别佩戴口罩系统设计
wx供重浩:创享日记
对话框发送:python口罩
获取完整论文报告+源码源文件
1 研究背景与意义
新型冠状病毒展现出全球化流行和蔓延的趋势,这提醒我们:传染病防治在今后相当长时间内仍是疾病预测控制工作的重点。戴口罩是预防呼吸道传染病的重要防线,可以降低新型冠状病毒感染风险。口罩不仅可以防止病人喷射飞沫,降低飞沫量和喷射速度,还可以阻挡含病毒的飞沫核,防止佩戴者吸入。所以,戴口罩是日常必要的环节。为了他人安全和自身的安全,进出一些场合,人人都需要戴口罩。但最近天气炎热,人们戴口罩的自觉性不如提前了,在商场等公共场所,需要专门的人员去提醒顾客戴好口罩。因此,开发人脸口罩检测系统是非常有必要的,它能检测我们进入某些场所是否带口罩,跑起程序测试后,发现识别率高,也能适应不同环境。我这次的课程设计的目标是基于人脸识别实现人脸的”是否戴口罩“工作。
2系统功能分析设计
根据相关工作人员对人们是否佩戴口罩的检测的实际需求,该平台应该具有以下几项基本功能:
1:能够在给定图片上完成人脸加口罩的测试。
2:检测人们是否佩戴口罩
3:以及在图片上显示戴口罩的程度。例如MASK:99.02% NO MASK:100%
3系统技术架构分析设计
3.1 系统功能结构设计
该系统要实现检测人们是否佩戴口罩的基本功能,根据自顶向下的设计思路,该系统的模块架构设计如图3-1所示。主要分为人脸识别,获取对照人脸,建立人脸模型,检测实时人脸,通过模型校验,输出识别结果。
3.2 系统运行流程
本系统要运行流程如图3-2所示。
4 系统开发软、硬件配置要求
系统开放配置要求如下:
(1)操作系统:win11(64位)
(2)Python解释器版本:Python3.7.10
(3)开发工具:Pycharm
(4)所使用的Python内置模块、标准库如表4-1所示:
(5)所使用的Python第三方库如表4-2所示:
5主函数设计
系统主函数主要实现检测是否戴口罩以及佩戴口罩的程度功能,对应的程序流程图如同5-1所示。
6功能函数设计
6.1 功能模块1设计
功能模块1主要实现检测是否佩戴口罩功能,对应的程序流程图如同6-1所示。
6.2 功能模块2设计
功能模块2主要实现图片显示NO MASK💯00%以及MASK(以及戴口罩的程度)功能,对应的程序流程图如同6-2所示。
7 项目打包
将 Python源代码通过pyinstaller生成可执行文件,目的是不需要依赖python编译器就可以运行软件。具体操作如下:
打包生成的可执行文件截图,如图7-1所示。
8 源代码
系统总的源代码有210行,选用Pycharm编写完成。
(详见下载,文章开头下载方式)
9 代码调试运行
系统代码调试采用先模块再整体的调试思路,通过Pycharm的单步断点调试方式。
调试方pycharm单步断点调试方法:
代码运行结果:
10 总结与展望
10.1总结
既定的功能设计基本实现。存在的不足:模型只能识别佩戴口罩和不佩戴口罩,但是不能识别出口罩是否佩戴正确。模型是用裁剪后的人脸训练的,那么在实际的应用中也当使用裁剪后的人脸。功能的扩展:利用了思维识别技术。通过这次综合实践,我对专业和项目开发有了更加深切和具体的认识,体会到了写程序的艰辛与复杂,但克服困难之后的喜悦也是巨大的。通过不断地去解决问题,我的能力都有了很大的提高。
10.2展望
- 在真正部署到实际中还应当增加数据集,扩充一些故意遮挡的图片。
- 通过采用眼部关键点和注意力机制相结合的方法来增强眼部特征,眼部特征图与整体人脸特征图的多级融合,充分挖掘人脸的有效信息,提升模型在口罩遮挡情况下的表现。
- 解决戴口罩进行人脸识别存在的问题,例如光照问题,遮挡问题以及人脸识别可能存在的安全性。通过更加完善的系统代码解决这些问题。
11 个人体会
python实验报告已经接近尾声,在这一周的过程中,我更加领悟到了python的魅力。在写实验报告中,不但加深了以往对于python基础语法的认识和运用,更重要的是,在原来的基础上,学到了新的东西。从开始选题到完成实验报告,一开始,更多的只是想完成任务和对自己需要的角度进行学习,随着完成过程中查找的学习内容逐渐丰富以及了解的积累,开始对python越来越感兴趣。当然在个人课程设计过程中遇到了一些技术难点,例如如何检测到有障碍物遮挡的人脸区域,在人群中识别脸部特征较为困难,光照问题,遮挡问题,动态识别问题,图形质量问题,以及人脸识别可能存在安全问题。分析解决办法:利用思维识别技术来进行认证,这项技术具有防窥性,防复制特性,使用户可以把多个账号的密码统一成一个,简化记忆,而且还具备双向验证能力。最后使人脸识别是否戴口罩技术更加完善应用到生活的各个方面。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!