
基于视频行为分析的智能监考辅助系统.docx
8页基于视频行为分析的智能监考辅助系统 李春梅 邵新慧 刘玲摘 要:针对高校监考任务繁重且传统监考作弊取证较难等问题,设计了基于视频行为分析的智能监考辅助系统该系统首先应用视频流实时处理算法对视频流进行解码,然后运用YOLOv3算法检测出人体以及违禁品边框,接着用MTCNN算法检测面部姿态,最后对行为异常进行检测分析并给出异常警告通过使用该系统,能够实现自动检测考生作弊行为并且可以自动预警和保存作弊行为经过测试,系统的识别结果准确率能够达到百分之五十以上,能够起到辅助监考的作用关键词:视频行为分析;YOLOv3算法;MTCNN算法;智能监考G642 文献标志码:A :2095-2945(2019)18-0008-03Abstract: In view of the heavy task of invigilating in colleges and universities and the difficulty of cheating and obtaining evidence in traditional invigilation, an intelligent invigilating assistant system based on video behavior analysis is designed. The system first uses the video stream real-time processing algorithm to decode the video stream, then uses the YOLOv3 algorithm to detect the human body and the contraband frame, and then uses the MTCNN algorithm to detect the facial posture. Finally, the behavior anomaly is detected and analyzed and the anomaly warning is given. By using the system, the cheating behavior of candidates can be detected automatically and the cheating behavior can be automatically warned and saved. After testing, the recognition accuracy of the system can reach more than 50%, which can play an auxiliary role in invigilating.Keywords: video behavior analysis; YOLOv3 algorithm; MTCNN algorithm; intelligent invigilation近年來,由于课程改革等因素,高校更加看重学生在学习某门课程中的整个过程的表现,因此设置了更多的考试,包括上机考试和笔试两种形式。
以东北大学的高等数学课程为例,每学期需要5~6次的上机单元考试,高等数学的修读学生将近5000人,监考任务变得相当繁重这时传统的监考模式显现出了众多弊端,如传统监考模式需要多个监考老师分区域的巡逻才能覆盖整体考场,需要的人力更多;且由于考试作弊的行为经常发生在很短的时间区间内,单纯以人的注意力很难保证能够及时发现作弊行为;有些作弊行为停止后很难进行取证本文设计的智能监考辅助系统,能够通过应用计算机视觉算法[1]实现考生人脸的检测、人脸姿态的分析,进而实现自动化的监测和预警考生行为,减少了监考所需人力的同时还提升了监考的效果1 系统总体设计基于视频行为分析的智能监考服务系统总体可分为五个模块,分别为系统基础集成模块、视频流实时处理模块、人脸检测模块、行为异常检测分析模块、异常警告模块系统通过视频流实时处理模块将视频流读入并按帧保存为图像,保存的图像会被人体以及违禁品检测模块读取并检测出人体的边框(boundingbox)和违禁品的边框boundingbox,行为异常检测模块读取到图像信息和boundingbox信息后,会剪切出人体区域并通过MTCNN(Multi-task Cascaded Convolutional Networks)算法检测人脸和人脸姿态,将人脸姿态参数和违禁品boundingbox共同输入到SVM(Support Vector Machine)分类器中得出该学生是否有作弊嫌疑的结论,当确认某位学生有作弊嫌疑后,系统会自动保存相关图像和视频片段到相应的本地路径中,并发出系统警告。
系统结构图如图1所示系统采用java web技术来进行系统界面的实现和算法的调度,算法部分则由C和python共同实现系统首先通过视频监控终端接受到视频流数据,再调用视频处理模块对视频流进行采样,将采样得到的图像、采样时间段信息存储到指定路径中,算法部分被设定为每5秒对指定路径进行扫描,读取新的待处理数据并在读取完成后清空指定路径中的数据,算法经过判断发出作弊预警后,会将检测结果图像、作弊采样时间段信息存入疑似作弊路径监考人员通过系统查看时,系统会自动调出该时间段的视频以及疑似作弊路径中的检测结果图像2 视频流实时处理算法为了提高视频的读取采样效率,提升考试监考视频的解码效率,为本文系统中的后续算法提供更快的数据支持,系统采用新的解码数据流动方式来进行GPU和CPU的调动本文采用的视频并行解码策略整体流程框架如图2所示系统首先将由监控设备传输过来的H.264视频流[2]加载到内存中,通过CPU对内存中的视频数据进行熵解码,得到大量的数据,包括出量化参数、帧内预测和残差系数以及预测系数,这些数据再被解析出来后會被系统传输到GPU的显存中,GPU直接从显存中将以上数据取出并对数据进行DCT(Discrete Cosine Transform)逆变换,在GPU处理逆变换等任务时,CPU已经开始处理下一帧的任务。
通过以上过程本文实现了系统CPU和GPU的并行调度,对比原始默认视频解码方式,本文应用的并行能够达到1.3的加速比,有效的提升了系统的视频处理效率3 人体及考试违禁品检测算法目前以深度学习为基础的目标检测算法中,YOLOv3算法[3]在精度和速度上都占据着很大的优势,YOLOv3的网络结构包括四部分:卷积层、res层、darknet-53、YOLO部分,其中YOLO部分包括了小尺度yolo层、中尺度yolo层和大尺度yolo层,这三个尺度的yolo层也是YOLOv3在小目标检测任务上有显著提高的原因之一在对监控视频中的考生人体和考试违禁物品进行检测时,由于违禁物品和人体的尺度相差很大,因此很适合利用YOLOv3来作为本文系统的主要检测算法首先系统对输入的视频进行采样,得到单帧图像,然后对原始图像进行降采样处理,得到516*516的图像输入到网络中进行计算,得到人体的boundingbox(Bx,By,Bh,Bw)以及违禁物品(CPx,CPy,CPh,CPw)和违禁物品书本(CBx,CBy,CBh,CBw);接下来将违禁物品分配到最近的人体位置中,并计算违禁物品中心与人体中心(Bx,By)的相对距离,作为判断是否疑似作弊的第一部分特征,没有被分配违禁物品的人体坐标第一部分特征值为0。
检测算法的整体框图如图3所示4 面部姿态检测算法当考生进行作弊行为时,会经常东张西望,面部姿态和位置出现较大变化,为了捕获监控视频中的考生异常面部姿态,系统利用MTCNN算法[4]来对考生的面部姿态进行监测和提取,MTCNN算法整体可分为三个部分:第一部分,是通过结构相对简单的全卷积神经网络初步的生成粗粒度的人脸窗口,该部分通过P-Net(Proposal Network)实现,该步骤得到的初选框会根据边界框进行校准并通过非极大值抑制算法去除错误窗口;第二部分,将第一部分得到的结果输入到更复杂的卷积神经网络中,该部分网络被称为R-Net(Refine Network),R-Net的层数更多并且包含全连接层,R-NET得出的结果同样根据边界框进行校准并通过非极大值抑制算法去除错误窗口;第三部分,将第二部分的结果输入到更强大的卷积神经网络O-Net(Output Network)中,O-Net的网络结构和第二部分的R-Net结构类似,只是多了一层卷积层,并且输出包括五个人脸的关键点位置信息本系统的面部姿态检测算法的输入为考生人体检测算法生成的人体区域,经过调整得到64*28的图像,输入到预先训练完成的mtcnn网络中,通过计算得到面部坐标,五个关键点的坐标,再将五个面部关键点坐标分别与人体中心位置和面部中心位置相减得到疑似作弊的第二部分特征,并与第一部分特征串联得到最终作弊检测特征。
5 作弊检测流程经过系统检测算法以及面部姿态检测算法对每帧图片的处理后,我们能够得到每帧图像中的人体位置、位置和书本位置(如果存在)、考生的人脸姿态参数在实际考试过程中,学生在发生作弊行为时会发生较大的人脸姿态的异常,并且在画面中会出现和书本等作弊工具,因此本文系统以一段时间内考生的人脸姿态以及考试工具的检测结果作为判断考生是否存在疑似作弊行为的依据作弊判断模块的逻辑流程如图4所示如图4所示,系统以每秒五帧的频率对视频数据进行采样,对于考生作弊行为的判定则以十秒为一个周期,一个周期内的采样图像张数为50张,通过检测算法和面部姿态检测算法对图像进行处理,得出N个考生位置信息B;N个考生面部姿态向量S,每个向量包含5对参数(S1、S2、S3、S4、S5)以及面部位置坐标FP;N个考试作弊工具位置信息CP、CB,每个位置信息包含4个参数(相对身体中心点的相对位置);为了简化分类过程,我们计算出相对特征F=concat((B-CP),(B-CB),(B-S1),(B-S2),(B-S3),(B-S4),(B-S5),(FP-S1),(FP-S2),(FP-S3),(FP-S4),(FP-S5))。
在一个周期结束后,我们将会得到N组相对特征,每组特征包含50个F向量,然后我们将每组相对特征中的每个相对特征都输入到SVM分类器中,判断该帧中该考生是否存在疑似作弊的行为,如果存在则计数加一,当一组特征中超过15个特征被判定为疑似作弊,则向系统发出作弊预警,并保存该段视频到本地路径6 结束语文中对视频监考系统进行了改进,实现了能够自动检测考生作弊行为并且可以自动预警和保存作弊行为的智能监考算法系统中的每个功能都可以独立运行,系统模块化的实现使其各个组件能够被轻松地更新升级,保证了系统的易迭代性经过测试,系统的识别结果准确率能够达到百分之五十以上,能够起到辅助监考的作用但系统仍存在一定的缺陷,如系统对于硬件资源依赖较大,需要两台以上搭载titan x 显卡的服务器才能保证流畅运行,另外算法对视频中远端的考生检测效果不佳等在未来的研究中,我们会更新我们的检测算法,利用时间序列信息增加算法的准确率,同时优化算法实现代码,提升算法运行速度,也可以尝试引入多摄像头联合识别,使系统能够接近人工监考的效果和性能参考文献:[1]王聪,刘明光,齐飞.智能视频监控系统动态目标检测与识别算法综述[J].电气技术,2018,19(09):20-25.[2]陈鹏,曹剑炜,陈庆奎.基于GPU的H.264并行解码算法[J].计算机工程,2014(1).[3]Redmon J, Farhadi A. YOLOv3: An Incremental。












