一种基于运动轨迹的3D卷积神经网络的行为识别方法技术

技术编号:20177541 阅读:37 留言:0更新日期:2019-01-23 00:36
本发明专利技术公开了一种基于运动轨迹的3D卷积神经网络的行为识别方法,具体为:行为识别网络模型训练:建立行为识别数据集,训练数据集和测试数据集;创建训练标签与测试标签;双向光流计算,获取双向运动轨迹;提取基于运动轨迹的像素值数据矩阵;建立基于运动轨迹的3D卷积神经网络结构;对神经网络结构进行训练;行为识别网络模型测试,计算准确率;若准确率大于等于95%,则认为训练的基于运动轨迹的3D卷积神经网络结构为最终的需求,若准确率小于95%,则需要调整基于运动轨迹的3D卷积神经网络结构的内置参数后重新训练。本发明专利技术的一种基于运动轨迹的3D卷积神经网络的行为识别方法,提高视频中人体行为的识别精度。

A Behavior Recognition Method Based on 3D Convolutional Neural Network of Motion Trajectory

The invention discloses a behavior recognition method of 3D convolution neural network based on motion trajectory, which includes: behavior recognition network model training: establishing behavior recognition data sets, training data sets and test data sets; creating training labels and test labels; bidirectional optical flow calculation to obtain bidirectional motion trajectory; extracting pixel value data matrix based on motion trajectory; and establishing a data matrix based on motion trajectory. 3-D convolution neural network structure of trajectory; training the structure of neural network; testing the model of behavior recognition network, calculating accuracy; if the accuracy is greater than or equal to 95%, it is considered that the structure of training 3-D convolution neural network based on trajectory is the final requirement. If the accuracy is less than 95%, the built-in parameters of the structure of 3-D convolution neural network based on trajectory need to be adjusted. Re-train after several times. The present invention provides a behavior recognition method based on a 3D convolution neural network of motion trajectory to improve the recognition accuracy of human behavior in video.

