一种考场视频监控异常行为特征识别方法与流程

文档序号:18061937发布日期:2019-07-03 03:08阅读:1107来源:国知局
一种考场视频监控异常行为特征识别方法与流程

本发明涉及一种考场视频监控异常行为特征识别方法,属于可视计算、计算机视觉领域,使用机器学习和深度学习技术,在传统3d卷积神经网络的基础上改进了网络结构。



背景技术:

目前,智能视频监控已经是视频监控的一个重要发展方向,考场监控也已经推广到了全国各类中高校校园中。智能考场监控将发挥越来越重要的作用,达到考试中报警,考试后检索留存的作用。

智能视频监控主要的研究方向有:运动检测,目标分类,人体跟踪,行为理解及描述以及固定场景下的异常行为识别等。其中,异常行为识别技术是监控应用中很重要的研究方向,其主要目的是在某一固定场景中,区分该场景中人或物的正常行为和异常行为。

近年来随着深度学习的发展,卷积神经网络在图像处理领域取得了很大成功,并且已经有了很多成熟的应用。在此基础上,人们慢慢开始将卷积神经网络应用于视频数据处理中,利用神经网络强大的学习能力对视频中的行为进行识别理解。最直接的方式是将视频进行截取,然后对单独的视频帧进行神经网络的训练,但是这种方法没有考虑视频的时间信息,所以对于运动性强的视频的识别效果较差。

在此基础上,a.karpathy等人改进了用于图像处理的卷积神经网络,在神经网络的前三层图像序列进行m*n*3*t的卷积,这样卷积后的结果包含了视频中的时空特征,这样提高了视频中的动作识别正确率。

dutran提出了3d核卷积(3dcnn)的方法,将卷积核扩展到时域,使得网络中的卷积运算在空间域和时间域同时进行,这样充分保留了视频中的画面信息和时间信息,与单帧图像特征相比,采用3d核卷积对动作行为识别有着更强的分辨能力,对行为特征的区分度也更高。

在识别技术方面,大多数的异常行为识别所针对的研究场景中,人或物的动作尺度较大,正常行为与异常行为在视觉上的区分度较高。但是在考场环境中,考生在考试作答时的动作幅度较小,即使是有异常行为,动作尺度一般也不会太大,传统的识别方式的效果并不会太好,在小尺度行为的识别方面还存在一定的缺陷。另外现有的识别技术,几乎都是通过单摄像头的画面进行处理,而现在一般的考场都有两个或以上的摄像头,在异常行为的识别中使用多个视角的画面会有更为精确的描述特征。



技术实现要素:

本发明解决技术问题为:为了解决传统电子监考存在的缺陷和不足,提供一种考场视频监控异常行为特征识别方法,针对考场环境中的异常行为识别,增加电子监控系统的异常行为识别功能,使传统电子监考极大的降低对人力资源的依赖程度,提高视频监控的效率;同时,考虑在多摄像头的考场环境中,结合多个摄像头的画面信息对异常行为做出判断。本发明基于机器学习和近年来发展比较迅速的深度学习技术对考场中的异常行为识别技术,实现在视频帧序列中识别考场环境中的异常行为,提高电子监控的视频数据处理能力。

本发明采用的技术方案为:一种考场视频监控异常行为特征识别方法,实现步骤:

(1)对ucf101数据集中的视频数据进行预处理,并对每个视频数据写好标签文件,得到用于训练3d卷积神经网络模型的训练数据;

(2)在caffe框架下利用步骤(1)中得到的预处理后的训练数据训练得到两个3d卷积神经网络模型;

(3)对两个3d卷积神经网络模型分别利用考场数据集进行fine-tuning使得到更适合考场异常行为识别的两个3d卷积神经网络模型;

