APP下载

骨架关节点跟踪的人体行为识别方法

2016-01-18孟庆虎

陈 曦,孟庆虎

(1.河南科技大学 电子信息工程学院,河南 洛阳 471023;2.香港中文大学 电子工程学系,香港 999077)

骨架关节点跟踪的人体行为识别方法

陈曦1,孟庆虎2

(1.河南科技大学 电子信息工程学院,河南 洛阳 471023;2.香港中文大学 电子工程学系,香港 999077)

摘要:基于彩色图像的运动检测和分割方法难以获取完整的人体骨架,并且只能提取关节点的二维坐标信息,而Kinect传感器能通过捕获深度图像来重建完整的人体骨架关节点三维模型,提高了骨架关节点模型的表示精度。本文通过Kinect的骨架跟踪模块对人体的骨架关节点模型进行提取;然后,提出一种坐标转换方法得到人体骨架关节点的三维坐标表示,利用k均值聚类将关节点坐标量化为符号序列;最后,建立离散隐马尔可夫模型来进行人体行为识别。通过自建的数据集进行实验,实验结果表明:本方法能取得94%的识别率。

关键词:人体行为识别;骨架关节点;离散隐马尔可夫模型

基金项目:国家“863”计划基金项目(2011AA041001)

作者简介:陈曦(1987-),男,河南洛阳人,硕士生;孟庆虎(1962-),男,山东济南人,教授,博士,博士生导师,主要从事医用机器人、机器视觉、智能控制及系统方面的研究.

收稿日期:2014-12-07

文章编号:1672-6871(2015)02-0043-06

中图分类号:TP391.4

文献标志码:志码:A

0引言

人体行为识别广泛应用于运动分析、人机自然交互、智能监控等诸多领域,研究内容主要有运动检测与跟踪、特征表示与提取和行为识别[1-3]。其中,骨架关节点模型是一种基于形态学特征的人体表示方法,早在1973年,文献[4]就证明了人体运动行为模式可以通过若干个人体关节亮点来表示,奠定了其理论基础。近些年来,随着传感器技术的发展,使得对人体骨架关节点模型的研究得到了广泛的关注。

骨架关节点提取方法主要分为两类:一类是通过人体穿戴上传感器,来捕获人体骨架关节点的运动信息,该方法成本较高难以广泛应用。另一类是基于图像的运动检测方法(如背景减除法[5]、帧间差分法[6]、光流法[7]等)来获取人体运动剪影图像;然后使用拓扑细化法[8]、距离变换法[9]、Voronoi图等方法[10]进行骨架提取;最后通过标记得到人体的骨架关节点模型。这些方法成本较低,但其性能依赖于运动检测算法,对环境干扰的鲁棒性较差并且不能提供关节点三维信息表示。

随着Kinect深度图像传感器的出现,文献[11]提出了一种基于单幅深度图像的人体关节位置提取方法来重建了人体骨架模型,该方法由于具有较强的鲁棒性并且能提供骨架关节点的三维坐标信息,已被应用于Kinect的骨架跟踪模块中。由于基于背景差分法所提取的人体骨架会受到背景影响,即当背景和运动前景的灰度或颜色相近时,就难以提取完整的人体剪影,从而破坏了获取的骨架结构。另外,阴影和衣服也会使得提取骨架过程中形成“假骨骼”,从而给建立骨架关节点模型造成了干扰。由于使用大量多样化的训练数据,通过Kinect获取的骨架模型对不同的姿势、身体形状和衣服具有很强的鲁棒性,而且由于提供骨架关节点的三维位置信息,使得Kinect提取的人体骨架关节点模型能有效处理“自遮挡”问题。

本文通过采用Kinect的骨架跟踪模块来获取人体的骨架关节点模型,通过提出一种人体关节点坐标的表示方法,得到人体骨架关节点三维坐标;然后,将跟踪得到的骨架关节点运动坐标序列进行量化编码为符号序列,通过建立相应无跨越从左到右的离散隐马尔可夫模型来进行对人体行为的识别;最后,通过自建的数据集对模型进行训练和测试。图1是本文所采用的骨架关节点跟踪的人体行为识别方法的流程图。

图1 人体行为识别方法流程图

1骨架关节点三维坐标提取与转换

人体可被认为是由若干个关节点所链接的一个刚性段铰接系统,因此,人体的行为可以由关节点运动的位置状态来表示。Kinect的骨架跟踪模块最多支持6个人体的跟踪,能主动跟踪2个人体骨架三维坐标。图2为被跟踪人体20个骨架关节点的平面图。

