带有关节权重的DTW动作识别算法研究

2016-12-01 06:56:35汪成峰张瑞萱朱德海梅树立
图学学报 2016年4期
关键词:骨架权重人体

汪成峰, 陈 洪, 张瑞萱, 朱德海, 王 庆, 梅树立

(1. 中国农业大学信息与电气工程学院,北京 100083;2. 北京九艺同兴科技有限公司,北京 100083)

带有关节权重的DTW动作识别算法研究

汪成峰1, 陈 洪1, 张瑞萱2, 朱德海1, 王 庆1, 梅树立1

(1. 中国农业大学信息与电气工程学院,北京 100083;2. 北京九艺同兴科技有限公司,北京 100083)

大多数动作仅包含部分关节的运动,现有方法未对运动剧烈的关节与几乎不参与运动的关节进行区分,一定程度上降低了动作识别精度。针对这个问题,提出一种自适应关节权重计算方法。结合动态时间规整(DTW)方法,利用获得的关节权重进行动作识别。首先对分类动作序列进行分段,每段动作序列中运动较剧烈的关节选择分配更高权重,其余关节平均分配权重;然后提取特征向量,计算两段动作序列的DTW距离;最后采用K近邻方法进行动作识别。实验结果表明,该算法的总体分类识别准确率较高,且对于较相似的动作也能获得较好的识别结果。关 键 词:动作识别;人体运动分析;动态时间规整;关节权重;姿态特征

人体动作识别是计算机视觉的重要研究领域之一,在视频监控、人机交互和虚拟现实等方向具有广泛的应用。在以往的研究中,人们提出了许多人体动作识别的方法,Galna等[1]基于 Vicon动作分析系统和M icrosoft Kinect,提出了一种用于准确的检测帕金森病症的动作分析方法。王向东等[2]提出了一种轨迹引导下的举重视频关键姿态自动提取方法,分析关键姿态和杠铃运动轨迹

的关系,为运动分析提供了技术基础。总体来说,人体动作识别方法大多选用一个或多个特征参数表示人体动作,并在其特征参数下研究动作比较和分类算法。

人体骨架结构能够将身体部位简化表示为具有层次结构的骨骼数据,使用该结构的时间序列数据能够很直观地表现人体动作。近年来,随着若干成本较低且相对精确的动捕系统的普及,例如 M icrosoft Kinect[3]使得实时骨骼数据提取已变得更加容易,基于人体骨架结构的动作识别越来越吸引研究者的关注。Wang等[4]提出了一种结合时间和空间信息的人体结构模型进行动作识别,获得了较好的效果。张丹等[5]针对基于视觉的体态识别对环境要求较高、抗干扰性差等问题,提出了一种基于人体骨骼预定义的动作识别方法。李学相和安学庆[6]提出一种 Murkowski距离三维图像动作识别算法,采用非线性优化方法进行求解获取人体三维行为特征模型,进而实现对人体行为的准确判断。朱国刚和曹林[7]利用Kinect深度传感器获取动作数据,根据坐标系变换构建人体骨骼拓扑结构,通过多类支持向量机训练以及动作识别。

虽然文献[4-7]的方法能够较好地进行动作识别,但这些方法未针对不同关节设置不同权重。对于一些简单全身动作如跑步,将肢体躯干关节设置相同的权重即可获得较好的结果;但是对于一些局部关节运动较剧烈的动作,如拳击或跳跃等,不同关节的运动剧烈程度差异较大,如对所有关节赋予相同权重,将对动作识别的结果造成影响。针对这个问题,本文提出了自适应关节权重的计算方法,并使用动态时间规整方法(dynam ic time warping, DTW)计算两个动作序列的距离,最后采用K近邻方法进行动作分类。

1 基于自适应关节权重的特征提取

1.1 基于人体骨架结构的动作序列表示

人体动作序列是人体姿态的时间序列数据,而人体姿态可以由骨架结构近似表示,因此人体动作序列可以采用人体骨架结构中每个关节的时间序列数据表示。关节动作的时间序列数据可以简单地表示为三维位置的时间序列数据,即三维轨迹。这种动作数据表示方法不具有平移和缩放不变性,对于同一动作,不同体型的数据采集人员会得到不同的结果,而使用关节方向的时间序列数据描述关节运动则可以很好地解决这个问题。因此,本文采用关节方向而非位置对人体骨架姿态进行描述。动作序列可以表示为,其中ip为第i个关节方向的时间序列数据,T为关节数量。本文采用公开动作数据集Florence3D-Action[8]进行实验,该动作数据集所使用的骨骼模型包含15个关节,如图1所示。在人体骨架结构中,关节之间存在父子关系,关节的方向由其父关节坐标空间中的相对方向进行描述,根骨(如图1中的3号关节)采用模型坐标空间中的位置和方向进行描述。

