赞
踩
本项目使用Python3.6编写,Qt Designer(QT5)设计主界面,PyQt5库编写控件的功能,使用开源 DeepFace人脸识别算法进行人脸识别,使用眨眼检测来实现活体识别,使用OpenCV3实现实时人脸识别。 同时,将班级学生信息,各班级学生人数、考勤信息录入到MySQL数据库中,方便集中统一化管理。 因为本项目仅由我一个人开发,能力精力有限,实现了预期的绝大多数功能,但是活体检测功能还存在bug,主要表现是界面卡死,如果小伙伴对本项目中有不懂的地方或者发现问题提出解决方案,欢迎私聊我或者在此博客评论亦或在github提交。 项目大概持续了两三个月的时间,在开发过程中,遇到过许多难题,参考了很多教程,才有了这个项目。 相信大家看到这里,一定是在比赛中或者是作业中遇到类似问题了,我也有过类似的经历,很清楚找不到解决方案,自己盲目摸索的苦恼,这也是我选择开源的原因,个人能力有限,但是希望本项目能给需要的小伙伴提供帮助,✨完整代码在文章结尾 。 如果对你有帮助的话,点个赞吧!
使用 Qt Designer 设计前端界面。
2.1 主界面
2.2 信息采集界面
3.1 数据库可视化工具 Navicat
使用该软件是为了方便管理维护信息,如果有数据库基础,当然也可以选择其它方式。其主界面如下:
3.2 创建数据库流程
3.3 PyMySQL
项目中只使用了简单的写入、查询等几个常用命令,即使没有数据库基础的话,上手这个库也比较容易。看一下文档,基本就会了。
4.1 信息采集
4.2 人脸识别
4.3 活体检测(存在bug )
目前的bug是,活体检测开启关闭之后,关闭人脸考勤,再关闭相机的时候会卡死。
4.4 查询考勤信息
4.5 查询学生信息
4.6 请假登记
5.1 系统环境配置
opencv+contrib 安装步骤: 1.https://www.lfd.uci.edu/~gohlke/pythonlibs/ 搜索contrib 2.找到对应你系统python版本的opencv+contrib下载 3.我安装的是:opencv_python-4.1.2+contrib-cp37-cp37m-win_amd64.whl 4.打开anaconda命令行 pip install opencv_python-4.1.2+contrib-cp37-cp37m-win_amd64.whl cmake 官网下载.msi安装包 下载即可,安装注意导入系统环境变量 dilib 直接anaconda命令行中 pip install dlib(时间比较长) freetype pip install freetype-py pymysql pip install pymysql pyqt5 pip install pyqt5
5.2 需要修改源码
文件目录树:
https://github.com/datamonday/Face-Recognition-Class-Attendance-System
7.1 系统优化
解决bug,提升系统运行效率与稳定性。
7.2 人脸照片存储到数据库中
目前还是存储在本地,不安全。
7.3 生成考勤日志
自动统计每个班级的考勤信息,并生成日志。
7.4 从教务系统导入学生个人课表,保证判定的稳定性
目前仅仅通过设定的考勤时间统计,不够人性化,应该根据学生的各任课表来统计。
7.5 同时多人识别
提升识别效率,比如很多同学同时进教室,如果一人一人识别,则会造成拥堵。
7.6 上传图片识别
如果系统出现故障,老师可以用手机拍摄照片存档,然后上传系统进行人脸识别考勤。
7.7 开发更稳定的人脸识别
防止用照片或视频骗过系统。
7.8 开发更稳定的活体检测
防止视频等骗过系统。
在学习python中有任何困难不懂的可以微信扫描下方CSDN官方认证二维码加入python交流学习
多多交流问题,互帮互助,这里有不错的学习教程和开发工具。
(python兼职资源+python全套学习资料)
Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
检查学习结果。
最后,千万别辜负自己当时开始的一腔热血,一起变强大变优秀。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。