基于人脸识别的学生考勤系统的研究

(整期优先)网络出版时间:2020-08-03
/ 2

基于人脸识别的学生考勤系统的研究

杨磊 1 马杰 2

中国矿业大学徐海学院 1 江苏徐州 221008

江苏师范大学 2 江苏徐州 221006

摘要:人脸识别系统工作的主要原理就是先通过识别前端采集学生的人脸信息,然后将收集到的信息与数据库中的信息比对,从而来实现学生的考勤情况。这样的话我们可以一目了然的看到学生的出勤情况以及一些学生的基本信息,同时可以监督学生的上课,对他们的学习情况有一个比较全面的了解,提高学生到课率,杜绝替答、漏检、现场混乱的情况,节省时间、全面客观。

关键词:深度学习;卷积神经网络;人脸识别;考勤管理

中图分类号:TP311 文献标识码:A

1系统结构设计

1.1 人脸识别考勤系统主要有五部分组成,它们分别是:界面初始化、人脸录入、刷脸签到、打卡结果、生成日志。重要的是刷脸签到部分,包括人脸检测、特征提取与定位、人脸识别[1]

对于学生考勤系统,首要的是对GUI进行设计展示,就是我们通常说的界面初始化,一个好的界面直接影响着该系统的成败,界面设计主要包括两大部分:界面设计和初始化。界面设计的好坏直接影响着使用者的使用体验,对于界面设计主要有三部分组成:菜单部分、照片图像采集部分、信息显示部分。一般在菜单栏中设有三个按钮,它们分别起到人脸库的录入、学生上课签到及签到完成完成后查看日志表格的作用。左半部分的信息主要显示学生的签到情况,看其是否在规定时间内打卡签到成功。初始化即完成界面所包括部分的初始化操作。

1.2人脸录入

刷脸签到的必要前提就是人脸录入,一般通过OpenCV库调去摄像头进行图像采集工作如果是新建立的数据库的话,则需要输入学号、姓名等一些必要的身份标识。在进行数据采集时需要设置一定的时间间隔一般按1s采集延时,而且要保障光线的充足,当采集到重复的数据时,系统就会进行提示,这样会起到每个人等的数据唯一性,采集完毕后,界面左边会相应出现提示消息。

1.3刷脸签到

在整个系统中刷脸签到是最中心的一环,因为它可以检验系统的准确性,摄像头识别学生面部信息与数据库中的数据进行距离比较,国内外对图像距离的研究已经有许多成果,最常用的基于图像距离的度量方法有:马氏距离、欧氏距离、切比雪夫距离和绝对值距离等。在实际情况中,这些距离的度量方法在识别效果方面存在差异。欧氏距离由于其计算简单、容易理解而受到广泛应用。欧氏距离算法的核心是:设图像矩阵为n个元素,用这n个元素形成该图像的特征组,特征组形成了n维空间,特征组中的特征码(每一个像素点)构成了每一维的数值,在n维空间下,两个图像矩阵分别可以看成一个点,这两个点之间的距离可以利用欧氏距离公式来计算:

5f27d627d0091_html_1975124695147158.gif (1)

为了避免签到时摄像头拍到多张人脸的情况导致刷脸失败,在此设置刷脸签到时只抓取距离摄像头最近的人脸,即拍到的图像范围内的最大的人脸,同时对于签到失败的情况(例如脸部没有在摄像范围内)设置报错提醒。

1.4打卡结果

本文的打卡结果通过其是否超过打卡签到时间来表示,所以必须要人为设置打卡时间。例如9:00的课就可以设置打卡临界点是9:00,没有打卡的就说明这个学生旷课;如果该学生已打卡签到,但是超过了9:00,即出现迟到的情况,考勤日志里会自动出现相关记录,如图5所示。如果学生在9:00之前签到,即表明该学生成功签到,如图6所示。刷脸签到的同时,相关打卡签到记录在左边部分实时呈现,同时生成考勤日志便于日后查询,日志内容包括姓名、学号、打卡时间、是否迟到四项,清楚地表明了学生的打卡结果信息[2]