图1 动作数据集Florence3D-Action使用的骨骼模型,包含15个关节

1.2 动作序列分割

为了计算关节权重,本文首先将动作序列P划分为N个片段。令为第i个关节的第n个片段的时间序列数据,则,其中为第i个关节的第m帧位置和方向数据,T为关节数量,分别为第n个片段的开始和结束帧。令i p为第i个关节的时间序列数据,则。

一个动作序列通常是由多个原子动作组成,动作序列分割方式会影响动作相似度评价的结果,而动作序列分割为原子动作的方法到目前为止还是一个开放问题。自顶向下的方法通常依赖于专家知识和训练数据,将动作序列分割为若干原子动作[9-10];而自底向上的方法通常采用主成分分析与数据压缩理论分割动作序列[11-12]。这些方法都有各自的局限性,例如需要大量的训练数据及时间复杂度过高,因此,通常采用 2种方法进行动作序列分割:

(1) 固定片段数量。该方法将不同的动作序列均匀分割为相同数量的片段。对于较短的动作序

列,其分割后的片段也较短;对于较长的动作序列,其分割后的片段也比较长。由于该方法分割不同长度的动作序列都能得到相同数量的片段,因此该方法时序上具有归一化特性。

(2) 固定时间长度。该方法将不同的动作序列分割为相同长度的片段。对于较短的动作序列,其分割后的片段数量较少;对于较长的动作序列,其分割后的片段数量较多。由于该方法对动作片段提取的特征仅用于关节权重计算,每个动作序列单独处理,因此不会受到动作片段数量不同的影响。

固定片段数量划分法的优点是在时序上具有归一化的特性,但若不同类型的动作长度差异较大,将导致每个片段包含的信息量差异较大,而固定时间长度的划分方法可以很好地克服这个问题。由于本文使用DTW进行动作序列匹配,该方法实现了两个不同长度动作序列的归一化,因此本文选用固定时间长度的动作片段划分方法。

1.3 关节权重计算

本文按照关节运动剧烈程度,即运动能量大小进行权重分配。令为能量大小相对值,为参考动作序列P的第n个动作片段所有关节能量相对大小的向量。在信息论中,熵用来对信息进行度量,其定义如下

其中,x为随机变量,f为概率密度函数。对于方差为2σ的高斯分布,熵定义为[13]

其中,函数sort按照关节的运动能量按降序排列,向量Tn为第n个片段运动能量降序排序的关节ID,。取Tn的前H个关节ID,记为,令,关节权重将根据每个关节 ID在HT中出现的次数进行计算。定义关节i能量最大的片段占所有片段的比例

其中,count函数计算HT 中第i个关节出现的次数。图2为Si的可视化表示,横坐标为关节的ID,纵坐标为不同动作,每个方格用灰度值表示Si的大小。由图 2可以看出,不同类型的动作在不同关节的能量分布有较大的差异。

图2 不同关节的Si可视化表示

当轻微运动及静止不动时,关节的Si接近0,但在进行动作相似度评价时也需赋予一定的权重。因此本文对运动较剧烈的关节按Si进行权重分配,这些关节占所有权重的比例为α,对其余关节平均分配剩余权重。对Si进行降序排序,得到

取S′的前m个元素直到这些元素相加大于α,并将其所对应的关节ID加入集合C中,计算得到每

个关节的权重

其中,比例α为运动较剧烈关节所占的总体权重,动作相似度评价结果将受到α取值的影响,具体取值将在实验章节进行讨论。自适应关节权重计算可由以下4个步骤完成:

(1) 将动作序列P划分为N个片段;

(3) 统计每个关节 ID(i=1,…,T)在向量HT中出现的次数,则可以求得关节i能量较大的片段占所有片段的比例Si;

(4) 取′S中最大的m个元素直到其相加大于α,这些关节的权重为,其余关节按式(6)平分剩余权重。

