基于大数据的高校机考平台学生面部识别信息分析
2020-06-08陈梅
陈梅
摘要:本应用系统主要针对学生考试过程中的人脸信息进行图片采集,解析图片得到相应的数据信息,最后将数据可视化呈现,为考试结果提供辅助性参考信息。根据开发要求,本系统用于完成采集学生的面部信息,如表情、眼镜以及偏向程度等,基于腾讯优图提供的人脸检测与分析、人脸关键点定位与追踪以及人脸验证等技术,提取出图片中人脸的有效信息提取出图片中人脸的有效信息来对高校机考平台学生面部数据进行采集分析。
关键词:大数据;人脸识别;图片分析;学生面部信息
中图分类号:TP399 文献标识码:A
文章编号:1009-3044(2020)10-0183-04
1绪论
1.1研究背景
1.1.1人脸识别的现状
如今,信息技术愈发渗透我们的生活,人们越来越享受科技带来的乐趣。云计算、物联网和人工智能技术变革式发展,相关应用百花齐放。人脸分析作为许多智能化应用的核心环节,近几年越来越受到学者关注,其中的关键技术包括人臉检测、人脸跟踪、人脸特征提取、特征匹配和人脸分类Ⅲ等。并且人脸识别技术在社会安全得到了广泛的使用,如刷脸买票和刷脸安检等。同时在医学方面也发挥着很大的作用,如防止冒领养老保险问题等。所以,人们在研究人工智能方向越来越把人脸识别技术放在重要的研究位置。
在人的大脑机制中,可以很清楚地记住并分辨出很多张人脸信息,但是要计算机去处理人脸信息却很麻烦,因为人脸信息是会随着年龄、光线等问题发生变化,为计算机识别的准确性增加了不少难度。并且人脸具有相似度的特性,所以人脸识别算法就愈发的难以完善。如今,人脸识别技术在当今是一个非常具有挑战性并且非常值得研究的技术。
1.1.2人脸识别的应用场景
在信息全球化的背景下,ATM机器刷脸取款、智能机器人服务以及刷脸出入逐渐成为现实。人脸识别技术已被炒得火热,它正在被广泛地应用到各个领域,默默地影响着我们的生活,如智慧教育、智慧金融、智慧社保、智慧公安等诸多方面,极大程度上方便着我们的生活。
在互联网中,人脸识别更是发挥了更大的优势,并且有很多相关的研究分析,如图片鉴黄工作、广告过滤工作等。但是至今还没有一套完善的基于人脸识别技术对考试过程学生面部数据进行采集分析与研究的解决方案,基于上述情况,本系统应运而生。
1.2研究意义
人脸识别是人类非常重要的感知能力。随着计算机技术的发展,人类渴望赋予计算机理解情感、感知外部世界的能力,自动人脸识别技术的研究应运而生。人脸识别研究具有重大的理论意义和应用价值。人脸识别研究既可以促进心理学上对人类自身人脸识别机制的研究,也可以促进图像识别技术的研究,帮助实现人工智能。
计算机人脸识别技术也就是利用计算机分析人脸图像,进而从中提取出有效的识别信息,用来“辨认”身份的一门技术。自动人脸识别利用计算机分析人脸图像,从中提取出有效的识别信息,用来辨认身份的一种技术嘲,各行各业将人脸识别处理技术运用到各个领域中数不胜数。
另外,大学计算机上机考试将成为趋势,它大大推进了无纸化考试,具有环保,节省资源,操作简单,没有人为干扰,直接出成绩,效率高,方便成绩统计等特点。所以在这个比较成熟的环境下,可以通过分析学生考试过程中的行为信息来获取相应的参考信息给老师,来了解学生的考试情况。
基于上述情况,系统将基于人脸识别技术对考试过程中的人脸行为进行分析,对识别出来的结果进行数据整理分析,最后形成分析报表参考信息,来进一步完善机考设施制度。基于人脸识别对机考平台中学生面部信息的收集分析,可以帮助老师了解学生对于该堂考试的具体情况、具有针对性的改善本学科的教学任务
1)分析学生拿到试卷时候的面部信息。在考试刚开始,通过收集学生大致浏览题目后所表现出来的如兴奋、难过、沮丧等面部表情,分析出该学生的大致所想,是题目难度过难、适中还是容易等情况。
2)分析考试过程中学生的转向情况。在考试过程中,通过收集学生面部信息,来分析出头的转向信息。如头的转向角度、转向方向、是否依然处在摄像头规定区域位置等来综合分析出该学生的转向信息。通过判断偏向角度、偏向距离、偏向角度等来分析出学生考试行为是否正常等信息。
3)分析考试过程中学生的认真情况。考试过程中通过拿到学生的面部信息坐标后,分析学生一直盯着电脑屏幕的频率以及转向幅度等行为分析出做题认真思考程度,认真思考的时间曲线范围,对待考试是否认真等情况。
4)分析考试结束后学生看到成绩时的面部信息。在学生提交考试后,一直捕捉到该学生离开座位,分析该学生在那段期间的面部信息,如高兴、失望、平静等通过图表信息反馈出来。
5)分析考试过程学生是否中途换人。在考试过程中通过人脸对比,来分析出学生中途是否换人的情况。
6)后期扩展。将系统作为实时监控考试过程,老师直接通过管理终端就可以看到该位学生的具体情况,若发现异常便可以直接切换到该学生的摄像头信息,若情况属实,可以直接通过系统提示该学生。这样便直接可以在管理终端便掌握管理一切情况。
2需求分析
2.1系统可行性分析
2.1.1技术可行性分析
目前在已有的人脸研究方向体系中,已经有很多做得比较成熟的技术成果,如Face++、商汤、依图、云从、百度人脸识别和腾讯优图等,并且大部分平台已经开放了图片处理接口。在通过比较所有平台接口的可用性、稳定性以及可靠性之后,本系统选择腾讯优图作为后台处理图片和信息分析的算法支撑。
腾讯优图开放平台拥有世界领先的人脸识别技术,自研Uface深度训练模型技术,提供业界最好最优的人脸识别服务,云上构建VIP体系服务,为产品引入商务模式,建立智能识别的生态系统。腾讯优图在人脸检测与识别等领域有着比较优秀的能力,提供的云服务已经可以满足本系统的大部分需求,符合系统技术选型。
3技术选型及开发环境
3.1前端框架
3.1.1 Freemarker+5JSP
JSP是官方标准,用户群广,有丰富的第三方JSP标签库,并且支持EL表达式,但是唯一缺点就是可以在JSP页面中编写Java代码,如果使用不当会破坏MVC结构,所以本系统在此基础上引进了Freemarker模板引擎技术。它具有支持JSP标签、可以进行复杂的运算以及性能更佳等几个优势。所以可以采用Freemarker+JSP的方式作为前端页面的数据渲染技术。
3.2后端框架
后台使用Java进行编码,Java是一种面向对象的编程语言,它具有支持分布式、强大的安全性、结构中立性、高可移植性、性能非常出色以及支持多线程等特性。Java的一次编译的运行时功能使其成为跨平台和降低成本的绝佳选择。总而言之,Java语言有两个特点:功能强大且易于使用嘲。以下是系统使用到的一些比较出色的Java开源框架。
3.2.1 Mybatis持久层框架
MyBatis是一个持久性框架,主要负责与数据库进行通信并简化数据库访问的操作。它可以高度定制SQL语句,这完全避免了需要手动设置JDBC的参数的方式,简化了配置。通过MyBatis可以编写更为简单的SQL语句,让开发者不再花更多心思去拼接参数而担心SQL注入等安全问题,达到简单易维护的目的。
3.2.2 Shiro安全管理框架
在Java体系的安全管理框架中,比較主流的就是spring se-curity框架和Apache Shiro框架,对比两个框架,Shiro更加轻量级,在系统搭建配置上更加灵活,而Spring Security显得更为笨重,所以本系统选择Shiro作为安全管理框架。Shiro作为一个安全管理框架,不仅提供了身份认证、授权、会话以及加密等功能,还可以根据系统业务逻辑高效的自定义基于RBAC模型的权限框架设计,可以很方便地扩展系统的可用性嘲。
4系统设计与实现
4.1图片上传逻辑
在学生考试过程中,系统会收集大量的学生面部图片。而拍摄照片的工作,本系统采用的是调用电脑自带的摄像头来进行拍照,然后将图片处理成Base64格式,因为网页上普通的图片资源如果采用HTFP形式的RUL的话都会额外发送一次请求,网页发送的HTTP请求次数越多,会造成页面加载速度越慢,而采用Base64转码过后则可以避免这种情况。本系统主要用到的摄像头插件是iquery-webcam-plugin,它将摄像头功能进行了封装,可以很方便实现拍照上传功能。
4.2新闻数据爬取逻辑
实现网页信息爬取,Jsoup是一个很好用的工具,它可以通过很简单的语法就可以很轻松地把网上的数据爬取下来。该框架是一个Java编写的轻量级框架,它完全类似于iQuery的语法,提供了一套非常省力的API,可以很快地让人熟悉该框架。在抓取网上新闻数据的时候后,后端进行数据渲染。
4.3图片处理算法
4.3.1优图简介
在众多开源项目中,在人脸的处理上,都是从人脸检测、五官定位和人脸对比三个方向做研究,比较出名的开源项目有腾讯优图和中科院山世光老师开源的Seetaface人脸识别引擎。腾讯优图是腾讯在2012成立的实验室,是腾讯内部专注于图像处理、机器学习的团队,优图并发限制为10个每秒,并且云服务免费,满足本系统需求。故在对比众多开源项目后本系统选择腾讯优图作为图片的处理算法。
4.3.2算法原理
腾讯优图在人脸检测、五官定位和人脸对比的算法均采用了人脸识别经典算法中的Boosting算法,该算法是一种用来提高弱分类算法准确度的方法,作为一种框架算法,它在通过对样本集的操作并获得样本子集后,在样本子集上通过弱分类器算法训练生成基分类器,在获得若干个基分类器后,将其加权融合,产生一个结果分类器。腾讯优图在此基础上进行的人脸识别技术方面主要是采用了传统方式和深度学习相结合的两种途径进行算法实现,优图的人脸识别流程图如图1所示。
本系统采用优图提供的人脸检测接口、五官定位接口和人脸对比接口进行图片的分析处理,下面将详细介绍几种接口的使用方法。
5研究成果
5.1图片库
5.1.1基本信息查看
在系统生成的所有图片中,图片库的功能就是整理图片信息,以便更好地观看图片资源。教师可以以考试、班级、个人为单位查看所包含的图片信息,这里面不仅分页列出了所有的图片信息,而且还单独列出了每张图片采集后的基本信息,如图片名称、采集时间等,也列出了人脸检测的基本信息,如微笑程度、魅力、年轮等脸部属性信息,以供教师可以很清晰的浏览。
5.1.2人脸检测和五官定位信息采集
由浏览器上传图片后,系统默认对所有图片是没有做任何操作的,还需要教师角色手动对图片进行信息的采集工作,因此图片库页面提供了人脸检测和五官定位的信息采集功能,可以对图片进行批量采集工作,将解析数据录入数据库。
5.2采集成功率
采集成功率主要是系统针对所有图片的采集情况做一个汇总,这里包含了人脸检测信息、五官定位信息、人脸对照信息的汇总。主要包括采集成功率、采集失败率以及未采集占比情况。采集成功的标准图片传送到优图服务器后能够返回正确的图片数据信息,采集失败率则是包括优图解析图片失败,返回了错误的信息或者因网络问题在传输过程中丢失了数据信息而造成的错误数据,未采集图片则就是指系统还没有对图片做任何采集工作,采集成功率效果如图2所示。
5.3面部表情分析
面部表情分析主要是提取出人脸属性中的表情,获取到面部微笑程度,系统为其划分区间,主要按照10为临界点分为:“黯然伤神”,“半嗔半喜”,“似笑非笑”,“笑逐颜开”,“莞尔一笑”,“喜上眉梢”,“眉开眼笑”,“笑尽妖娆”,“心花怒放”,“一笑倾城”一共10个等级,然后提取出每个区间的占比率。后台统计标准为将图片请求到优图的人间检测接口,利用返回的Ex-pression字段值做一个统计,可以很方便地统计出学生在某个时间段的表情分布情况,面部表情分析效果图如图3所示。
5.4眼镜分析
眼镜分析功能主要适用于以考试、班级为单位的分析,统计出戴眼镜、墨镜以及未戴眼镜的比例情况,统计出学生的眼镜近视程度分布情况,后台统计标准主要是将图片请求到优图的人脸检测接口,利用返回的Glasses字段值做一个统计,分析效果图如图4所示。
5.5面部表情走势分析
面部表情走势分析主要是针对个人进行分析,还原出该学生在考试过程中的面部表情走势,用折线图展现出来。此功能区别于上面的表情分布功能,表情走势分析可以清楚地了解到学生在那一时段的变化情况,利用此功能可以设置到如下两个时间段:学生刚刚拿到题库的时候和学生交卷得到成绩的时候。在这两个比较特殊的时间段,可以拿到学生诸多有效的信息,如学生刚刚拿到考题时候的那个时间段,脸部呈现出来的表情和他心理的是否匹配,与他心理的期望值是多少等,同理在学生交卷得到成绩的时刻都可以做相同的数据统计,这样教师可以根据大部分学生的情况可以了解到考题出的难易程度是否合适,学生对成绩的满意程度等做出相应的教学整改工作。
5.6转向情况分析
转向情况分析主要是将学生在考试过程中的偏移情况用折线图展现出来,系统主要将学生的位置分布在左、中、右三个位置,左边和右边又分为两个临界值,分析出学生的转向情况,如偶尔处于临界值则属于正常情况,长期处于临界值则属于有问题,通过这样的统计可以得出学生在考试过程中的一个脸部位置分布大致情况,转向情况走势分析图如图6所示。系统在后台的统计规则是取出图片中人脸的鼻子的x坐标值进行统计,可以进行某一段时间的集中分析,也可以对全部时间的情况分析,通过条形图可以很清楚地看到学生的具体转向情况,如处于某一个临界值位置是否过于密集等情况。
6总结
本系统基于Java语言技术,采用SSM框架,使用人脸检测与分析以及人脸验证等技术对学生上机学习或者考试过程中的人脸信息进行采集分析,对解析的图片数据进行可视化呈现。本系统将人脸识别共划分为四个部分,分别是表情分析(划分为10个维度)、表情走势分析、转向分析(左、中、右偏离度数)基于人脸识别对机考平台学生面部信息的收集分析,可以帮助老师了解学生对于该堂考试的具体情况、具有针对性的改善本学科的教学任务以及进一步完善机考设施制度。