(4)利用fine-tuning后的两个3d卷积神经网络模型分别提取在多个考场前后两个摄像头拍摄的考生行为的行为特征,获得一个考生在考场同一时间不同视角(前摄像头视角和后摄像头视角)的视频中得到的两路特征向量(前摄像头视角视频中的特征向量和后摄像头视角视频中的特征向量);

(5)对所有两路特征向量进行特征融合,将所有的两路特征向量融合成对应的一个特征向量,融合后的特征向量按照4:1的比例分为训练集和测试集;

(6)使用训练集对libsvm分类器(libraryforsupportvectormachines)进行训练,得到关于考场行为识别的分类器,然后使用分类器对测试集进行测试,检验关于考场行为识别的分类器对于考场异常行为的识别能力,得到异常行为特征的识别结果。

其中步骤(1)中,对ucf101数据集中的视频数据进行预处理采取以下步骤:

(11)因为步骤(3)中训练3d卷积神经网络模型时的输入是3×16×240×320的图像块单元,所以要将数据集中所有的视频都统一resize(调整大小)到320*240的分辨率,将视频分割为单帧的图像并进行编号,将每16帧作为一组单元块。

(12)以一个单元块为单位给图像写标签,一个单元块的标签包括三项,格式如下:

相对路径视频帧数单元块类别标签

每一项均以空格为间隔区分,其中第一项为视频帧数据所在文件夹的相对路径;第二项为每个单元块第一帧的视频帧数;第三项为该单元块的类别标签,每类视频动作的类别标签为1到101(ucf101数据集中有101个类别)之间的数字,每个数字表示某一类动作,即一个动作的所有单元块具有相同的标签值。

其中步骤(2)中,对caffe框架下训练得到两个3d卷积神经网络模型采取以下步骤:

(21)编辑caffe的prototxt模型描述文件,定义层级结构并设置各层的参数,包含有5个卷积层和5个池化层,每个卷积层后都连接一个池化层,最后是2个全连接层。基本的参数设定为:定义图像块单元的输入大小为c*l*h*w,其中c是视频颜色的通道数,一般彩色视频的通道数为3,l是图像块单元中连续的视频帧的帧数,h和w分别是视频的高度和宽度,即输入视频的尺寸。另外,卷积层和池化层的卷积核大小为d*k*k,其中k*k是卷积核中空间维度的大小,d是卷积核中时间维度的大小。5个卷积层包含的神经元个数依次为64,128,256,512,512,最后两个全连接层的输出为4096维的特征向量。图像块单元的输入设置为3*16*240*320,通道数为3,图像块单元包含有16连续的尺寸为240*320的图像帧。

(22)通过caffe中tools文件夹下的train_net工具加载(21)中编辑的prototxt模型描述文件,利用预处理好的数据集进行训练,训练结束后得到单路网络参数学习调整好的模型文件,即两个3d卷积神经网络模型,后缀为.caffemodel。

其中步骤(3)中,对fine-tuning(微调)采取以下步骤:

(31)对考场行为数据集中的视频片段进行截取和调整,不使用整个视频画面作为输入,而是以单独的每个考生的视频画面作为输入数据,并将所有截取出来的单个考生的画面统一到320*240的分辨率,得到统一的有效考场行为图片数据集;

(32)将统一的有效考场行为图片数据集每16帧作为一个图像块单元,对每个图像块单元写标签,具体格式如下:

相对路径视频帧数单元块类别标签

每一项均以空格为间隔区分,其中第一项为视频帧数据所在文件夹的相对路径;第二项为每个单元块第一帧的视频帧数;第三项为该单元块的类别标签,标签值只有两个,0和1,0表示该单元块中的行为是正常行为,1表示该单元块中的行为是异常行为,根据该图像块单元是否为异常行为进行标记,最终得到预处理好的考场行为数据集;

(33)生成输入数据的均值文件,再使用finetune_net工具读取预处理好的考场行为数据集中的数据对之前训练好的3d卷积神经网络模型进行微调,fine-tuning结束之后就能得到微调之后的3d卷积神经网络模型;

