百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

Python+Opencv+Tkinter指纹识别与人脸识别的门禁兼考勤(一)

off999 2024-09-27 13:56 48 浏览 0 评论

一、设计目标:旨在PC端上搭建一款具有指纹识别与人脸识别功能的门禁兼考勤系统。该系统同时具备普通用户模式、管理员模式与超级管理员模式,下面具体介绍每种模式下的功能。

1)普通用户模式

该模式可分为收集用户信息,验证用户信息和开锁三个阶段。其中,收集用户信息即为收集用户的id,姓名,指纹信息和人脸信息,将除了指纹信息之外的用户信息存入数据库,而指纹信息直接存储在指纹模块;验证用户信息即为先验证用户的指纹,通过之后进行人脸验证,再根据验证情况,生成日志信息,日志信息可展示在右边区域,并存入数据库表;开锁即为通过指纹验证和人脸验证之后,PC进一步通过串口控制51单片机,进行开锁步骤。

2)管理员模式

该模式需要管理员输入账号和密码,在普通用户模式的基础上,拥有删除单个指纹信息,一键删除所有用户指纹信息,删除本地用户信息,删除数据库用户id、姓名和人脸信息,删除数据库日志信息,进入超级管理员模式,退出管理员模式,直接开锁等功能。

3)超级管理员模式

该模式是基于pyhton+django网页端的管理平台,具备操作数据库人脸信息,日志信息和管理员的账号、密码。

二、系统总体结构

从系统的设计目标可知,该门禁考勤系统分为硬件和软件两个部分。其中,硬件包括PC,单片机,继电器,AS608光学指纹模块和电磁锁;软件包括python+tkinter编写的UI界面,sqlite3数据库,python+django的网页端管理界面,python+dblib+opencv的人脸识别,python通过串口控制的AS608指纹模块,C语言编写的单片机控制电磁锁等等。系统的大体工作是采集用户指纹信息和人脸信息,与提前录入的指纹信息与人脸信息进行匹配,对于匹配正确的用户则记录考勤信息,为该用户打开电磁锁。总体设计下图所示。

该系统的指纹识别通过AS608指纹识别模块来实现对指纹的扫描和比对功能,而人脸采集则通过PC自带的摄像头来完成,基于PC端的人机交互界面是整个系统的核心所在,是由python搭建的软件运行环境,主要负责实现系统的指纹识别,人脸识别,信息存储和根据处理结果做出相应的选择,如发送信号控制单片机开锁等。

51单片机主要负责接收来自PC端的指令,做出相应的动作。例如,当单片机收到“1”时,则打开电磁锁,否则电磁锁保持常闭状态。

网页端管理界面是由python+Django搭建的,方便超级管理员进行数据库的操作,例如,修改用户个人信息,修改日志信息,修改管理员账号密码等。

人脸识别算法作为人脸识别的核心,负责该门禁兼考勤系统的人脸识别功能的实现,关系人脸识别的性能。而数据库负责存储用户个人信息以及人脸信息,日志信息和管理员的账号、密码。

三、系统的技术难点

在完成整个门禁兼考勤系统中,碰到以下诸多技术难点:

1)人脸识别的实现。人脸识别的整个过程略显复杂需要从五个步骤完成,分别是人脸检测、人脸关键点检测、人脸规整、人脸特征提取、人脸识别[3]。前期采用python+opencv每个人采集100张人脸图像,训练生成.yml文件,再进行人脸识别,而后发现该方法实现人脸识别的精度不高。因此,人脸识别的实现,既要综合整个完成的步骤,又要提高人脸识别的精度。

2)搭建python+tkinter的软件操作平台。搭建该软件系统需要明确整个软件界面的布局,各个模块功能之间的交互以及减少Bug的出现。其中,如何利用pyhton建立数据库,访问数据库,如何进行数据库与前台的交互,如何搭建网页端的管理平台都是该系统的难点。因此,门禁兼考勤系统的开发需要对python语言以及相关库的应用有一定深入的学习。

3)用python操作AS608指纹模块。网络上提供的都是关于C语言操作AS608指纹模块,如何用python使用AS608指纹模块,必须深入了解该模块的指令应答与数据交换,各个功能对应的指令包。

希望有共同需求的,可以来共同探讨,后续将说明该系统的软件设计、硬件设计等。

相关推荐

win7汉化包下载(win7系统汉化)

