APP下载

基于加权置信度的运动捕捉数据低级时域分割算法

2015-02-21詹永照王新宇

关键词:查全率置信度零点

杨 洋,詹永照,王新宇

(江苏大学计算机科学与通信工程学院,江苏镇江 212013)

三维运动捕捉数据的时域分割算法主要可以分为高级分割(high-level)和低级分割(low-level)[1].高级分割将动作分割成不同的活动或者行为,例如将走和跳这2种动作分割开来.用于高级动作分割的方法主要有层次化对齐聚类分析(hierarchical aligned cluster analysis)的方法[2]、核化时间分割(kernelized temporal cut)的方法[3]、基于余弦距离(cosine distance)的方法[4].而低级分割将动作分割成基础动作(primitive),理论上,基础动作指的是从一个速度为零的时间点到下一个速度为零的时间点之间的动作.文中将侧重讨论低级分割方法.

各式各样的特征可以被用于运动捕捉数据的低级分割.文献[5]采用角速度过零点(zero-crossing)检测方法进行分割,当在某一时间点上角速度方向发生了改变,则该点即是分割点;这是因为当速度方向发生改变时,速度必然经过了一个零点,角速度过零点检测是较常用的方法;然而此方法对噪音较敏感,虽然运动捕捉数据中包含的噪音比声音数据中少,但是这些噪音依然会影响到分割的结果,造成分割点过多,产生大量误报.文献[6]采用基于能量(energy)的方法,每个分割点位于能量局部最小值所在位置,然而该方法在动作开始或者结束的比较慢时会得出错误的结果.文献[7]采用了基于运动显著性(saliency)的方法对动作进行分割,然而该方法提取出的分割点并不完全是全身速度为零的点.文献[8]提出一种基于主成分分析和马氏距离的分割方法,然而该方法需要事先预备模板方能有效执行.文献[9]采用了基于曲率(curvature)的方法,其中曲率等于速度与加速度的叉积,分割点位于曲率局部最大值所在位置;基于曲率的方法高效且容易实现,可以检测出速度方向发生改变的分割点,但不能检测出速度方向不发生变化的分割点,所以基于曲率的方法一般不被单独用来分割动作.

运动捕捉数据具有高维性,而各维动作上的过零点并不能完全地同步,即某一维上的分割点在另一维上可能就不是过零点,这就导致基本上不存在全身速率等于零的点.文献[6,10]提出使用全身速率来对动作进行分割,当全身速率的局部最小值小于给定速率阈值时,就判定该点为分割点.这种方法简单且容易实现,然而简单的静态阈值设定并不能适用于具有不同运动速率以及不同采样率的运动捕捉数据,会造成较低的查全率以及准确率.文献[5]首先找出各维上的分割点,当分割点在大多数维度上重合时,则判断该点为整体的分割点,该方法适用于局部人体的动作分割,例如手臂上的动作,然而全身动作通常包含更高的维度,很少出现各维分割点重合的情况,所以这种方法并不能解决对全身动作进行分割.文献[11-12]通过将待分段动作与模板动作进行对比从而获得分割点,然而这类方法只适合于特殊的应用,如康复性治疗,医生会给出病人练习的模板动作.大部分情况下,模板动作往往是不可获取的.

文中提出一种基于加权置信度的方法用于运动捕捉数据的低级分割,图1为所提出算法的整体流程框架图.

图1 算法整体流程框架图

1 数据预处理

1.1 特征选取

三维人体运动捕捉是一种捕捉和记录人体动作的技术.运动捕捉获取的人体框架通常包含若干个节点(joint),如图2所示.

图2 运动捕捉的人体框架示例

图2中的人体框架包含21个节点,其中每一个节点都包含了三维数据,这些数据可以是节点的位置(position)信息,也可以是围绕3个坐标轴的转动(rotation)信息,即围绕父节点为原点的坐标系中x,y,z轴转动了的度数,例如右前臂的转动信息就是其围绕其父节点右后臂为原点的坐标系中x,y,z轴转动的度数.这样,运动捕捉数据可以表示成一个矩阵,其中每行对应着一帧,每列对应着一维.

