给公司写了个人脸考勤系统!老大给了三千奖金。同事为啥记恨我?

前言

今天老大找到我,让我给写一个人脸识别的考勤系统!说是很多同事都让别人拿着职员卡进行直接打卡!对公司对大家都造成了不好的印象!写完给你发奖金!那我一看到奖金哪还想那么多,直接和老大说,明天就能正常使用了!没想到因为这件事同事都孤立我的感觉了!

1. 项目简介

本项目使用Python3.6编写,Qt Designer(QT5)设计主界面,PyQt5库编写控件的功能,使用开源 DeepFace人脸识别算法进行人脸识别,使用眨眼检测来实现活体识别,使用OpenCV3实现实时人脸识别。同时,将公司同事信息,各部门同事生人数、考勤信息录入到MySQL数据库中,方便集中统一化管理。因为本项目仅由我一个人开发,能力精力有限,实现了预期的绝大多数功能,但是活体检测功能还存在bug,主要表现是界面卡死,如果小伙伴对本项目中有不懂的地方或者发现问题提出解决方案!后续会慢慢优化!

2. 系统前端设计

使用 Qt Designer 设计前端界面。

2.1 主界面

2.2 信息采集界面

3. 数据库存取信息

3.1 数据库可视化工具 Navicat

使用该软件是为了方便管理维护信息,如果有数据库基础,当然也可以选择其它方式。其主界面如下:

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 需要修改源码

文件目录树:

  1. 安装 msqlservice 然后修改 exacute.py文件中的数据库连接代码。比如 db = pymysql.connect("localhost", "root", "mysql105", "facerecognition")。这首先需要在 navicat中创建数据库。

  2. 如果不是通过本系统的信息采集功能采集的人脸照片,请将采集的人脸照片放到 face_dataset/XX 路径下,其中XX是学号(唯一索引),如果是通过系统采集的,则会自动存放在该路径下,不需要修改。

5.3 使用步骤

  1. navicat创建数据库,打开数据库录入学生信息和班级信息;

  2. 修改源码,连接到创建的数据库

  3. 采集人脸照片,点击界面中的信息采集,在子窗口操作即可。

  4. 训练人脸识别模型,点击界面中的更新人脸库

  5. 开始考勤:打开相机 --> 开始考勤

  6. Have fun!😊

需要脚本或者需要源码的:

①3000多本Python电子书有

②Python开发环境安装教程有

④软件开发常用词汇有

⑤Python学习路线图有

⑥项目源码案例分享有

如果你用得到的话可以直接拿走,在我的QQ技术交流群里群号:754370353以自助拿走

点击这里 领取

7. 待完善功能

7.1 系统优化

解决bug,提升系统运行效率与稳定性。

7.2 人脸照片存储到数据库中

目前还是存储在本地,不安全。

7.3 生成考勤日志

自动统计每个班级的考勤信息,并生成日志。

7.4 从教务系统导入学生个人课表,保证判定的稳定性

目前仅仅通过设定的考勤时间统计,不够人性化,应该根据学生的各任课表来统计。

7.5 同时多人识别

提升识别效率,比如很多同学同时进教室,如果一人一人识别,则会造成拥堵。

7.6 上传图片识别

如果系统出现故障,老师可以用手机拍摄照片存档,然后上传系统进行人脸识别考勤。

7.7 开发更稳定的人脸识别

防止用照片或视频骗过系统。

7.8 开发更稳定的活体检测

防止视频等骗过系统。、

慢慢优化吧。需要源代码记得看上面的教程领取哦!点击这里 领取

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值