基于卷积神经网络特征编码的人体动作识别方法与流程

文档序号:11251333阅读:1865来源:国知局
基于卷积神经网络特征编码的人体动作识别方法与流程

本发明属于图像处理技术领域,更进一步涉及基于深度学习的人体动作识别,具体是一种基于卷积神经网络特征编码的人体动作识别方法方法,可用于小区、酒店、商场以及保密场所等区域对监控视频中的人体动作进行检测识别。



背景技术:

随着科技的快速发展和人们生活水平的不断提高的提高,人们对于生活中的安全问题也越来越关注。现在视频监控设备越来越普及,在小区、酒店、停车场、商场、十字路口、公司以及保密场所等很多地方都装有视频监控设备。随着视频监控设备规模不断扩大,视频监控对更加智能化的技术和系统的需求也更大。智能监控系统可以主动对监控视频中的人进行分析、识别,在发现异常情况时及时发出警报,避免可能存在的罪犯或者危险,人体动作识别技术涉及到人们日常生活的方方面面,研究人体动作识别对改善和提高人们的生活质量有重要的作用和潜在经济价值。

人体动作识别是指以数字图像或视频信号流为对象,通过图像处理与自动识别方法,获得人体动作信息的一种实用技术。由于人体动作的自由性,相机运动,光线强度变化,衣服的不同,不同人体型的差距,人体具有非刚体的特性以及不同环境条件下的差异性等等问题的存在,因此使得人体动作识别的研究成为一个多学科交叉并且特别具体挑战性的技术问题。

目前,人体动作识别方法主要有基于模板匹配,神经网络,时空特征等方法。由上述方法提取的特征受到复杂背景的影响很大,实时性差并且特征大所需内存很大,实现复杂,从而导致此类方法在处理大量复杂背景数据时,因鲁棒性不强降低了人体动作识别的精度。

现有的大部分人体动作识别算法,过程复杂,计算量太大,识别率不高,容易受到环境条件的影响,所以需要新的研究方法的提出。

hengwang等人在其发表的论文“actionrecognitionbydensetrajectories”(conferenceoncomputervision&patternrecognition,2011,42(7):3169-3176)中提出了一种基于密集轨迹特征和支持向量机svm的人体动作识别的方法,该方法首先对视频进行多尺度密集采样,然后对采集到的特征点进行跟踪形成轨迹,沿着轨迹将轨迹邻域划分成更小的子空间,对每个子空间构造描述静态特征hog,像素绝对运动特征hof,像素相对运动特征mbh,然后使用k均值聚类学习得到的词袋,最后利用支持向量机进行分类。该方法存在的不足之处是,计算量大,导致速度慢,实时性差,而且存在轨迹漂移问题。

合肥金诺数码科技股份有限公司申请的专利“一种基于kinect的人体动作识别方法”(专利申请号:cn201310486754.8,公开号:cn103529944b)公开了一种基于kinect的人体动作识别方法。该方法利用kinect获取目标人体的骨骼关节点的空间位置信息,然后通过判断其是否满足预设的各种人体动作的判定标准来识别目标人体的动作类型。该方法存在的不足之处是时间复杂度高,容易受遮挡和人体差异的影响,因此准确率不高,适合简单动作的识别。

重庆邮电大学申请的专利“一种基于高斯过程隐变量模型的人体动作识别方法”(专利申请号:cn201610226853.6,公开号:cn105930770a)公开了一种基于高斯过程隐变量模型和隐条件随机场的判别式人体动作识别方法,该方法主要包括以下三个部分:在获取运动数据方面,通过动作捕捉技术或kinect体感技术获取人体的骨骼结构和运动信息;在提取运动特征方面,采用加入动态过程和稀疏近似的高斯过程隐变量模型来得到高维运动信息在低维隐空间中的流行结构,以表示运动特征;在人体动作识别方面,利用判别式的隐条件随机场对时序运动数据的特征进行建模,并对动作进行分类。该方法存在的不足之处是过程复杂,容易受遮挡和人体差异的影响。

目前,人体动作识别在科研方面具有研究价值是由于人体动作识别在生活中有广泛的应用。已有的人体动作识别方法存在时间复杂度高,计算量大,实时性差,易受遮挡、光线强度变化和人体差异的影响。