2 基于关节权重特征的 DTW 动作识别

2.1 经典DTW算法

假设有两个长度分别为n和m时间序列Q和C,令

为了对齐两个时间序列Q和C,需要构造一个大小为n×m的矩阵M,该矩阵的第i行第j列的元素Mi,j为qi和cj的距离 d( qi, cj),该距离通常使用欧氏距离,即 d( qi, cj) =(qi-cj)2。该路径为矩阵M中的连续元素,用于表示时间序列Q和C之间的映射关系,定义其中第k个元素为wk=(i, j)k。W可以表示为

DTW方法基于动态规划的原理求解出最优匹配路径,该路径使两个时间序列Q和C的总匹配距离达到最小

其中,路径长度 K作为分母用于消除规整路径长度不同所带来的影响。

DTW 寻找最优匹配路径的过程如下:从w1= (1,1)开始,循环计算路径距离γ(i,j),基于上述规整的3个条件,到达 wk=(i, j)k的前一个匹配只能为 γ(i - 1, j - 1)、 γ(i- 1,j)和 γ( i,j- 1)其中一个,因此只需要挑选出其中最小的一个,加上当前距离即可得到路径的最小距离[14]

2.2 人体动作识别

动作序列P由若干帧骨架数据组成,本文逐帧对骨架特征进行提取,并基于该特征进行动作识别。动作序列的每一帧可以看作静态人体骨架结构数据,其包含了每个关节的位置和方向数据。由于采用关节的方向数据描述人体骨架结构具有平移和缩放不变性,因此本文在预处理阶段通过关节位置数据计算出关节方向数据,再采用关节方向数据即关节的级联四元数对人体骨架结构进行描述。

文献[15]定义了两个四元数距离的度量方式,本文将此用于对静态骨架结构进行相似性度量。设参考向量 E0∈R3,q1、q2为两个单位四元数,如图3所示,将E1旋转到E2,若= [x, y, z, w] =[n ·sinφ, cosφ],则q1、q2的距离可以定义为

图3 四元数距离计算

输入动作序列为 P= [ p1, p2,…,pr,…, pR]和Q = [q1, q2,…,qr′,…,qR′],其中R和R′分别为P和

计算DTW的代价矩阵,通过式(10)得到最优规整路径 W= w1, w2,…,wk,… ,wK,其中K为路径W的长度,wk为采用式(12)计算的每对匹配帧的距离,最后得到规整路径距离的平均值

即动作序列P和Q的距离度量结果。图 4为Florence3D-Action动作数据集中两个“Sit down”动作采用动态规整路径进行帧匹配的示意图。

图4 两个动作序列的帧匹配示意图

基于式(13)的距离度量函数,本文采用K近邻分类器对未知动作序列的类型进行分类。设L={λ1,λ2,… ,λl}为l个训练样本标记,训练动作数据集 C={(Pi,λi)|1 ≤i≤ N}包含N个动作序列,λi∈ L为动作序列Pi所属的类别。输入待分类动作序列Q,采用式(13)计算Pi与Q的距离

将训练样本按照Di进行升序排序,前K个训练样本构成近邻样本集。统计训练样本中第j个(1≤j≤l)标记的样本个数,采用多数表决原则决定未知动作序列Q的所属类别λ

其中,函数I为指示函数,定义为

算法总体流程如图5所示。

图5 算法总体流程

3 实验结果与分析

实验采用真实世界中采集的动作数据集测试本文方法的性能。实验环境为CPU:Intel i7-4790K,内存:8 G,操作系统:Windows 8,集成开发环境:Matlab 2012。

3.1 实验数据

采用公开的动作数据集Florence3D-Action对本文方法的有效性进行验证。采用微软 Kinect对人体动作数据以每秒15帧进行采集,其人体骨架包含15个关节位置。该数据集包含9类动作,每类动作由10人重复2~3次完成,共获得215个动作序列。该数据集中包含一些较为相似但类型不同的动作,例如“Drink from a bottle”与“Answer phone”这两个动作不属于同类动作,但是较为相似,仅在手部的高度有些差异,如图6所示。

图6 “Drink from a bottle”与“Answer phone”动作比较

3.2 实验结果

本文在动作数据集Florence3D-Action采样交叉验证的策略进行实验,即一半的数据用于训练分类器,另一半数据用于验证分类准确度。定义测试数据集中每个类型动作的分类准确率为

