基于姿态估计的人体行为识别方法与流程

文档序号:15258052发布日期:2018-08-24 20:58阅读:5936来源:国知局

本发明属于图像处理技术领域,特别涉及一种视频人体行为识别方法,可用于智能视频监控、人机交互、视频检索。



背景技术:

随着计算机学科与人工智能的发展和应用,视频分析技术迅速兴起并得到了广泛关注。视频分析中的一个核心就是人体行为识别,行为识别的准确性和快速性将直接影响视频分析系统后续工作的结果。因此,如何提高视频中人体行为识别的准确性和快速性,已成为视频分析系统研究中的重点问题。

目前,典型的视频人体行为识别方法主要有:时空兴趣点、密集轨迹等。其中:

时空兴趣点,是通过检测视频中的角点、提取角点的特征进行人体行为识别,但是一部分角点是由背景噪声产生,不但会影响最后的结果,还会降低识别的运行速度。

密集轨迹,是先对视频每一帧进行多个尺度上的密集采样,然后对采样的点进行跟踪得到轨迹,再提取轨迹的特征进行行为识别。但是该方法的计算复杂度高,并且产生的特征维度高,会占用大量的内存,很难做到实时识别。



技术实现要素:

本发明的目的在于针对上述已有技术中实时性差的问题,提出一种基于姿态估计的人体行为识别方法,以提高人体行为识别的速度。

本发明的技术思路是:通过估计视频中人体的姿态,得到每一帧人体关节点的位置,利用人体关节点的位置变化量分析人体的动作,从而快速地进行人体行为识别。

根据上述思路,本发明的实现方案包括如下:

(1)提取视频中每帧人体关节点位置坐标:

(1a)利用open-pose方法对视频中每帧人体进行姿态估计,得到人体脖子、胸部、头部、右肩、左肩、右臀部、左臀部、右手肘、左手肘、右膝盖、左膝盖、右手腕、左手腕、右脚踝和左脚踝这15个关节点的位置坐标,其中第k个关节点的坐标表示为lk=(xk,yk),k从1到15;

(1b)对每个关节点的位置坐标进行归一化;

(1c)用归一化之后的15个关节点位置坐标构成坐标矩阵p,p=[(x1,y1),(x2,y2),...,(xk,yk),...,(x15,y15)],其中(xk,yk)表示第k个关节点归一化之后的坐标;

(2)计算相邻两帧人体关节点距离变化量矩阵:

(2a)根据相邻两帧的坐标矩阵pn和pn-1,计算相邻两帧关节点位置坐标变化量矩阵

(2b)根据关节点位置坐标变化量矩阵计算关节点距离变化量矩阵d;

(3)生成视频特征:

(3a)按照视频的时间长度将视频平均分成4段,将每一段视频中相邻两帧产生的距离变化量矩阵d相加,得到各段累计距离变化量矩阵di,i从1到4;

(3b)对di进行l2归一化,得到归一化之后的di';

(3c)将累计距离变化量矩阵di'串联起来作为整个视频的特征:f=[d1',d2',d3',d4'];

(4)训练分类器对视频进行分类:

(4a)把sub-jhmdb数据集的视频分成训练集和测试集两部分,将训练集视频的特征输入到支持向量机中进行训练,得到训练好的支持向量机;

(4b)把测试集视频的特征输入到训练好的支持向量机中得到分类结果。

本发明具有以下优点:

本发明由于采用了open-pose方法对视频中人体进行姿态估计,能够快速地得到视频中每帧人体的关节点位置坐标,同时由于对视频进行分段处理,能够获取人体在视频不同时间段上的关节点位置变化量,从而利用位置变化量对视频中人体行为做出分类。

附图说明

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

图2是用open-pose估计得到的人体关节点位置示意图;

具体实施方式

以下参照附图,对本发明的技术方案和效果进行进一步说明:

参照图1,本发明的实施步骤如下:

步骤1.提取视频中每帧人体关节点位置信息。

1.1)利用open-pose方法对视频中每帧人体进行姿态估计,得到人体脖子、胸部、头部、右肩、左肩、右臀部、左臀部、右手肘、左手肘、右膝盖、左膝盖、右手腕、左手腕、右脚踝和左脚踝这15个关节点的位置坐标,其中第k个关节点的坐标表示为lk=(xk,yk),k从1到15,如图2所示;

1.2)对每个关节点的位置坐标进行归一化:

其中x,y表示归一化前的坐标,x',y'表示归一化后的坐标,w表示视频每一帧的宽度,h表示视频每一帧的高度;

1.3)用归一化之后的15个关节点位置坐标构成坐标矩阵p,p=[(x1,y1),(x2,y2),...,(xk,yk),...,(x15,y15)],其中(xk,yk)表示第k个关节点归一化之后的坐标。

步骤2.计算相邻两帧人体关节点距离变化量矩阵。

2.1)根据相邻两帧的坐标矩阵pn和pn-1,计算相邻两帧关节点位置坐标变化量矩阵

其中pn和pn-1分别表示前一帧和后一帧的关节点位置坐标矩阵,dx和dy表示同一个关节点相邻两帧坐标变化量;

2.2)根据关节点位置坐标变化量矩阵计算关节点距离变化量矩阵d:

其中dxk和dyk表示中第k个元素。

步骤3.生成视频特征。

3.1)按照视频的时间长度将视频平均分成4段,将每一段视频中相邻两帧产生的距离变化量矩阵d相加,得到各段累计距离变化量矩阵di,i从1到4。

3.2)对di进行l2归一化,得到归一化之后的di':

其中di=[d1,d2,...,dk,...,d15]是第i段视频累计距离变化量矩阵,dk表示di中第k个元素,是di的l2范数,表示di中第k个元素的平方;

3.3)将累计距离变化量矩阵di'串联起来作为整个视频的特征:

f=[d1',d2',d3',d4']<5>

步骤4.训练分类器对视频进行分类。

4.1)把sub-jhmdb数据集的视频分成训练集和测试集两部分,将训练集视频的特征输入到支持向量机中进行训练,得到训练好的支持向量机;

4.2)把测试集视频的特征输入到训练好的支持向量机中得到分类结果。

本发明的效果可通过以下实验进一步说明:

1.实验条件。

实验环境:计算机采用intel(r)core(tm)i7-7700cpu@3.8ghz,16gb内存,gpu为gtx1080,软件采用matlab2014b仿真实验平台。

实验参数:支持向量机选用线性核,参数c=8。

2.实验内容与结果。

实验在sub-jhmdb数据集上进行,sub-jhmdb数据集一共包含12类人体动作,总共包括316个视频片段,每个视频片段包含一种人体行为。按照sub-jhmdb数据集提供方预先设定,将数据集中视频分成训练集和测试集两部分。利用本发明方法对sub-jhmdb数据集中视频进行处理得到视频特征,训练集视频的特征用于训练分类器,然后用训练好的分类器对测试集视频进行分类,测试集视频正确分类的比例作为最终的分类结果。

在sub-jhmdb数据集上的分类结果达到43.9%,对视频的处理速度平均为10fps。

综上可以得出,本发明可以实现对视频中人体行为的快速识别。

当前第1页1 2 
网友询问留言 已有1条留言
  • 182680... 来自[中国] 2020年05月28日 15:18
    请问专利您的专利如何引用?谢谢
    0
1