基于人体骨骼关键点的视频流动作检测方法技术

技术编号:27620057 阅读:26 留言:0更新日期:2021-03-10 10:59
本发明专利技术涉及一种基于人体骨骼关键点的视频流动作检测方法,利用一个m秒的滑动窗口,每次截取视频中的m秒,每秒n帧。将m*n帧图像分别进行人体骨骼关键点识别,取每帧中top K个骨骼关键点。然后将帧间骨骼数据根据欧式距离拆分为多个骨骼序列,即一个人一个骨骼序列,主要针对不定长视频的动作检测和识别。且在2080TI级别的GPU上能达到1倍实时的速度。使得视频动作检测和识别具有实用效果。视频动作检测和识别具有实用效果。视频动作检测和识别具有实用效果。

【技术实现步骤摘要】
基于人体骨骼关键点的视频流动作检测方法


[0001]本专利技术涉及视频识别领域,具体涉及一种基于人体骨骼关键点的视频流动作检测方法。

技术介绍

[0002]动作检测主要是基于人体的姿态模型,对视频采集的动作画面进行识别,例如公开(公告)号 CN107194344A 的中国专利,就公开了一种自适应骨骼中心的人体行为识别方法。主要解决现有技术动作识别精度低的问题。其实现步骤是:1)从骨骼序列数据集中获取三维骨架序列,并对其进行预处理,得到坐标矩阵;2)根据坐标矩阵选择特征参数,自适应选择坐标中心,重新对动作进行归一化,得到动作坐标矩阵;3)通过DTW方法对动作坐标矩阵进行降噪处理,借助FTP方法减少动作坐标矩阵时间错位和噪声问题,再使用SVM进行对动作坐标矩阵进行分类。本专利技术相比于现有的行为识别方法,有效地提高了识别精度。可应用于监控、视频游戏和人机交互。该技术解决的主要是短视频的动作识别,其主要应用场景主要在于一些门禁或安防识别系统中,对于长视频识别效果就很一般。在现有技术中针对短视频的动作分类有不错的效果,即输入为一个短视频,输出这个视频的动作分类。相关技术例如C3D、ST-GCN、2S-AGCN等。此类方法针对于长视频或者视频流的动作检测却无能为力。再者此类方法,对硬件的要求过高,难以达到实用的效果。

技术实现思路