位置信息并不适合作为特征用于运动捕捉数据的低级分割,因为会造成错误检测的分割点.例如,考虑右前臂绕右后臂作摆动,从身后摆动到身前,这应该是一段动作,然而这里右前臂在y维度上的位置却经历了局部最小值,即出现了速度过零的情况,错误地将一段动作分割成了两段.故而文中使用各个节点的转动信息作为特征,进行运动捕捉数据的低级分割.

1.2 噪音去除

运动捕捉数据中通常包含噪音,这些噪声往往是由于捕捉设备、节点遮挡,或者是人体佩戴的节点轻微滑动所造成的.正如前面所介绍的,过零点检测算法对噪音是较敏感的,通常会造成误报率过高.所以在对运动捕捉数据进行低级分割之前,需要对其进行降噪,文中采用阶数为5,截止频率为0.1 Hz的双向巴特沃斯(Butterworth)滤波器[13]对运动捕捉数据进行处理,图3为双向巴特沃斯滤波前后的运动曲线对比.

图3 双向巴特沃斯滤波前后的运动曲线对比

由图3可见,滤波之后的运动曲线变得更加平滑.这里的阶数和截止频率是根据经验值来设定的.另外需要注意的是,需要使用双向滤波而不能使用单向滤波,因为双向滤波不会改变极值点,即速度过零点的位置,如果使用单向滤波,则会导致极值点的位置出现偏移.

1.3 降维

由于运动捕捉数据具有高维性,如图2所示,人体框架包含21个节点,每个节点有3维的运动信息,所以每一帧都有63维数据,这为分析数据从而分割动作带来了极大的不便;另外由于运动捕捉数据中存在的某些节点动作并不明显,而这些细微的运动数据往往会影响得出的分割点的准确性.所以文中采用多维标度法(multidimensional scaling,MDS)[14]对数据进行降维以消除细微动作的影响.多维标度法是一类多元统计分析方法的总称,其目的是通过各种途径把高维的研究对象转化成低维情形进行研究,多维标度法以对象之间某种亲近关系为依据(如距离、相似系数等),合理地将高维对象映射到低维空间中并给出标度或位置,以便全面而又直观地再现原始各对象之间的关系.在这里,将每一帧看成一个对象,用帧与帧之间的欧几里得距离作为其亲近关系将高维的运动捕捉数据映射到低维空间中,从而达到降维的目的,文中选取方差贡献(variance)之和达到80%的前若干维数据进行后续的分割操作.使用多维标度法进行降维的原因在于其不会改变运动中各个时间点的速率,而分割的目的就是要找出角速率为零或近似为零的点,这就意味着理论上多维标度法不会改变分割点的位置.

2 分割算法

2.1 过零点检测

就基于全身速率的方法而言,由于动作之间速率以及采样率存在差异,难以找出合适的速率阈值来确定分割点.由于当全身速率为零或者近似为零的时候,各维上运动的速度同时或者几乎同时过零,所以文中将检测全身速率为零或者近似为零的问题转化成了检测各维运动速度同时或者几乎同时过零的问题,这样就可以不受速率以及采样率差异性的影响.

所谓过零点即是角速度从正值到负值,或者由负值到正值的时刻,在这个时刻,速度方向发生了改变,而当所有维上的运动速度同时或者几乎同时过零时就是所要找的分割点.在对数据进行降维后,需要对各维数据进行角速度过零点检测,从而获得各维的角速度过零点,从运动曲线上看这些过零点位于局部极值点,如图4所示的2条运动曲线,局部最大值点和最小值点就是角速度过零的点,也就是各维的分割点.假设降维后获得n维数据,对n维数据中的每一维进行角速度过零点检测后,得到了各维上的过零点为SP1={s1,1,s1,2,…,s1,i1},SP2={s2,1,s2,2,…,s2,i2},…,SPn={sn,1,sn,2,…,sn,in},其中SPi代表了i维上的角速度过零点集合.例如,图4中所示的是“行走”动作经过降维之后得到的2维数据,第1维上的过零点为{13,74,134,193,254},而第2维上的过零点为{4,40,77,98,124,159,197,218,241,275}.