技术实现要素:

本发明的目的是针对上述现有技术存在的不足,提出一种基于卷积神经网络特征编码的人体动作识别方法,以减小计算量,提高实时性和识别的准确度。

本发明是一种基于卷积神经网络特征编码的人体动作识别方法,其特征在于,包括有如下步骤:

(1)获取人体动作光流图:输入人体动作数据集中视频,对其利用稠密光流tv-l1进行处理,获取人体动作数据集中视频的光流图;

(2)调整视频和光流图大小:对人体动作数据集中视频的每帧图像和得到的光流图进行调整,调整单帧图像到大小为224×224像素;

(3)获取视频和光流图的卷积特征图:

(3a)卷积神经网络cnn有11层,这11层依次是卷积层conv1,池化层pool1,卷积层conv2,池化层pool2,卷积层conv3,卷积层conv4,卷积层conv5,池化层pool5,全连接层fc6,全连接层fc7,分类层softmax;

(3b)获取视频图像卷积特征图:将已调整大小的人体动作数据集中每个视频的所有帧图像输入卷积神经网络cnn,视频是由多帧图像链接而成的,图像从卷积神经网络cnn输入层经过逐级的变换,传送到卷积神经网络cnn输出层,每一张图像从池化层pool5获取512张6×6像素大小的特征图;

(3c)获取光流图卷积特征图:将已调整大小的光流图输入卷积神经网络cnn,光流图从卷积神经网络cnn输入层经过逐级的变换,传送到卷积神经网络cnn输出层,每一张光流图从池化层pool5获取512张6×6像素大小的特征图;

(4)获取局部特征累积描述子:对视频和光流图获取的卷积特征进行局部特征累积编码获取局部特征累积描述子;

(5)降维白化处理:将视频和光流获取的局部特征累积描述子输入主成分分析pca中进行降维白化处理;

(6)获取局部特征聚合描述符vlad向量:

(6a)降维白化后的局部特征累积描述子通过k均值k-means聚类,学习得到k个聚类中心(c1,...,cj,...,ck),j∈[1,k];

(6b)每个视频和光流分别获取局部特征聚合描述符vlad向量并对获取的vlad向量进行l2归一化;

(7)获取人体动作视频分类数据:合并视频获取的vlad向量和对应光流视频获取的vlad向量获取人体动作视频分类数据;

(8)利用支持向量机分类器分类处理人体动作视频分类数据;

(8a)将最后的vlad向量分成两部分,分别作为训练样本和测试样本;

(8b)用训练样本训练支持向量机分类器得到分类模型;

(8c)用分类模型对测试样本进行分类,获得所输入的人体动作的识别结果。

本发明的基于卷积神经网络特征编码的人体动作识别方法,减小了计算量,提高实时性和识别的准确度。

本发明与现有技术相比具有以下优点:

第一、由于本发明采用局部特征累积编码方法对视频和光流图进行编码获取局部特征累积描述子,一张卷积特征图通过本发明中的局部特征累积编码可以获取36个局部特征累积描述子,增加特征个数提高人体动作的识别率度;局部特征累积编码是对特征图上相同位置像素进行累积叠加计算简单。

第二、由于本发明采用稠密光流tv-l1获取光流图获取人体动作的光流图,稠密光流tv-l1能够计算出相邻帧图像上所有点的光流,克服了稀疏光流易受背景运动影响,精度不高的问题,获取更精准的结果。

第三、由于本发明将视频获取的vlad向量和光流获取的vlad向量进行合并进行人体动作识别,将视频的空间信息和光流的动作信息进行融合,相对于单独的视频帧图像信息和单独的光流中动作信息融合这两种信息使获取的向量特征更稳定,不仅提高人体动作的识别效果而且使算法的鲁棒性更好。

附图说明

图1是本发明的实现流程图;

图2是本发明中的光流图示意图;

图3是本发明分类结果的混淆矩阵示意图。

图4是本发明局部动作分类结果的混淆矩阵示意图。

具体实施方式

下面结合附图对本发明详细描述。

实施例1