要下载犀牛7grasshopper汉化包,首先你需要从官方网站或可靠的第三方网站上找到可信赖的下载链接。然后,点击链接进行下载,并确保你的电脑设备有足够的存储空间来安装这个汉化包。安装完成后,打开犀牛...

ghost系统备份与恢复的详细步骤

还原系统步骤。1、电脑开机进入ghost,这里注意如果是通过U盘启动盘进入,注意先进入bios把第一启动项设置为当前的U盘;如果是通过自身电脑硬盘启动,建议先把ghost系统安装好。2、点击确定,然后...

photoshop官方下载电脑版(ps软件官方下载中文版电脑版)

鼠标右键点击压缩包,点击解压到文件夹按钮。打开文件夹,点击安装文件。弹出安装对话框,点击默认位置。更改安装路径,点击确认按钮。等待安装完成,双击打开ps快捷方式即可。目前在电脑上免费下载PS是不太可能...

2025最火电脑壁纸(2025最火电脑壁纸全屏)

要更改MacBookPro2022的壁纸,可以按照以下步骤操作:首先,点击桌面上的空白区域,然后选择“更改桌面背景”选项。接着,从预设的壁纸中选择一个或者点击“+”号添加自己的图片。如果需要更改壁...

安装系统安装包(系统安装包里的安装文件在哪)

oppocoloros13具体的下载方法如下,第一步,手机打开OPPO官方网站服务中心,登录手机账号。第二步,找到coloroS13升级包,点击安全下载,将coloroS13系统升级软件包...

u盘2t为什么才30元(为什么u盘128g那么便宜)

因为它是假的!之前我买了一个,说什么双十一搞活动,256G的U盘,花了30多元都是假的!楼主描述的这个情况百分之九十九是假的U盘!右击U盘,然后点“属性”,看到的可能是2T,但实际存储量却远没有2T,...

笔记本cpu90度正常吗(笔记本cpu 90多度)

如果运行大型游戏的话,还算正常。如果只是开个小游戏那就有点问题了。只要低于Intel原厂规范温度(105或100度),都不会影响产品寿命,CPU本身皆有保护机制,当核心超过设定的调节温度时,将会降...

win10家庭版系统官网(windows10家庭版官网)

微软官网下载的WIN10系统需要制作成U盘安装盘才能安装。也可以直接在微软官网制作U盘安装盘。微软官网只提供原版(也就是纯净版的)系统的下载,需要用户自行永久激活后才是正版的。如果不是永...

win7系统语言包(w7语言包在哪里)

1.单击桌面左下角的开始菜单,打开“控制面板”。2.在“控制面板”中找到“区域和语言”选项,点击该选项。3.弹出“区域和语言”属性对话框,切换到“管理选项”。4.点击“更改系统区域设置”...

照片恢复软件免费(照片恢复软件免费版)

苹果照片恢复软件是一款专业的免费的数码照片恢复软件,苹果照片恢复软件将成为你恢复丢失照片的最佳助手,它内核采用多种JPEG开发规范进行精确查找,支持多种品牌相机的拍摄格式。有极快的速度,可快速恢复被误...

autocad2012产品密钥(cad2012的产品密钥是什么)

CAD2012产品密钥和序列号序列号:400-45454545钥匙:651D1序列号:356-72378422钥匙:001D1序列号:400-45454545钥匙:001D1序列号:666-6969...

软件误删怎么找回来(软件删掉怎么找回)
  • 软件误删怎么找回来(软件删掉怎么找回)
  • 软件误删怎么找回来(软件删掉怎么找回)
  • 软件误删怎么找回来(软件删掉怎么找回)
  • 软件误删怎么找回来(软件删掉怎么找回)
桌面语言栏不见了怎么办(桌面语言栏不见了怎么办呢)

如果您的语言栏在某个应用程序或操作系统中消失了,您可以尝试以下方法来恢复它。首先,您可以检查操作系统的设置,查看语言和区域选项是否正确设置。如果设置正确,但语言栏仍然不可见,您可以尝试重新启动计算机,...

怎么装win98(怎么装win7系统教程)

如何安装windows98  一、具体安装步骤  备份好重要文件之后,就可以安装windows98了。  第一步:启动安装程序。  用户如果原来已安装了windows95/97/98,现在拟对其进行升...

u盘写保护无法格式化怎么解除
  • u盘写保护无法格式化怎么解除
  • u盘写保护无法格式化怎么解除
  • u盘写保护无法格式化怎么解除
  • u盘写保护无法格式化怎么解除

取消回复欢迎 发表评论: