APP下载

基于人脸识别的学生学情分析系统

2019-05-24胡汪静赵克华卢俊杰郭浩悦徐锋

电脑知识与技术 2019年7期
关键词:人脸识别

胡汪静 赵克华 卢俊杰 郭浩悦 徐锋

摘要:当前,人脸识别技术已经被应用于社会的很多个领域,但是并没涉及高校考勤系统。本论文的基于人脸识别的学生学情分析系统是将人脸识别技术应用于高校考勤系统之中,这种自动点名模式不仅革新了老师上课叫名字点名的传统签到模式,而且还可对学生的出勤情况进行分析得到有效信息。

本项目的PC端将运用J2EE来实现,后台接口将PC端和Android端相连接实现信息的传递。Android端是针对Android系统和人脸识别的核心技术进行展开研究和分析,根据人脸识别理论和算法,提出了在Android平台下实现人脸识别考勤系统的设计方案,并最终实现把人脸识别技术用于学生课堂到课、旷课的统计之中,其基本原理是借助于安卓设备和计算机网络并利用人脸识别技术实现自动统计学生到课情况。

关键词:人脸识别;考勤系统;J2EE;安卓开发

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2019)07-0178-02

引言

随着科技的不断进步,“快速、便捷、安全”也成为重要的社会代名词,所以人们在快速有效的自动身份验证方面也越来越重视。各方面都在朝着这个目标而不断努力,使得生物特征识别技术在近几十年中得到了飞速的发展[1]。

人脸识别技术在生物特征识别技术中占据越来越重要的地位,将这种技术運用在大学生考勤上可以形成智能化的高校。伴随着Android系统的不断发展,人脸识别技术的逐渐成熟,定位技术的广泛应用,基于 Android 的人脸识别考勤系统应运而生了[3]。

1 系统总体结构设计

1.1系统总体方案

本系统按照系统架构设计方案和各模块功能可分为Android端和PC端[4]。PC端具有教师登录、课程安排、根据条件查询、查看历史数据、管理员账号分配、实时监控的功能。Android端具有学生注册、学生登录、考勤记录、重新定位的功能。本系统的总体功能结构图,如下图1所示:

2 系统软件设计

2.1 PC端应用设计

每一个教师(管理员)根据自己的账号密码登录PC端,在登录系统后,系统分为两大模块:信息管理维护模块和信息查询反馈模块。信息管理维护模块主要是对学生考勤系统的基本信息进行管理和维护,它是由基础信息管理、管理员管理和考勤时间段设置三个部分组成。信息查询反馈模块主要是显示学生的考勤情况,可以根据相应的需求查出学校的到勤率、学院到勤率等。

2.1.1 功能技术设计

PC端分为教师和管理员端。教师端具有教师登录、课程安排、根据条件查询、查看历史数据的功能。管理员端具有管理员登录、账号分配、实时监控的功能。

如图2所示为PC端的技术路线图。

1)判断登录

当Android端登录页面输入学号和密码后,将登录请求发给后台数据库。若该学号密码与数据库的用户表里学号密码一一对应,则做出登录成功的应答;若若该学号密码与数据库的用户表里学号密码不对应,则做出登录失败的应答[5]。

2)判断考勤时间

在数据库里会根据学生的课程表的上课时间,设置相应的考勤时间,只有在那段时间内才能开启考勤系统。所以在学生登录系统后,Android端会将登录时间获取出来,将这个时间与数据库中的考勤时间进行对比[6]。

3)判断特征值

Android端会将扫脸的图片转化成特征值,然后将该特征值发送给后台数据库[7]。数据库会查询该学生数据库内的特征值进行判断,最后将该结果返回给Android端。

4)判断考勤结果

在数据库里对考勤结果有自己的判断方法,该判断方法返回三个结果值:已到,迟到,旷课。

2.2 Android端平台设计

手机App终端直接应用于学生人脸识别,根据考勤结果将数据存入数据库(以便于PC端查询相对应的数据),最后Android端返回考勤成功信息[8]。

2.2.1 人脸识别技术

人脸注册 ,首先要先检测出来人脸,对于静态图片,虹软人脸SDK中对应的是FD,提供了一个方法名称,叫AFD_FSDK_StillImageFaceDetection 。mRect定义一个了一个矩形框Rect,在此之前我们需要注意虹软人脸SDK使用的图像格式是NV21的格式,所以我们需要将获取到的图像转化为对应的格式,在List中保存了检测到的人脸的位置信息和深度信息,我们可以将检测到的人脸位置信息在图片上用一个矩形框绘制出来表示检测到的人脸信息。