目前,由于人体动作识别在生活中有广泛的应用价值。在科研方面也有许多关于人体动作识别的研究。现有的人体动作识别方法主要有基于模板匹配,神经网络,时空特征等方法。上述方法在实现人体动作识别方法上具有时间复杂度高,计算量大,实时性差,易受遮挡,所需内存很大,实现复杂,识别率不高,容易受到环境条件的影响,从而导致此类方法在处理大量复杂背景数据时,因鲁棒性不强降低了人体动作识别的精度。针对此现状本发明展开了创新与研究,提出一种基于卷积神经网络特征编码的人体动作识别方法,参见图1,人体动作识别过程包括有如下步骤:

(1)针对人体动作数据集选择视频对应的空间方向和光流对应的动作方向两个流向来进行信息处理;

(2)在动作方向首先获取人体运动光流图:输入人体运动数据集中视频,对其利用稠密光流tv-l1进行处理,获取人体运动数据集中视频的光流图,对两个方向分别进行卷积特征图获取、局部特征累积编码、降维白化处理、vlad向量处理;

(3)调整视频和光流图大小:对从空间方向的人体运动数据集中获取视频的每帧图像和从动作方向得到的光流图分别进行调整,调整单帧图像到大小为224×224像素,为卷积神经网络输入做准备。

(4)获取空间方向视频和动作方向光流图的卷积特征图:

(4a)卷积神经网络cnn有11层,这11层依次是卷积层conv1,池化层pool1,卷积层conv2,池化层pool2,卷积层conv3,卷积层conv4,卷积层conv5,池化层pool5,全连接层fc6,全连接层fc7,分类层softmax;

(4b)在空间方向获取视频图像卷积特征图:将空间方向已调整大小的人体运动数据集中每个视频的所有帧图像输入卷积神经网络cnn,视频是由多帧图像链接而成的,图像从卷积神经网络cnn输入层经过逐级的变换,传送到卷积神经网络cnn输出层,每一张图像从池化层pool5获取512张6×6像素大小的特征图;

(4c)在动作方向获取光流图卷积特征图:将动作方向已调整大小的光流图输入卷积神经网络cnn,光流图从卷积神经网络cnn输入层经过逐级的变换,传送到卷积神经网络cnn输出层,每一张光流图从池化层pool5获取512张6×6像素大小的特征图;

(5)获取局部特征累积描述子:对空间方向获取的卷积特征和动作方向获取的卷积特征均利用局部特征累积编码方式进行编码分别得到空间方向的局部特征累积描述子和动作方向的局部特征累积描述子;

(6)降维白化处理:将空间方向的局部特征累积描述子和动作方向的局部特征累积描述子分别输入主成分分析pca中进行降维白化处理;

(7)在空间方向和动作方向分别获取局部特征聚合描述符vlad向量:

(7a)降维白化后的局部特征累积描述子通过k均值k-means聚类,学习得到k个聚类中心(c1,...,cj,...,ck),j∈[1,k];

(7b)空间方向的每个视频和动作方向的光流分别获取局部特征聚合描述符vlad向量并分别对获取的vlad向量进行l2归一化;

(8)合并两个方向信息得到人体动作分类数据:将空间方向视频获取的vlad向量和动作方向对应光流获取的vlad向量进行合并,得到人体动作分类数据;

(9)利用支持向量机分类器分类处理人体动作分类数据;

(9a)将人体动作分类数据分成两部分,分别作为训练样本和测试样本;

(9b)用训练样本训练支持向量机分类器得到分类模型;

(9c)用分类模型对测试样本进行人体动作分类,获得所输入的人体动作的识别结果。

本发明中采用稠密光流tv-l1的方法获取人体动作的光流图,相比稀疏光流本发明采用的稠密光流方法计算更精准。通过卷积神经网络获取人体动作的卷积特征图,卷积神经网络自学习的特征对环境变化具有更高的鲁棒性。对获取的人体动作的卷积特征图利用局部特征累积编码对人体动作视频和光流的卷积特征图进行编码,本发明的局部特征累积编码方式计算简单而且增加了特征数目提高识别效果。对获取的局部特征累积描述子利用主成分分析pca进行降维白化处理,降低局部特征累积描述子的维数减少特征之间的冗余,使本发明计算更简单并且可以提高识别率。对将维白化后的局部特征累积描述子利用k均值k-means聚类获取k个聚类中心,每段视频和对应光流分别用vlad向量表示,合并视频获取的vlad向量和光流获取的vlad向量获取人体动作视频分类数据,合并视频和光流的vlad向量将形状信息和动作信息合并,提高了人体动作的识别精度而且提高了算法的鲁棒性。

