基于Python的人脸识别课堂考勤系统(毕设)

这篇具有很好参考价值的文章主要介绍了基于Python的人脸识别课堂考勤系统(毕设)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一个菜鸟搞毕业设计的过程分享,可能对迷茫的你起到一点点作用!

序言

在着手开发项目之前我们一定要对系统进行一个初步的规划,比如系统可以实现什么功能,是否需要开发GUI页面(大部分导师都会让你搞一个,仅仅少的导师不用你搞),如果需要可以对GUI页面就行一个简单的规划设计。当我们已经确定好了系统的大致框架开始配置开发环境,下载所需要的包,这里本人在做的时候花费大量的时间。

最后,在这里说一下(仅对小白\菜鸟)多查多看多参考着去做。开源精神YYDS!!!

系统设计——初级阶段

系统名称:睿课人脸识别课堂考勤系统v2.0

系统Logo(设计系统的Logo可以寻找一下外援,在这里本人找了热爱画画的小姐姐!)

基于Python的人脸识别课堂考勤系统(毕设)

 说明:在这里本人设计了两个logo,联名的形式。左一:白泽,右一:睿课,主要logo。

该系统本人设计了五大功能模块(不含登录和注册功能模块),分别是课堂考勤功能模块、信息采集功能模块、数据分析功能模块、使用指南功能模块(简易)、意见反馈功能模块(简易)、融媒体功能模块、数据与账户仓储功能模块、随机抽检功能模块。

基于Python的人脸识别课堂考勤系统(毕设)

 系统设计——中级阶段

一、搭配开发环境

完成了系统的规划,之后我们就可以着手开发了。首先,搭配我们的开发环境。其次,下载所需要的包,这里我不进行阐述安装与配置教程,遇到打开CSDN都可以解决。最后,当我们调试开发环境的时候已经下载这个包了,但是系统还是报错,我们可以尝试重启一下电脑试一下(亲测有效)。

 二、绘制GUI界面

本人绘制GUI页面所使用的工具是 QtDesigner。

1.欢迎界面设计:欢迎界面一般都是设计自动关闭跳到登录\注册功能模块,但是这里我采用了手动。设计与运行效果图如下所示。

基于Python的人脸识别课堂考勤系统(毕设)

 2.登录功能模块:图一登录页面为设计效果图,图二为登录页面运行结果图。

功能说明:对于登录界面主要承担的任务校验使用者所输入的账户与密钥是否合规、是否能与数据库中信息匹配成功,如果校验成功将跳转至主界面。同时该功能模块还具有跳转至注册账户界面的功能以及用户操作提示信息功能。当出现账户或者密钥为空与不对的情况下将弹出对话框加以提示。

基于Python的人脸识别课堂考勤系统(毕设)

基于Python的人脸识别课堂考勤系统(毕设)

  3.注册功能模块:这里只展示设计效果图了,不在展示运行效果图了(以下均是)。

功能说明:注册模块分成了两个GUI界面,这里我们把它称为注册_1界面与注册_2界面。注册_界面主要功能是检索用户设置的账户名称是否合规以及设置账户密钥的功能。在数据库中对设置的账户进行检索是否与其有重复的,如果出现重复了的情况系统将会给出提示信息对话框,当然注册成功系统也将会给出提示信息对话框。

除了上述的功能之外,当单击“返回”按钮时将返回至登录界面,单击“下一页”按钮时将把使用者设置的账户信息与密码信息写入到数据库中,并跳转至注册_2界面。

基于Python的人脸识别课堂考勤系统(毕设)

基于Python的人脸识别课堂考勤系统(毕设)

注册_2界面的功能主要是采集注册者的基本个人信息,当单击“注册”按钮时校验注册者重复录入的账号与密钥。当重复录入的账号与密钥信息相匹配时,将会把个人信息写入到数据库中,并会弹出提示信息对话框。如果出现错误将拒绝把个人信息写入到数据中,并且也会弹出相应错误信息的提示信息对话框,给使用者加以参考。