2人脸识别过程

2.1人脸检测

本文使用的是Dlib官方自带的人脸检测器进行检测,能够大大地简化开发,使得人脸检测能够轻易的实现[7],使用时只需要配置好使用环境,调用人脸分类器dlib.get_frontal_face_detector(),检测到的人脸设置用一个方框标注,便于观察并且输出人脸个数[3]

2.2特征提取与定位

人脸定位是将脸部特征(如眼睛、鼻子、嘴唇、眉毛、脸部轮廓)都标记出来,利用Dlib官方训练好的模型“shape_predictor_68_face_landmarks.dat”进行训练标定,用绿色点标识出来,总共68处。利用OpenCV进行图像化处理,用红色数字标识序号。从而达到特征提取与定位的功能。实现的68个特征点标定功能效果[4]

2.3人脸识别

近年来,深度学习研究由于其强大性能而渗透于各行各业的方方面面,深度学习在人脸识别方面效果也不错[8],理论上来说网络的深度越深越好,因为这样最后识别的效果可能比较好,但是事实上随着网络的加深,效果却越来越差。其中重要的原因是随着网络加深,梯度消失的现象就会越来越严重,达不到理想的效果。深度残差网络的出现就是为了解决网络深度变深以后的性能退化问题,ResNet是用跳跃结构作为网络的基本结构。本来要优化的目标是H(x)=F(x)+x(x是该结构的输入),通过这种跳跃结构以后就可以实现优化的目标由H(x)到H(x)-x的转变。训练目标转变后,上面几层会逼近于0,这样训练的难度比训练到一个等价映射就会下降很多。使用了ResNet结构后,网络的训练误差和测试误差都会相应减小。dlib_face_recognition_resnet_model_v1.dat是Dlib官方自带的训练好的深度残差网络人脸识别模型,之所以用这个模型是因为该模型已经做好了绝大部分的工作,并且在深度和精度上比卷积神经网络更加强大,只需要将人脸库图像与需要测试的图像进行描述子提取,生成128D向量,求取欧氏距离即可

[5]

3数据库设计

本文系统在数据库服务器上的关系数据库使用SQLServer,数据库中的信息主要包括学生的基本信息、学生的人脸特征信息、签到打卡记录等。其中,学生的人脸特征信息是进行人脸识别的基础。考勤记录是学生打卡签到的结果数据,是老师查询统计的基础。人脸识别即通过遍历数据库里的学生面部数据与当前摄像头里的学生面部数据的比对来实现[6]

结语:

此次主要讨论了基于人脸识别的学生老秦全新系统,在学生考勤实践中,该系统表现稳定、识别速度快、能准确的识别出对应的学生并且完成打卡签到,而且该系统相对于传统的识别系统,具有以下优点,它可以不用接触进行打卡,避免了因接触器坏掉而不能打卡的问题,只要该系统捕捉到图像就可以完成打卡,大大提高了学校管理的效率和水平,并且具有相当大的泛化能力。

参考文献:

[1]孙玥,杨国为.基于人脸识别的学生考勤系统的研究[J].现代电子技术,2020,43(10):116-118+123.

[2]代闯.基于人脸识别的高校学生考勤管理系统[J].自动化与仪器仪表,2019(09):198-201.

[3]缪顺云.基于人脸检测和识别的学生考勤系统研究[D].东华大学,2019.

[4]韦韩.基于人脸识别的考勤系统在学生宿舍的应用[J].现代信息科技,2018,2(10):118-119.

[5]吴天昊,赵健麟,周剑秋.基于人脸识别的学生考勤系统[J].机电产品开发与创新,2016,29(06):44-46.

[6]董雷刚,崔晓微,张丹,张华.基于人脸识别技术的学生考勤系统[J].大庆师范学院学报,2014,34(03):15-18.