第10卷第3期 智能系统学报 Vol.10 No.3 2015年6月 CAAI Transactions on Intelligent Systems Jun.2015 D0:10.3969/j.issn.1673-4785.201405049 网络出版地址:http://www.cnki.net/kcms/detail/23.1538.tp.20150603.0901.001.html 改进高斯核函数的人体姿态分析与识别 林海波,王浩,张毅 (重庆邮电大学智能系统及机器人研究所,重庆400065) 摘要:为了提高人体动作姿态的识别率,利用Kinect平台构建人体骨骼模型,提出一种基于关节角度的人体姿态 表示方法。同时针对传统的高斯核函数中采用欧氏距离计算方法难以完全反映人体关节运动数据样本点与测试点 之间位置关系的问题,提出了改进的高斯核函数多类支持向量机(MSVM)人体动作姿态识别方法。在高斯径向基核 函数中使用测地线距离代替欧氏距离,建立了基于测地线距离的姿态核函数,采用二叉树方法构建多类支持向量机 完成12种上肢姿态的分类。实验结果表明,该算法取得了较好的识别效果,能更加有效识别人体姿态。 关键词:人体动作姿态;识别;高斯核函数;Kinect:欧氏距离;测地线距离;支持向量机 中图分类号:TP391.9文献标志码:A文章编号:1673-4785(2015)03-0436-06 中文引用格式:林海波,王浩,张毅.改进高斯核函数的人体姿态分析与识别[J].智能系统学报,2015,10(3):436-441. 英文引用格式:LIN Haibo,WANG Hao,ZHANG Yi..Human postures recognition based on the improved Gauss kernel function J].CAAI Transactions on Intelligent Systems,2015,10(3):436-441. Human postures recognition based on the improved Gauss kernel function LIN Haibo,WANG Hao,ZHANG Yi (Research Center of Intelligent System and Robot,Chongqing University of Posts and Telecommunications,Chongqing 400065,China) Abstract:In this paper,a method based on the joint angles of human postures is proposed in order to improve the human posture recognition rate through building a human skeleton model on the Kinect platform.For the traditional method of human postures recognition,Euclidean distance is used in Gaussian kernel function,but the positional relationship of sample point and test point of human body joint can not be reflected completely.So the method of im- proved Gaussian kernel function and multi-class support vector machines (MSVM)is proposed.Using the geodesic distance instead of the Euclidean distance in the Gaussian radial basis kernel function,a posture kernel function based on the geodesic distance is established.Using the binary tree method,a multi-class support vector machine is built to complete classification of 12 kinds of upper limb postures.Experimental results showed that the improved al- gorithm can identify body postures more effectively than before,achieving a good recognition effect. Keywords:human postures;recognition;Gauss kernel function;Kinect;Euclidean distance;geodesic distance; support vector machines (SVM) 基于视觉的人体动作姿态估计和识别在高级人 机交互、智能视频监控、三维动画合成、电影特技制 作、体育运动分析、医学理疗等多个方面拥有十分广 收稿日期:2014-05-22.网络出版日期:2015-06-03. 基金项目:科技部国际合作项目(2010DFA12160):重庆市工业振兴 阔的应用前景,正逐渐受到越来越多学者们的关注。 专项资金资助项目(渝财金[2013]442号). 人体动作姿态分析主要分为2个部分:人体姿态描 通信作者:王浩.E-mail:haoziwang1990@126.com-
第 10 卷第 3 期 智 能 系 统 学 报 Vol.10 №.3 2015 年 6 月 CAAI Transactions on Intelligent Systems Jun. 2015 DOI:10.3969 / j.issn.1673⁃4785.201405049 网络出版地址:http: / / www.cnki.net / kcms/ detail / 23.1538.tp.20150603.0901.001.html 改进高斯核函数的人体姿态分析与识别 林海波,王浩,张毅 (重庆邮电大学 智能系统及机器人研究所,重庆 400065) 摘 要:为了提高人体动作姿态的识别率,利用 Kinect 平台构建人体骨骼模型,提出一种基于关节角度的人体姿态 表示方法。 同时针对传统的高斯核函数中采用欧氏距离计算方法难以完全反映人体关节运动数据样本点与测试点 之间位置关系的问题,提出了改进的高斯核函数多类支持向量机(MSVM)人体动作姿态识别方法。 在高斯径向基核 函数中使用测地线距离代替欧氏距离,建立了基于测地线距离的姿态核函数,采用二叉树方法构建多类支持向量机 完成 12 种上肢姿态的分类。 实验结果表明,该算法取得了较好的识别效果,能更加有效识别人体姿态。 关键词:人体动作姿态;识别;高斯核函数;Kinect;欧氏距离;测地线距离;支持向量机 中图分类号:TP391.9 文献标志码:A 文章编号:1673⁃4785(2015)03⁃0436⁃06 中文引用格式:林海波,王浩,张毅. 改进高斯核函数的人体姿态分析与识别[J]. 智能系统学报, 2015, 10(3): 436⁃441. 英文引用格式:LIN Haibo, WANG Hao, ZHANG Yi. Human postures recognition based on the improved Gauss kernel function [J]. CAAI Transactions on Intelligent Systems, 2015, 10(3): 436⁃441. Human postures recognition based on the improved Gauss kernel function LIN Haibo, WANG Hao, ZHANG Yi (Research Center of Intelligent System and Robot, Chongqing University of Posts and Telecommunications, Chongqing 400065, China) Abstract:In this paper, a method based on the joint angles of human postures is proposed in order to improve the human posture recognition rate through building a human skeleton model on the Kinect platform. For the traditional method of human postures recognition, Euclidean distance is used in Gaussian kernel function, but the positional relationship of sample point and test point of human body joint can not be reflected completely. So the method of im⁃ proved Gaussian kernel function and multi⁃class support vector machines (MSVM) is proposed. Using the geodesic distance instead of the Euclidean distance in the Gaussian radial basis kernel function, a posture kernel function based on the geodesic distance is established. Using the binary tree method, a multi⁃class support vector machine is built to complete classification of 12 kinds of upper limb postures. Experimental results showed that the improved al⁃ gorithm can identify body postures more effectively than before, achieving a good recognition effect. Keywords:human postures; recognition; Gauss kernel function; Kinect; Euclidean distance; geodesic distance; support vector machines (SVM) 收稿日期:2014⁃05⁃22. 网络出版日期:2015⁃06⁃03. 基金项目:科技部国际合作项目( 2010DFA12160);重庆市工业振兴 专项资金资助项目(渝财金[2013]442 号). 通信作者:王浩. E⁃mail: haoziwang1990@ 126.com. 基于视觉的人体动作姿态估计和识别在高级人 机交互、智能视频监控、三维动画合成、电影特技制 作、体育运动分析、医学理疗等多个方面拥有十分广 阔的应用前景,正逐渐受到越来越多学者们的关注。 人体动作姿态分析主要分为 2 个部分:人体姿态描
第3期 林海波,等:改进高斯核函数的人体姿态分析与识别 ·437. 述和人体姿态识别。人体动作姿态识别算法是否有 图I(a)所示。Kinect工作原理的核心是通过类似 效通常取决于使用的动作姿态表示特征量,因而针 结构光法的光编码(light coding)技术的方式来获取 对特定问题提出行之有效的动作姿态表示方法成为 深度图像。红外发射器连续地向空间发射光,并给 动作姿态识别研究的重要内容之一。D.Weinland 空间编码,通过普通CMOS合成黑白深度图像,其中 等)提出用MHV(motion history volumes)模板描述 纯黑代表无穷远,纯白代表无穷近。由于不需要特 动作姿态:Wang在2006年提出用轮廓的平均运动 制的感光芯片,极大地降低了成本,越来越多的学者 形状和运动前景的平均运动能2个模板,用最近邻 采用它进行深度图像的采集。本文利用分割技术将 分类器描述动作姿态2)。传统的基于视觉的人体 人体从深度图像背景环境中区分出来,并采用随机 动作姿态检测主要针对二维特征,随着运动捕获技 森林[劉等分类算法将人体各个部位进行区分定位, 术的成熟和推广,高效、快捷获取大量三维的运动数 得出骨骼关节点的坐标信息。每一帧的骨骼图像中 据集已经成为现实。R.Girshick等[)利用Kinect深 都有被跟踪人的姿势,包括20个关节点,并以30 度图像分析人体姿态变化。S.Sempena等4)在 帧/s的速度生成骨骼图像流,实时地重现人体的运 20l1年利用从Kinect深度图像中得到的人体骨骼 动状态,骨骼提取流程如图1(b)所示。 模型,采用关节角描述人体动作姿态。结果表明,相 对于二维特征,基于Kinect传感器的三维运动捕获 RGB 工外线 数据较好地保持了运动细节,并真实地记录了运动 OMS 轨迹,数据精度高,并且相比于人体深度数据,采用 骨骼数据能够更加紧凑和鲜明地反应人体姿态。对 于人体动作姿态识别,常用的方法有动态时间规整 (a)外观 (dynamic time warping,DTW)、动态贝叶斯(dynam- ic Bayesian,DBN)、隐马尔科夫模型(hidden Markov models,HMM)、神经网络等。如A.Veeraraghavan 等s]使用DTW方法匹配动作序列,Luo6)采用动态 贝叶斯网络进行人体动作姿态识别研究,并与HMM 方法进行了比较,F.Buccolieri通过径向基神经网 (b)工作机理 络(radial--basis function,RBF)分析人体轮廓特征来 图1当Kinect外观和工作机理 识别姿态。 Fig.1 The appearance of the Kinect and the mechanism 相比上述方法,基于支持向量机的学习算法利 1.2人体姿态建模和行为描述 用结构风险最小化代替传统模式识别中的经验风险 Kinect传感器获取的景深图像中可以提取出人 最小化,对解决高维数、非线性和小样本的问题很有 体20个关键点的位置信息,本文选取其中的16个 优势。鉴于此,本文提出了一种多类支持向量机人 骨骼点构成人体的骨架模型,每一个关节点的位置 体动作姿态识别方法。该方法运用Kinect骨骼追 用Kinect坐标系下的三维向量表示P:= 踪技术提取人体骨骼模型,并针对人体关节的特点 在关节点处建立球坐标系,利用关节角对人体动作 (x,),其中x:,y:代表在彩色图像上位置,云 表示关节点离传感器的距离。如图2所示,16个骨 姿态进行描述。同时,利用高斯核模型设计了基于 骼点中P,P2,…,P,分别为人体的右侧肩、颈部 测地线距离的姿态核函数,采用二叉树设计多类支 左侧肩、脊柱、髋骨中心、右髋、左髋,共同构成人体 持向量机算法对人体姿态进行识别。 的躯干部分:P。为人体头部;Pg,Po,…,P6代表 1人体姿态表示 人体的四肢部分,包括左右侧肘关节、腕关节、膝关 节和踝关节。在绘制骨架图时,保证了骨架的大小 1.1 Kinect简介 不会因人到传感器位置或者身体的整体平移而发生 Kinect传感器是微软公司开发的一种3D体感 改变,以达到更好的人机交互效果。 摄像机,它由1个红外投影仪、2个摄像头组成,如
述和人体姿态识别。 人体动作姿态识别算法是否有 效通常取决于使用的动作姿态表示特征量,因而针 对特定问题提出行之有效的动作姿态表示方法成为 动作姿态识别研究的重要内容之一。 D. Weinland 等[1]提出用 MHV(motion history volumes)模板描述 动作姿态;Wang 在 2006 年提出用轮廓的平均运动 形状和运动前景的平均运动能 2 个模板,用最近邻 分类器描述动作姿态[2] 。 传统的基于视觉的人体 动作姿态检测主要针对二维特征,随着运动捕获技 术的成熟和推广,高效、快捷获取大量三维的运动数 据集已经成为现实。 R. Girshick 等[3]利用 Kinect 深 度图像分析人体姿 态 变 化。 S. Sempena 等[4] 在 2011 年利用从 Kinect 深度图像中得到的人体骨骼 模型,采用关节角描述人体动作姿态。 结果表明,相 对于二维特征,基于 Kinect 传感器的三维运动捕获 数据较好地保持了运动细节,并真实地记录了运动 轨迹,数据精度高,并且相比于人体深度数据,采用 骨骼数据能够更加紧凑和鲜明地反应人体姿态。 对 于人体动作姿态识别,常用的方法有动态时间规整 (dynamic time warping, DTW)、动态贝叶斯(dynam⁃ ic Bayesian, DBN)、隐马尔科夫模型(hidden Markov models, HMM)、神经网络等。 如 A. Veeraraghavan 等[5]使用 DTW 方法匹配动作序列,Luo [6] 采用动态 贝叶斯网络进行人体动作姿态识别研究,并与 HMM 方法进行了比较,F. Buccolieri [7] 通过径向基神经网 络(radial⁃basis function, RBF)分析人体轮廓特征来 识别姿态。 相比上述方法,基于支持向量机的学习算法利 用结构风险最小化代替传统模式识别中的经验风险 最小化,对解决高维数、非线性和小样本的问题很有 优势。 鉴于此,本文提出了一种多类支持向量机人 体动作姿态识别方法。 该方法运用 Kinect 骨骼追 踪技术提取人体骨骼模型,并针对人体关节的特点 在关节点处建立球坐标系,利用关节角对人体动作 姿态进行描述。 同时,利用高斯核模型设计了基于 测地线距离的姿态核函数,采用二叉树设计多类支 持向量机算法对人体姿态进行识别。 1 人体姿态表示 1.1 Kinect 简介 Kinect 传感器是微软公司开发的一种 3D 体感 摄像机,它由 1 个红外投影仪、2 个摄像头组成,如 图 1(a)所示。 Kinect 工作原理的核心是通过类似 结构光法的光编码(light coding)技术的方式来获取 深度图像。 红外发射器连续地向空间发射光,并给 空间编码,通过普通 CMOS 合成黑白深度图像,其中 纯黑代表无穷远,纯白代表无穷近。 由于不需要特 制的感光芯片,极大地降低了成本,越来越多的学者 采用它进行深度图像的采集。 本文利用分割技术将 人体从深度图像背景环境中区分出来,并采用随机 森林[8]等分类算法将人体各个部位进行区分定位, 得出骨骼关节点的坐标信息。 每一帧的骨骼图像中 都有被跟踪人的姿势,包括 20 个关节点,并以 30 帧/ s 的速度生成骨骼图像流,实时地重现人体的运 动状态,骨骼提取流程如图 1(b)所示。 图 1 当 Kinect 外观和工作机理 Fig. 1 The appearance of the Kinect and the mechanism 1.2 人体姿态建模和行为描述 Kinect 传感器获取的景深图像中可以提取出人 体 20 个关键点的位置信息,本文选取其中的 16 个 骨骼点构成人体的骨架模型,每一个关节点的位置 用 Kinect 坐 标 系 下 的 三 维 向 量 表 示 Pi = xi,yi,zi ( ) T , 其中 xi , yi 代表在彩色图像上位置, zi 表示关节点离传感器的距离。 如图 2 所示,16 个骨 骼点中 P1 , P2 , … , P7 分别为人体的右侧肩、颈部、 左侧肩、脊柱、髋骨中心、右髋、左髋,共同构成人体 的躯干部分; P8 为人体头部; P9 , P10 ,…, P16 代表 人体的四肢部分,包括左右侧肘关节、腕关节、膝关 节和踝关节。 在绘制骨架图时,保证了骨架的大小 不会因人到传感器位置或者身体的整体平移而发生 改变,以达到更好的人机交互效果。 第 3 期 林海波,等:改进高斯核函数的人体姿态分析与识别 ·437·
·438. 智能系统学报 第10卷 上投影的夹角,即方位角。所以用(01,P1),(02, P,)可分别表示P。、P4点的运动,其他关节点计算 类似。综上,第2、3部分共有9个关节点,可用一个 18维的特征向量: v=[99102p2…8,Pg]∈R8 来表示人体动作姿态每一帧姿势,其中每一对(日:, P:)都表示其对应关节点在相应坐标系下的位置。 如图3所示。 (a)人体第2部分的表示 图2人体骨架框图 Fig.2 Human skeleton diagram 由于人体的动作姿态描述可以用四肢部分和头 部相对于躯干部分的位置变化来表示。因此,将构 成骨架框图的16个关节点分为3个部分:第1部分 (b)人体第3部分的表示 是构成人体躯干的关节点,包括P1,P2,…,P;第2 图3人体行为描述 部分是所有与人体躯干相邻的关节点,包括P,P, Fig.3 Description of human behavior …,P2;第3部分是与第2部分关节点相邻的关节 点,包括PB,P4,P5,P16。这样,通过第2、3部 2 支持向量机姿态识别算法 分的9个关节点相对于第1部分人体躯干的各个关 支持向量机(support vector machine,SVM)方法 节角度变化就可以描述人体动作姿态。 是在统计学习理论基础上发展起来的一种有监督的 运用PCA主成分析法将第1部分的人体躯干7 分类和回归方法。其核心思想是在一个n维空间中 个关节点用1个三维向量表示,并将三维向量进行 构造一个超平面用来区分特征空间中的类模式,且 施密特正交化处理,用{u,r,t表示(如图3),其中 模式之间的距离最大。为计算2类模式的距离,在 表示人体的上下运动,r表示人体的前后运动,t 分类面的2侧构建2个平行于分类面的超平面,在 表示人体的左右运动,显然t=×r。人体的关节 这2个超平面上的数据称为支持向量。 是球形关节,其余2部分的运动以此为基准,分别在 支持向量机分类算法的数学描述如下:假定对于 与上级部分连接的关节点处建立一个球面坐标系。 给定的一组训练集为T={(v,c),(v2,c2),…}, 以描述左手臂的运动为例,第2部分从左肩到左肘 v为姿态特征向量U∈R8,y∈{+1,-1},c∈ 的向量y,第3部分从左肘到左腕的向量w。第2 {1,2,.,1k1}为姿态类别标签。当样本v属于第i 部分的坐标系以{“,r,t}为基准,原点在P:第3部 类c时,其类别表示y=+1,否则y=-1。通过一 分的坐标系是将{u,r,t以轴心b=v×r旋转a= 个非线性映射(·),把训练样本映射到一个高维空 cos(y·r)角度得到,记作{',r',},原点在 间中:P:R"→H。由于提取的特征是非线性的,支 P。。给定一个体,由于人体骨骼长度不变性,根据 持向量机最优分类面的求解问题则可以表示为 球面坐标系的定义,关节点的运动可用仰角日和方 (1) 位角p加以约束。其中0为v与平面P,r的夹角以 min片Iw2+c∑ 及w在平面t'Po'的夹角,即仰角;p为t轴和v在 y((p(v),w)+b)≥1-5,5≥0,i=1,2,…,n 平面tP,r上投影的夹角以及t'轴与w在平面t'Por' (2)
图 2 人体骨架框图 Fig. 2 Human skeleton diagram 由于人体的动作姿态描述可以用四肢部分和头 部相对于躯干部分的位置变化来表示。 因此,将构 成骨架框图的 16 个关节点分为 3 个部分:第 1 部分 是构成人体躯干的关节点,包括 P1 , P2 ,…, P7 ;第 2 部分是所有与人体躯干相邻的关节点,包括 P8 , P9 , …, P12 ;第 3 部分是与第 2 部分关节点相邻的关节 点,包括 P13 , P14 , P15 , P16 。 这样,通过第 2、3 部 分的 9 个关节点相对于第 1 部分人体躯干的各个关 节角度变化就可以描述人体动作姿态。 运用 PCA 主成分析法将第 1 部分的人体躯干 7 个关节点用 1 个三维向量表示,并将三维向量进行 施密特正交化处理,用 {u,r,t} 表示(如图 3),其中 u 表示人体的上下运动, r 表示人体的前后运动, t 表示人体的左右运动,显然 t = u × r 。 人体的关节 是球形关节,其余 2 部分的运动以此为基准,分别在 与上级部分连接的关节点处建立一个球面坐标系。 以描述左手臂的运动为例,第 2 部分从左肩到左肘 的向量 v ,第 3 部分从左肘到左腕的向量 w 。 第 2 部分的坐标系以 {u,r,t} 为基准,原点在 P3 ;第 3 部 分的坐标系是将 {u,r,t} 以轴心 b = v × r 旋转 α = cos -1 (v· r) 角度得到, 记作 {u′,r′,t′} , 原点在 P10 。 给定一个体,由于人体骨骼长度不变性,根据 球面坐标系的定义,关节点的运动可用仰角 θ 和方 位角 φ 加以约束。 其中 θ 为 v 与平面 tP3 r 的夹角以 及 w 在平面 t′P10 r′ 的夹角,即仰角; φ 为 t 轴和 v 在 平面 tP3 r 上投影的夹角以及 t′ 轴与 w 在平面 t′P10 r′ 上投影的夹角,即方位角。 所以用( θ 1 , φ1 ),( θ 2 , φ2 )可分别表示 P10 、 P14 点的运动,其他关节点计算 类似。 综上,第 2、3 部分共有 9 个关节点,可用一个 18 维的特征向量: υ = [θ1 φ1 θ2 φ2 … θ9 φ9 ] ∈ R 18 来表示人体动作姿态每一帧姿势,其中每一对( θi , φi )都表示其对应关节点在相应坐标系下的位置。 如图 3 所示。 (a)人体第 2 部分的表示 (b)人体第 3 部分的表示 图 3 人体行为描述 Fig. 3 Description of human behavior 2 支持向量机姿态识别算法 支持向量机(support vector machine, SVM)方法 是在统计学习理论基础上发展起来的一种有监督的 分类和回归方法。 其核心思想是在一个 n 维空间中 构造一个超平面用来区分特征空间中的类模式,且 模式之间的距离最大。 为计算 2 类模式的距离,在 分类面的 2 侧构建 2 个平行于分类面的超平面,在 这 2 个超平面上的数据称为支持向量。 支持向量机分类算法的数学描述如下:假定对于 给定的一组训练集为 T = {(υ 1 ,c 1 ),(υ 2 ,c 2 ),…} , υ i 为姿态特征向量 υ i ∈ R 18 , y i n ∈ { + 1, - 1} , c i ∈ {1,2,..., | k | } 为姿态类别标签。 当样本 υ i 属于第 i 类 c i 时,其类别表示 y i n = + 1,否则 y i n = - 1。 通过一 个非线性映射 φ(·) ,把训练样本映射到一个高维空 间中: φ:R n → H 。 由于提取的特征是非线性的,支 持向量机最优分类面的求解问题则可以表示为 min{ 1 2 ‖w‖2 + C∑i ξi} (1) yi(〈φ(υ),w〉 + b) ≥ 1 - ξi,ξi ≥ 0,∀i = 1,2,…,n (2) ·438· 智 能 系 统 学 报 第 10 卷
第3期 林海波,等:改进高斯核函数的人体姿态分析与识别 ·439. 式(1)约束于式(2)。其中,2/‖w‖为分类间隔, (8) b为常数,C为惩罚系数,专:是松弛因子。 通常求解式(1)时采取其拉格朗日对偶问题的 下面证明该核函数是一个有效的核函数。首先 方法: 给出核函数T(v,)的表达式: max∑a:-2之,ayyΦ(v,V)} (3) T(听,)=exp (9) 式中:0≤a:≤C,∑y:=0,i=1,2,…,n, 由于(8)是由(9)演变而来,要证明④(v,)有效, 中(,)为核函数。其决策函数f(v)描述为 首先需要证明T(v,)的有效性。由于任意球面 2点间的测地线距离构成核矩阵[8(,)]满足 f(v)=∑ayΦ(w,v)+b (4) Gram矩阵的条件,因此[δ(vi,y)]是一个Gram矩 m=1 式中:N为训练样本集中所有类别样本的总个数, 阵。根据条件正定核(简称CPD核)的定义,采用 v∈R";y∈{+1,-1},当样本v属于第i类c 文献[10]给出的判定依据,可以证明T(,)满 时,其类别表示y。=+1,否则y=-1;a。为拉格朗 足条件正定核定义,是一个有效核函数。根据核函 日系数;④(v,v)为姿态核函数;b为分类阀值:v 数的封闭性质[川,很容易得出Φ(,)也是一个 为待分类目标的特征量。 有效的核函数。 2.1改进高斯核模型的姿态核函数选取 2.2多类支持向量机的构建 采用核函数的作用是简化映射空间中的内积运 SVM最初仅用于实现2类问题的分类,要实现 算,将非线性的训练数据隐式映射到高维空间,而不 12种人体姿态的多类分类,需要对标准SVM进行 增加可调参数的个数。在常用的核函数中,高斯函 扩展,将多个标准SVM以某种方式组织在一起,构 数因其优越性能引起人们的关注。高斯函数的表达 建多类支持向量机。目前构建MSVM的方法主要 式为 有一对一、一对多方法、导向无环图和二叉树)。 Φ(,v)=exp ‖v-v 鉴于二叉树设计方法的诸多优点,采用决策二叉树 2o2 (5) 的多类分类器设计方法,如图4所示。 式中:v,v∈R是样本点,σ>0是核半径,‖v- v‖表示空间中任一点v到某一中心v之间的欧氏 类别1,2,…, 距离。然而本文人体姿态描述的是多个关节在各 SVM 类别23,…,k 自球面坐标下的关节角,样本点和测试点之间的欧氏 类别1 SVM2 距离并不能完全反应它们之间的位置关系。针对人 类别3.4.…, 体关节运动的特点,采用球面上的测地线距离能够更 类别2 加准确地反映各个关节运动。因此,基于高斯核模 SVM 型,在高斯径向基核函数中使用测地线距离代替欧氏 距离构造姿态核函数。 类别k-1 类别k 假设给出2个球面上的点v=(0:,9:),= 图4二叉树的多类分类器框架 (0,9),则这2点间的测地线距离8(v,)为 Fig.4 The multi-class classifier framework of binary tree (,)= 在二叉树结构中,根据决策半径构造二叉树各 arccos(sin 0sin cos 0cos 0cosl-) 内节点的最优超平面,即从根节点开始,沿树的路径 (6) 依次得到的类别标签为1,2,,k。二叉树各内节 令v,是2个姿态特征向量,对于关节点l, 点的分类算法流程如下:1)以第1类样本为正样本 δ(v,)表示的是该关节点2种姿态描述下构成 集,其他类样本为负样本集,构造二值分类器,将1 点对之间的测地线距离。取9个关节点的测地线距 类从样本集中剔除:2)以第2类样本为正样本集, 离的平方和,记为 其他类样本为负样本集,构造第2个内节点处的二 A4,)=8[84.)1 (7) 值分类器,将2类从样本集中别除;3)依次下去,可 以得到基于二叉树的多类支持向量机分类器。 最后参照高斯核模型,得到姿态核函数:
式(1)约束于式(2)。 其中, 2 / ‖w‖ 为分类间隔, b 为常数, C 为惩罚系数, ξi 是松弛因子。 通常求解式(1)时采取其拉格朗日对偶问题的 方法: max αi {∑i αi - 1 2 ∑i,j αiαj yi yjΦ(υ i ,υ j )} (3) 式中: 0 ≤ αi ≤ C, ∑i αi yi = 0, i = 1,2,…,n , Φ(υ i ,υ j ) 为核函数。 其决策函数 f i (υ) 描述为 f i (υ) = ∑ N n = 1 α i n y i nΦ(υ i ,υ) + b (4) 式中: N 为训练样本集中所有类别样本的总个数, υ i ∈ R n ; y i n ∈ { + 1, - 1} ,当样本 υ i 属于第 i 类 c i 时,其类别表示 y i n = + 1,否则 y i n = - 1; α i n 为拉格朗 日系数; Φ(υ i ,υ) 为姿态核函数; b 为分类阀值; υ 为待分类目标的特征量。 2.1 改进高斯核模型的姿态核函数选取 采用核函数的作用是简化映射空间中的内积运 算,将非线性的训练数据隐式映射到高维空间,而不 增加可调参数的个数。 在常用的核函数中,高斯函 数因其优越性能引起人们的关注。 高斯函数的表达 式为 Φ(υ i ,υ) = exp - ‖ υ i - υ‖2 2σ 2 æ è ç ö ø ÷ (5) 式中: υ i ,υ ∈ R n 是样本点, σ > 0 是核半径, ‖ υ i - υ‖ 表示空间中任一点 υ i 到某一中心 υ 之间的欧氏 距离[9] 。 然而本文人体姿态描述的是多个关节在各 自球面坐标下的关节角,样本点和测试点之间的欧氏 距离并不能完全反应它们之间的位置关系。 针对人 体关节运动的特点,采用球面上的测地线距离能够更 加准确地反映各个关节运动。 因此,基于高斯核模 型,在高斯径向基核函数中使用测地线距离代替欧氏 距离构造姿态核函数。 假设给出 2 个球面上的点 υ i = (θi,φi) , υ j = (θj,φj) ,则这 2 点间的测地线距离 δ(υ i ,υ j ) 为 δ(υ i l,υ j l) = arccos(sin θ i l sin θ j l + cos θ i l cos θ j l cos | φ i l - φ j l | ) (6) 令 υ i , υ j 是 2 个姿态特征向量,对于关节点 l , δ(υ i l,υ j l) 表示的是该关节点 2 种姿态描述下构成 点对之间的测地线距离。 取 9 个关节点的测地线距 离的平方和,记为 Δ(υ i l,υ j l) = ∑ 9 l = 1 [δ(υ i l,υ j l)] 2 (7) 最后参照高斯核模型,得到姿态核函数: Φ(υ i l,υ j l) = exp - 1 2σ 2 Δ(υ i l,υ j l) æ è ç ö ø ÷ (8) 下面证明该核函数是一个有效的核函数。 首先 给出核函数 Γ(υ i l,υ j l) 的表达式: Γ(υ i l,υ j l) = exp - 1 2σ 2 δ(υ i l,υ j l) æ è ç ö ø ÷ (9) 由于(8)是由(9)演变而来,要证明 Φ(υ i l,υ j l) 有效, 首先需要证明 Γ(υ i l,υ j l) 的有效性。 由于任意球面 2 点间的测地线距离构成核矩阵 [δ(υ i l,υ j l)] 满足 Gram 矩阵的条件,因此 [δ(υ i l,υ j l)] 是一个 Gram 矩 阵。 根据条件正定核(简称 CPD 核) 的定义,采用 文献[10]给出的判定依据,可以证明 Γ(υ i l,υ j l) 满 足条件正定核定义,是一个有效核函数。 根据核函 数的封闭性质[11] ,很容易得出 Φ(υ i l,υ j l) 也是一个 有效的核函数。 2.2 多类支持向量机的构建 SVM 最初仅用于实现 2 类问题的分类,要实现 12 种人体姿态的多类分类,需要对标准 SVM 进行 扩展,将多个标准 SVM 以某种方式组织在一起,构 建多类支持向量机。 目前构建 MSVM 的方法主要 有一对一、一对多方法、导向无环图和二叉树[12] 。 鉴于二叉树设计方法的诸多优点,采用决策二叉树 的多类分类器设计方法,如图 4 所示。 图 4 二叉树的多类分类器框架 Fig. 4 The multi⁃class classifier framework of binary tree 在二叉树结构中,根据决策半径构造二叉树各 内节点的最优超平面,即从根节点开始,沿树的路径 依次得到的类别标签为 1,2,…,k。 二叉树各内节 点的分类算法流程如下:1)以第 1 类样本为正样本 集,其他类样本为负样本集,构造二值分类器,将 1 类从样本集中剔除;2) 以第 2 类样本为正样本集, 其他类样本为负样本集,构造第 2 个内节点处的二 值分类器,将 2 类从样本集中剔除;3)依次下去,可 以得到基于二叉树的多类支持向量机分类器。 第 3 期 林海波,等:改进高斯核函数的人体姿态分析与识别 ·439·
.440 智能系统学报 第10卷 表1改进核函数与传统核函数的实验结果对比 3 实验结果与分析 Table 1 Comparison results of improved and original 整个实验的环境:Kinect传感器彩色图像分辨 kernel functions 率为640×480、深度图像分辨率为320×240:软件 姿态 基于传统核函数 基于改进核函数 开发环境:Window7+Visual Studio20l0、Kinect SDK 标签 正确次数 准确率/% 正确次数 准确率/% v1.7:开发语言:C#。本文提出的人体姿态识别算法 k 49 98 50 100 可分为4个部分:人体深度图像分割、骨骼特征提 k2 46 92 48 96 取、姿态模型和姿态识别,如图5所示。 k3 46 94 49 98 k4 45 90 47 94 训练集 姿态 训练 样本 特征库 分类器 k5 44 88 48 96 k6 47 4 48 96 k7 4日 49 95 测试 人体深度 骨骼特 姿态 姿态 输出 样本 图像分割 征提取h7 模型 识别 结果 k8 47 48 96 k9 45 90 48 97 图5 姿态识别算法框架 k10 88 46 92 Fig.5 Human posture recognition algorithm framework k11 47 94 49 98 本文主要是研究人体上肢部分的运动姿态,为 k12 46 92 48 96 验证算法的可行性及正确率,选取Kinect Gesture Data Set(the MSR Action3 D dataset)数据集中人体上 在实验中发现,当某些姿态比较相似时,例如 肢部分的12种姿态作为训练姿态进行识别,各个姿 k7、k9和k12,这些姿态之间有一定的误判,但误判比 势如图6所示。 例较小,整体的分类效果还是比较好的。从表1中可 以得出,提出的改进高斯核函数多类支持向量机算法 的平均识别率为96.1%,比传统的基于欧氏距离的高 斯核函数多类支持向量机算法提高了3.9%。因此, 所采用的分类器在监督学习机制下是有效的分类器 模型,验证了系统所提取的特征能有效表示特征姿 (a)kI (b)k2 (c)k3 (d)k4 k5 态。同时,为了验证本算法对姿态的分类和识别具有 优越性,利用RBF神经网络对采集的k7、k9和k123 种误判较高的姿态进行分类,同样让10位同学对每 个姿势进行50次实验,将实验结果与本文方法进行 比较,见表2所示。由表2对比结果可以看出,对于 k7、k9和k12这3种姿态的识别,本文方法用时略快 (h)k8 (i)k9 G)k10(k)k1L()k12 于RBF神经网络,且识别率更高,具有较好的小样本 图6人体12种上肢姿态 分类性能。 Fig.6 12 kinds of human upper limb postures 表2本文算法与RBF神经网络方法性能对比 在训练样本集时,每一种姿势进行30次训练, Table 2 Comparison results of the recognition rates between 创建姿势样本集:K={c,c2,…,c。为验证改 our method and neural network method 进核函数后算法的有效性,分别基于传统欧氏距离 姿态 RBF神经网络方法 本文方法 的高斯核函数多类支持向量机和采用改进的基于测 标签 用时/s 识别率/% 用时/s 识别率/% 地线距离的高斯核函数多类支持向量机算法识别这 k7 0.0236 95 0.0117 95 12种姿态,让10位同学对每个姿势进行50次实 k9 0.3070 94 0.0196 97 验,分类结果如表1所示。 k12 0.0382 94 0.0203 96
3 实验结果与分析 整个实验的环境:Kinect 传感器彩色图像分辨 率为 640 × 480、深度图像分辨率为 320 × 240;软件 开发环境:Window7+Visual Studio 2010、Kinect SDK⁃ v1.7;开发语言:C#。 本文提出的人体姿态识别算法 可分为 4 个部分:人体深度图像分割、骨骼特征提 取、姿态模型和姿态识别,如图 5 所示。 图 5 姿态识别算法框架 Fig. 5 Human posture recognition algorithm framework 本文主要是研究人体上肢部分的运动姿态,为 验证算法的可行性及正确率,选取 Kinect Gesture Data Set(the MSR Action3D dataset)数据集中人体上 肢部分的 12 种姿态作为训练姿态进行识别,各个姿 势如图 6 所示。 图 6 人体 12 种上肢姿态 Fig. 6 12 kinds of human upper limb postures 在训练样本集时,每一种姿势进行 30 次训练, 创建姿势样本集: K = {c 1 ,c 2 ,...,c k } 。 为验证改 进核函数后算法的有效性,分别基于传统欧氏距离 的高斯核函数多类支持向量机和采用改进的基于测 地线距离的高斯核函数多类支持向量机算法识别这 12 种姿态,让 10 位同学对每个姿势进行 50 次实 验,分类结果如表 1 所示。 表 1 改进核函数与传统核函数的实验结果对比 Table 1 Comparison results of improved and original kernel functions 姿态 标签 基于传统核函数 正确次数 准确率/ % 基于改进核函数 正确次数 准确率/ % k1 49 98 50 100 k2 46 92 48 96 k3 46 94 49 98 k4 45 90 47 94 k5 44 88 48 96 k6 47 94 48 96 k7 46 92 49 95 k8 47 94 48 96 k9 45 90 48 97 k10 44 88 46 92 k11 47 94 49 98 k12 46 92 48 96 在实验中发现,当某些姿态比较相似时,例如 k7、k9 和 k12,这些姿态之间有一定的误判,但误判比 例较小,整体的分类效果还是比较好的。 从表 1 中可 以得出,提出的改进高斯核函数多类支持向量机算法 的平均识别率为 96.1%,比传统的基于欧氏距离的高 斯核函数多类支持向量机算法提高了 3.9%。 因此, 所采用的分类器在监督学习机制下是有效的分类器 模型,验证了系统所提取的特征能有效表示特征姿 态。 同时,为了验证本算法对姿态的分类和识别具有 优越性,利用 RBF 神经网络对采集的 k7、k9 和 k12 3 种误判较高的姿态进行分类,同样让 10 位同学对每 个姿势进行 50 次实验,将实验结果与本文方法进行 比较,见表 2 所示。 由表 2 对比结果可以看出,对于 k7、k9 和 k12 这 3 种姿态的识别,本文方法用时略快 于 RBF 神经网络,且识别率更高,具有较好的小样本 分类性能。 表 2 本文算法与 RBF 神经网络方法性能对比 Table 2 Comparison results of the recognition rates between our method and neural network method 姿态 标签 RBF 神经网络方法 用时/ s 识别率/ % 本文方法 用时/ s 识别率/ % k7 0.023 6 95 0.011 7 95 k9 0.307 0 94 0.019 6 97 k12 0.038 2 94 0.020 3 96 ·440· 智 能 系 统 学 报 第 10 卷
第3期 林海波,等:改进高斯核函数的人体姿态分析与识别 ·441- and Signal Based Surveillance.Como,Italy,2005:213- 4 结束语 218 在充分研究常用行为表示方法的基础上,针对人 [8]BACKES M,HRITCU C,MAFFEI M.Type-checking zero- 体骨骼关节的特点提出了基于球坐标系下人体关节 knowledge C//Proceedings of the 15th ACM Conference 角的行为表示特征量。并针对欧氏距离计算方法难 on Computer and Communications Security.New York, 以完全反映人体关节运动数据样本点与测试点之间 USA:ACM,2008:357-370 位置关系的问题,采用测地线距离代替欧氏距离的对 [9]杨庆,陈桂明,刘鯖洁,等.基于测地线距离的核主元 高斯核函数进行改进,构建基于测地线距离的姿态核 分析在齿轮泵故障识别中应用J].上海交通大学学报, 函数。最后,创建了基于二叉树的多类支持向量机对 2011,45(11):1632-1636. 人体12种常见上肢行为姿态进行识别,并通过和其 YANG Qing,CHEN Guiming,LIU Qingjie,et al.Applica- 他姿态识别方法对比,验证了该人体姿态识别方法的 tion of kernel principal component analysis based on geodes- 优越性,具有较高的识别率。然而,本文的人体姿态 ic distance in pattern recognition of gear pump[J].Journal 识别只是针对某种特定姿势,实际生活中,人体的姿 of Shanghai Jiao Tong University,2011,45(11):1632- 势往往是连续的。未来的工作将是把特定姿势作为 1636. 人体动作的关键姿势,并按照一定的顺序编排成运动 [10]YUAN Lu,SUN Jian,QUAN Long,et al.Image deblur- 序列,完成连续姿态序列的行为识别。 ring with blurred/noisy image pairs[J].ACM Transactions on Graphics(T0G),2007,26(3):1. 参考文献: [I1]CRISTIANINI N,SHAWE-TAYLOR J.支持向量机导论 [M].李国正,王猛,曾华军,译北京:电子工业出版 [1]WEINLAND D,RONFARD R,BOYER E.Free viewpoint 社,2004. action recognition using motion history volumes[J].Com- [12]DU Chengjin,SUN Dawen.Multi-classification of pizza u- puter Vision and Image Understanding,2006,104(2/3): 249-257. sing computer vision and support vector machine[J].Jour- [2]WANG Liang,SUTER D.Informative shape representations nal of Food Engineering,2008,86(2):234-242. 作者简介: for human action recognition C//18th International Con- 林海波,男,1965年生,副教授,主 ference on Pattern Recognition.Hong Kong,China,2006, 要研究方向为机器人技术及应用、自动 2:1266-1269. 控制技术、模式识别。主持完成省部级 [3]GIRSHICK R,SHOTTON J,KOHLI P,et al.Efficient re- 及其他科研项目4项,申请国家发明专 gression of general-activity human poses from depth images 利2项,发表学术论文10余篇。 [C]//2011 IEEE International Conference on Computer Vi- sion (ICCV).Barcelona,Spain,2011:415-422. [4]SEMPENA S,MAULIDEVI N U,ARYAN P R.Human ac- 王浩,男,1990年生,硕士研究生。 tion recognition using dynamic time warping[C]//2011 In- 主要研究方向为智能系统及机器人、模 ternational Conference on Electrical Engineering and Infor- 式识别。 matics (ICEEI).Bandung,Indonesia,2011:1-5. [5 VEERARAGHAVAN A,ROY-CHOWDHURY A K, CHELLAPPA R.Matching shape sequences in video with applications in human movement analysis [J].IEEE Transactions on Pattern Analysis and Machine Intelli- 张毅,男,1966年生,教授,博士生 导师,博士,中国计量测试学会高级会 gence,2005,27(12):1896-1909. 员,重庆市人工智能学会理事。主要 [6]LUO Ying,WU T D.HWANG J N.Object-based analysis 研究方向为机器人技术及应用、生物 and interpretation of human motion in sports video sequences 信号处理及应用、模式识别。主持完成 by dynamic Bayesian networks[J].Computer Vision and 省部级及其他科研项目10余项,申请 Image Understanding,2003,92(2/3):196-216. 国家发明专利4项。发表学术论文60余篇,其中被SCI,EI [7]BUCCOLIERI F,DISTANTE C,LEONE A.Human posture 检索30余篇,出版专著1部、教材2部。 recognition using active contours and radial basis function neural network C//IEEE Conference on Advanced Video
国家发明专利 4 项。发表学术论文 60 余篇,其中被 SCI、EI 4 结束语 在充分研究常用行为表示方法的基础上,针对人 体骨骼关节的特点提出了基于球坐标系下人体关节 角的行为表示特征量。 并针对欧氏距离计算方法难 以完全反映人体关节运动数据样本点与测试点之间 位置关系的问题,采用测地线距离代替欧氏距离的对 高斯核函数进行改进,构建基于测地线距离的姿态核 函数。 最后,创建了基于二叉树的多类支持向量机对 人体 12 种常见上肢行为姿态进行识别,并通过和其 他姿态识别方法对比,验证了该人体姿态识别方法的 优越性,具有较高的识别率。 然而,本文的人体姿态 识别只是针对某种特定姿势,实际生活中,人体的姿 势往往是连续的。 未来的工作将是把特定姿势作为 人体动作的关键姿势,并按照一定的顺序编排成运动 序列,完成连续姿态序列的行为识别。 参考文献: [1]WEINLAND D, RONFARD R, BOYER E. Free viewpoint action recognition using motion history volumes [ J]. Com⁃ puter Vision and Image Understanding, 2006, 104(2 / 3): 249⁃257. [2]WANG Liang, SUTER D. Informative shape representations for human action recognition[C] / / 18th International Con⁃ ference on Pattern Recognition. Hong Kong, China, 2006, 2: 1266⁃1269. [3]GIRSHICK R, SHOTTON J, KOHLI P, et al. Efficient re⁃ gression of general⁃activity human poses from depth images [C] / / 2011 IEEE International Conference on Computer Vi⁃ sion (ICCV). Barcelona, Spain, 2011: 415⁃422. [4]SEMPENA S, MAULIDEVI N U, ARYAN P R. Human ac⁃ tion recognition using dynamic time warping[C] / / 2011 In⁃ ternational Conference on Electrical Engineering and Infor⁃ matics (ICEEI). Bandung, Indonesia, 2011: 1⁃5. [ 5 ] VEERARAGHAVAN A, ROY⁃CHOWDHURY A K, CHELLAPPA R. Matching shape sequences in video with applications in human movement analysis [ J ]. IEEE Transactions on Pattern Analysis and Machine Intelli⁃ gence, 2005, 27(12): 1896⁃1909. [6]LUO Ying, WU T D, HWANG J N. Object⁃based analysis and interpretation of human motion in sports video sequences by dynamic Bayesian networks [ J]. Computer Vision and Image Understanding, 2003, 92(2 / 3): 196⁃216. [7]BUCCOLIERI F, DISTANTE C, LEONE A. Human posture recognition using active contours and radial basis function neural network[C] / / IEEE Conference on Advanced Video and Signal Based Surveillance. Como, Italy, 2005: 213⁃ 218. [8]BACKES M, HRITCU C, MAFFEI M. Type⁃checking zero⁃ knowledge[ C] / / Proceedings of the 15th ACM Conference on Computer and Communications Security. New York, USA: ACM, 2008: 357⁃370. [9]杨庆, 陈桂明, 刘鲭洁, 等. 基于测地线距离的核主元 分析在齿轮泵故障识别中应用[J]. 上海交通大学学报, 2011, 45(11): 1632⁃1636. YANG Qing, CHEN Guiming, LIU Qingjie, et al. Applica⁃ tion of kernel principal component analysis based on geodes⁃ ic distance in pattern recognition of gear pump[ J]. Journal of Shanghai Jiao Tong University, 2011, 45 ( 11): 1632⁃ 1636. [10]YUAN Lu, SUN Jian, QUAN Long, et al. Image deblur⁃ ring with blurred / noisy image pairs[J]. ACM Transactions on Graphics (TOG), 2007, 26(3): 1. [11]CRISTIANINI N, SHAWE⁃TAYLOR J. 支持向量机导论 [M]. 李国正, 王猛, 曾华军, 译. 北京: 电子工业出版 社, 2004. [12]DU Chengjin, SUN Dawen. Multi⁃classification of pizza u⁃ sing computer vision and support vector machine[J]. Jour⁃ nal of Food Engineering, 2008, 86(2): 234⁃242. 作者简介: 林海波,男,1965 年生,副教授,主 要研究方向为机器人技术及应用、自动 控制技术、模式识别。 主持完成省部级 及其他科研项目 4 项,申请国家发明专 利 2 项, 发表学术论文 10 余篇。 王浩,男,1990 年生,硕士研究生, 主要研究方向为智能系统及机器人、模 式识别。 张毅,男,1966 年生,教授,博士生 导师,博士,中国计量测试学会高级会 441· 研究方向为机器人技术及应用 、 员, 重庆市人工智能学会理事。主要 生物 第 3 期 林海波,等:改进高斯核函数的人体姿态分析与识别 · 信号处理及应用、模式识别。 主持完成 省部级及其他科研项目 10 余项,申请 检索 30 余篇,出版专著 1 部、教材 2 部