(34)下路网络的fine-tuning(微调)方式与上路完全相同,只是输入数据是后摄像头拍摄的画面,两个3d卷积神经网络模型微调结束后得到两个更适合考场环境的行为特征提取3d卷积神经网络模型;

其中步骤(4)中,对提取行为特征采取以下步骤:

(41)使用3d卷积神经网络作为特征提取器,输入数据同样是3×16×240×320的图像块单元,处理方式和训练及微调时相同,同样将每16帧作为一个单元输入,并使用输入标签文件对视频帧数进行标记,标记出每个图像块单元开始的视频帧;

(42)caffe安装编译结束后会在tools目录下生成一个extract_features的.bin工具,使用该工具提取输入视频的特征,在ubuntu的终端命令行下直接使用命令调用;

(43)命令运行结束后,在规定的输出文件下得到视频中每个图像块单元的两路特征向量;

其中步骤(5)中,对特征向量融合采取以下步骤:

(51)将两个特征向量融合成一个特征向量,对两个列向量取相同的权重进行加和,设上路输出的向量为sup=[x1,x2,...,x4096],下路输出的向量为sdown=[y1,y2,...,y4096],采用如下的式计算方式得到融合后的向量sfusion:

sfusion=[(x1+y1)*0.5,(x2+y2)*0.5,...,(x4096+y4096)*0.5]

其中步骤(6)中,具体实现过程采取以下步骤:

(61)使用训练集对svm分类器进行训练,在libsvm中对分类器进行训练时,先对训练集中的特征向量进行标记,主要分为异常行为和正常行为两种标签,0表示正常行为,1表示异常行为,将特征向量和标记一一对应,并写成标签文件;

(62)libsvm进行分类时直接读取特征向量文件和对应的标签文件,使用libsvm中的svmtrain(feature_train_label,feature_train_data,varargin{:})函数读取训练集数据进行训练,训练结束后得到一个关于考场行为识别的分类器model,其中feature_train_label为训练数据的标签文件,feature_train_data为训练数据的特征向量,varargin{:}为训练参数;

(63)在libsvm中对分类器进行测试时,先对测试集中的特征向量进行标记,主要分为异常行为和正常行为两种标签,0表示正常行为,1表示异常行为,将特征向量和标记一一对应,并写成标签文件;

(64)利用libsvm中的svmpredict(feature_test_label,feature_test_data,model,varargin{:})函数读取测试集数据对之前训练得到的分类器进行测试,检验训练得到的分类器对于考场异常行为的识别能力,得到异常行为特征的识别结果。其中feature_test_label为测试数据的标签文件,feature_test_data为测试数据的特征向量,model是训练结束后得到的分类器,varargin{:}为分类器的测试参数。

本发明的原理在于:

根据目前传统的机器学习技术对于小尺度的行为识别效果有限,并且不能使用多视角的视频数据进行识别的缺陷,可以总结出设计考场视频监控异常行为特征识别方法的一些规则,如下所述:

(1)只用前摄像头的视频数据,视角单一,对后排同学的识别效果会降低很多。所以采取同时输入前、后摄像头视频片段的方案,利用不同视角的视频数据,来弥补单个视角的缺陷;

(2)相比于目前传统的机器学习技术,深度学习技术发展十分迅速,cnn(卷积神经网络)有着强大的数据学习能力,对图像处理领域的发展发挥了很大的推动作用。因此,使用深度学习技术是该方法的重要基础;

(3)视频数据不同于图像,不仅有空间维度的信息,还有时间维度上的信息,要将卷积神经网络应用到视频当中,需要考虑将卷积操作扩展到时间维度。要卷积神经网络扩展到3d空间,并在此基础上针对配置双摄像头的考场环境;

