基于人脸识别的视听残障学生教学课堂考勤系统.docx
基于人脸识别的视听残障学生教学课堂考勤系统
卓然高飞牟远明杨初华
摘要:本文基于人脸识别技术,采用人脸识别结合人脸特征匹配的方法,并根据视听障碍学生的特点,对视听残障课堂考勤系统进行探索与设计,设计开发了一款视听残障学生的无感知课堂考勤系统并对存在的问题进行了阐述。
中图分类号:TP183?文献标识码:A?论文编号:1674-2117(2021)07-0101-04
在课堂教学中,要保证正常的课堂秩序,课堂考勤是不可缺少的关键一环。在各类残疾障碍学生当中,视力障碍学生和听力障碍学生的课堂考勤存在的困难比较突出。其中,视力障碍学生在考勤时因为自身视力障碍,不能查看输出设备上的电子考勤表单,通常采用人工大声宣读被考勤人的名单来进行单独考勤;而听力障碍学生在考勤时,因自身听力障碍,不能采用听读方式进行考勤,通常通过手语结合投影仪投放考勤表单进行考勤。但这些考勤方式都存在局限性,常常出现被考勤人注意力不集中而错过考勤的情况,严重影响了课堂考勤的效率。为此,采用人脸识别技术进行无感知考勤成为特殊教育领域课堂教学的研究热点之一。
随着信息技术的发展,人脸识别技术在各个领域中的应用日渐深入,很多学者开始探讨该技术在课堂管理和课堂考勤方面的应用。文献[6]中,官瑞坤等以人脸识别技术为基础,以Face++为云平台设计了Android智能考勤系统,系统简单易用,但仅支持Android系统;文献[7]中,金维香等通过OpenCV与Python语言相结合,基于人脸识别技术设计的课堂考勤系统,提高课堂考勤效率;文献[8]中,牛作东等基于计算机视觉技术,根據MVC架构搭建系统整体结构,设计了基于深度学习的计算机视觉模型进行人脸检测和识别,通过Web服务实现实时考勤功能;文献[9]中,朱靖娴等利用人脸识别技术实现了基于Java的在线考勤系统,存在着一定的考勤错误率;文献[10]中,叶璠等基于MTCNN人脸检测技术,利用VGG19神经网络提取出的特征训练SVM模型,确保识别的可靠性。
上述的考勤方法,有各自的优势和不足,但是应用到视听残障学生的考勤有较大的困难。本文基于人脸识别技术,采用的是虹软sdk和c#语言,并根据视听障碍学生的特点,对视听障课堂考勤系统进行探索与设计。
系统主要功能的实现
1.人脸注册模块
人脸注册模块最重要的功能是对人脸库图片进行人脸检测和提取人脸特征,最后把相关数据保存到数据库模块。该模块需预先导入人脸库图片,可手动选择图片的路径,模块预设图片的常见格式进行图片的选择,可以同时导入多个图片,导入的同时对图片格式的适用性进行检查。人脸检测之前,需要对图片进行检查和处理,对过大的图片进行剪裁,处理后得到的图片宽度也有相应的要求,以便于后续的人脸检测操作。
人脸检测操作通过虹软FaceUtil模块中的DetectFace函数进行检测,通过循环语句判断每一张图片的检测结果,将检测的图片信息存入图片暂存列表中。人脸检测使用的语句为:ASF_MultiFaceInfomultiFaceInfo=FaceUtil.DetectFace(pImageEngine,image)。通过如下语句将人脸特征结构体的指针转换为人脸特征结构:MRECTrect=MemoryUtil.PtrToStructure(multiFaceInfo.faceRects)。
提取人脸特征操作需从图片暂存列表中读取图片,使用虹软模块中的ExtractFeature函数进行图片中人脸特征的提取,若提取成功,则将人脸特征值存入人脸特征列表。提取人脸特征使用的语句为:IntPtrfeature=FaceUtil.ExtractFeature(pImageEngine,image,outsingleFaceInfo)。
2.图像识别模块
3.视频检测模块
视频检测模块按照功能来分可以分为以下三个部分:初始化检测、RGB摄像头事件和RGB-IR摄像头事件。该模块能实现自动检测摄像头并获取图像,检测图像中的人脸并标注矩形框,进行对应的活体检测并将信息传到数据库。具体如图2所示。
模块中,初始化检测主要检测的是摄像头的数量和类型,以确保程序的正常运行。当程序检测到视频检测按钮被点击时,开始初始化检测,以防出现点击视频检测按钮之前将摄像头拔掉的情况。若未检测到摄像头,则返回相应的提示并返回。若摄像头已经开启,则关闭摄像头以防占用,并将阈值控件、各个按钮以及各类参数重置。若检测到RGB-IR摄像头,则进行RGB-IR摄像头加载,双摄标志调为True;若检测到RGB摄像头,则加载对应的摄像头。
若检测到的是RGB摄像头,则启动RGB摄像头事件。首先确保RGB摄像头正常运作,得到当前摄像头下的图片,获得格式为Bitmap,检测人脸,对人脸进行画框,将上一