基于人脸识别的课堂视频考勤系统设计
扫描二维码
随时随地手机看文章
0 引 言
高校的教学管理中, 出勤率的考核是一项重要的内容。传统的纸质点名方式或查学生证的方式不仅耗时、耗力,在考勤过程中还可能扰乱正常的教学秩序。近几年出现了一些现代化的考勤方式,比如刷卡 [1-2] 方式,学生携带一张 RFID 卡,需要将其放在读卡器上记录出勤情况,使用RS 232 将系统连接到计算机,并从数据库中保存记录的出勤信息。该系统可能会导致欺诈性访问问题,未经授权的人可以使用授权的身份证进入系统。指纹考勤系统 [3-4],在讲课期间学生可将手指放在传感器上,而无需指导老师干预,是一个简单可行的考勤方法。但是在讲课期间,设备的传递可能会分散学生的注意力,另外指模也可以代替同学签到。虹膜识别考勤系统 [5-6] 和 RFID 卡类似,需要每个同学排队检测虹膜,浪费课堂时间,扰乱课堂秩序。对分易考勤系统, 虽然可以调整考勤时间,但是每个学生都需要在手机上网签到,对于没带手机、或者没记住考勤号的同学可能会遗漏。当然对于考勤时间限制较长的,签到号完全可以发送到不到课堂的学生手机上,可以远程签到,不利于签到的准确性。随着人脸识别技术的发展,人脸考勤系统 [7-9] 也进入人员管理系统中。但是,常用的人脸考勤系统都需要专门的人脸识别设备,需要在上课前或下课后排队识别考勤,浪费时间, 也存在考勤后溜走不上课的情况。
为此本文设计一种新的人脸识别考勤方法,在无需老师和学生干预的情况下,实现学生在课堂环境中的自动识别和出勤记录。目前一般高校的各个教室都有高清监控摄像头, 这些摄像头会不断地捕捉学生的视频图像并保存到监控中心,用来记录学生的上课情况。本文利用监控视频拍摄下来的视频图像,在课堂上检测图像中的学生人脸,将检测到的人脸特征与数据库中的特征进行比较识别,并登记出勤情况。
1 系统总体设计
该系统由教室里安装的摄像头捕捉学生图像,并将其发送到监控中心后台进行处理和考勤。在后台的人脸识别系统中,根据上课时间按照一定的时间间隔从教室监控视频中捕获学生图像,并对图像进行增强和去噪处理 ;然后在图像中检测人脸,并将检测到的人脸进行对齐处理 ;最后进行人脸对比识别,并在数据库中标记出勤情况。本系统由图 1 所示的 4 个模块组成 :学生入学人脸图像采集模块、学生上课考勤人脸图像采集模块、人脸对比识别模块和考勤管理模块。
图 1 系统功能模块图
在学生入学时,都会采集他们的面部图像,存储在数据库中,并按班级分类,将这些图像经过预处理后按班级保存在学生人脸特征数据库中。在上课考勤时,对在教室采集到的图像进行人脸检测和对齐,并和数据库中图像逐一进行比较,如果能识别出来,则在考勤数据库中标记出勤信息。开始上课后,系统将自动启动考勤流程,在一节课堂中多次采集学生图像并进行人脸识别,自动获得出勤率,节省了大量时间,而且不会有任何弄虚作假情况。具体流程如图 2 所示。
图 2 视频考勤系统流程
2 系统模块设计
2.1 学生入学人脸图像采集模块
随着信息技术的发展,在学生入学时需要办理校园卡、银行卡,以及贷款等业务,这些业务系统都需要对学生进行人脸图像采集,并将图像和学生的基本信息进行绑定。本系统将这些采集好的人脸图像数据库作为人脸图像的查询库, 按学生的学号将图像与基本信息按班级分类,做成班级考勤的人脸识别库。具体流程如图 3 所示。
图 3 人脸数据库采集流程
目前, 提取人脸特征的方法较多, 如基于主成分分析 (Principal Component Analysis,PCA) 技 术 [10-11] 的Eigenfaces[12], 该方法是 PCA 最具代表性的方法, 是应用于人脸识别问题的最流行的算法之一 ;基于线性判别分析(Linear Discriminant Analysis,LDA)的方法 Fisherfaces[13], 以及 Fisherfaces 的改进方法 KFDA[14]。PCA 和 LDA 有相似之处,都是对原有数据进行整体降维映射到低维空间的方法。LDA 同时考虑了类间离散度和类内离散度,使这两者的比率达到最大。经实验证明,Fisherfaces 的性能优于 Eigenfaces。本系统采用 OpenCV+Fisherfaces 的方法提取人脸特征并进行人脸识别。采集到的人脸图像由较多的像素组成,如果一个像素为 1 维特征,那么得到的人脸图像将是一个维数很高的特征向量,计算量非常大,且人脸中的这些像素都具有一定相关性。PCA 和 LDA 技术能在降低图像维数时降低原始各维特征之间的相关性。根据 LDA 技术对采集的学生人脸图像提取特征,并将特征保存到人脸特征数据库中,以供在课堂考勤中进行人脸对比识别。
2.2 学生上课考勤人脸图像采集模块
在学生上课时,该教室的摄像头会随着老师讲台的打开自动打开,学生进入教室时,摄像头一直工作,在上课期间采集上课的每位学生图像。因为教室的摄像头不是专门采集人脸的,上课时拍摄到的图像中存在学生的脸部姿势不正, 大小各异(教室前面的脸部大,后面的学生脸部小),所以需要进行人脸检测和人脸对齐。在人脸检测前,先对视频图像进行预处理,此预处理步骤涉及提取人脸图像的直方图均衡和去噪处理 ;然后在图像中检测人脸,定位人脸部分后使用人脸对齐方法 [15-17] 进行脸部剪切、仿射变形 ;最终生成人脸正面图像,并将其大小调整为 100×100 像素。直方图均衡是最常用的直方图归一化技术,通过扩展图像的强度范围提高了图像的对比度,使图像更清晰。归一化后将人脸图像调整为统一大小,再按照 LDA 的方式提取人脸特征。
2.3 人脸对比识别模块
从检测到的人脸图像中提取到特征后,需要将其和存储的人脸特征数据库进行查询对比,识别人脸图像。因此,在人脸检测步骤之后,下一步是人脸识别。在第 2.2 节已经检测到图像中的所有人脸,并使用对齐方法剪切下来规整成统一大小的脸部正面图像,接下来提取这些人脸图像的特征并逐一与该班级的学生人脸特征数据库进行比较,这样通过人脸数据库对学生的人脸进行逐一验证,就可以识别出学生的身份,同时在考勤管理数据库中标注学生的出勤情况。具体做法为 :将学生入学人脸采集图像作为样本图像,学生上课考勤的人脸作为测试图像,然后使用 LDA 方法提取图像特征,最后通过构造特征空间进行投影计算,使用分类器进行人脸识别,具体流程如图 4 所示。在人脸对比模块中,采用的分类器是模式识别中常用的最近邻方法,此方法直接简单, 容易实现,可用于任何分布的数据。在训练样本足够时,最近邻分类法的效果比较理想。
2.4 考勤管理模块
考勤管理包括学期管理、课程管理、班级管理、学生管理、考勤登记管理和考勤记录导出功能。在使用人脸识别进行考勤时,系统根据课程安排将检测到的各班学生人脸图像特征与对应班级的人脸数据库特征逐个进行比较验证,并在服务器上的考勤登记管理中登记学生出勤情况。识别出的人脸将登记为出勤,没有识别到的人脸将登记为缺勤,并提供导出到 Excel 的功能,打印出各个班级学生的考勤情况,也可以通过别的系统将各班考勤情况及时公布。
结 语
本文基于人脸识别技术设计出一种自动考勤系统,充分利用原有的监控设备,在上课期间自动进行考勤,无需排队采集信息,无需人工干预。该系统比传统的考勤系统省时省力,同时又不干扰正常的教学过程,并能准确检测学生在课堂上的出勤情况,为学生考勤管理提供了方便快捷的方法。
该系统在理想条件下能取得较好的效果,但是,实际情况中,由于教室中光线、角度、表情等多种因素会影响系统识别准确度。在今后的工作中,将考虑使用 GPU 高性能图像处理服务器,采用深度学习的方法提高系统对现场复杂环境的适应能力,使人脸识别能达到人类识别的精确度,提高考勤的准确性。