(4)在训练阶段,要对设计好的3d卷积神经网络进行训练,由于上下两路相对独立,并且考虑到计算资源的有限,两路网络可以分开进行训练。由于考场行为数据集的数据量不足,而神经网络的训练需要相当大的训练量,所以训练模型时应使用较常见的大数据集进行训练。

根据上述规则,本发明利用视频数据预处理、卷积核fine-tuning(微调)和libsvm(libraryforsupportvectormachines)对特征向量进行分类,设计了一种新的考场异常行为识别方法。在该方法中,分别使用前后摄像头的数据对3d卷积神经网络模型进行fine-tuning,获得适合考场异常行为识别的的3d卷积神经网络模型。微调结束之后,就可以将两个3d卷积神经网络模型作为两个特征提取器,分别提取前后摄像头拍摄的考生行为的两路行为特征,然后将两路行为特征融合成一个行为特征,再使用libsvm对其进行识别,判断输入是否为正常行为,最终得到了准确率较高的一种考场异常行为识别方法。

本发明与现有的技术相比,其优势在于:

(1)使用两个视角的动作特征进行识别,比使用单独视角的动作特征的识别准确度要高,采用两个视角的考场异常行为识别方法在识别的准确率上有了一定的提升;

(2)相较于传统的机器学习技术,考场视频监控异常行为特征识别方法在识别准确率上有了很大提高;

(3)卷积神经网络输出的特征向量维数较大,可以包含更多的信息,对于提高识别的准确率有很大帮助。

附图说明

图1是本发明应用场景图;

图2是本发明方法流程图。

具体实施方式:

下面结合附图和具体实施方式对本发明作进一步详细的说明。

如图1、2所示,通过前后两个摄像头视频拍摄考生的考试行为,采用双视角数据进行考场异常行为特征识别,可以从多个视角提取考生的动作特征,可以更准确的描述考生的动作行为。此外,卷积神经网络输出的特征向量维数较大,可以包含更多的信息,对于提高识别的准确率有很大帮助。

3d卷积神经网络模型的设定:

相对于传统的3d卷积神经网络,去掉了第一层的硬连接层,不再是提取规定通道的信息,而是直接使用卷积层,采取随机初始化的方式,通过训练及网络的反向传播来确定各卷积核中的参数。在传统3d卷积神经网络的基础上增加了网络的深度,一共有7层层级结构,有5个卷积层,并且每层的神经元(卷积核)个数也相应的增加,5个卷积层包含的神经元个数依次为64,128,256,512,512,最后两个全连接层的输出为4096维的特征向量。图像块单元的输入设置为3×16×240×320,通道数为3,图像块单元包含有16连续的尺寸为240×320的图像帧。

将各卷积层的卷积核改为3×3×3,降低了卷积核的大小,可以获得更多的featuremaps,对于视频数据可以有更为精细的表示,卷积运算时的步长(stride)设为1,即三个维度方向上每次卷积结束后的窗口移动均为1个单位。对于池化层,第一个池化层的卷积核大小调整为1×2×2,增加了时间维度的池化,但是值设为1,可以使时间信息不会过早的融合到特征当中,并且可以适应多种长度图像块单元的输入同时也能一定程度上缩减图像帧的数据量,步长为1×2×2,即时间维度的移动为1个单位,空间维度垂直和水平方向上每次移动为2个单位;之后各池化层的卷积核大小为2×2×2,步长为2×2×2,即各维度上的窗口移动步长都是2个单位,卷积后得到的featuremap经过该池化层后数据大小会缩减为卷积前的1/8,对于视频数据来说,会降低很大的数据量,加快后面的运算速度。图像块单元中,连续帧的数量增加到了16,则图像块单元中包含的动作更加完整,也能提取出更加精确的特征。

训练过程:

对视频数据进行预处理,并对每个视频片段写好标签文件。将数据集中所有的视频都统一resize到320*240的分辨率,将视频分割为单帧的图像并进行编号,将每16帧作为一组单元块。在ubuntu的终端命令行中使用compute_volume_mean.bin工具,得到数据集的均值文件。