实施例2

基于卷积神经网络特征编码的人体动作识别方法同实施例1,本发明步骤(5)中对空间方向视频的卷积特征和动作方向光流图的卷积特征分别进行局部特征累积编码获取局部特征累积描述子,包括如下步骤:

(5a)在空间方向对人体动作视频图像中每张图像获取的512张6×6像素大小卷积特征图中相同位置的像素值进行累积叠加,可得到36个512维的局部特征累积描述子,一段视频的局部特征累积描述子可表示为n×(36×512),其中n表示视频的帧数;

(5b)在动作方向对每张光流图获取的512张6×6像素大小卷积特征图,通过(5a)中的局部特征累积编码方法,得到36个512维的局部特征累积描述子,一段光流视频的局部特征累积描述子可表示为a×(36×512),其中a表示光流视频的帧数

本发明中的编码方式对于视频数据量少,硬件条件有限,时间复杂度高,识别精度低等问题有较好的改善。一张图像得到一个卷积特征图而本发明中一张卷积特征图可以获取36个局部特征累积描述子增加了特征个数,相比于同样层数的卷积神经网络cnn本发明精度有明显提高,相对于现有的精度相似的方法本发明训练速度更快,硬件要求更低。

实施例3

基于卷积神经网络特征编码的人体动作识别方法同实施例1-2,本发明步骤(6)中利用主成分分析pca分别对空间方向和动作方向的局部特征累积描述子进行降维白化处理,按如下步骤进行:

(6a)在空间方向利用主成分分析pca对局部特征累积描述子进行降维白化处理;

(6a1)从编码后的局部特征累积描述子中随机抽取10000个局部特征累积描述子,表示为{x1,...,xi,...,xm},作为pca处理的输入数据,其中i∈[1,m],m为局部特征累积描述子个数;

(6a2)按照下式,分别计算每个局部特征累积描述子的均值

其中,xi表示第i个局部特征累积描述子;

(6a3)用每个局部特征累积描述子减去均值,得到去均值化的局部特征累积描述子;

(6a4)计算局部特征累积描述子的奇异矩阵:

其中,u表示局部特征累积描述子左奇异向量组成的矩阵,s表示局部特征累积描述子的奇异值元素组成的对角矩阵,v表示局部特征累积描述子的右奇异向量组成的矩阵,svd(·)表示奇异值分解函数,x′i表示第i张去均值化的局部特征累积描述子;

(6a5)按照下式,对去均值化局部特征累积描述子进行降维处理:

利用局部特征累积描述子左奇异向量组成的矩阵u可以将局部特征累积描述子进行降维,将局部特征累积描述子降维到d维表示如下:

y=ud×x′i

其中,y表示降维后的局部特征累积描述子,ud表示u的前d列;

(6a6)降维后的局部特征累积描述子y利用下式进行白化处理:

其中,t表示白化后的局部特征累积描述子。

(6b)在动作方向方向利用主成分分析pa对局部特征累积描述子进行降维白化处理,具体计算步骤同(6a);

本发明中经过实验对比发现,在人体动作识别精度相似的条件下,局部特征累积描述子的维数越低越好,维数越低计算越简单,本发明在保证识别精度的条件下将局部特征累积描述子降维到256的维数是最合适的,进行白化处理可以降低特征之间的关联性提高人体动作识别的精度。

实施例4

基于卷积神经网络特征编码的人体动作识别方法同实施例1-3,步骤(8)中合并两个方向信息得到人体动作分类数据,

按如下式进行:

用vf表示视频获取的vlad向量,va表示对应光流视频获取的vlad向量,合并后的vlad向量为fa:

fa=[vftvat]t

本发明中合并视频获取的vlad向量与对应光流视频获取的vlad向量是将视频信息和光流信息进行融合,相对于单独的只有视频帧的图像信息和单独的光流中的动作信息,融合这两种信息可以使获取的向量特征更稳定,提高了人体动作的识别精度和算法的鲁棒性。