【技术实现步骤摘要】
一种基于运动轨迹的3D卷积神经网络的行为识别方法
本专利技术属于图像识别
,具体涉及一种基于运动轨迹的3D卷积神经网络的行为识别方法。
技术介绍
人体行为识别是一个涉及计算机视觉和模式识别等领域的综合性研究问题,近年来受到学者和研究人员越来越广泛的重视。行为识别在智能监控、虚拟现实、视频检索、人机交互、客户类型、购物行为分析等现实生活中有着广泛的应用,但杂乱的背景、遮挡、光照和视点变化等因素都会影响行为识别的性能,因此开发先进的行为识别算法就有着迫切的需要。传统的行为识别方法主要由两步组成,第一步是提取视频图像的特征,特征主要由人工特征和深度学习特征组成;第二步利用学习的分类器对特征进行分类。在真实场景中,不同的行为在外观和运动模式上有明显的不同,因此很难选择合适的人工特征,而深度学习模型可以通过样本学习特征从而具有比人工特征更好的优势。基于深度学习行为识别技术主要分为3D卷积神经网络与2D卷积神经网络两个方向。2D卷积神经网络不能很好的捕获时序上的信息,而3D卷积神经网络通过在卷积层进行3D卷积从而在视频序列中提取在时间和空间维度都具有区分性的时空特征,但目前的3D卷积神经网络忽视了视频时间维和空间维的差异性,没有考虑到行人的运动信息,因而在时间维度上还残留更多的高频信息,在网络中难以形成行人的抽象化表示和特征的不变性。
技术实现思路
本专利技术的目的是提供一种基于运动轨迹的3D卷积神经网络的行为识别方法,提高视频中人体行为的识别精度。本专利技术所采用的技术方案是,一种基于运动轨迹的3D卷积神经网络的行为识别方法,具体按照以下步骤实施:步骤一,行为识别网络模型训练,具体按照以下步骤实施:步骤1,建立行为识别数据集,数据集包含N种行为类别,将第n种行为的视频个数记为Vnumn,0≤n≤N-1,在第n种行为视频中按顺序抽取前Kn个视频作为训练视频,Kn=round(3/4×Vnumn),把所有抽取的训练视频作为训练数据集Vtrain,其中表示在训练数据集中第n种行为类别下的第k个视频,测试数据集表示测试数据集中第n种行为类别下的第s个视频;步骤2,创建训练标签Labeltrain与测试标签Labeltest,在训练数据集Vtrain中,第n种行为类别下的第k个视频的视频帧数为以互不重叠的连续16帧图像为一个视频段,提取的视频段个数表示第n种行为类别下的第k个视频的第m个视频段;训练标签Labeltrain的格式为:其中为视频路径VideoPath/Vtrainn下的视频文件名(m-1)×16为每个视频段起始帧号,n为行为类别编号;在测试数据集Vtest中,第n种行为类别下的第s个视频的视频帧数为以互不重叠的连续16帧图像为一个视频段,提取的视频段个数表示第n种行为类别下的第s个视频的第w个视频段;测试标签Labeltest格式为:其中为视频路径VideoPath/Vtestn下的视频文件名(w-1)×16为每个视频段起始帧号,n为行为类别编号;步骤3,双向光流计算,获取前向、后向运动轨迹列表,对输入的视频段数据进行双向光流场计算,获取视频前向运动轨迹列表pos_pre={pos_pre[i][j]},pos_pre[i][j]表示第i帧视频图像第j个像素在前一帧视频图像中的对应像素点位置,其中,1≤j≤w×h,w、h分别表示视频图像的宽和高,由于第1帧视频图像没有前一帧视频图像,因此1<i≤16;后向运动轨迹列表pos_back={pos_back[i][j]},pos_back[i][j]表示第i帧视频图像第j个像素在后一帧视频图像中的对应像素点位置,其中,1≤j≤w×h,由于第16帧视频图像没有后一帧视频图像,因此1≤i<16;步骤4,根据步骤3得到的运动轨迹列表,把视频段数据转换成N1×N2大小的数据矩阵N1=81,N2=16×w×h,c表示颜色通道,取值为1,2和3,imgc[i]中第j个像素点位置是根据i和j的取值在前向轨迹列表pos_pre中得到前向匹配像素点位置Pfij,Pfij=pos_pre[i][j],在后向轨迹列表pos_back中得到后向匹配像素点位置在imgc[i-1]、imgc[i]和imgc[i+1]图像中分别提取和Pfij这三个位置的像素点在各个通道上的3×3邻域像素值,将三个通道上的各邻域像素值串行合并,将合并后数据放在矩阵中的第(i-1)×(w×h)+j列;步骤5,建立基于运动轨迹的3D卷积神经网络结构Track_3D;步骤6,对步骤5建立的基于运动轨迹的3D卷积神经网络结构进行训练,具体为:打开训练标签Labeltrain文件,按行读取视频路径、视频名称和视频段起始帧号,在视频名称对应的视频中以起始帧号为首帧连续读取16帧视频段作为一个样本,将所有的样本依次送入到步骤5建立的基于运动轨迹的3D卷积神经网络结构中进行训练,当满足最大迭代次数或收敛条件时结束训练,得到基于运动轨迹的3D卷积神经网络结构Track3DModel;步骤二,行为识别网络模型测试,具体为:读取测试标签Labeltest中的视频路径、视频名称以及起始帧号,将测试数据集中的视频按照以起始帧号为第一帧的连续16帧视频段输入到经过训练的基于运动轨迹的3D卷积神经网络模型中,输出各个视频段的行为分类信息,最后将输出的行为分类信息与该测试视频对应的测试标签Labeltest信息作比较,统计分类正确个数,计算得到准确率;步骤三,若步骤二的得到的准确率大于等于95%,则认为步骤一的步骤6训练的基于运动轨迹的3D卷积神经网络结构为最终的需求;若准确率小于95%,则需要调整基于运动轨迹的3D卷积神经网络结构的内置参数,然后重复步骤一中的步骤6和步骤二,直到准确率满足要求。本专利技术的特征还在于,步骤一中的步骤3具体按照以下步骤实施:步骤3.1,将输入的视频段数据转化为灰度图像集{img_gray[i]|1≤i≤16};步骤3.2,采用光流计算方法进行视频灰度图像img_gray[i]的前向和后向运动轨迹提取。步骤3.2具体按照以下步骤实施:步骤(1),当前视频帧图像img_gray[i]的像素坐标表示为:其中和分别为img_gray[i]中第j像素在图像中的横坐标和纵坐标;步骤(2),获取当前视频帧图像img_gray[i]的前一帧图像img_pre与后一帧图像img_back,其中img_pre=img_gray[i-1],img_back=img_gray[i+1];若当i=1时,表示当前帧没有前一帧图像,则把img_pre置为空;若当i=16时,表示当前帧没有后一帧图像,则把img_back置为空;步骤(3),计算相邻两帧图像的光流场,采用光流场计算方法分别计算img_gray[i]与img_pre、img_back之间的前向光流场和后向光流场ω_pre[i],ω_back[i],分别对应img_gray[i]中第j个像素相对img_pre的水平和垂直运动位移量,分别对应img_gray[i]中第j个像素相对img_back的水平和垂直运动位移量;步骤(4),根据光流场生成img_gray[i]的前向运动轨迹列表Pfij是img_gray[i]中第j个像素在img_pre中的对应像素点位置,步骤(5),根据光本文档来自技高网...

