一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种课堂考勤管理方法和系统

2022-06-05 10:11:02 来源:中国专利 TAG:


1.本发明涉及人工智能技术领域,特别是涉及一种课堂考勤管理方法和系统。


背景技术:

2.首先教学管理规范是对于高校学生的基本要求,获得课堂情况也对高校提高教学质量有极为重要的意义,上述传统的教学管理是以点名和签到为主,但每节课悉数点名无疑是对人力物力的大量浪费,不仅工作量较大,且效率和透明度较差,随着数据库技术和计算机视觉技术的发展和广泛应用,使用计算机管理高校的教学工作也成为大势所趋。
3.目前现有技术中已公开有通过非接触式的智能设备进行课堂考勤管理的技术方案,例如通过在教室中布局摄像头并利用计算机视觉技术实现师生信息的非接触式提取、通过摄像头获取的图像信息实现多目标的检测,从而实现整个课堂的考勤管理活动。例如公开号为cn111612930a的专利提供了一种考勤系统及方法,通过在教室内布局智能摄像头矩阵,通过摄像头获取图像信息后再传输至边缘计算智能盒进行处理并将处理结果上传至学校的考勤管理平台。
4.目前的课堂考勤系统已经可以完成简单的人脸识别,但针对学生出勤情况反馈,以及人脸识别精度提升的还有待提高。


技术实现要素:

5.为了克服上述现有技术的不足,本发明提供了一种基于神经网络和边缘计算的考勤管理方法和系统,基于基于神经网络和边缘计算改善高校课堂上点名繁琐,对学生课堂情况监管不足的情况,该方法使用人脸识别技术来对课堂中的学生进行非接触式的签到,仅需教师调起固定的识别摄像头即可获取到课情况,本发明解决了多数量、小尺寸人脸的识别精度低的问题,可以为高校教学管理者掌握当前课程出勤率提供实时在线的准确数据。
6.本发明所采用的技术方案是:
7.第一方面,本发明提供了一种课堂考勤管理方法,用于云端服务器端,所述方法包括:
8.接收客户端发送的识别请求,识别请求包括课程编号、班级编号和教室编号,根据所述识别请求中的课程编号和班级编号从数据库获取对应班级学生信息表l;根据所述教室编号调动教室内相应的图像采集设备开始进行图像采集;
9.接收边缘计算设备发送的待识别信息m,所述待识别信息m包括:人脸特征信息f、所述人脸特征信息f是由教室内相应的图像采集设备获取的原始人脸图像p1在边缘计算设备中经检测对齐和特征提取两个操作过程形成的特征向量p3;
10.根据所述学生信息表l调取信息表中所有学生预先采集的信息m0,预先采集的学生信息m0包括:姓名、班级和预先采集人脸特征f0;将预先采集的人脸特征f0与现场获取的人脸特征信息f进行匹配,根据匹配结果显示已出勤学生名单和未出勤学生名单。
11.其中,采用mtcnn算法和ssh模型对原始人脸图像p1检测对齐输出初步处理图像集合p2;采用facenet模型对图像集合p2进行特征提取形成特征向量p3;
12.本方法提出课堂考勤方法,关键在于实现人脸监测与识别的功能,过去需手动设置参数的底层特征和中间特征虽然运算量小,但在目标数量多、尺寸小的情况下其精度远远无法达到识别要求,因此,我们引入神经网络算法,提高识别精度,本发明中采用深度卷积神经网络模型进行人脸目标识别,卷积神经网络(convolutional neural networks,cnn)是一类包含卷积计算且具有深度结构的前馈神经网络,是深度学习的代表算法之一。卷积神经网络仿造生物的视知觉(visual perception)机制构建,可以进行监督学习和非监督学习,其隐含层内的卷积核参数共享和层间连接的稀疏性使得卷积神经网络能够对格点化(grid-like topology)特征例如像素和音频进行学习,有稳定的效果且对数据没有额外的特征工程(feature engineering)要求。但卷积神经网络的高精度也需要付出相应的代价,最突出的就在于它的计算量非常之大,需要使用大量的计算资源。本发明面对的课堂实时出勤监测场景下,常规的简单c/s服务架构在面对高并发时,很容易出现资源不足而导致的响应速度剧烈下降、甚至崩溃的情况,为此引入了边缘计算技术。
13.边缘计算是指在接近物体或数据源头的一端进行处理运算等,就近提供最近端服务。在边缘端发起应用程序,可以更加快速高效的产生网络服务响应,满足行业在实时业务、安全与隐私保护和数据检测等方面的基本需求,边缘计算技术在物联网领域也产生了巨大影响,边缘计算技术的应用意味着大量的控制和处理将通过终端设备实现而无需交由服务器后台,处理过程将在终端由边缘计算层完成。这种处理技术无疑将极快的提高处理效率,减轻后台的处理负担。并且由控制模块更加的靠近用户,可以为用户提供更快的响应,尽量将需求在边缘端直接解决。优选的,本发明采用的边缘计算设备为jetsonnano开发板,jetsonnano开发板就起到了边缘计算节点的作用,人脸识别算法直接在开发板上运行,从而即时提取人脸特征。采用边缘计算技术,既分散了深度卷积神经网络算法需要的巨大算力,也避免了直接在网络中传输图像数据消耗大量网络资源,同时人脸数据作为隐私数据的安全性也得以保证。
14.进一步的,所述图像采集设备的图像采集使用高清摄像头对教室内的待识别区域进行高分辨率图像采集;优选的,采用的图像采集设备的分辨率最低为3280x2464,是主流1080p(1920x1080)的3.9倍,720p(1280x720)的8.7倍。
15.进一步的,所述采用mtcnn算法和ssh模型对原始人脸图像p1检测和对齐,如图2所示,具体步骤包括:
16.对原始人脸图像p1进行图像预处理,将原图像根据resize_factor不断改变其尺寸,直到最后一次改变得到12像素的图像,此时生成了若干更改过后的图像即图像金字塔,将图像金字塔逐个输入到p-net中;
17.通过一个浅层的cnn网络p-net快速产生大量的预备检测窗口,此处优选用的p-net作为全卷积神经网络,其作用为对摄像头获得的图片中检测出脸部区域与边界框回归,获得的脸部区域窗口会通过bb回归的结果进行校正,然后使用非极大值抑制函数(nms)除去重合率低于阈值的窗口;
18.使用r-net过滤掉绝大部分非人脸候选窗口;该阶段的网络模型称为r-net,是一个优化网络,目的是过滤大多数非人脸区域候选窗口,同时进一步调整回归的结果,最后使
用nms进行合并;
19.重新利用能力更加强的网络找到人脸候选窗口上面的五个标记位置,这个阶段的网络模型简称为o-net,对第二阶段数据输入,经过改网络处理和识别优化,最终得到人脸标定的5个位置;
20.与mtcnn不同,ssh具有尺度不相关性(scale-invariant),mtcnn在预测的时,需要输入不同尺寸的图片进行预测然后进行nms处理,而ssh只需要一遍正向传播就可以解决,实现的途径就是对vgg不同的卷积输出层做了3个分支(m1,m2,m3),每个分支都使用类似的流程预测检测和分类结果。
21.ssh模型使用高分辨率的特征图(浅层特征)去检测小脸;用中间分辨率的特征图(中层特征)去检测中等大小的脸;最后用地分辨率的特征图(深层特征)去检测大脸,具体方法是在骨干网络中浅层的一个卷积层输出,第一次进行人脸检测,检测小脸;对中间层中的卷积层输出进行第二次检测,检测中脸;对网络最终池化后的输出使用进行检测,用于识别大脸。由于浅层的卷积层中,每一个像素点的感受野相比于深度较大的卷积层要小。对不同深度的卷积层分别进行检测,就实现了不同尺度人脸的检测,输出最终检测到并分割出的人脸部分集合;
22.将上述两个模型的处理结果进行concat拼接处理。
23.进一步的,所述采用facenet模型对图像p2进行特征提取形成图像特征向量p3,具体步骤包括:将通过所述mtcnn算法和ssh模型检测并对齐后的图像进行concat拼接得到p2,将p2输入facenet,通过将图像p2经过卷积神经网络归一化映射到欧式空间,输出图像特征向量p3;计算欧式空间举例得到其相似度检测结果。所采用的facenet模型摈弃了普遍的从人脸关键点学习特征的方案,直接学习图像与欧式空间上点的映射关系,两张图像的特征在欧式空间上的映射点的距离直接对应着两个图像的相似度,从而大大提高了本发明方法的鲁棒性。
24.为节约开发板的存储空间和减少工作能耗,服务器会将预先录入的本班级学生的人像传输给开发板,由于一直进行人脸识别检测意义不大,且浪费开发板算力和能耗,还将占用图像的存储空间,因此设定依请求启动图像检测.
25.作为本发明所述课堂考勤管理方法的一种优选方案,所述根据所述教室编号调动教室内相应的图像采集设备开始进行图像采集,优选的,所述图像采集次数为两次,在云端服务器收到请求后立即调动图像采集设备开始图形采集并根据上述步骤输出匹配结果作为第一次考勤结果,并设定在间隔1-15分钟后,自动启动第二次图像采集,输出匹配记过作为第二次考勤结果,第一次考勤结果与第二次考勤结果进行比较,第二次考勤结果多出的学生名单为迟到人员,第二次考勤结果仍未匹配上的即为旷课人员;
26.作为本发明所述课堂考勤管理方法的另一种优选方案,为了增加考勤方法的评价维度,便于对迟到不同时间的学生进行不同的处罚管理,所述图像采集此处可以增加到至少三次,通过不同次数之间的考勤结果的比较,不仅可以获取旷课人员名单,还可以获取在不同时间段迟到的人员名单,增加考勤管理的评价维度。
27.第二方面,本发明提供了一种课堂考勤管理系统,如图1所示,所述系统包括:图像采集设备、边缘计算设备、云端服务器、客户端设备;
28.所述图像采集设备,用于接受客户端发送的识别请求,启动并获取当下教室内所
有人员的原始人脸图像p1,并传输至边缘计算设备处理;
29.所述边缘计算设备,用于处理图像采集设备发送的原始人脸图像p1,对图像p1进行检测、对齐和特征提取;
30.所述云端服务器设备,用于接收客户端发送的识别请求,识别请求包括课程编号、班级编号和教室编号,根据所述识别请求中的课程编号和班级编号从数据库获取对应班级学生信息表l;根据所述教室编号调动教室内相应的图像采集设备开始进行图像采集;接收边缘计算设备发送的待识别信息m,所述待识别信息m包括人脸特征信息f;根据所述学生信息表l调取信息表中所有学生预先采集的信息m0,预先采集的学生信息m0包括:姓名、班级和预先采集人脸特征f0;将预先采集的人脸特征f0与现场获取的人脸特征信息f进行匹配,根据匹配结果显示已出勤学生名单和未出勤学生名单。
31.所述客户端设备,用于发送识别请求并输入识别请求信息。
32.与现有技术相比,本发明的有益效果是:
33.本发明所述考勤管理方法和系统,采用mtcnn和ssh分别建立了基于卷积神经网络的级联检测,并从两种模型输出得到的特征检测结果进行concat层处理后输入facenet得到结果,选择置信度较高值作为最终识别结果。仅仅采用基于轻量级的cnn模型就达到了实时的人脸检测与点位的标定,结构简单且十分高效,实现了对难样本挖掘在线训练提升性能,一次可以完成多个目标识别任务。
34.本发明方法和系统采用一种基于深度卷积神经网络,利用边缘计算和云计算高效地完成人脸识别和匹配的方法,并构建一个拥有用户友好界面的课堂情况实时监测系统,在可以不额外增加网络和服务器性能需求的情况下完成部署。下面进行具体的说明。
35.由于教室前后距离较长,人数较多,受限于摄像头位置和角度问题,拍摄图像中人脸大小并不一致,要准确识别并不是一件易事。本发明所述方法和系统基于成本、复杂度和资源使用率的考虑,选择了提高单幅图像的分辨率,使用计算量较小的mtcnn对高分辨率图像先进行检测和分割,而提取特征算法得到的输入分辨率将达到识别要求。同时,为了提升小目标检测能力,并未采用将输入图像下采样形成金字塔,然后对各层图像分别进行网络前向运算检测的方式,原因是这种方式处理速度慢,通过引入ssh模块,多尺度检测不同大小的目标,提升了检测精度,解决了教室内考勤存在的多数量、小尺寸人脸的识别问题;
36.由于精度的提高,存在的存储空间和工作能耗增加,现有的的人脸识别检测系统传输的文件量大,速度慢,对网络条件要求较高,并且存在个人信息泄露的风险。改进后,开发板只需传输少次的信息,服务器也不直接使用原图像,而是将特征抽取后存放于数据库,开发板也不再负责匹配,只要传回提取出的特征即可,大大减少了数据量,也提高了安全性,解决数据传输和储存问题。
37.现有技术中的考勤系统,一般是通过传统摄像头采集图像后,全部交给后台处理器完成人脸特征提取和匹配,首先,传统摄像头需要单独架设数据线,成本高,工程复杂;同时,直接传输图像会造成带宽资源的紧张,所有计算任务都交给服务器又会造成性能紧张,通过边缘计算技术,有效地分散了计算负荷,减少了数据传输量,并且只需要已有的校园网络系统即可接入。
38.本发明提供的考勤管理方法和系统,具有广阔的应用前景,必然可以有效规范高校课堂纪律,同时利于管理者掌握信息以更好地改进教学计划。
附图说明
39.图1本发明所述考勤管理系统整体架构图;
40.图2是本发明所述对待测原始图像处理的算法架构;
41.图3是本发明所述人脸识别分类过程;
42.图4是图3中获取人脸特征向量步骤的过程;
43.图5是本发明实施例输出的移动端app界面图;
44.图6是本发明实施例中所述jetsonnano开发板配置表。
具体实施方式
45.下面结合附图对本发明进一步说明。
46.本系统分为硬件和软件两大部分。硬件部分为部署在教室中的图像采集识别一体设备,软件部分包括人脸识别算法,后端逻辑与数据库,以及直接面向用户的手机app。
47.一、硬件部分
48.图像采集识别一体设备分为两大部分,此设备为图像采集和边缘处理一体化设备;图像采集部分为一颗高清摄像头,边缘处理部分为一块nvidia jetsonnano开发板。摄像头使用索尼imx219 cmos传感器,拥有高达800万像素,最大图像分辨率达到了5632x4224。
49.为了实现边缘计算,即获取图像信息后立刻提取特征,只将提取出的特征向量发送给服务器,优选jetsonnano开发板,因为此开发板拥有足够运行轻型神经网络的算力,并且具有价格低廉,接口丰富,扩展性强,功耗极低(5w左右)等优点。
50.二、软件部分
51.1.人脸识别算法
52.人脸识别算法分为两步骤,如图2所示,先检测并对齐,再提取特征,分别使用了mtcnn ssh和facenet算法。
53.其中,mtcnn是在一个网络里实现了人脸检测与五点标定的模型,主要是通过cnn模型级联实现了多任务学习网络。整个模型分为三个阶段,第一阶段通过一个浅层的cnn网络p-net快速产生大量的预备检测窗口;第二阶段使用r-net过滤掉绝大部分非人脸候选窗口;第三阶段重新利用能力更加强的网络找到人脸候选窗口上面的五个标记位置。
54.第一阶段:选用的全卷积神经网络是一个推荐网络,该网络简称p-net,其作用为对摄像头获得的图片中检测出脸部区域与边界框回归,获得的脸部区域窗口会通过bb回归的结果进行校正,然后使用非极大值抑制函数(nms)除去重合率低于阈值的窗口。
55.第二阶段:该阶段的网络模型称为r-net,是一个优化网络,目的是过滤大多数非人脸区域候选窗口,同时进一步调整回归的结果,最后使用nms进行合并。
56.第三阶段:这个阶段的网络模型简称为o-net,对第二阶段数据输入,经过改网络处理和识别优化,最终得到人脸标定的5个位置。
57.ssh:由于传统的金字塔构造处理速度过慢,ssh舍弃了传统的fpn构造,采用在各个层次的卷积层多次进行检测的方法。具体方法是在骨干网络中浅层的一个卷积层输出,第一次进行人脸检测,检测小脸;对中间层中的卷积层输出进行第二次检测,检测中脸;对网络最终池化后的输出使用进行检测,用于识别大脸。由于浅层的卷积层中,每一个像素点
的感受野相比于深度较大的卷积层要小。对不同深度的卷积层分别进行检测,就实现了不同尺度人脸的检测。
58.facenet:将上述两个模型的结果进行concat拼接处理作为本网络的输入。输入样本经过现有的通用卷积神经网络框架,并结果归一化处理映射到超平面上,计算出空间距离得出相似度,最终得到识别结果。在本系统中,我们使用了resnet50框架,可以有效避免过拟合情况,在提高了人脸识别准确率的同时保证了性能开销不会过大。摈弃了普遍的从人脸关键点学习特征的方案,直接学习图像与欧式空间上点的映射关系,两张图像的特征在欧式空间上的映射点的距离直接对应着两个图像的相似度,从而大大提高了本发明方法的鲁棒性。
59.人脸识别的总体流程如图3所示:经过高清摄像头采集的实时图片经过上述模型处理,得到特征向量,与本地图像提取的打上标签的特征进行对比匹配,得到最终得到相似度分类结果。其中,本地图片和实时拍摄图片的特征提取过程如图4所示,将图片导入模型,进行尺寸调整后输入模型中,得到的特征向量经过深度残差网络优化后,输出一个128维的人脸特征向量。
60.2.后端逻辑和数据库
61.整个app的后端使用python语言编写,使用tornado这个基于python的web服务框架和异步网络库,来构建起整个后端与前端的数据传输,对于传输的数据我们将其以json格式存入mongodb数据库中。
62.具体框架的实现上,主要分为以下几个部分:tornado的基础web框架tornado.web中的负责全局配置,包括映射请求转发给处理程序的路由表,requesthandler及其子类实现web应用程序,httpserver实现http客户端和服务器,异步网络库ioloop对http的实现提供构建模块。在运行时,httpserver开启http服务并启动ioloop进行循环监听端口,然后application解析前端发来的http请求并将其映射实例化为requesthandler类对象,requesthandler里封装了封装对请求处理的所有信息和处理方法,用来处理对应的请求方式。
63.为实现基本的学生签到和对学生信息的增删改查等功能,定义了五个子类,userfeaturehandler下定义了post方法,用来接收开发板post到服务器的人脸特征,再通过欧式距离比较判断学生的到课状态,并存入数据库中。userinfohandler和userdetailhandler定义了get请求,在接收到手机app的请求后返回学生的信息。userupdatehandler及usersearchhandler都是用正则表达式,tornado储存了匹配括号里面表达式的字符串,并将该字符串作为一个参数传递给requesthandler类。userupdatehandler下定义了post方法,手机端传入改正后的学生信息,然后在数据库上进行修改。usersearchhandler则是接收手机端传入的搜索字符串,对数据库中的学生信息进行字符串匹配,返回所需要的学生数据。
64.后端使用的tornado框架是一个轻量级的web框架,类似于另一个python web框架web.py,该框架的处理方式包含异步非阻塞io。tornado拥有较为出色的抗负载能力,官方对其能力进行了实验对比,利用nginx反向代理的方式部署tornado和其它python web应用框架,实验结果表明tornado的最大浏览量超过第二名将近40%。在正式的签到情形中,我们手机端的app将被大量访问,就要求我们的后端在大量的负载下还能正常运行不崩溃,同
时tornado有优异的处理性能,不依赖多进程/多线程,对于同时处理大量的人脸特征数据表现优越。
65.3.用户app
66.用户应用使用ionic框架进行实现,ionic框架采用web开发技术并基于html5创建,是类似于手机平台原生应用的一个开发框架,该框架还绑定了angularjs和sass。ionic框架最初的发明初衷是为了从web的角度开发手机应用,只需基于phonegap的编译平台,就可以实现编译成各个平台例如android和ios端的应用程序,当需要和手机端底层交互时采用cordova技术实现跨平台的兼容性。在界面设计时,ionic利用了很多css组件和js的ui库,大量的界面优化便于适应不同分辨率的手机端,实现了一次开发,多平台使用。
67.该管理软件以网页的形式在手机端展现,数据以http方式向服务器发送请求并加载到手机端界面。每位使用者会分配到不同的账号进行登录和管理,该app分为三个主页:第一页为消息通知界面,方便使用者快速查看系统通知;第二页为app的设置界面,以便于适应不同使用者个性化定制。第三页是实时查询信息页面,如图5所示,该页面显示当前使用者的课程记录,包含每节课缺席人数,该课程的上课时间。如需要查看详情缺课名单信息,在每节课上的“更多”按钮进行查看,“更多”页面中显示这节课未到学生的信息。在“更多”界面提供查询功能,方便使用者对某个具体的学生信息进行查询。同时在点击每一条的学生记录时,会展示该学生的详细个人资料。如需要手动更改学生状态,使用者也可以通过每条记录前的“删除”或者“增加”按钮对学生到课状态进行手动更改,此次的修改后台会自动同步到数据库,从而确保数据的一致性。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献