被跟踪的人体的骨架关节点位置由一个X、Y、Z的三维直角坐标系表示出。Z轴表示红外摄像头光轴,与RGB图像平面垂直,光轴与图像平面的交点为坐标系原点。由于骨架跟踪模块所跟踪获取的骨架关节点坐标是以Kinect的世界坐标系作为参照系,因此,为了使提取到的关节点坐标归一化到统一的参考系下,需要对关节点坐标进行转换。

图2 人体20个骨架关节点的平面图

本文根据空间直角坐标系的转换方式对提取的关节点坐标进行转换,建立人体关节点坐标。通过选取髋关节中心作为参考坐标系的原点进行坐标转换,使获取的骨架关节点坐标对平移具有不变性。获得静态的20个关节点的Kinect世界坐标分别为:

D1(x1,y1,z1),D2(x2,y2,z2),…,D20(x20,y20,z20),

其中,D1(x1,y1,z1)为髋关节中心。通过如下坐标变换将20个关节点以髋关节中心作为原点表示出来:

···

2k均值聚类与矢量量化

图3为人体右手做“画圆圈”行为时留下的关节点的时空坐标分布。由于人体的行为可以表示为关节点的坐标分布,所以需要将每一帧图像的关节点坐标转化为对应的观测符号,使得每个行为可以被表示为一个具有有限符号数的观测序列。为了减少观测符号的数量,在利用离散隐马尔可夫模型(DHMM)进行人体行为识别前,需要通过矢量量化将提取的特征向量进行聚类。

k均值聚类是一种常用的聚类方法,能将表示人体行为的骨架关节点的三维坐标分布聚类到有限的状态集,使得每个行为被编码成一个有限的符号序列。通过设置类别个数,k均值聚类能迅速收敛并找到数据的类别中心,图4为做“画圆圈”时,右手关节点的坐标时空分布经过k均值聚类为8个群集的结果,其中每一个群集对应于一个聚类中心。

图3 人体做“画圆圈”时右手关节点的坐标时空分布 图4 坐标时空分布经过k均值聚类为8个群集的结果

3基于离散隐马尔可夫模型的人体行为识别

隐马尔可夫模型(HMM)是一种生成模型,广泛应用于识别、鉴定和预测[12]。1992年,文献[13]首次将隐马尔可夫模型应用到行为识别并取得了良好效果。目前,各种改进的隐马尔可夫模型已经广泛应用于人体行为识别领域并取得良好的识别效果[14-16]。无跨越从左到右型离散隐马尔可夫模型(DHMM)的结构见图5。

3.1 离散隐马尔可夫模型的定义

DHMM是具有离散的状态数和输出符号的隐马尔可夫模型。无跨越从左到右型DHMM结构见图5。如图5所示,本文采用的无跨越从左到右型的DHMM是一种非遍历型的隐马尔可夫模型,即随着时间的增加,状态只能转移到自身或邻近下标较大的状态。由于其状态转移路径可以由自身转移到自身,从而确保了DHMM的时间尺度不变性。

图5 无跨越从左到右型DHMM的结构

为了描述一个DHMM,定义以下符号:

Q={q1,q2,…,qN}:Q为状态集。

N:模型的隐藏状态的数量。

V={v1,v2,…,vM}:V为输出符号集。

M:状态输出符号数量。

O=O1,O2,…,OT:O为长度为T的观测符号序列。

S={st},t=1,2,…,T:st为第t观测符号所对应的隐藏状态。

λ={A,B,π}:λ构成DHMM的完整参数集。

3.2 DHMM的评估

(1)

α1=πibi(O1),t=1;

(2)

(3)

(4)

(5)

βt(i)=1,t=T;

(6)

(7)

(8)

3.3 DHMM的训练

定义一个后验概率变量γt(i),表示对于给定观察序列O和参数集λ,当第t时刻状态为qi的概率,如式(9)所示。

(9)

(10)

定义一个变量ξt(i,j),表示对于观察序列O和参数集λ,当第t时刻的状态为qi,并且当t+1时刻的状态为qj的概率,如式(11)所示。

(11)

(12)

(13)

(14)

(15)

3.4 DHMM的识别

(16)

而对于等概率参考模型,式(16)等价于:

(17)

4实验

4.1 实验平台

实验的硬件平台由1台CPU主频为3.4 GHz、内存为4 GB的个人计算机(PC),1台Kinect传感器构成。软件平台由32位的Windows 7操作系统搭建。本文采用Matlab 2013a作为实验测试平台。Matlab 2013a版本已经完善了对Kinect SDK的支持,通过使用内置Image Acquisition Toolbox工具箱,可以直接提取出RGB图像、深度数据以及跟踪骨架的关节点信息,简化了数据采集的工作。

4.2 实验数据库

图6 DHMM的收敛曲线

