3.2 创建数据库流程
3.3 PyMySQL
项目中只使用了简单的写入、查询等几个常用命令,即使没有数据库基础的话,上手这个库也比较容易。看一下文档,基本就会了。
4. 系统功能介绍(正在更新 ···)
4.1 信息采集
4.2 人脸识别
4.3 活体检测(存在bug )
目前的bug是,活体检测开启关闭之后,关闭人脸考勤,再关闭相机的时候会卡死。
4.4 查询考勤信息
4.5 查询学生信息
4.6 请假登记
5. 使用教程
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 需要修改源码
文件目录树:
- 安装 msqlservice 然后修改 exacute.py文件中的数据库连接代码。比如 db =pymysql.connect(“localhost”, “root”, “mysql105”,“facerecognition”)。这首先需要在 navicat中创建数据库。
- 如果不是通过本系统的信息采集功能采集的人脸照片,请将采集的人脸照片放到 face_dataset/XX
路径下,其中XX是学号(唯一索引),如果是通过系统采集的,则会自动存放在该路径下,不需要修改。
5.3 使用步骤
- navicat创建数据库,打开数据库录入学生信息和班级信息;
- 修改源码,连接到创建的数据库
- 采集人脸照片,点击界面中的信息采集,在子窗口操作即可。
- 训练人脸识别模型,点击界面中的更新人脸库
- 开始考勤:打开相机 --> 开始考勤
- Have fun!
6.Github获取源码
https://github.com/datamonday/Face-Recognition-Class-Attendance-System
7.待完善功能
7.1 系统优化
解决bug,提升系统运行效率与稳定性。
7.2 人脸照片存储到数据库中
目前还是存储在本地,不安全。
7.3 生成考勤日志
自动统计每个班级的考勤信息,并生成日志。
7.4 从教务系统导入学生个人课表,保证判定的稳定性
目前仅仅通过设定的考勤时间统计,不够人性化,应该根据学生的各任课表来统计。
7.5 同时多人识别
提升识别效率,比如很多同学同时进教室,如果一人一人识别,则会造成拥堵。
7.6 上传图片识别
如果系统出现故障,老师可以用手机拍摄照片存档,然后上传系统进行人脸识别考勤。
7.7 开发更稳定的人脸识别
防止用照片或视频骗过系统。
7.8 开发更稳定的活体检测
防止视频等骗过系统。
最后
在学习python中有任何困难不懂的可以微信扫描下方优快云官方认证二维码加入python交流学习
多多交流问题,互帮互助,这里有不错的学习教程和开发工具。
(python兼职资源+python全套学习资料)
一、Python所有方向的学习路线
Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。