图4 “行走”动作各维极值点

2.2 置信度计算

在获得了各维上的过零点之后,通过公式(1)计算各个点在各维上过零的置信度:

式中:C(i,tj)为时间点tj在i维上作为过零点的置信度;si,d为i维上离tj最近的过零点.由式(1)可见,当tj是i维上的过零点时,其置信度达到最大值,即1;如果tj不是i维上的过零点,那么其置信度要根据其到最近过零点的距离来决定,距离越远,置信度越低.置信度描述了各个点在各个维度上作为分割点的可能性,取值范围为[0,1],置信度的取值不受速率和采样率影响.某一时间点在某一维作为过零点的置信度越大,就说明该点作为该维运动分割点的可能性就越大,如果某一点在所有维度上作为过零点的置信度都为1,那么该点必然为分割点.图5所示的是“行走”动作中各个时间点在各维上过零的置信度.

图5 “行走”动作中各个时间点在各维上过零的置信度

2.3 过零强度计算

考虑图4所示的第1维运动曲线(蓝线)上的74帧和第2维运动曲线(红线)上的77帧;74帧是第1维上过零点,其置信度为1,而77帧是第2维上的过零点,其置信度也为1.然而由图4可见,前者会更加明显,这是由于在过零点前后,前者的运动幅度比后者的运动幅度要大,所以最后在决定全局分割点时,应该更加倾向于更明显的过零点.由此文中提出了过零强度的概念,过零点越明显则其过零强度越大;反之,过零点越不明显则其过零强度越小.第i维上过零点si,d的过零强度等于i维上过si,d前后运动的幅度之和的一半.第i维上非过零点tj的过零强度等于离其最近的过零点的过零强度,具体的计算方法见公式(2):

式中:S(i,tj)为i维上tj点的过零强度;fi(tj)为tj点在i维运动曲线上的值;si,d为i维上离tj最近的过零点.由于过零强度是关于运动幅度的函数,所以是不受速率以及采样率影响的.图6为“行走”动作中各个时间点在各维上过零的强度.

图6 “行走”动作中各个时间点在各维上过零的强度

2.4 加权置信度计算

为了量化各个时间点作为全局分割点的可能性,文中提出了加权置信度的概念.加权置信度将每个时间点在各维上作为分割点的置信度按照对应的过零强度进行综合.当各维在分割点位置上出现不一致时,全局分割点会合理地倾向于过零强度更大的分割点.加权置信度的计算公式如公式(3)所示:

式中W(tj)为tj点的加权置信度.由公式(3)可见每个点的加权置信度都在[0,1],加权置信度越高,说明该点就越有可能是分割点.置信度以及过零强度均不受速率和采样率的影响,所以作为置信度和过零强度函数的加权置信度也不受速率和采样率影响.

文中用公式(3)计算所有时间点的加权置信度,之后找出加权置信度中的所有局部最大值点.对于每个局部最大值点,判断其加权置信度是否超过给定阈值,即70%,如果超过,就判定该点为整体的分割点;如果不超过,就判断该点不是分割点.图7为“行走”动作中各个时间点的加权置信度,只有当某个极大值点的加权置信度超过70%的时候才会被认为是分割点,如{13,74,134,193,254}.

图7 “行走”动作中各个时间点的加权置信度及峰值置信度所对应的帧

3 试验与结果

试验数据摘自卡耐基梅隆大学的运动捕捉数据库,其中包括“行走”、“跑步”、“高尔夫”、“踢足球”、“拳击”共6 250帧数据,其中每一帧都记录了各个节点的三维转动角度信息.图8展示了这5类动作的分割示例,其中的每一个姿势都是一个分割点,由于有的动作太长,所以这里只摘取了各类中一部分比较具有代表性的动作.由图8可见这些分割点都是动作开始和结束时的姿势.

图8 部分动作分割结果

