一种基于深度神经网络的人体行为识别方法与流程

文档序号:17993402发布日期:2019-06-22 00:59阅读:295来源:国知局
一种基于深度神经网络的人体行为识别方法与流程

本发明涉及人体行为识别领域,尤其是涉及一种基于深度神经网络的人体行为识别方法。



背景技术:

人体行为识别是指根据给定视频,利用机器学习和计算机视觉等技术自动分析视频中人的行为动作类别。近年来,随着人工智能技术的发展,行为识别在人工智能领域中的人机交互、基于内容的视频检索和城市天网工程等方面成为研究热点,具有重要的科学研究意义和广阔的市场应用前景。

基于视频的人体行为识别方法一般可以如下四个基本步骤:视频图像预处理、行为特征的学习和提取、分类器设计和行为样本的识别。当前,根据行为特征学习与提取的不同,将人体行为特征划分为人工设计特征和深度学习特征两大类。人工设计特征主要采用传统的机器学习方法提取视频中行为目标的局部或全局特征来描述视频,对应的识别方法称为基于人工设计特征的行为识别方法。深度学习特征则是通过深度卷积神经网络等深度学习模型模拟人类大脑的认知学习过程,以大规模训练样本为学习基础,自动学习视频中的行为特征,对应的识别方法称为基于深度学习的人体行为识别方法。

中国专利cn104850846a公开一种基于深度神经网络的人体行为识别方法,包括:获取行为人的原始深度数据流;通过行为人的原始深度数据流提取人体的骨架关节点数据;利用提取到的人体骨架关节点数据所对应的三维坐标,来对整个人体建模;通过对整个人体建模来进行特征提取,将特征数据送入限制波尔兹曼机网络进行预处理,将得到的权值初始化bp神经网络参数,训练出深度神经网络模型,并据此对特征提取的结果进行行为识别;采用多线程并行处理,将提取到的人体骨架关节点数据与实际人体进行重合,并将识别到的行为进行实时显示;建立异常行为模板库并对检测到的异常行为进行报警。



技术实现要素:

本发明的目的在于提供从长时序语义运动特征难以获得问题出发,将残差学习引入到长短期记忆单元循环神经网络可有效增加循环神经网络模型隐含单元层数,提升网络模型语义特征学习能力和长时序运动特征学习能力,为人体行为识别提供新的人体行为特征学习方法的一种基于深度神经网络的人体行为识别方法。

本发明包括以下步骤:

1)采集视频数据集,根据视频中的人体行为类别对视频进行切割,并赋予对应的类别标签;

2)对视频数据进行抽帧和光流计算预处理,并对抽取的视频帧和光流图像赋予与其对应视频相同的类别标签;

3)人体行为特征学习,使用深度卷积神经网络和双支流输入类残差长短期记忆单元循环神经网络lstm模型学习视频长时序运动特征;

4)根据学习到的人体行为识别特征,用softmax层融合两条支流类残差循环神经网络学习到的长时序运动特征,并输出视频的识别类别。

在步骤1)中,所述采集视频数据集的具体方法可为:

(1.1)视频数据的采集,包括通过自建视频数据集和使用已建的公共数据集,对自建的数据集中的视频按行为类别进行切割,并赋予相应的行为类别;

(1.2)将自建的数据集划分为训练集和测试集。

在步骤2)中,所述对视频数据进行抽帧和光流计算预处理,并对抽取的视频帧和光流图像赋予与其对应视频相同的类别标签的具体方法可为:

(2.1)视频数据集中的所有视频进行抽帧处理,并保存所抽帧图像在原视频中的时序位置信息;

(2.2)将视频抽帧后得到视频帧数据集,单个视频x抽帧后可表示为视频帧图像集x={x1,x2,…..,xm},m是单个视频的视频帧数目;

(2.3)计算所有帧图像与其对应前后连续帧图像间的光流值,并按线性变换方法把光流值转换到[0,255],把帧图像的光流值转换为光流图像。

在步骤3)中,所述人体行为特征学习,使用深度卷积神经网络和双支流输入类残差长短期记忆单元循环神经网络lstm模型学习视频长时序运动特征的具体方法可为:

(3.1)将在imagenet图像分类数据集上训练好的googlenet网络模型在人体行为目标数据集上抽取的视频帧数据集上进行微调训练,得到空间卷积神经网络模型;

(3.2)将在imagenet图像分类数据集上训练好的googlenet网络模型在人体行为目标数据集上计算得到的光流图像数据集上进行微调训练,得到时序卷积神经网络模型;

(3.3)微调训练好空间卷积神经网络模型和时序卷积神经网络模型后,分别当成帧图像和光流图像特征提取器,提取空间和时序特征;

(3.4)对提取的视频空间特征和时序特征按l2范进行归一化处理;

(3.5)设计双支流输入类残差长短期记忆单元循环神经网络,在网络中,除第一个隐含层外,其它隐含层的输入是上一个隐含层的输出和网络输入特征向量的串接,共包含3个隐含层;

(3.6)双支流类残差循环神经网络输入样本扩增,将输入视频特征分割为长为t(帧数),特征子段间重叠率为50%,特征子段类别标签同视频的标签;

(3.7)将视频子段的空间特征和时序特征按视频中的时序输入到双支流类残差循环神经网络。

在步骤4)中,所述根据学习到的人体行为识别特征,用softmax层融合两条支流类残差循环神经网络学习到的长时序运动特征,并输出视频的识别类别的具体方法可为:

softmax层输出各个视频子段样本的属于各个类别的概率值,属于同一视频的视频子段输出类别概率值取平均值作为视频最终的输出类别概率,取概率值最大的类别为该视频样本的识别类别。

本发明公开一种基于深度神经网络的人体行为识别方法,具体地,包括视频采集模块、视频数据预处理模块、深度行为特征学习模块和人体行为识别模块,所述视频采集模块用摄像头获取人体行为的视频数据,视频数据预处理模块包括视频帧提取单元和光流计算单元,所述视频帧提取单元用于将视频转换为记录有视频时序信息的帧图像序列,光流计算单元用于视频光流的计算,深度行为特征学习模块包括卷积神经网络单元和循环神经网络单元,所述卷积神经网络单元用于帧图像高层语义特征学习,循环神经网络单元用于视频行为运动特征学习,所述人体行为识别模块用于对视频中的人体行为动作类别进行识别。本发明用于异常行为的实时报警,起到智能安防的作用;可以实现对视频内容的自动标注,减少人为主观认识差异的影响。

本发明以识别准确率作为方法的评价指标。

附图说明

图1为本发明实施例的双支流类残差循环神经网络原理框图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合相关实例对本发明进行进一步详细说明。

本发明实施例包括以下步骤:

1)采集视频数据集,根据视频中的人体行为类别对视频进行切割,并赋予对应的类别标签;具体方法为:

(1.1)视频数据的采集,包括通过自建视频数据集和使用已建的公共数据集,对自建的数据集中的视频按行为类别进行切割,并赋予相应的行为类别;

(1.2)将自建的数据集划分为训练集和测试集。

2)对视频数据进行抽帧和光流计算预处理,并对抽取的视频帧和光流图像赋予与其对应视频相同的类别标签,具体方法为:

(2.1)视频数据集中的所有视频进行抽帧处理,并保存所抽帧图像在原视频中的时序位置信息;

(2.2)将视频抽帧后得到视频帧数据集,单个视频x抽帧后可表示为视频帧图像集,x={x1,x2,…..,xm},m是单个视频的视频帧数目;

(2.3)计算所有帧图像与其对应前后连续帧图像间的光流值,并按线性变换方法把光流值转换到[0,255],把帧图像的光流值转换为光流图像。

3)人体行为特征学习,使用深度卷积神经网络和双支流输入类残差长短期记忆单元循环神经网络lstm模型学习视频长时序运动特征,具体方法为:

(3.1)将在imagenet图像分类数据集上训练好的googlenet网络模型在人体行为目标数据集上抽取的视频帧数据集上进行微调训练,得到空间卷积神经网络模型;

(3.2)将在imagenet图像分类数据集上训练好的googlenet网络模型在人体行为目标数据集上计算得到的光流图像数据集上进行微调训练,得到时序卷积神经网络模型;

(3.3)微调训练好空间卷积神经网络模型和时序卷积神经网络模型后,分别当成帧图像和光流图像特征提取器,提取空间和时序特征;