[0003]本专利技术的目的在于克服现有技术的不足,提供一种基于人体骨骼关键点的视频流动作检测方法,主要针对不定长视频的动作检测和识别。且在2080TI级别的GPU上能达到1倍实时的速度,使得视频动作检测和识别具有实用效。
[0004]本专利技术的目的是通过以下技术方案来实现的:基于人体骨骼关键点的视频流动作检测方法,该方法包括:1)利用一个m秒的滑动窗口,每次截取视频中的m秒,每秒n帧,得到m*n帧图像;2)将m*n帧图像分别进行人体骨骼关键点识别,取每帧中top K个骨骼关键点,这里的top K是表示一张图片里面会有多个人,需要按照一定规则取前K个,比如取置信度最高的K个,或者面积最高的K个。
[0005]3)将帧间骨骼数据根据欧式距离拆分为多个骨骼序列,即一个人一个骨骼序列;4)每个骨骼序列送入深度学习网络模型预测结果。
[0006]进一步的,所述3)中还包括一个骨骼数据归一化处理方法,包括:11)将坐标数据缩放到高1080,宽度适应;12)以骨骼中心为原点,平移整个骨骼数据,使得骨骼数据与图像分辨率无关,将骨骼数据乘以s0=1.0;13)计算后帧-前帧之前的关键点的位移数据,首帧为0, 然后将位移数据乘以s1=4.0;,其中s0用以调整归一化后特征数据空间信息的分布范围,s1用以调整归一化后特征
数据运动信息的分布范围;14)将骨骼关键点与位移数据相连堆叠在一起,形成训练以及预测的输入数据,最后得到相应的训练数据。
[0007]进一步的,所述骨骼中心是指两髋中间点。
[0008]进一步的,所述骨骼数据归一化到-0.5~0.5之间,处于激活函数tanh梯度最大范围,利于深度学习网络模型的训练收敛。概括来说,是基于大量统计信息,观察到归一化后的数据,大致分布在[-0.5, 0.5]区间。
[0009]进一步的,所述深度学习网络模型预测方法是将骨骼序列 [x0, x1, x2,
ꢀ…
]输入一个双向循环神经深度学习网络模型,预测每帧的标签;输出结果例如:[o, o, o, o, o, b_t, i_t, i_t, i_t, i_t, i_t, o, o ,o ,o, o, b_z, i_z, i_z, i_z, i_z, i_z, i_z, i_z, i_z, i_z, o, o, o, o, o],其中o为无动作序列,非o为动作序列;该例中t为跳, z为转, b_为动作的开始,i_为动作的继续。
[0010]进一步的,还包括一个训练数据集制作方法,包括:111)将待标注视频按照每秒10帧进行抽帧;112)以图像质量从高到底抽取10组;113)将其中一组数据人工打标,即将一个动作序列放入到对应的动作目录中;两个动作序列之间必须帧号必须不连续;114)剩余组数据,自动按照人工打标的数据自动分组;115)逐帧抽取骨骼关键点;116)将骨骼关键点数据按照前面所说的归一化方式进行归一化;117)随机组合训练数据为30~70的序列,其中包含动作序列和无动作序列;118)训练数据分为帧号序列和标签序列,分别存放于不同文件中。帧号对应的特征数据,也存放于一个单独的特征文件中。
[0011]进一步的,单流模型的详细描述:输入数据为归一化的骨骼关键点数据;每帧一个,支持输入1~n帧;输入形状为(batch_size, seq_len, feat_num);经过线性变化和Tanh激活;送入多层双向LSTM深度学习网络模型;利用CRF层强化序列标签转化关系;B_代表一个动作的开始,I_代表一个动作的继续,O代表无动作。
[0012]O的下一个可以是O, B_,不可以是I_;B_的下一个可以是I_,不可以是B_, O;I_的下一个可以是I_,O,B_。
[0013]本专利技术的有益效果是:本专利技术能针对长视频进行特征提取, 其识别准确率更高,适用于长时段的流媒体播放下的特征提取。
附图说明
[0014]图1为归一化后的数据分布示意图(空间特征部分);图2为归一化后的数据分布示意图(运动特征部分);
图3为单流模型示意图;图4为三流融合模型示意图;图5为三流数据分别线性变化并tanh非线性激活示意图。
具体实施方式
[0015]下面结合具体实施例进一步详细描述本专利技术的技术方案,但本专利技术的保护范围不局限于以下所述。
[0016]利用一个m秒的滑动窗口,每次截取视频中的m秒,每秒n帧。将m*n帧图像分别进行人体骨骼关键点识别,取每帧中top K个骨骼关键点。然后将帧间骨骼数据根据欧式距离拆分为多个骨骼序列,即一个人一个骨骼序列,这里的top K是表示一张图片里面会有多个人,需要按照一定规则取前K个,比如取置信度最高的K个,或者面积最高的K个。
[0017]由于原始骨骼数据是图像中的坐标,不利于深度学习网络模型的训练和预测,本方法对骨骼数据做了归一化,具体归一化方法如下。
[0018]将坐标数据缩放到高1080,宽度适应。
[0019]以骨骼中心(两髋中间点)为原点,平移整个骨骼数据,使得骨骼数据与图像分辨率无关,将骨骼数据乘以s0=1.0。数据分布如图1:计算后帧-前帧之前的关键点的位移数据,首帧为0, 然后将位移数据乘以s1=4.0。数据分布如图2:,其中s0用以调整归一化后特征数据空间信息的分布范围,s1用以调整归一化后特征数据运动信息的分布范围。
[0020]将骨骼关键点与位移数据相连堆叠在一起,形成训练以及预测的输入数据。将数据归一化到-0.5~0.5之间,处于激活函数tanh梯度最大范围,利于深度学习网络模型的训练收敛。
[0021]例如:1、提取原图骨骼关键点包括本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.基于人体骨骼关键点的视频流动作检测方法,其特征在于,该方法包括:1)利用一个m秒的滑动窗口,每次截取视频中的m秒,每秒n帧,得到m*n帧图像;2)将m*n帧图像分别进行人体骨骼关键点识别,取每帧中top K个骨骼关键点;3)将帧间骨骼数据根据欧式距离拆分为多个骨骼序列,即一个人一个骨骼序列;4)每个骨骼序列送入深度学习网络模型预测结果。2.根据权利要求1所述的基于人体骨骼关键点的视频流动作检测方法,其特征在于,所述3)中还包括一个骨骼数据归一化处理方法,包括:11)将坐标数据缩放到高1080,宽度适应;12)以骨骼中心为原点,平移整个骨骼数据,使得骨骼数据与图像分辨率无关,将骨骼数据乘以s0;13)计算后帧-前帧之前的关键点的位移数据,首帧为0, 然后将位移数据乘以s1,其中s0用以调整归一化后特征数据空间信息的分布范围,s1用以调整归一化后特征数据运动信息的分布范围;14)将骨骼关键点与位移数据相连堆叠在一起,形成训练以及预测的输入数据,最后得到相应的训练数据。3.根据权利要求1所述的基于人体骨骼关键点的视频流动作检测方法,其特征在于,所述骨骼中心是指两髋中间点。4.根据权利要求1所述的基于人体骨骼关键点的视频流动作检测方法,其特征在于,所述骨骼数据归一化到-0.5~0.5之间,处于激活函数tanh梯度最大范围,利于深度学习网络模型的训练收敛。5.根据权利要求1所述的基于人体骨骼关键点的视频流动作检测方法,其特征在于,所述深度学习网络模型预测方法是将骨骼序列 [x0, x1, x2,
ꢀ…
]输入一个双向循环神经深度学习网络模型,预测每帧的标签;输出结果例如:[o, o, o, o, o, b_t, i_t, i_t, i_t...

【专利技术属性】
技术研发人员:张洋刘盾唐学怡沈余银宋升黄信云
申请(专利权)人:成都华栖云科技有限公司
类型:发明
国别省市:

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

1