另外,当使用者单击“注册”按钮时除了上述的功能外还具有跳转至登录界面的功能。当单击“退出”按钮时将会中止注册,并且退出睿课系统。

 4.主界面功能模块: 主界面模块的功能主要是实现考勤功能模块、信息采集功能模块、数据分析模块、随机抽检功能模块、账号仓储功能模块等共计十大功能模块之间的跳转功能以及一键退出系统的功能。基于Python的人脸识别课堂考勤系统(毕设)

 5.课堂考勤功能模块:对于考勤功能模块,主要设计实现人脸识别、重置考勤、简略统计出勤信息的功能。当使用者单击“开始考勤”命令按钮时系统调用设备上的摄像头,实时获取人脸信息,对比人脸,结束考勤时系统将自动统计出勤信息反馈给使用者。当使用者单击“重置考勤”命令按钮之后,系统将会给出提示信息,是否将所有已经标记为出勤的人员更改为未出勤,如果用户选择了“NO”将会取消本次操作反之执行。除此之外,该界面还设置了实时显示系统时间与日期。

基于Python的人脸识别课堂考勤系统(毕设)

 6.信息采集功能模块:对于信息采集功能模块,主要设计实现采集人脸信息、收集个人基本信息、训练人脸图像数据模型的功能。当使用者单击“人脸采集”命令按钮时系统调用设备上的摄像头,抓取人脸信息并将以保存。当点击“确认”命令按钮系统将会检查用户录入的个人信息是否符合规定,假若不符合标准将会拒绝用户的操作并给出错误信息加以参考,反之系统将会把个人的基本信息写入数据仓库之中并给出提示信息告知使用者操作成功。当单击“取消”命令按钮时系统将视为用户放弃了个人信息采集流程,将会中止数据库的写入曹操,并且清除用户录入的信息。 

基于Python的人脸识别课堂考勤系统(毕设)

另外,当单击“Home”命令按钮时将会回到主界面。

7.数据分析功能模块:数据分析模块承担了分析综合出勤数据情况、分析个人出勤情况、列出缺勤的学生名单的这些主要功能。当用户使用了分析个人出勤情况功能时,系统不但反馈给用户该生的出勤次数,出勤率,而且系统还会计算出出勤评分,当评分小于7.0时系统将会显示标签“重点关注”来提示用户。

另外,当用户从主界面跳转至数据分析界面时,综合数据分析看板区域将会实现数据的可视化分析。在使用者单击“数据分析”命令按钮后系统将会统计出勤人数,缺课人数,显示缺勤名单。除此之外,系统将会根据出勤率评判本节课的出勤情况。当出勤率大于等于90%时系统将会评定为优秀,大于等于80%评定为良好,大于等于70%评定为一般,小于70%系统将会弹出提示信息提醒当堂授课教师,并且系统评定为危险。

基于Python的人脸识别课堂考勤系统(毕设)

 8.随机抽检功能模块:本系统设置随机抽检的功能模块是为了防着出现“考勤不出勤”的现象,简单来说是学生只来参加考勤环节,等待考勤结束便离开教室而参加剩下的教学活动。为了避免此类情况的发生,所以本系统设置了该功能模块。当使用者单击“随机抽检”命令按钮之时,系统将会从数据库查询考勤状态被标记为“出勤”的学生进行筛选,从而在这部分人里面进行随机选择。假若被抽检到的该生恰好是“考勤不出勤”使用者就可以通过单击“改为缺勤”命令按钮将其的考勤状态变更为缺勤。如若抽检到的该生出勤了,使用者却误操作将该生设置成立未出勤,也可通过单击“撤销操作”命令按钮。该功能模块不仅有上述的功能之外,还可以显示被抽检学生的姓名、学号、班级、性别、出勤次数、出勤率的信息。

基于Python的人脸识别课堂考勤系统(毕设)

 9.数据仓储功能模块:数据仓储模块的功能主要包括对学生个人信息方面的变更;例如,学院、专业、姓名、班级、E-mail等个人信息,但是性别与学号字段是不允许用户进行变更的,为只读信息。在进行变更学生个人信息之前,操作者必须完成信息校验,只用通过了信息校验才有权操作编辑个人信息,否则系统将不允许操作者的任何请求。

当单击“信息变更”命令按钮时,系统将会检验使用者录入的信息是否合规,一个区域内的信息项是关联的不允许有空项,所以系统也会对是否含有空项。假若含有则会驳回操作者的请求,并给出相应的错误信息进行参考。

基于Python的人脸识别课堂考勤系统(毕设)

 10.账户仓储功能模块:

对于账户仓储功能模块的设计意图与数据仓储功能模块是一样的,只不过账户仓储面向教职工服务,而数据仓储面向学生服务。该模块所具有的功能如下所示:

账户保护:该功能主要是提升账户等级,开启账户保护功能后所有人都不能对该账户进行任何操作,包括这个账户的所有者,该账户只能所用于登录。

注销账户:当使用者触发该功能信号,系统将会执行对应的槽函数。将其在数据库中的所有信息删除,这个账号将不乏存在,不能在用于登录本系统了。

变更账户: 该功能主要是支持使用者修改账户名。

变更密钥:该功能主要是支持使用者修改账户密钥。

信息变更:主要包括对教职工个人信息方面的修改;例如,教职工ID、姓名、学院的个人信息修改,但是性别与学校字段是不允许用户进行变更的,为只读信息。

基于Python的人脸识别课堂考勤系统(毕设)

 11.其他模块:对于融媒体、使用指南以及意见反馈功能模块的设计其实没有什么实质性的意义,在设计之初是为了主界面布局合理些等作用。所以这里就不在阐述功能说明,只放上一些图。

基于Python的人脸识别课堂考勤系统(毕设)

使用指南↑

基于Python的人脸识别课堂考勤系统(毕设)

 意见反馈↑

基于Python的人脸识别课堂考勤系统(毕设)

基于Python的人脸识别课堂考勤系统(毕设)

  系统设计——尾声阶段(重要阶段)

一、将设计的GUI界面转换成.py脚本文件

这里我们将涉及到PyUIC与PyRCC。

使用Qt Designer所设计的GUI将会生成格式为.ui、.qrc的文件,Python是不能够识别的,所以我们要使用PyUIC和PyRCC这两个工具分别将.ui、.qrc格式的文件转换称为Python所能够执行的.py格式的文件。

详细的配置方法移步搜索学习一下,这里简单叙述一下。

 首先,单击“+”按钮,在弹出的编辑设置框中的“名称”一栏中填写参数“PyUIC”;“程序”一栏中填写python.exe可执行程序的文件路径。其次,在“实参”一栏中填写“-m PyQt5.uic.pyuic $FileName$ -o $FileNameWithoutExtension$.py”命令。最后,在“工作目录”一栏中填写“$FileDir$”,均输入完毕之后单击“确定”按钮完成配置。PyUIC配置过程如图下所示。

基于Python的人脸识别课堂考勤系统(毕设)

 PyRCC工具以类似 PyUIC的方式来配置,同样在“外部工具”设置中单击“+”按钮,在设置框中“名称”一栏填写参数“PyRcc”;在弹出的编辑设置框中“名称”一栏中填写“PyRCC”;“程序”一栏中填写python.exe程序的文件路径;“实参”一栏中填写“$FileName$ -o $FileNameWithoutExtension$_rc.py”命令。最后在“工作目录”一栏中填写“$FileDir$”,均输入完毕之后单击“确定”按钮完成配置。PyUIC配置过程如图下所示。

基于Python的人脸识别课堂考勤系统(毕设)

 二、编写代码

按照模块依次完成。遇到困难利用好网络,开源精神YYDS!!

我将自己组合的粗略代码(非常之低级)整合后发布在标题为:基于Python的人脸识别课堂系统(毕设)——附录

三、系统测试

在毕业设计中,系统测试是一个非常关键的环节。它的重要意义是对整个系统的开发过程进行最终的审查,以保证系统的质量和可靠性。虽然对整个系统的开发过程都进行了严格的技术审核,但我们还是期望能够在系统测试的过程中,及早的发现和纠正这些问题。在正式启用之前,若不能及时发现并修正错误,将会给整个考勤系统带来很大的影响。

 文章来源地址https://www.toymoban.com/news/detail-403845.html