其中,x为动作类型, correct( x)为测试数据集中属于x的动作序列被正确分类的次数,total(x)为测试数据集中属于x的动作序列的总数。图7显示了该动作数据集中五类动作在不同参数下的分类准确率,其中,参数H分别取5、6和7,参数α分别取0.6、0.7、0.8和0.9。

图7 采用自适应关节权重的分类结果

从图7可以看出,选择较小的H和α能够提高相似动作的识别率,但是太小的H或α容易造成差异较大的动作识别率下降;选择较大的H和α则降低了权重选择方法的效果,相似的动作识别率出现明显的下降,总体来说H=6,α=0.7时分类准确率较高。此外,在不同的H和α的条件下,动作分段长度在0.8附近具有较高的识别率。

图8为动作分段长度在0.8的条件下,取不同H和α得到的动作识别率。可以看出,H=6,α= 0.7时能够得到最优的分类准确率。结合图 7的结果,得到本文方法的最优参数,即动作分段长度取0.8,H=6和α=0.7。

将动作数据集Florence3D-Action采用4种随机的训练集和测试集划分方式,在选取本文算法参数H=6,α=0.7,分割时间片段为0.8 s条件下,表 1给出了本文方法与其他方法实验结果比较,结果显示本文方法有较好地识别结果。本文方法的平均混淆矩阵如图 9所示,可以看出,本文方法对动作具有较高的识别率。

图8 选取不同H和α得到的分类结果

表1 Florence3D-Action动作数据集上分类准确率对比(%)

图9 本文方法在选择最优参数下在Florence3D-Action进行实验获得的混淆矩阵

4 结 束 语

本文提出了一种自适应关节权重计算方法,该方法从运动特性出发,将动作序列划分为多个子片段,通过每个子片段不同关节的熵值计算关节权重,再将关节权重与DTW结合计算两个动作序列的距离,最后采用K近邻方法进行动作识别。本文方法充分利用了不同关节的运动特性,对运

动较为剧烈的关节与几乎静止不动的关节在权重上进行区分。实验结果表明,该算法具有较高的识别准确率,对相似动作也能有较好的区分。在后续研究中,将考虑基于本文的自适应关节权重,进一步研究动作特征及分类策略,以提高识别准确率。

[1] Galna B, Barry G, Jackson D, et al. Accuracy of the M icrosoft Kinect sensor for measuring movement in people w ith Parkinson’s disease [J]. Gait & Posture, 2014, 39(4): 1062-1068.

[2] 王向东, 张静文, 毋立芳, 等. 一种运动轨迹引导下的举重视频关键姿态提取方法[J]. 图学学报, 2014, 35(2): 256-261.

[3] Zhang Z Y. M icrosoft Kinect sensor and its effect [J]. IEEE MultiMedia, 2012, 19(2): 4-10.

[4] Wang C Y, Wang Y Z, Yuille A L. An approach to pose-based action recognition [C]//CVPR 2013: 26th Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. New York: IEEE Press, 2013: 915-922.

[5] 张 丹, 陈兴文, 赵姝颖, 等. 基于 Kinect 骨骼预定义的体态识别算法[J]. 计算机应用, 2014, 34(12): 3441-3445.

[6] 李学相, 安学庆. 基于三维图像动作识别算法研究[J].计算机仿真, 2013, 30(9): 374-377.

[7] 朱国刚, 曹 林. 基于 Kinect传感器骨骼信息的人体动作识别[J]. 计算机仿真, 2014, 31(12): 329-333.

[8] Seidenari L, Varano V, Berretti S, et al. Recognizing actions from depth cameras as weakly aligned multi-part bag-of-poses [C]//Computer Vision and Pattern Recognition Workshops (CVPRW), IEEE Conference on. New York: IEEE Press, 2013: 479-485.

[9] Beaudoin P, Coros S, van de Panne M, et al. Motion-motif graphs [C]//ACM Siggraph/Eurographics Symposium on Computer Animation (2008). New York: ACM Press, 2008: 117-126.

[10] Müller M, Baak A, Seidel H P. Efficient and robust annotation of motion capture data [C]//ACM Siggraph/ Eurographics Symposium on Computer Animation (2009). New York: ACM Press, 2009: 17-26.