下面,从某些发明步骤更详细的角度对本发明实现技术方案说明如下:

实施例5

基于卷积神经网络特征编码的人体动作识别方法同实施例1-4

本例中从整体的角度对本发明人体动作识别方法再做说明,参见图1,通过以下步骤实现基于卷积神经网络特征编码的人体动作识别:

1)图1中左侧为本发明视频对应的空间方向信息处理过程,右侧为光流对应的动作方向信息处理过程。在光流方向首先获取人体动作光流图,对人体动作数据集ucf101中视频利用稠密光流tv-l1进行处理得到光流图。本发明所用的稠密光流tv-l1相对于稀疏光流效果更好,特征信息更多。

2)将人体动作数据集ucf101中视频和光流图调整为像素大小为224×224。

3)获取空间方向和动作方向的人体动作识别卷积特征图;

3a)卷积神经网络cnn有11层,这11层依次是卷积层conv1,池化层pool1,卷积层conv2,池化层pool2,卷积层conv3,卷积层conv4,卷积层conv5,池化层pool5,全连接层fc6,全连接层fc7,分类层softmax。

3b)在图1中左侧空间方向,将已调整大小的人体动作数据集中的视频输入卷积神经网络cnn,视频是由多帧图像链接而成的,图像从卷积神经网络cnn输入层经过逐级的变换,传送到卷积神经网络cnn输出层,每一张图像从池化层pool5获取512张6×6像素大小的特征图用于后续编码。

3c)在图1中右侧动作方向,将已调整大小的光流图输入卷积神经网络cnn,光流图从卷积神经网络cnn输入层经过逐级的变换,传送到卷积神经网络cnn输出层,每一张光流图从池化层pool5获取512张6×6像素大小的特征图用于后续编码。

4)对空间方向和动作方向的人体动作识别卷积特征图分别进行局部特征累积编码获取相应的局部特征累积描述子。

5)分别利用主成分分析pca对空间方向和动作方向的局部特征累积描述子进行降维白化处理。

6)降维白化后的局部特征累积描述子通过k均值k-means聚类,学习得到k个聚类中心(c1,...,cj,...,ck),j∈[1,k]。本发明中经过实验数据对比发现将聚类中心个数k与计算复杂度相关,本发明给出聚类中心个数k的最佳值,k定为256最为合适,聚类中心个数高于256人体动作识别精度没有明显提高而且时间计算复杂度有明显提高,聚类中心个数低于256人体动作识别精度明显降低。

7)对每个视频和光流获取局部特征聚合描述符vlad向量并对获取的vlad向量进行l2归一化。

8)对图1中左侧空间方向视频获取的vlad向量和对应图1右侧动作方向光流获取的vlad向量进行合并形成最终的人体动作视频分类数据。

9)利用支持向量机分类器分类处理人体动作视频分类数据;

9a)将人体动作视频分类数据分成两部分,分别作为训练样本和测试样本;

9b)用训练样本训练支持向量机分类器得到分类模型;

9c)用分类模型对测试样本进行分类,获得所输入的人体运动的识别结果。

本发明的方法对动作种类多,背景复杂的人体动作数据有很好的识别效果,本算法计算更简单,需要的硬件设备低,相对于现有算法的计算复杂,特征维数高等问题,本发明的方法在现实应用中有更好的效果。

下面给出一个更加详实的例子,结合附图对本发明做进一步描述:

实施例6

基于卷积神经网络特征编码的人体动作识别方法同实施例1-5,

参照图1,本发明的实现包括有如下步骤:

步骤1,对人体运动数据集利用稠密光流tv-l1进行处理得到光流图,如图2,图2中左侧一列为人体动作视频序列,右侧第一列flow_x为光流的水平分量光流图,水平分量光流图为视频中相同两帧图像之间的位移分量的水平分量,flow_y第二列为光流的垂直分量光流图,垂直分量光流图为视频中相同两帧图像之间的位移分量的垂直分量。图2中右侧的光流图中,用颜色的深浅来表示位移量的大小,向前移动的位移越大亮度越大,向后移动的位移越大就越暗。