到了这里,关于基于Python的人脸识别课堂考勤系统(毕设)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 毕业设计:基于python人脸识别考勤系统 签到系统 深度学习 Flask框架 Dlib库 MySQL数据库 大数据(源码+论文)✅

    毕业设计:2023-2024年计算机专业毕业设计选题汇总(建议收藏) 毕业设计:2023-2024年最新最全计算机专业毕设选题推荐汇总 🍅 感兴趣的可以先收藏起来,点赞、关注不迷路,大家在毕设选题,项目以及论文编写等相关问题都可以给我留言咨询,希望帮助同学们顺利毕业 。

    2024年02月20日
    浏览(33)
  • python人脸识别考勤系统 考勤签到系统 OpenCV 大数据 毕业设计(源码)✅

    毕业设计:2023-2024年计算机专业毕业设计选题汇总(建议收藏) 毕业设计:2023-2024年最新最全计算机专业毕设选题推荐汇总 🍅 感兴趣的可以先收藏起来,点赞、关注不迷路,大家在毕设选题,项目以及论文编写等相关问题都可以给我留言咨询,希望帮助同学们顺利毕业 。

    2024年02月19日
    浏览(29)
  • java项目分享 - 基于opencv、dilb的员工人脸识别考勤系统

    基于opencv、dilb的员工人脸识别考勤系统 提示:适合用于课程设计或毕业设计,工作量达标,源码开放 选题“员工刷脸考勤”,要求采用python语言开发,可以通过摄像头添加员工面部信息,这里就涉及到两个具体的个问题,一个是应该以什么样的数据来标识每一个员工的面部

    2024年01月17日
    浏览(30)
  • 基于Springboot+百度AI人工智能人脸识别考勤系统设计与实现

    基于Springboot+百度AI人工智能人脸识别考勤系统设计与实现  博主介绍: 《Vue.js入门与商城开发实战》《微信小程序商城开发》图书作者,CSDN博客专家,在线教育专家,CSDN钻石讲师;专注大学生毕业设计教育和辅导。 所有项目都配有从入门到精通的基础知识视频课程,免费

    2024年02月05日
    浏览(29)
  • 基于 opencv 的人脸识别上课考勤系统,附源码,可作为毕业设计

    这个人脸识别考勤签到系统是基于大佬的人脸识别陌生人报警系统二次开发的。 项目使用Python实现,基于OpenCV框架进行人脸识别和摄像头硬件调用,同时也用OpenCV工具包处理图片。交互界面使用pyqt5实现。 该系统实现了从学生信息输入、人脸数据录入、人脸数据训练,学生信

    2024年02月08日
    浏览(26)
  • 【计算机毕设项目】基于opencv、dilb的员工人脸识别考勤系统

    基于opencv、dilb的员工人脸识别考勤系统 提示:适合用于课程设计或毕业设计,工作量达标,源码开放 选题“员工刷脸考勤”,要求采用python语言开发,可以通过摄像头添加员工面部信息,这里就涉及到两个具体的个问题,一个是应该以什么样的数据来标识每一个员工的面部

    2024年02月03日
    浏览(25)
  • 基于java和百度智能AI的人脸识别考勤签到系统设计与实现

     博主介绍 :黄菊华老师《Vue.js入门与商城开发实战》《微信小程序商城开发》图书作者,CSDN博客专家,在线教育专家,CSDN钻石讲师;专注大学生毕业设计教育和辅导。 所有项目都配有从入门到精通的基础知识视频课程,免费 项目配有对应开发文档、开题报告、任务书、

    2024年02月05日
    浏览(24)
  • python人脸识别考勤系统 dlib+OpenCV和Pyqt5、数据库sqlite 人脸识别系统 计算机 毕业设计 源码

    Python语言、dlib、OpenCV、Pyqt5界面设计、sqlite3数据库 本系统使用dlib作为人脸识别工具,dlib提供一个方法可将人脸图片数据映射到128维度的空间向量,如果两张图片来源于同一个人,那么两个图片所映射的空间向量距离就很近,否则就会很远。因此,可以通过提取图片并映射到

    2024年02月08日
    浏览(22)
  • JAVA基于百度AI接口的人脸识别考勤签到系统设计与实现(Springboot框架)

     博主介绍 :黄菊华老师《Vue.js入门与商城开发实战》《微信小程序商城开发》图书作者,CSDN博客专家,在线教育专家,CSDN钻石讲师;专注大学生毕业设计教育和辅导。 所有项目都配有从入门到精通的基础知识视频课程,免费 项目配有对应开发文档、开题报告、任务书、

    2024年02月04日
    浏览(28)
  • 【优秀毕设】基于OpenCV的人脸识别打卡/签到/考勤管理系统(最简基本库开发、可基于树莓派)

    【优秀毕设】基于OpenCV的人脸识别打卡/签到/考勤管理系统(最简基本库开发、可基于树莓派) 该系统利用Harr级联检测和LPBH进行人脸检测和训练、识别 利用Tkinter完成界面搭建 利用Flask+HTML完成网络实时图像推流及控制 利用captcha.image 完成验证码功能 利用xlsxwriter将数据保存

    2024年02月06日
    浏览(28)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包