邀请5名学生参与了试验,学生们需要通过如图9所示的运动捕捉数据播放器观看动作,并对动作进行手动分段,之后综合各人的意见,最终获得了83个分割点.用Matlab 2010实现了文中所提出的自动分割算法,对于每个自动检测出的分割点,如果在手动分割出的分割点中能找出差距小于10帧的分割点,就认为该分割点被正确的检测.通过将该方法与手动分割的分割点进行对比,获得了该方法的查全率与准确率,计算式为

查全率和准确率是衡量分割效果的重要指标,对于评判分割算法优劣有着重要的作用.

图9 运动捕捉数据播放器界面

表1为文中方法在不同加权置信度阈值条件下的查全率与准确率,表2为基于全身速率的方法在不同速率阈值条件下的查全率与准确率,表3为基于曲率的方法在不同曲率阈值条件下的查全率与准确率.

表1 文中方法在不同加权置信度条件下的查全率与准确率

续表

表2 基于全身速率的方法在不同速率阈值条件下的查全率与准确率

表3 基于曲率的方法在不同曲率阈值条件下的查全率与准确率

将表1-3中的8组数据进行对比(从上到下分别是第1组到第8组)可见,文中方法的最高查全率要高于其他2种方法(97.6% >86.8%,97.6>96.4),然而在极端阈值下,文中方法比其他2种方法的准确率要低(38.2% <50.0%,38.2% <42.1%).但是随着阈值的改变,文中方法的查全率下降缓慢,而准确率急速上升,到第4组的时候,查全率以及准确率均优于其他2种方法(93.4%>81.9%,93.4% >91.6%;56.9% >52.3%,56.9%>50.3%),并且在此之后,这种优势持续保持.

为了更好地进行对比,引入了F1-Measure值F,它是查全率和准确率的加权调和平均.F1-Measure值综合考虑了查全率与准确率,可以较全面地反映结果的好坏,F1-Measure值越高,结果越好.3种方法的F1-Measure值对比如图10所示.

图10 3种方法的F1-Measure值对比

由图10可见,在第4组数据之前其他2种方法的F1-Measure高于文中方法,从第4组开始,文中方法就优于基于全身速率的方法.另外通过观察3条曲线,对于基于加权置信度的方法,可以看出第6组数据,也就是当加权置信度阈值等于70%时,F1-Measure值达到最大值84.5%(查全率85.5%,准确率83.5%),所以前面在2.4节中,设定70%为加权置信度的阈值.对于基于全身速率的方法,当速率阈值在5时,F1-Measure值达到最大值64.3%(查全率77.1%,准确率55.2%).对于基于曲率的方法,当曲率阈值在10时,F1-Measure值达到最大值67.9%(查全率85.5%,准确率56.4%)很明显,在最优阈值条件下,文中方法在各方面指标上都要显著优于其他2种方法.

前面进行降维的时候,选取了方差贡献之和达到80%的前若干维数据进行后续的分割操作.图11为不同方差贡献阈值下的最优F1-Measure值.

由图11可见将方差贡献阈值设为80%的合理性,即此时的最优F1-Measure值最高,这里的最优F1-Measure值是指在最优加权置信度阈值得出的F1-Measure值.还可以看出当方差贡献阈值在55%和60%时的最优F1-Measure值是一样的,这是因为在这2种情况下,第1维数据的方差贡献就已经超过60%,后续分割都是针对第1维数据的.此外,当方差贡献阈值在95%和100%时的最优F1-Measure值也是一样的,这是因为在方差贡献达到95%之后,后面各维数据的运动非常细微,并不足以影响全局分割点.观察图11中的曲线可见,曲线前端和后端的最优F1-Measure值较低,前者是因为维数过少导致出现较多误报,而后者是因为加入了一些运动幅度较小的维度,这些幅度较小的动作在手动分割时往往不能被人们所注意,自动分割时计入这些运动幅度较小的维度就会无谓地增加限制条件,造成大量漏检.

图11 不同方差贡献阈值下的最优F

4 结论

1)文中提出了一种低级动作分割算法,该方法综合考虑了过零强度和置信度,可以更为有效地对动作进行分割.

2)相比于基于速率和曲率的方法,文中提出的加权置信度并不会受速率以及采样率的影响,从而获得了更好的性能.

