基于人脸图像的考勤系统设计
2020-08-21代美茹王法胜
代美茹 王法胜
摘要:为了解决传统的考勤方式存在的问题,缩短课堂考勤时间,提高考勤效率,设计了基于人脸图像的考勤系统。系统基于百度人工智能开放平台提供的人脸识别接口,采用MVC设计模式,高效整合服务器、浏览器和数据库,具有清晰的系统结构。学生通过提交人脸图像进行注册,教师通过现场采集人脸图像进行考勤。教师可通过相应接口查看课堂考勤结果,并汇总统计。该系统能够解决传统的纸质考勤和指纹考勤存在的问题,为高校课堂管理提供技术支持。
关键词:考勤;课堂管理;人脸图像;MVC设计模式;人脸识别
中图分类号:TP311文献标识码:A
文章编号:1009-3044(2020)21-0005-03
开放科学(资源服务)标识码(OSID):
1 背景
高校课堂是大学生端正思想、学习知识、提升修养、树立合法正确人生观、价值观、世界观的主要场所。作为当代大学生,我们应当按时到达课堂、积极参与课堂考勤与教学活动,主动维持课堂教学秩序,响应高校建设优良学风的制度,同时也有利于我们自身纪律意识的养成。但是就目前高校形势而言,学生基数大,教室分布范围极广,且学生流动性强,传统的考勤方式存在着工作量大、人手不充足、数据统计困难、管理效率低下等问题,学生缺勤状况频频出现,甚至存在代上课代考勤现象,导致不良学风的形成,严重影响了学生的学习成绩与高校的形象建立。
在传统的考勤方式里,人工点名、打卡考勤和指纹考勤各自占有了重要地位。人工点名虽然可以灵活运用,但是需要的人力资本太大,且統计不便。打卡考勤虽然便于统计,但是无法根除代打卡、代考勤问题的出现。指纹签到虽然利用了人体生物特征,不会出现代考勤的状况,但是遇到指纹浅、破损指纹或者干燥天气等无法识别的情况,也会产生一些需要特殊处理的问题。人脸考勤运用了人体生物特征技术,不但具有标记唯一的特点,而且易于管理,便于统计,并且准确度、实时性和可操作性都具有一定保证,相对于传统考勤方式,具有显著的优势。
2 系统分析
基于人脸图像的考勤系统主要包括四个部分:登录模块部分、学生模块部分、教师模块部分以及管理员模块部分。登录模块部分包括学生、教师、管理员三种目标角色的登录功能;学生模块部分包括人脸注册、查看个人课程信息、查看个人考勤信息以及修改密码功能;教师模块部分包括课堂考勤、查看个人所教授课程信息,查看、修改课程考勤信息,修改密码;管理员模块部分包括查看、修改、删除学生信息、教师信息、课程信息与考勤信息,同时也可对人脸库进行相关管理:人脸注册,人脸更新,复制用户,删除用户,创建学院,删除学院,学院列表查询,人脸搜索。系统用例图如图1所示。
3 系统设计
3.1 系统体系结构
本系统采用MVC设计模式,视图层由JSP结合HTML,css,JavaScript技术实现,负责与用户进行交互,从模型中获取数据向用户进行展示,同时也能将用户请求传递给控制层进行处理。当模型发生变化时,视图层对用户界面进行同步更新,从而保持与模型数据的一致性。控制层由Servlet实现,负责应用程序中处理用户交互的部分,他负责从视图中读取数据,控制用户输入并向模型发送数据。业务逻辑层从控制层接收数据,根据业务规则协调模型层对象完成业务逻辑操作,返回控制层需要数据。
DAO层将从业务逻辑层接收到的命令执行,对具体的数据库信息表进行操作,实现增删改查。在本系统中,学生DAO层、教师DAO层、管理员DAO层、课程DAO层、考勤DAO层分别负责对应信息表的查询、修改、删除操作。实体类封装各个实体模型对象,执行实体对象业务逻辑操作,在本层中封装Student、Teacher、Manager、Classl、Attendance五个实体类。
3.2 系统总体设计
系统的角色分为教师、学生和管理员。三种角色可分别通过登录模块进入系统,学生通过登录模块登录成功以后,可以执行人脸注册操作,通过上传个人清晰无遮挡的正面照片,调用AI开放平台API,向平台人脸库中注册用户人脸。同时也可执行查看课程信息、考勤信息,修改密码与注销登录操作;教师在登录后,将课上通过摄像设备采集的多人图片上传至系统,服务器通过调用AI开放平台的API与人脸库中的人脸进行比对搜索操作,并返回比对成功的人脸信息列表,将该人脸信息列表ID同数据库中的学生信息进行比较搜索并返回至前端;管理员可通过操作数据库的增删改查来操作管理学生信息表、教师信息表、课程信息表以及考勤信息表,同时也可调用相应API对人脸库进行相关操作。系统的模块层次如图2所示。
系统在Eclipse平台开发,基于B/S架构,运行维护比较便捷,能够实现不同的用户角色,在不同的地点、利用不同的接人方式、对共同的数据进行访问和操作。运用MVC设计模式,完成系统的体系结构设计,采用HTML、CSS、JavaScript等技术编写JSP页面;Java语言进行后台数据处理。AI开放平台选用“百度智能云”,与其他平台相比,它可以在待识别的图片中存在多张人脸的情况下,支持在一个人脸库中,一次请求,同时返回图片中所有人脸的识别结果(M:N模式),图片支持PNG、JPG、JPEG、BMP等多种图片格式。
4 系统主要功能实现
4.1 学生端功能实现
学生模块主界面采用绿色作为主色调,采用Frameset框架进行嵌套搭建,顶部为Banner及信息提示区,底部为版权信息区,主体部分采用中心1200像素区域作为安全区以避免不同浏览器的兼容问题,左侧为纵向导航,单击后相应信息会在右侧区域进行显示。
4.1.1人脸注册
进行课堂考勤之前,学生必须将人脸信息注册至人脸库,要求采用清晰无遮挡人脸正面照片来进行注册,逻辑实现时序图如图3所示。 人脸注册需要将人脸ID(学号)、学院以及人脸图片路径作为参数传人,调用API成功注册以后会弹出提示框提示操作结果,运行界面图如图4所示。
4.1.2查看课程信息,考勤信息
学生可以查看自己专业所要学习的课程信息和自己个人的考勤信息,把查询课程信息请求发送至控制层,在控制层调用业务逻辑层find0方法,利用DAO层与数据库进行交互,获得课程信息并返回,时序图如图5所示。
“查看课程信息”导航与“查看考勤信息”导航均以该学生的学号为基础进行查询,展示结果为学生个人信息,不会涉及其他学生信息,安全性较高,运行界面图如图6、7所示。
4.2 教师模块功能实现
4.2.1查看课程信息
教师可以在“查看课程信息”导航里查看自己所教授的课程,将教师查询课程信息请求发送给控制层,在控制层调用业务逻辑层listAIlO方法,利用DAO层与数据库进行交互,获得课程信息并返回。“查看课程信息”导航会显示教师所教授课程的所有信息,包括课程号、课程名称、教工號、教师姓名与课程专业。如图8所示。
4.2.2 查看、修改考勤信息
教师可以在“查看考勤信息”导航中可查看自己所教授的课程的学生考勤信息,将教师查询/修改课程信息请求发送给控制层,在控制层调用业务逻辑层listAIlO/update0方法,利用DAO层与数据库进行交互,完成相关操作并返回。时序图如图9所示。
如果识别有误,教师可在“查看考勤信息”查看自己课程内学生的考勤情况,并及时予以修正,部分相关运行界面图如图10、11所示。
5 结束语
本文设计实现了基于人脸图像的考勤系统,实现了学生、教师端的人脸注册和考勤功能,界面设计美观,操作简便,能够提高高校课堂管理和教学过程管理的效率。本系统经过测试并部署运行,其功能能够满足高校教学运行需求,并且具有较强的易用性。在下一步工作中,将开发系统的移动端,进一步提高系统的使用效率。
参考文献:
[1]郝新华.人脸识别在公安工作中的应用[Jl.中国公共安全(综合版),2006(8): 65-68.
[2]谷惠敏.基于Web的高校档案管理系统设计[J].现代电子技术,2015, 38(21): 139-141.
[3]李芳芳,吴秦英,李凌云,等.基于百度AI平台人脸识别技术的校园食堂结账系统[J].信息记录材料,2019,20(4):132-133.
[4]刘文清.基于AI开放平台的机器视觉应用开发技术[J].湖南电力,2019,39(6): 13-15.
[5]庞国莉.数据库原理与应用[M].北京:清华大学出版社, 2010.
[6]彭宇,胡丽慧.基于MVC框架模式的系统登录注册的设计实现[J].大众科技,2017,19(3): 13-15.
[7]霍妍,李长明.基于人脸识别考勤系统的设计与实现[Jl,通化师范学院学报,2016,37(12): 1-3.
【通联编辑:谢媛媛】
基金项目:辽宁省自然科学基金指导计划项目(项目编号:2019-ZD-0171);大连市青年科技之星项目(项目编号:2017RQ151);大连民族大学本科教育教学改革研究与实践项目(项目编号:YB2019105)
作者简介:代美茹(1997-),女(回族),河北沧州人,学士,主要研究方向为物联网技术及其应用;王法胜(1983-),通讯作者,副教授,博士,主要研究方向为计算机视觉。