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