人脸考勤管理一体化系统(人脸识别系统,签到打卡)

人脸考勤管理一体化系统

项目介绍

本项目是基于Flask、SQLAlchemy、face_recognition库的人脸考勤管理一体化系统。

系统通过人脸识别技术实现员工考勤打卡、人脸信息采集、人脸模型训练等功能。

项目采用前后端分离的技术框架,基于Flask轻量级Web框架搭建后端服务,结合HTML/CSS/JavaScript实现前端用户界面。

主要技术与框架

  • Web 框架:

    • Flask:用于构建Web应用,提供用户界面和API接口。

    • SQLAlchemy:用于数据库操作,管理员工、部门、公告等数据。

  • 人脸识别库:

    • face_recognition:用于人脸检测、特征提取和比对。
  • 前端技术:

    • HTML/CSS/JavaScript:用于构建用户界面。

    • Jinja2 模板引擎:用于动态生成 HTML 页面。

  • 其他工具:

    • OpenCV:用于图像处理和摄像头帧捕获。

    • Pillow:用于图像处理和文字绘制。

    • NumPy:用于数值计算。

主要功能

  • 功能1:首页看板预览

    • 展示系统员工数、部门数、公告数模型已训练人脸数等
  • 功能2:部门管理

    • 系统支持对部门信息进行管理,包括新增、编辑、删除部门信息。
  • 功能3:员工管理

    • 系统支持对员工信息进行管理,包括新增、编辑、删除员工信息,并支持上传员工照片。
  • 功能4:公告管理

    • 系统支持发布和管理公告,公告可以设置为草稿或已发布状态。
  • 功能5:人脸信息采集

    • 用户可以通过摄像头采集员工的人脸照片,并保存到系统中,用于后续的人脸识别和模型训练。
  • 功能6:人脸模型训练

    • 系统支持基于采集的人脸照片进行模型训练,生成人脸特征值,用于后续的人脸识别。
  • 功能7:人脸实时抓拍

    • 系统支持实时抓拍摄像头画面中的人脸,并将抓拍的照片保存到系统中,用于后续的考勤记录。
  • 功能8:人脸视频抓拍

    • 系统支持用户上传视频实时抓拍视频画面中的人脸,并将抓拍的照片保存到系统中,用于后续的考勤记录。
  • 功能9:人脸考勤打卡

    • 系统通过人脸识别技术实现员工考勤打卡,记录员工的打卡时间和状态(成功/失败)。
  • 功能10:登录、注销

    • 使用Flask-Login管理用户登录状态,用户可以通过登录系统使用各项功能。

环境说明

参考以下环境(已跑通),可按顺序安装库的版本:

复制代码
Windows10及以上(操作系统)
python 3.9.12
flask==3.0.2
flask_sqlalchemy==3.1.1
flask-login==0.6.3
face_recognition==1.2.3
werkzeug==3.1.3
opencv-python==4.4.0
numpy==1.26.4
pillow==10.4.0
cmake==3.31.2
dlib==19.22.1

目录说明

commandline 复制代码
人脸考勤管理一体化系统/
├── instance/              
│   ├── face_attendance_sys.db         # SQLite数据库文件
├── static/                            # 静态资源文件
│   ├── captures/                      # 存储抓拍照片(按日期分文件夹存储)
│   ├── images/                        # 图片资源
│   └── css/                           # CSS 样式文件
├── templates/                         # HTML模板文件
│   ├── base.html                      # 基础模板
│   ├── dashboard.html                 # 仪表板/首页
│   ├── face_collection.html           # 人脸信息采集页面
│   ├── face_training.html             # 人脸模型训练页面
│   ├── face_capture.html              # 人脸实时抓拍页面
│   ├── face_verification.html         # 人脸考勤打卡页面
│   ├── face_video_capture.html        # 人脸视频抓拍页面
│   ├── department_management.html     # 部门管理页面
│   ├── employee_management.html       # 员工管理页面
│   ├── announcement_management.html   # 公告管理页面
│   └── login.html                     # 登录页面
├── app.py                             # Flask 应用主程序(运行启动项目)
├── README.md                          # 项目说明文档
└── environment.txt                    # 项目依赖列表

右键运行 app.py 后,浏览器输入地址:127.0.0.1:2992 访问系统。

视频演示(效果图)

人脸考勤管理一体化系统(人脸识别,签到打卡)

相关推荐
张张123y3 小时前
后端第十四课:Agent 记忆系统(让 Agent 记住上下文和用户,跨会话不健忘)
java·大数据·人工智能·python·agent·记忆
happylifetree7 小时前
Python67:核心语法-函数进阶-参数类型(函数作为参数)
python
布吉岛的石头7 小时前
Java 程序员第 50 阶段2:预训练的目标函数:自回归语言建模本质
java·开发语言·人工智能·深度学习·回归·transformer
小羊没烦恼!8 小时前
铁道部新客票系统设计(二)
开发语言·前端·数据库·python·oracle·c#·php
quantdash_cc8 小时前
从实时行情到价格观察表:用 Python 和 Pandas 构建策略输入数据
开发语言·python·数据分析·pandas·量化交易·股票数据·quantdash
镜子AI8 小时前
镜子AI工程实践:用 Python 做 GEO 实体一致性审计,并自动生成 JSON-LD 结构化数据
人工智能·python·json
田里的水稻10 小时前
FA_CNN卷积神经网络七---优化器PyTorch
人工智能·pytorch·深度学习·神经网络·cnn
2601_9628857213 小时前
如何用 Python 计算 VaR 和 CVaR(在险价值)?
开发语言·python
李航198313 小时前
DeepSeekAI建模三 - 实战建模一组柜子
人工智能·python·计算机视觉·ai·ai编程
严谨的麻辣烫14 小时前
静态代理 IP 的出口一致性如何验证?Python 请求检测与异常排查
开发语言·python·http·网络安全