[11] Barbič J, Safonova A, Pan J Y, et al. Segmenting motion capture data into distinct behaviors [J]. Proceedings of Graphics Interface 2004. Canadian Human-Computer Communications Society, 2004, (5): 185-194.

[12] López-Méndez A, Gall J, Casas J R, et al. Metric learning from poses for temporal clustering of human motion [CD]. Proceedings BMVC 2012 Pages: CD-rom, 2012: CD-rom.

[13] Shannon C E, Weaver W. A mathematical theory of communication, 1949 [M]. Urbana: University of Illinois Press, 1949: 24-30.

[14] Berndt D J, Clifford J. Using dynamic time warping to find patterns in time series [C]//Working Notes of the Know ledge Discovery in Databases Workshop, United States, Massachusetts: Association for the Advancement of A rtificial Intelligence Press, 1994: 359-370.

[15] 沈军行, 孙守迁, 潘云鹤. 从运动捕获数据中提取关键帧[J]. 计算机辅助设计与图形学学报, 2004, 16(5): 719-723.

[16] Ohn-Bar E, Trivedi M M. Joint angles sim ilarities and HOG2for action recognition [C]//Computer Vision and Pattern Recognition Workshops (CVPRW), 2013 IEEE Computer Society Conference on, New York: IEEE Press, 2013: 465-470.

[17] Xia L, Chen C C, Aggarwal J K. View invariant human action recognition using histograms of 3D joints [C]// Computer Vision and Pattern Recognition Workshops (CVPRW), 2012 IEEE Computer Society Conference on, New York: IEEE Press, 2012: 20-27.

[18] 应 锐, 蔡 瑾, 冯 辉, 等. 基于运动块及关键帧的人体动作识别[J]. 复旦学报: 自然科学版, 2014, (6): 815-822.

Research on DTW Action Recognition A lgorithm w ith Joint Weighting

Wang Chengfeng1, Chen Hong1, Zhang Ruixuan2, Zhu Dehai1, Wang Qing1, Mei Shuli1

(1. College of Information and Electrical Engineering, China Agricultural University, Beijing 100083, China; 2. Beijing Jiu Yi Tong Xing Technology Co., Ltd, Beijing 100083, China)

Human motions always contain only motions of some body parts, but much of the existing methods on action recognition don’t take the motion intensity of each joint into account, which lower the accuracy of action recognition in some extent. To solve this problem, an adaptive joint weighting scheme is proposed to calculate the weight of each joint and combined the weights w ith dynam ic time warping (DTW) to recognize actions. Firstly, the action sequence was segmented into several segments and some most violent joints in each segment are assigned higher weight while the remaining joints are evenly weighted. Then feature vectors of two action sequences were extracted and the distance between two action sequences were calculated by DTW. Finally the action recognition was achieved by K-nearest neighbor method. The experiments showed that the overall classification accuracy of the proposed method is higher, and the result is also good for some similar actions.

action recognition; human motion analysis; dynam ic time warping; joint weight; pose feature

TP 301.6

10.11996/JG.j.2095-302X.2016040537

A

2095-302X(2016)04-0537-08

2016-03-08;定稿日期:2016-05-04

国家科技支撑计划项目(2013BAH48F02)

汪成峰(1988–),男,福建南平人,博士研究生。主要研究方向为虚拟现实与人机交互技术。E-mail:147750373@qq.com

陈 洪(1976–),男,四川大竹人,副教授,博士。主要研究方向为虚拟现实与人机交互技术、数字游戏与虚拟学习环境。

E-mail:norman_chen@263.net

猜你喜欢
骨架权重人体
人体“修补匠”
浅谈管状骨架喷涂方法
人体冷知识(一)
排便顺畅,人体无毒一身轻
基层中医药(2021年5期)2021-07-31 07:58:34
权重常思“浮名轻”
当代陕西(2020年17期)2020-10-28 08:18:18
骨架密度对炭/炭多孔骨架压力浸渗铜的影响
为党督政勤履职 代民行权重担当
人大建设(2018年5期)2018-08-16 07:09:00
奇妙的人体止咳点
特别健康(2018年3期)2018-07-04 00:40:10
基于公约式权重的截短线性分组码盲识别方法
电信科学(2017年6期)2017-07-01 15:44:57
内支撑骨架封抽技术在突出煤层瓦斯抽采中的应用
中国煤层气(2014年3期)2014-08-07 03:07:45