为验证所提出方法的有效性,本文采用自建的行为数据库来进行测试,实验所采用的行为是参考公共的MSR Action3D数据库[17]进行建立的。其中,MSR Action3D数据库包含20种行为。本文选取其中的5种行为作为实验的测试集,这5种行为分别为:“垂直摆臂”、“水平摆臂”、“画圆圈”、“鼓掌”、“前踢”。其中,每个行为由两个人各完成10次,以30帧每秒的速度对骨架关节点的坐标进行记录,每个记录的长度为100帧。

4.3 实验设置与结果

实验选取一个具有明显运动特征的骨架关节点作为观测对象,设置DHMM的状态数N为8,输出的符号数M为12。随机选取每个行为的10组数据用于模型的训练,如图6所示。得到的5个行为所对应的DHMM分别经过接近50次循环后,收敛曲线在不同的对数似然比达到稳定状态。

识别阶段选取另外10组数据用于测试,并进行一次交叉验证,得出的识别结果如表1所示。使用本方法测试5种行为的平均正确识别率能达到94%。

表1 测试5种行为的识别结果(识别率) %

5结论

本文基于骨架关节点的人体行为识别方法简化人体骨架模型的建模过程,利用骨架关节点的三维坐标信息作为行为特征表示,并且通过隐马尔可夫模型进行识别,能取得较高的识别率。但由于本文所采用自建的数据集的大小有限,还不能充分证明算法的完备性。另外,如何优化DHMM参数设置,如隐藏状态数和输出符号数也是需要继续研究的内容。由于本识别方法是基于Kinect的硬件环境和相应的软件开发环境所设计的,所以目前只能适用于PC系统,应用范围还较为有限。不过相信随着深度视频传感器的发展,本方法能得到进一步的扩展与应用。

参考文献:

[1]黎洪松,李达.人体运动分析研究的若干新进展[J].模式识别与人工智能,2009,22(1):70-78.

[2]苌道方,钟悦.考虑行为和眼动跟踪的用户兴趣模型[J].河南科技大学学报:自然科学版,2014,35(1):49-52.

[3]陈战胜,王辉,贺萍,等.增强现实中跟踪预测方法的研究[J].河南科技大学学报:自然科学版,2013,34(2):57-60.

[4]Johansson G.Visual Perception of Biological Motion and a Model for Its Analysis[J].Perception Psychophysics,1973,14(2):201-211.

[5]王亮,胡卫明,谭铁牛,等.基于步态的身份识别[J].计算机学报,2003,26(3):353-360.

[6]何卫华,李平,文玉梅,等.复杂背景下基于图像融合的运动目标轮廓提取算法[J].计算机应用,2006,26(1):123-126.

[7]么键,刘冀伟,韩旭,等.基于光流的运动人体提取[J].北京邮电大学学报,2006,29(z2):148-150,173.

[8]车武军,杨勋年,汪国昭,等.动态骨架算法[J].软件学报,2003,14(4):818-823.

[9]徐超,肖潇,骆燕,等.基于距离变换的新型骨架提取方法[J].仪器仪表学报,2012,33(12):2851-2856.

[10]王会英,张有会,张静,等.一种基于离散Voronoi图的手写体文字细化方法[J].计算机工程与应用,2008,44(15):179-181,184.

[11]Shotton J,Fitzgibbon A,Cook M,et al.Real-time Human Pose Recognition in Parts from Single Depth Images[C]//Computer Vision and Pattern Recognition (CVPR),2011 IEEE Conference.2011:1297-1304.

[12]常军林,吴笑伟,吴芬芬,等.基于特征和隐马尔可夫模型的文本信息抽取[J].河南科技大学学报:自然科学版,2008,29(2):55-57,70.

[13]Yamato J,Jun O,Ishii K.Recognizing Human Action in Time-sequential Images Using Hidden Markov Model[C]//IEEE Computer Society Conference.1992:379-385.

[14]Weng E J,Fu L C.On-line Human Action Recognition by Combining Joint Tracking and Key Pose Recognition[C]//Intelligent Robots and Systems (IROS),2012 IEEE/RSJ International Conference.2012:4112-4117.

[15]黄静,孔令富,李海涛,等.基于傅里叶-隐马尔科夫模型的人体行为识别[J].计算机仿真,2011,28(7):245-248.

[16]赵琼,叶豪盛,周学海,等.基于空间时序隐马尔科夫模型的人体三维动作捕捉数据行为识别[C]//第八届中国计算机图形学大会论文集.2010:34-41.

[17]Li W Q,Zhang Z Y,Liu Z C.Action Recognition Based on a Bag of 3D Points[C]//Computer Vision and Pattern Recognition Workshops(CVPRW),2010 IEEE Computer Society Conference.2010:9-14.