通常人脸库会存放在数据库中,本系统使用List来进行简单的模拟,并将其保存在文本文件中,需要时从文本中读取,保存时写入到文件中[9]。

我们使用一个第三方的扩展库,ExtGLSurfaceView的扩展 库CameraGLSurfaceView,用ImageView和TextView显示检测到的人脸和相应的描述信息[10]。从摄像头识别人脸,需要使用FT库,FT库在人脸跟踪算法上对人脸检测部分进行了优化,是专门为视频处理而优化的库。

2.2.2 App功能技术设计

手机端具有学生注册、学生登录、考勤记录的功能。

如图3所示为Android端的技术路线图。

(1)注册人脸

1)使用openCamera函数调用手机摄像头进行人脸的扫描[11]。扫描后对人脸进行检测,并调用AFD_FSDK_StillImageFaceDetection返回特征值存入数据库学生表中。

(2)登录考勤

1)注册成功后直接跳转到登录页面,直接登录进行考勤。

2)登录后系统获取本机时间传入数据库,判断是是否为考勤时间。

3)考勤成功数据存入数据库,判断该学生的考勤状况是准时到、迟到、还是旷课。

(3)考勤记录

1)实时数据:从数据库考勤记录表中获取实时数据在界面上显示。

2)历史数据:根据考勤记录表对整个学期课程考勤记录的显示。

2.3 PC与Android端的通信

Android学生以学号和密码登录系统后进行人脸识别考勤,将考勤次数传给数据库,PC端获取数据信息,将该条考勤记录显示在该生的考勤里面。实现功能操作如下:

1)设计一个连接服务器端的类,用户写入url,通过类中的函数根据 url 中的请求参数向服务器进行发送请求;

2)Web服務器根据请求指令所调用相关的数据,制作并制作成JSON格式数据包并且及时发送给Android 系统客户端[12]。

3)Android 系统客户端在接收到JSON格式数据包后,对其进行解析。

3 系统应用实际测试效果

3.1 APP人脸注册

学生通过管理员指定的账号密码第一次登录系统时,系统会马上进入人脸注册,转到扫一扫进行人脸识别的注册,注册过程中将人脸转成特征值进行存储,显示注册成功的提醒。

3.2 APP人脸识别考勤

在多次测试人脸后,发现人脸识别置信度与注册时的人脸有直接关系,因此需要确保注册时的人脸是清晰的、完整的,这样可以大大提高识别率。其次在扫脸过程中,人脸需要针对摄像头,角度左右不能超过大约30°,另外不同的环境也会影响识别率的高低,例如光线太暗或具有强烈的光。

3.3 PC端与移动端的通信测试

当学生进行人脸识别注册后数据库中存入该生的特征值信息进行存储。

特征值获取后学生进行人脸识别匹配,匹配率大于0.6,传给后台result成功,系统判断该生的时间返回一个result的值存入数据库中,后台根据result值返回学生考勤信息。

3.4 Web考勤显示

当学生用Android端进行考勤时,扫脸所计算出的特征值会与数据库里面注册的人脸特征值进行匹配,当两个特征值匹配成功时会对学生考勤时间与数据库内设置的对应考勤情况时间进行比较,根据学生的考勤时间将该条考勤记录存入数据库,最后将该条考勤记录推给PC端的实时数据页面显示出来。

4 总结

本系统设计针对目前大学生考勤系统存在的点名耗时长、学生旷课情况严重、统计学生考勤情况工作复杂等问题,是人脸识别技术+APP+Web应用三者的有机结合,降低了系统成本,提高了系统的灵活性。这种自动点名模式不仅革新了老师上课传统的点到模式,而且还可对学生的考勤信息等进行自动统计,便于老师和学院及时了解学生出勤情况,降低人力、沟通成本,极大提高课堂效率;同时也可实现学生上课的身份核查与认证,有效防范冒名点到等现象。而且本系统还可以释放老师的工作量,提高老师的教学质量。

参考文献:

[1] 于宝华,贾于博,谷苏岗.基于Andriod的高校学生毕业设计管理系统设计[J].福建电脑,2017,33(12):137-138.

[2] 车志宏,焦子路,刘荣.人脸识别技术研究与应用[J].电脑编程技巧与维护,2017(16):78-81.

【通联编辑:闻翔军】

猜你喜欢

人脸识别
人脸识别 等
揭开人脸识别的神秘面纱
基于(2D)2PCA-LBP 的人脸识别方法的研究
人脸识别在高校安全防范中的应用
基于类独立核稀疏表示的鲁棒人脸识别
基于K-L变换和平均近邻法的人脸识别