本发明采用的稠密光流tv-l1的目标函数表示如下:

其中t(x,y)为参考图像,i(x,y)为当前图像,也是待配准图像,u,v是图像上每一点的偏移量,λ权重因子。

步骤2,鉴于卷积神经网络输入图像为固定大小,分别对空间方向和动作方向的人体动作数据集中视频的每帧图像和光流图进行调整,调整视频和光流的单帧图像到大小为224×224像素,为卷积神经网络输入做准备。

步骤3,获取空间方向和动作方向的人体动作识别卷积特征图;

(3a)卷积神经网络cnn有11层,这11层依次是卷积层conv1,池化层pool1,卷积层conv2,池化层pool2,卷积层conv3,卷积层conv4,卷积层conv5,池化层pool5,全连接层fc6,全连接层fc7,分类层softmax。

(3b)获取图1中左侧空间方向的视频图像卷积特征图:将已调整大小的人体动作数据集中的视频输入卷及神经网络cnn,视频是由多帧图像链接而成的,图像从卷积神经网络cnn输入层经过逐级的变换,传送到卷积神经网络cnn输出层,每一张图像从池化层pool5获取512张6×6像素大小的特征图。

(3b1)将224×224像素大小的待检测视频中每一帧图像输入卷积层conv1,对其进行块大小为7×7像素和步长为2个像素的卷积操作,总共用96个卷积核,得到96张109×109像素大小的特征图。

(3b2)将卷积层conv1输出的96张特征图输入到池化层pool1,对其进行最大池化操作,池化块的大小为3×3像素,步长为2个像素,得到96张分辨率为54×54像素的特征图。

(3b3)将池化层pool1输出的96张特征图输入卷积层conv2,对其进行块大小为5×5像素和步长为2个像素的卷积操作,总共用256个卷积核,得到256张分辨率为26×26像素的特征图。

(3b4)将卷积层conv2输出的256张特征图输入到池化层pool2,对其进行最大池化操作,池化块的大小为3×3像素,步长为2个像素,得到256张分辨率为13×13像素的特征图。

(3b5)将池化层pool2输出的256张特征图输入卷积层conv3,对其进行块大小为3×3像素和步长为1个像素的卷积操作,总共用512个卷积核,得到512张分辨率为13×13像素的特征图。

(3b6)将卷积层conv3输出的512张特征图输入卷积层conv4,对其进行块大小为3×3像素和步长为1个像素的卷积操作,总共用512个卷积核,得到512张分辨率为13×13像素的特征图。

(3b7)将卷积层conv4输出的512张特征图输入卷积层conv5,对其进行块大小为3×3像素和步长为1个像素的卷积操作,总共用512个卷积核,得到512张分辨率为13×13像素的特征图。

(3b8)将卷积层conv5输出的512张特征图输入池化层pool5,对其进行块大小为3×3像素和步长为2个像素的卷积操作,总共用512个卷积核,得到512张分辨率为6×6像素的特征图,此处512张分辨率为6×6像素的特征图就是要求的卷积特征图。

(3c)获取图1中右侧动作方向的光流图卷积特征图:将已调整大小的光流图输入卷及神经网络cnn,光流图从卷积神经网络cnn输入层经过逐级的变换,传送到卷积神经网络cnn输出层,每一张光流图从池化层pool5获取512张6×6像素大小的特征图,获得卷积特征图的详细步骤与步骤(3b)获取图1中左侧空间方向的视频图像卷积特征图相同。

步骤4,对空间方向和动作方向的人体动作识别卷积特征图分别进行局部特征累积编码获取相应的局部特征累积描述子;

(4a)对图1中左侧空间方向的视频中每帧图像获取的512张6×6像素大小卷积特征图中相同位置的像素值进行累积叠加,可得到36个512维的局部特征累积描述子,一段视频的局部特征累积描述子可表示为n×(36×512),其中n表示视频的帧数。

(4b)对图1中右侧动作方向的每张光流图获取的512张6×6像素大小卷积特征图,通过(4a)中的编码方法,同样可得到36个512维的局部特征累积描述子,一段光流视频的局部特征累积描述子可表示为a×(36×512),其中a表示光流视频的帧数。