【技术保护点】
1.一种基于运动轨迹的3D卷积神经网络的行为识别方法,其特征在于,具体按照以下步骤实施:步骤一,行为识别网络模型训练,具体按照以下步骤实施:步骤1,建立行为识别数据集,数据集包含N种行为类别,第n种行为的视频个数记为Vnumn,0≤n≤N‑1,在第n种行为视频中按顺序抽取前Kn个视频作为训练视频,Kn=round(3/4×Vnumn),把所有抽取的训练视频作为训练数据集Vtrain,其中

【技术特征摘要】
1.一种基于运动轨迹的3D卷积神经网络的行为识别方法,其特征在于,具体按照以下步骤实施:步骤一,行为识别网络模型训练,具体按照以下步骤实施:步骤1,建立行为识别数据集,数据集包含N种行为类别,第n种行为的视频个数记为Vnumn,0≤n≤N-1,在第n种行为视频中按顺序抽取前Kn个视频作为训练视频,Kn=round(3/4×Vnumn),把所有抽取的训练视频作为训练数据集Vtrain,其中表示在训练数据集中第n种行为类别下的第k个视频;测试数据集表示测试数据集中第n种行为类别下的第s个视频;步骤2,创建训练标签Labeltrain与测试标签Labeltest,在训练数据集Vtrain中,第n种行为类别下的第k个视频的视频帧数为以互不重叠的连续16帧图像为一个视频段,提取的视频段个数表示第n种行为类别下的第k个视频的第m个视频段;训练标签Labeltrain的格式为:其中为视频路径VideoPath/Vtrainn下的视频文件名为每个视频段起始帧号,n为行为类别编号;在测试数据集Vtest中,第n种行为类别下的第s个视频的视频帧数为以互不重叠的连续16帧图像为一个视频段,提取的视频段个数表示第n种行为类别下的第s个视频的第w个视频段;测试标签Labeltest格式为:其中为视频路径VideoPath/Vtestn下的视频文件名为每个视频段起始帧号,n为行为类别编号;步骤3,双向光流计算,获取前向、后向运动轨迹列表,对输入的视频段数据进行双向光流场计算,获取视频前向运动轨迹列表pos_pre={pos_pre[i][j]},pos_pre[i][j]表示第i帧视频图像第j个像素在前一帧视频图像中的对应像素点位置,其中,1≤j≤w×h,w、h分别表示视频图像的宽和高,1<i≤16;后向运动轨迹列表pos_back={pos_back[i][j]},pos_back[i][j]表示第i帧视频图像第j个像素在后一帧视频图像中的对应像素点位置,其中,1≤j≤w×h,1≤i<16;步骤4,根据步骤3得到的运动轨迹列表,把视频段数据转换成N1×N2大小的数据矩阵N1=81,N2=16×w×h,c表示颜色通道,取值为1,2和3,imgc[i]中第j个像素点位置是根据i和j的取值在前向轨迹列表pos_pre中得到前向匹配像素点位置在后向轨迹列表pos_back中得到后向匹配像素点位置在imgc[i-1]、imgc[i]和imgc[i+1]图像中分别提取和Pfij这三个位置的像素点在各个通道上的3×3邻域像素值,将三个通道上的各邻域像素值串行合并,将合并后数据放在矩阵中的第(i-1)×(w×h)+j列;步骤5,建立基于运动轨迹的3D卷积神经网络结构Track_3D;步骤6,对步骤5建立的基于运动轨迹的3D卷积神经网络结构进行训练,具体为:打开训练样本标签Labeltrain文件,按行读取视频路径、视频名称和视频段起始帧号,在视频名称对应的视频中以起始帧号为首帧连续读取16帧视频段作为一个样本,将所有的样本依次送入到步骤5建立的基于运动轨迹的3D卷积神经网络结构中进行训练,当满足最大迭代次数或收敛条件时结束训练,得到基于运动轨迹的3D卷积神经网络结构Track3DModel;步骤二,行为识别网络模型测试,具体为:读取测试标签Labeltest中的视频路径、视频名称以及起始帧号,将测试数据集中的视频按照以起始帧号为第一帧的连续16帧视频段输入到经过训练的基于运动轨迹的3D卷积神经网络模型中,输出各个视频段的行为分类信息,最后将输出的行为分类信息与该测试视频对应的测试标签Labeltest文件信息作比较,统计分类正确个数,计算得到准确率;步骤三,若步骤二的得到的准确率大于等于95%,则认为步骤一的步骤6训练的基于运动轨迹的3D卷积神经网络结构为最终的需求,若准确率小于95%,则需要调整基于运动轨迹的3D卷积神经网络结构的内置参数,然后重复步骤一的步骤6和步骤二,直到准确率满足要求。2.根据权利要求1所述的一种基于运动轨迹的3D卷积神经网络的行为识别方法,其特征在于,所述步骤3具体按照以下步骤实施:步骤3.1,将输入的视频段数据转化为灰度图像集{img_gray[i]|1≤i≤16};步骤3.2,采用光流计算方法进行视频灰度图像img_gray[i]的前向和后向运动轨迹提取。3.根据权利要求2所述的一种基于运动轨迹的3D卷积神经网络的行为识别方法,其特征在于,所述步骤3.2具体按照以下步骤实施:步骤(1),当前视频帧图像img_gray[i]的像素坐标表示为:其中和分别为img_gray[i]中第j像素在图像中的横坐标和纵坐标;步骤(2),获取当前视频帧图像img_gray[i]的前一帧图像img_pre与后一帧图像img_back,其中img_pre=img_gray[i-1],img_back=img_gray[i+1];若当i=1时,表示当前帧没有前一帧图像,则把img_pre置为空;若当i=16时,表示当前帧没有后一帧图像,则把img_back置为空;步骤(3),计算相邻两帧图像的光流场,采用光流场计算方法分别计算img_gray[i]与img_pre、img_back之间的前向光流场和后向光流场ω_pre[i],ω_back[i],分别对应img_gray[i]中第j个像素相对img_pre的水平和垂直运动位移量,分别对应img_gray[i]中第j个像素相对img_back的水平和垂直运动位移量;步骤(4),根据光流场生成img_gray[i]的前向运动轨迹列表...

【专利技术属性】
技术研发人员:赵凡吉璐蔺广逢陈亚军
申请(专利权)人:西安理工大学
类型:发明
国别省市:陕西,61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1