(3.4)对提取的视频空间特征和时序特征按l2范进行归一化处理;

(3.5)设计双支流输入类残差长短期记忆单元循环神经网络,在网络中,除第一个隐含层外,其它隐含层的输入是上一个隐含层的输出和网络输入特征向量的串接,共包含3个隐含层;

(3.6)双支流类残差循环神经网络输入样本扩增,将输入视频特征分割为长为t(帧数),特征子段间重叠率为50%,特征子段类别标签同视频的标签;

(3.7)将视频子段的空间特征和时序特征按视频中的时序输入到双支流类残差循环神经网络。

4)根据学习到的人体行为识别特征,用softmax层融合两条支流类残差循环神经网络学习到的长时序运动特征,并输出视频的识别类别,具体方法为:

softmax层输出各个视频子段样本的属于各个类别的概率值,属于同一视频的视频子段输出类别概率值取平均值作为视频最终的输出类别概率,取概率值最大的类别为该视频样本的识别类别。

以下给出具体实施例。

本发明实施例包括视频采集模块、视频数据预处理模块、深度行为特征学习模块和人体行为识别模块,所述视频采集模块用摄像头获取人体行为的视频数据,视频数据预处理模块包括视频帧提取单元和光流计算单元,所述视频帧提取单元用于将视频转换为记录有视频时序信息的帧图像序列,光流计算单元用于视频光流的计算,深度行为特征学习模块包括卷积神经网络单元和循环神经网络单元,所述卷积神经网络单元用于帧图像高层语义特征学习,循环神经网络单元用于视频行为运动特征学习,所述人体行为识别模块用于对视频中的人体行为动作类别进行识别。所述方法的具体步骤如下:

1)以ucf101标准行为识别数据集为例,其包含101个行为类别共13320个视频,采用三种训练集和测试集划分方法对人体行为算法进行评测,其中训练集约包含有9.5k视频,测试集有3.8k左右视频。最后把三次测试的结果取平均作为算法在该数据集上的识别准确率。

2)对ucf101数据集中的视频转换为帧图像的形式,并保留帧图像在原视频中的时序位置信息;同时计算各个帧图像的光流值并按线性变换方法将光流值变换到[0,255]范围,得到相应的光流图像。

3)以googlenet网络模型为基础,设计双支流卷积神经网络提取视频的人体行为识别特征。第一条卷积神经网络支流的输入是rgb视频帧图像,用于视频帧静态表观特征的提取,称该支流为空间支流。第二条卷积神经网络支流的输入是光流图像,用于视频运动特征的提取,称该支流为时序支流。

以双支流卷积神经网络为特征提取器,分别提取googlenet网络中最后最大池化层输出为视频帧的空间特征和时序运动特征。

双支流类残差循环神经网络采用长短期记忆单元lstm和门控循环单元gru两种控制单元验证算法的有效性。lstm网络主要由输入门、遗忘门、记忆存储单元和输出门组成,gru是lstm的一个变体版本,具有lstm能处理长时序数据优点的同时,网络结构也要更加简单,其仅包含有更新门和重置门两个门结构单元。

双支流类残差循环神经网络输入为视频帧图像特征和光流图像特征的双支流残差循环神经网络结构。时间t表示输入时序信息在t时刻的特征向量,t=4表示输入时序信息时长为4。每条支流都包含3个隐含层,每个隐含层由512个存储单元组成。在网络中,除第一个隐含层外,其它隐含层的输入是上一个隐含层的输出和网络输入特征向量的串接。

双支流卷积神经网络和双支流类残差循环神经网络两个模型分别单独训练,其中卷积神经网络结构的权重采用预训练的googlenet模型初始化。随机梯度下降算法被用于卷积神经网络的训练,初始学习率等于0.001,动量值m=0.9,以及权重衰减率为0.0005。双支流类残差循环神经网络使用bptt随机循环下降方法进行训练,学习参数除初始学习率设为0.01,网络中所有权重都用高斯随机初始化(σ=0.01),偏置设为0。

4)softmax层融合两条支流的输出实现最后的视频行为识别。

本发明实施例的双支流类残差循环神经网络原理框图参见图1。

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