步骤5,图1将局部特征累积描述子输入主成分分析pca中进行降维白化处理;

(5a)从编码后的局部特征累积描述子中随机抽取10000个局部特征累积描述子,表示为{x1,...,xi,...,xm},作为主成分分析pca处理的输入数据,其中i∈[1,m],m为局部特征累积描述子个数。

(5b)按照下式,分别计算每个局部特征累积描述子的均值:

其中,表示每个局部特征累积描述子的均值,m表示局部特征累积描述子的数目,xi表示第i个局部特征累积描述子,i∈[1,m]。

(5c)用每个局部特征累积描述子减去均值,得到去均值化的局部特征累积描述子。

(5d)计算局部特征累积描述子的奇异矩阵:

其中,u表示局部特征累积描述子左奇异向量组成的矩阵,s表示局部特征累积描述子的奇异值元素组成的对角矩阵,v表示局部特征累积描述子的右奇异向量组成的矩阵,svd(·)表示奇异值分解函数,m表示局部特征累积描述子的个数,x′i表示第i张去均值化的局部特征累积描述子,i∈[1,m]。

(5e)按照下式,对去均值化局部特征累积描述子进行降维处理:

利用局部特征累积描述子左奇异向量组成的矩阵u可以将局部特征累积描述子进行降维,将局部特征累积描述子降维到d维表示如下:

y=ud×x′i(5-3)

其中,y表示降维后的局部特征累积描述子,ud表示u的前d列。

(5f)降维后的局部特征累积描述子y利用下式进行白化处理:

其中,t表示白化后的局部特征累积描述子。

步骤6,图1中对降维白化后的局部特征累积描述子通过k均值k-means聚类,学习得到k个聚类中心(c1,...,cj,...,ck),j∈[1,k];

(6a)利用步骤(5a)中随机抽取10000个局部特征累积描述子{x1,...,xi,...,xm},来进行k均值k-means聚类。

(6b)选择k个点最为初始中心点,表示为c1,...,cl,...,ck,其中l∈[1,k],k为聚类中心个数。

(6c)对每个局部特征累积描述子xi,分别于c1,...,ci,...,ck比较,然后将xi划分到最近的中心点中。

(6d)计算每个聚类的平均值,并作为新的中心点。

(6e)重复(6c)(6d)直到每个聚类不发生变化,获得最终的聚类中心。

步骤7,获取图1中左侧空间方向的视频和右侧动作方向光流的局部特征聚合描述符vlad向量:每个视频和对应光流可以表示成一个vlad向量,将降维白化后的局部特征累积描述子和聚类的中心cj的差的累积和vj,将所有的向量vj连接形成该视频的vlad向量,其中vj的计算公式如下;

其中ti为视频降维白化后的特征描述子,cj为(6)中得到的聚类中心,nn(ti)是离ti最近的聚类中心。

步骤8,对图1中左侧空间方向视频获取的vlad向量和对应图1右侧动作方向光流获取的vlad向量进行合并形成最终的人体动作视频分类数据;

用vf表示视频获取的vlad向量,va表示对应光流视频获取的vlad向量,合并后的vlad向量为fa:

fa=[vftvat]t(8-1)

步骤9,利用支持向量机分类器分类处理人体动作视频分类数据;

9a)将人体动作视频分类数据分成两部分,分别作为训练样本和测试样本;

9b)用训练样本训练支持向量机分类器得到分类模型;

9c)用分类模型对测试样本进行分类,获得所输入的人体动作的识别结果。

下面结合仿真实验对本发明的效果再做详细描述。

实施例7

基于卷积神经网络特征编码的人体动作识别方法同实施例1

仿真实验条件:

实验数据:实验中采用人体动作数据库ucf101,实验数据库包括101种已经分类好的人体动作,共13320个视频,每个动作包含25个不同场景,实验样本图像背景复杂,相同场景,视角不同、动作存在差异;不同场景,光照影像不同。

实验中采用的深度学习框架是基于ubuntu14.04操作系统,intelcore2duocpue6550@2.33ghz、2gbram的运行环境。

实验内容与结果:

本发明首先对人体动作数据集ucf101中的视频进行tv-l1光流处理得到光流图,视频是由多帧图像链接而成的,然后将视频中每一帧图像和光流图调整为像素大小为224×224。将视频中每帧图像和光流图分别通过卷积神经网络cnn获取池化层pool5层512张6×6像素大小的特征图。对每张特征图相同位置的像素值进行累积,得到36×512的局部特征累积描述子,然后利用主成分分析pca对局部特征累积描述子进行降维白化处理。降维白化后局部特征累积描述子通过k均值k-means聚类,每个视频和对应光流分别用局部特征聚合描述符vlad向量表示,将视频获取的vlad向量和对应光流获取的vlad向量合并形成人体动作分类数据。人体动作分类数据分成两部分,分别作为训练样本和测试样本,用训练样本训练线性支持向量机分类器得到分类模型,用分类模型对测试样本进行分类。

图3是本发明分类结果的混淆矩阵示意图,实验采用了大量的人体动的视频数据,人体动作种类繁多,背景复杂,实验的结果表明,即使在人体动作种类繁多,光照不同,动作之间具有很大的相似性的情况下,本发明也能获得很高的人体动作识别准确率。图3的最终分类结果混淆矩阵显示,图3中对角矩阵为每类人体动作的识别精度,由图3的结果图中可以看出,本发明对大量的人体动作都具有很高的识别精度。本发明对于人体动作识别的分类结果可达到92%,为了清晰的显示人体动作的识别效果,本发明中用图4的局部数据分类结果的混淆矩阵显示。

实施例8

基于卷积神经网络特征编码的人体动作识别方法同实施例1-6,仿真条件和实验内容同实施例8,

参见图4,给出了一个局部人体动作识别的结果显示,图4中对角矩阵为每类人体动作的识别精度比率,矩阵中除了对角矩阵以外的值为动作之间的错分的比率。图4中可以看出本发明对大多数人体动作的有很高的识别精度,图中识别精度最低的为打高尔夫(golfswing),本动作识别效果低的原因为此动作动作幅度小,只有局部动作。敲击(drumming)有16%错分为打高尔夫(golfswing),因为敲击中很多视频都是用手动作,和打高尔夫的动作相似很难辨别。图4大部分动作的识别精度都在96%以上,甚至有一部分动作的识别精度达到100%。总之,在处理复杂视频,种类繁多,光照不同,动作之间具有很大的相似性的视频时,本发明的人体动作识别的精度很高。

本发明主要解决现有技术的计算复杂、时间复杂度高、实时性差、识别率不高、容易受到环境条件的影响等问题。其实现方案是:首先获取人体动作光流图;分别从视频的空间方向和光流的动作方向依次进行以下步骤1)、2)、3)和4),获取获取空间方向的vlad向量和动作方向的vlad向量vlad向量;1)获取卷积特征图;2)对卷积特征图进行局部特征累积编码获取局部特征累积描述子;3)对局部特征累积描述子进行降维白化处理;4)k均值聚类并获取局部特征聚合描述符vlad向量;合并视频空间和光流动作两个方向信息获取人体动作分类数据;分类处理人体动作分类数据。本发明对卷积特征进行局部特征累积编码,使得本发明在处理复杂背景数据时提高了识别率并且减少了计算量,而且将视频和光流的vlad向量进行融合获取的特征对环境变化具有更高的鲁棒性,可用于小区、酒店、商场以及保密场所等区域对监控视频中的人体动作进行检测识别。

简而言之,本发明提出了一种基于卷积神经网络特征编码的人体动作识别方法,主要解决现有技术计算复杂、准确率低的问题。实现方案是:利用tv-l1得到视频的光流图;分别从视频的空间方向和光流的动作方向依次进行卷积神经网络、局部特征累积编码、降维白化处理、vlad向量处理,获取空间方向的vlad向量和动作方向的vlad向量vlad向量;合并视频空间和光流动作两个方向信息得到人体动作分类数据,然后进行分类处理。本发明对卷积特征进行局部特征累积编码,使得本发明在处理复杂背景数据时提高了识别率并减少了计算量,融合视频和光流的vlad向量获取的特征对环境变化具有更高的鲁棒性,可用于小区、酒店、商场以及保密场所等区域对监控视频中的人体动作进行检测识别。

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