基于人脸识别的中学课堂考勤系统的设计
2015-03-25陈鸿飞严忱君俞宝福
陈鸿飞,严忱君,俞宝福
1.绍兴市柯桥区柯桥中学,浙江绍兴 312065 2.浙江大学仪器系,浙江杭州 310027 3.绍兴市为信电子科技有限公司,浙江绍兴 312066
基于人脸识别的中学课堂考勤系统的设计
陈鸿飞1,严忱君2,俞宝福3
1.绍兴市柯桥区柯桥中学,浙江绍兴 312065 2.浙江大学仪器系,浙江杭州 310027 3.绍兴市为信电子科技有限公司,浙江绍兴 312066
课堂考勤是教学过程中的一个重要环节,传统的人工统计方法会造成教学时间的大量浪费。本设计提出了一个基于人脸识别的课堂考勤系统,大大节省了考勤占用的时间。首先,建立一个图像数据库,其中包含所有已选课学生的人脸图像,用基于特征脸的机器学习算法训练出一个人脸识别系统。接着,用摄像头依次采集学生的人脸图像,与数据库进行匹配,即可识别学生身份并完成签到。所有学生完成签到后,系统可以统计出勤率、缺课学生名单等。同时,可以对系统难以识别的学生进行手动签到。该系统对于中学“走班制”教学具有很好的推广应用价值。
人脸识别;特征脸;课堂考勤系统
1 中学课堂考勤系统的设计背景
自《浙江省高考改革方案》出台以来,不少高中已陆续推出方案应对新政,其中一项重要的举措是实行“走班制”。这就意味着,中学生可以像大学生一样,依据自己的兴趣、特长进行自主选课;学生不再是在固定的教室上课,而是流动的。在“走读班”给广大中学生带动了兴趣化学习优秀的同时,也不可避免地出了一些新的情况。上课学生的流动性以及学生座位的不确定性,会给课堂考勤带来很大麻烦,若用传统点名的方式会浪费大量宝贵的上课时间。
因此,本论文针对这一问题,提出了基于人脸识别的中学课堂考勤系统的设计方案。学生只需在临上课前“刷个脸”就能完成签到。这样不仅极大地节省了课堂时间,还能保证考勤的准确率,防止作弊。
2 人脸识别的算法设计
人脸识别是对已知人脸进行匹配,即“对号入座”的过程,它与人脸检测是不同的概念。人脸检测只能确定图像中是否存在人脸,而人脸识别能够知道这个人是谁。目前,有许多技术能让计算机学会识别人脸,一般来说,一个人脸识别系统通常包括以下四个步骤。
2.1 人脸检测
在2000年以前,人脸检测技术并不发达,那时已有的技术要么运行缓慢,要么可靠性低,都无法推广使用。直到2001年,Viola和Jones[1]采用基于Haar的级联分类器来检测人脸,使这些问题得到了极大改善,它终于让实时人脸检测和人脸识别成为了可能。
本文将采用基于Haar分类器的人脸检测技术。Haar分类器的要点如下:1)使用Haar-like特征作为特征描述子。2)使用AdaBoost算法训练区分人脸和非人脸的强分类器。3)将强分类器级联到一起,提高检测准确率。4)使用积分图对Haar-like特征求值进行加速。用Haar-like特征进行人脸检测的原理是对于脸部正面的大部分区域而言,存在较为固定的明暗变化,如眼睛所在区域应该比前额和脸颊更暗,嘴巴应比脸颊更暗等等。Haar-like特征是带有黑白条纹的矩形,将它放到人脸和非人脸区域可以得到不同的特征值。得到特征值之后,需要使用分类算法来区分人脸和非人脸,本文采用AdaBoost算法训练出多个最优弱分类器,并将它们组合为强分类器。然而在实际应用中,单个强分类器还是难以保证检测的正确率,因此这里采用级联的方法,将多个强分类器级联到一起,进一步提高检测准确率。最后,要想实现人脸的实时检测,需要用到积分图。对于每个图片样本,我们都面临如何计算特征值的问题,即一个Haar-like特征在一个窗口中怎样排列能够更好地体现人脸的特征,这是未知的,需要训练。在训练之前我们要通过排列组合穷举所有这样的特征,计算量十分巨大。而积分图就是只遍历一次图像就能够求出图像中所有区域像素和的快速算法,极大提高了图像特征值的计算效率。
人脸检测适用于灰度图像,因此要把摄像头采集到的彩色图像转为灰度图。其次,在光线不足的情况下,人脸检测器并不可靠,所以要用直方图均衡化来改善图像的亮度和对比度。另外,要把采集到的人脸图像缩放到统一的尺寸进行处理。完成以上工作后,可以开始真正的人脸预处理。
2.2 人脸预处理
除了光照条件外,人脸识别还极易受面部表情、脸部方向、摄像头远近等因素的影响,若不消除这些干扰,很可能导致人脸识别不准确,例如将两个不同的人识别为同一个人。为了之后能使用学习算法来学习不同的人脸图像,需要把不同人脸图像的尺寸、布局、亮度、对比度等调整到相同。
要解决以上问题,一个最简单的方法是采用直方图均衡,这与人脸检测时做的一样。在通常情况下,我们始终可以假定人眼是水平的,对称分布在人脸上,两只眼睛的大小是相当的。我们可以使用眼部检测器搜索到双眼位置。接着,可根据使两个眼睛保持水平来旋转图像;使眼睛位于所需高度来平移图像;使两个眼睛间的距离相同来缩放图像。另外,因为人脸识别受发型、服饰及配饰等影响较大,因此需要裁剪图像。也就是说,裁剪掉头发、额头、耳朵和下巴等部位,仅保留眉、眼、鼻子和嘴巴用于识别。人脸预处理,简单来说就是要将外界干扰消除,使系统能真正将不同人脸之间的本质区别用于比较。
2.3 收集和学习人脸
收集人脸是一个比较简单的过程:用摄像头采集到人脸图像并经过预处理后,放入相应的数组中,同时将类标签放入类标签数组中,这里类标签就是对应的人名。人脸识别算法能对不同的人脸进行分类,首先是训练阶段,完成训练后,将学习结果保存到文件中,可调用它来识别人脸,这是测试阶段。为了使测试结果更理想,训练集应包含人脸变化的各种情形。
样本采集完成后,要使用合适的用于人脸识别的机器学习算法来训练一个人脸识别系统。由于特征脸较为简单,且性能与许多更复杂的算法差不多,因此这里采用特征脸方法。其原理是计算一组指定的图像(特征脸)和混合比例(特征值),这两者可按不同的组合方式得到训练集中的每幅图像。因此,可用不同特征值来区分不同人脸。特征脸方法采用主成分分析进行降维和特征提取,采用区别最大的特征来区分人脸。
2.4 人脸识别
经过以上的工作,可以轻松地使用OpenCv提供的FaceRecognizer类来识别人脸。同时,为了判断得到结果的可靠度,可以引入置信度,即结果的可信程度。当置信度过低时,可将人脸识别为陌生人。
3 课堂考勤系统的软件设计
基于人脸识别的课堂考勤系统的软件流程及界面设计如下:点击界面上的开始点名按钮,摄像头将自动打开并开始搜索人脸,当检测到人脸图像时将自动识别出对应的学生完成签到并显示该学生的基本信息以供核对。学生可依次进入摄像头区域完成签到,无需手动操作。当所有学生完成签到后,老师可查看未到学生名单,其证件照将显示在界面底部,呈滑动效果。此时,如果有学生是因表情、肤色变化等原因无法被系统识别,可以在老师的帮助下通过手动签到按钮进行签到。这样设计可以防止因系统无法识别而使学生无法签到,更加人性化和科学化。
4 结论
借助基于人脸识别的课堂考勤系统,可以在上课前快速完成课堂考勤工作,极大地节约了课堂时间,可以让老师、同学都更好地投入课堂学习,提高了课堂效率,也为后期学生选课的科学化管理与统计提供了最基础的原始数据,为后期的“走读化”制度进一步改革与提升提供了技术保障。因此,基于人脸识别的中学课堂考勤系统具有很强的实用性。同时,目前的人脸识别算法较为发达,技术比较成熟,可以使得该系统具有较高的可靠性。基于以上两点,基于人脸识别的课堂考勤系统将会有广阔的发展空间。
[1]Viola P,Jones M,Rapid Object Detection using a Boosted Cascade of Simple Features[J].Proceedings of the 2001 IEEE Computer Society Conference on Computer Vision and Pattern Recognition,2001(1):511-518.
[2]Kshirsagar V P,Baviskar M R,Gaikwad M E,Face Recognition Using Eigenfaces,2011 3rd International Conference on Computer Research and Development,2011(4):302-306.
[3]Ahonen T,Hadid,Face Description with Local Binary Patterns:Application to Face Recognition,IEEE Transactions on Pattern Analysis and Machine Intelligence,2006,27(12):2037-2041.
TP2
A
1674-6708(2015)144-0091-02