通过caffe中的train_net工具加载模型的描述文件,利用数据集分别对上下两路3d卷积神经网络进行训练,得到单路网络参数学习调整好的3d卷积神经网络模型。

模型fine-tuning(微调)过程:

对两个摄像头的视频数据进行截取,并将所有截取出来的单个考生的画面统一到320*240的分辨率。

和训练模型时一样,首先生成输入数据的均值文件,再使用finetune_net工具读取预处理好的数据对之前训练好的3d卷积神经网络模型进行微调,得到两个新的3d卷积神经网络模型之后,将两个模型作为两个特征提取器,分别提取前后摄像头拍摄的考生行为的动作特征。

提取特征过程:

从考场行为数据集中选取前后摄像头拍摄的视频片段,与fine-tuning时做相同的预处理,每个视频片段中仅包含单个考生的考试行为。

使用3d卷积神经网络作为特征提取器,输入数据同样是3×16×240×320的图像块单元,处理方式和训练及微调时相同,同样将每16帧作为一个单元输入,并使用输入标签文件对视频帧数进行标记,标记出每个图像块单元开始的视频帧。

在系统终端下直接使用命令调用extract_features.bin工具提取输入视频的特征,得到视频中每个图像块单元的特征向量。每路网络的最后全连接层会输出所有关于输入视频的图像块单元的4096维特征向量。

特征向量分类过程:

将两个特征向量融合成一个特征向量,对两个列向量取相同的权重进行加和,设上路输出的向量为,下路输出的向量为,采用如下的式(1)计算方式得到融合后的特征向量:

sfusion=[(x1+y1)*0.5,(x2+y2)*0.5,...,(x4096+y4096)*0.5](1)

上述公式中的x表示前摄像头数据提取出的特征向量,y表示后摄像头数据提取出的特征向量。sfusion是最后融合后的特征向量。

一共提取了前后摄像头拍摄的各50个视频片段中的图像块特征,前摄像头拍摄的50段视频中一共包含有453个图像块单元,后摄像头拍摄的50段视频中同样包含有453个图像块单元。根据公式1对所有的特征向量进行融合,并将这些融合后的特征向量按照4:1的比例分为训练集和测试集,训练集中包含360个图像块特征,其中180个图像特征块为正常行为,180个图像特征块为异常行为,对训练集中的特征向量进行标记,主要分为异常行为和正常行为两种标签,0表示正常行为,1表示异常行为,将特征向量和标记一一对应,并写成标签文件。测试集中包含93个图像块特征,其中40个图像特征块为正常行为,53个图像特征块为异常行为。使用训练集对libsvm分类器进行训练,得到关于考场行为识别的分类器,然后直接使用分类器对测试集进行测试。

使用libsvm中的svmtrain(feature_train_label,feature_train_data,varargin{:})函数读取训练集数据进行训练,得到一个关于考场行为识别的分类器(model)。

使用测试集的数据对训练得到的分类器进行测试,检验其对于考场异常行为的识别能力。使用libsvm中的svmpredict(feature_test_label,feature_test_data,model,varargin{:})函数读取测试集数据和分类器进行测试。

总之,本发明中提出的考场视频监控异常行为特征识别方法,能够适用于配备双摄像头的监控系统考场的场景。结合改进的3d卷积神经网络和双摄像头的监控系统,提取不同视角下的考生行为特征,并将两路网络提取的行为特征向量进行融合。通过提取正常考试行为的特征向量,在libsvm中训练出考场行为的分类器,测试时通过分类器对测试视频的特征向量进行分类,由此判断测试视频中是否存在异常行为。该方法使用双视角的视频特征进行异常识别,在考场行为数据集中有着较高的识别正确率。

以上所述仅为本发明的一些基本说明,依据本发明的技术方案所做的任何等效变换,均应属于本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1