References)

[1]BarbicˇJ,Safonova A,Pan J Y,et al.Segmenting motion capture data into distinct behaviors[C]∥Proceedings of Graphics Interface2004.London,Ont,Canada:Canadian Information Processing Society,2004:185-194.

[2]Zhou F,De la Torre F,Hodgins J K.Hierarchical aligned cluster analysis for temporal clustering of human motion[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2013,35(3):582-596.

[3]Gong D,Medioni G,Zhu S K,et al.Kernelized temporal cut for online temporal segmentation and recognition[C]∥Proceedings of the12th European Conference on Computer Vision.Heidelberg:Springer Verlag,2012:229-243.

[4]邢薇薇,仝磊鸣,张 毅,等.基于余弦距离的人体运动数据行为分割算法[J].中南大学学报:自然科学版,2014,45(4):1128-1136.

Xing Weiwei,Tong Leiming,Zhang Yi,et al.Human behavior segmentation method based on cosine distance for motion data[J].Journal of Central South University:Science and Technology,2014,45(4):1128-1136.(in Chinese)

[5]Ilg W,Bakir G H,Mezger J,et al.On the representation,learning and transfer of spatio-temporal movement characteristics[J].International Journal of Humanoid Robotics,2004,1(4):613-636.

[6]Fod A,Mataric M J,Jenkins O C.Automated derivation of primitives for movement classification[J].Autonomous Robots,2002,12(1):39-54.

[7]Halit C,Capin T.Multiscale motion saliency for keyframe extraction from motion capture sequences[J].Computer Animation and Virtual Worlds,2011,22(1):3-14.

[8]刘晓平,陆劲挺,夏新宇.基于PCA和马氏距离的运动捕捉数据分割方法[J].合肥工业大学学报:自然科学版,2014,37(5):563-566.

Liu Xiaoping,Lu Jinting,Xia Xinyu.Motion capture data segmentation based on PCA and mahalanobis distance[J].Journal of Hefei University of Technology:Natural Science,2014,37(5):563-566.(in Chinese)

[9]Zhao L W,Badler N I.Acquiring and validating motion qualities from live limb gestures[J].Graphical Models,2005,67(1):1-16.

[10]Gibet S,Marteau P F.Approximation of curvature and velocity for gesture segmentation and synthesis[C]∥Proceedings of the7th International Gesture Workshop.Heidelberg:Springer Verlag,2009:13-23.

[11]Lin J F S,KuliD.Segmenting human motion for automated rehabilitation exercise analysis[C]∥Proceedings of the2012Annual International Conference of the IEEE Engineering in Medicine and Biology Society.San Diego:IEEE,2012:2881-2884.

[12]詹永照,汪满容,柯 佳.基于人工免疫有序聚类的视频关键帧提取方法[J].江苏大学学报:自然科学版,2012,33(2):199-204.

Zhan Yongzhao,Wang Manrong,Ke Jia.Video keyframe extraction using ordered samples clustering based on artificial immune[J].Journal of Jiangsu University:Natural Science Edition,2012,33(2):199-204.(in Chinese)

[13]王艳文,于 勉.基于MATLAB的巴特沃斯数字滤波器设计[J].科技信息,2013(21):168.

Wang Yanwen,Yu Mian.Butterworth filter design based on MATLAB[J].Science&Technology Information,2013(21):168.(in Chinese)

[14]Härdle W K,Simar L.Applied Multivariate Statistical A-nalysis[M].3rd ed.Berlin:Springer,2012.

猜你喜欢

查全率置信度零点
硼铝复合材料硼含量置信度临界安全分析研究
2019年高考全国卷Ⅱ文科数学第21题的五种解法
一类Hamiltonian系统的Abelian积分的零点
海量图书馆档案信息的快速检索方法
正负关联规则两级置信度阈值设置方法
基于词嵌入语义的精准检索式构建方法
置信度条件下轴承寿命的可靠度分析
多假设用于同一结论时综合置信度计算的新方法✴
可以选取无限远点作为电势零点的充分与必要条件
基于Web的概念属性抽取的研究