姚晶晶
( 安徽新华学院,安徽 合肥 230088)
运动轨迹是运动训练学术语,指的是身体某一部分从开始位置到结束位置所经过的路线组成的动作的空间特征.从形态上来讲,运动轨迹形式主要有直线与曲线形式,从关节节点的矢状面、额状面以及垂直面三个平面来确定轨迹的运动方向[1].对体育运动视频人体关节点运动轨迹自动识别可以为大众体育提供丰富的运动形式,加强落实我国体育教育基础,促进国家体育后备人才的培养.国外针对人体关节点运动轨迹自动识别方法研究较早,利用传感器记录人体关节运动序列,在此基础上发明了侵入式运动捕捉设备[2].国内针对该识别方法研究起步较晚,但已进入高速发展的阶段,高校科研人员已总结改进得到了多种识别算法,为研究人体运动提供了很大的便利.
体育视频中同时存在前景及背景,所以在检测体育运动视频运动目标时,滤除视频中的背景,提取出运行的人体目标[3].控制体育运动视频内的背景处在静止或是变化不大的帧数下,利用背景差分法检测视频内的前景,假设视频内部所有像素点独立,将该帧数下的体育运动视频减去对应的背景图像,得到该帧下的前景目标,为了去除该前景目标中的噪声,二值化处理前景图像中的阈值,计算公式为:
(1)
其中,F(x,y)表示提取前景目标的某帧,B(x,y)表示体育视频内的背景图像,T表示二值化的阈值.当体育视频内前景与背景像素颜色相近或是背景发生变化时,上述提取得到的前景存在一定的非自适应问题,利用高斯模型处理背景图像中的像素亮度[4],控制像素亮度服从如下关系:
FB(x,y)~N(u,d)
(2)
其中,u表示高斯分布函数的均值,d表示高斯分布函数方差.随着体育运动视频内背景环境不断变化,体育运动视频中像素高斯分布形态也不断变化,调整上述计算公式中的均值及方差参数,不断更新背景模型,计算公式如下:
(3)
其中,f(x,y)表示前景标记,α表示体育运动视频内的帧率.若当前帧的像素点与更新的背景图像对应的均值差大于阈值时,则更新过的该像素点为前景点.若均值差小于或是等于阈值时,则该像素点为背景点[5].为了防止该更新过程受到其他运动物体的干扰,调高识别的鲁棒性,利用CodeBook模型处理上述更新过程,计算更新过程中像素点颜色失真的程度,计算公式如下:
(4)
其中,ε表示对应帧内的颜色失真系数,N表示体育运动图像更新过程的总帧数.在该失真程度系数的控制下,计算像素点的亮度范围,计算公式如下:
(5)
其中,S表示像素点的亮度范围,R表示像素点对应的亮度半径.利用codewords统计计算得到的像素颜色失真程度及亮度范围,整合为像素点的CodeBook[6],当体育运动视频图像发生变化时,匹配新图像与整合过的像素点CodeBook,匹配过程如图1所示.
按照如图1所示的匹配过程,从分图a开始分离该帧的前后背景,形成分图b,利用高斯分布处理分离后的图像,不断更新目标的背景,形成分图c,匹配像素点后最终形成分图d,不断匹配体育运动视频中运动目标所有帧的像素点[7],完成对体育运动视频内运动目标的检测.提取检测得到的体育运动视频内运动人体关节并跟踪,最终实现人体关节点运动轨迹自动识别[8].
对人体关节提取前,选用具有特征性及代表性的关节点,选取的关节点如图2所示:
图1 像素点匹配过程
由图2所示的关节点,关节序号对应的人体部位关系,如表1所示:
表1 关节序号对应人体部位
按照如表1所示标记的关节节点,保持图2人体拓扑结构不变,采用分块采样算法跟踪人体关节点,根据不同的运动视频时间点估计运动视频维度参数[9],重复估计维度参数,选定视频中某个关节节点作为目标1,估算该目标的运动状态,估算公式如下:
(6)
其中,x表示上一时刻目标关节点1与关节点2位置的状态向量,x′表示关节点1的可能的位置,x″表示当前时刻下,目标关节点1及目标关节点2位置的状态向量,n表示关节点的数量,h1及h2表示关节点的动力学函数.在上述计算得到的参数控制下,体育运动视频内的运动人体在一个状态空间中,按照关节点的不同,将该状态空间分解为16个独立的子状态空间[10],利用一个二维向量空间来表示该子状态空间:
κM=(x,y)(M=1,2,...,16)
(7)
其中,(x,y)表示关节点在子状态空间内的坐标,在每个时间步t中,人体关节点的运动状态就可分解为子状态,分解过程如下:
Zt∈κM(M=1,2,...,16)
(8)
其中,Zt表示关节点运动子状态.由上述处理公式可知,体育运动视频中各个关节点跟踪就可转化为16个二维状态空间中跟踪,跟踪过程如图3所示:
图3 关节点跟踪过程
在图3所示跟踪过程中,“~”表示对关节点二维空间采样过程,“*”表示动力学预测关节点运动过程,箭头表示关节点运动子状态更新过程.利用如上图所示的跟踪过程,最终输出关节点跟踪过程的函数表达式[11],在该函数控制下,设定其肢体约束度量,完成对人体关节点运动轨迹的识别.
在轨迹识别前,利用上述处理得到的关节点跟踪计算公式,设定关节点之间的肢体约束度量,假设两个运动关节点间的距离为l,利用高斯函数处理约束度量Pmn就可表示为:
(9)
其中,l0表示运动视频初始化两关节点间的距离,σ表示高斯函数标准差,m与n表示关节点.利用高斯函数的拐点值,判断约束度量的约束效果.控制方差值不大于关节点间的距离,保证关节点运动轨迹在一个合理的轨迹中[12].计算在该肢体约束量下,采用等时间距离采样方法采集视频中轨迹,定义初始轨迹点,计算初始轨迹点与采样轨迹的最近距离,计算公式如下:
(10)
其中,ac表示定义的初始轨迹点,G表示轨迹,xac与yac表示初始轨迹点的坐标值,xbi与ybi分别表示轨迹点序列坐标值.将上述计算得到的距离值作为训练样本,采用K-mean聚类算法处理该训练样本,随机选取n个聚类初始中心点η1,η2,...,ηn,计算关节点运动轨迹中关节点与中心点间的距离,计算公式为:
d=argminj‖xi-ηj‖2
(11)
其中,xi表示待聚类的关节点与中心点的距离值,计算并更新该类中心点,计算公式为:
(12)
上述计算公式中,参数含义保持不变.参照上述计算公式(11)与(12)聚类处理体育运动视频中所有的关节点,直至中心点不发生变化.将数值不变的中心点作为识别的类中心[13],将体育运动视频中的关节点分配到对应类的类中心中,即可完成对关节点运动轨迹的自动识别,轨迹分配过程如图4所示.
由图4所示的分配过程可知,当计算得到的轨迹距离为l2与l3相等并归结为同类后,保留该距离下的时间点信息,当时间点相同时,采用同一类中心进行匹配,完成自动识别[14].当相等距离下的时间点值不相同时,则要计算两个距离值公共连续最长点序列的中心,将重合部分作为类中心进行匹配.综合各个关节点的匹配过程,最终完成对体育视频人体关节点运动轨迹的自动识别[15].
实验选用一台8 G内存的PC机,联合Matlab2012软件开展仿真实验,PC机的参数如表2所示:
表2 实验采用PC机参数
使用如表2所示参数的PC机,随机选用一段铅球运动视频,标记某帧运动人体初始关节点,如图5所示:
图5 运动视频某帧初始标记关节点
在如图5标记的初始关节点下,播放对应的体育运动视频,控制播放时长为1min,分别使用两种传统关节点运动轨迹自动识别方法与体育运动视频人体关节点运动轨迹识别方法进行实验,对比三种识别方法实际使用性能.
基于上述实验准备,在1min的体育运动视频播放时长内,选用图5中关节点4作为运动轨迹自动识别对象,汇总3种识别方法得到关节点的轨迹结果至一个二维坐标系中,以Matlab2012软件得到的关节点4运动轨迹为标准,对比3种识别方法得到的关节点运动轨迹,实验结果如图6所示.
由图6所示的4号关节点运动轨迹结果可知文中得到的轨迹结果更加贴切标准关节点运动轨迹,两种传统轨迹识别方法得到的关节点运动轨迹与标准运动轨迹相差较大.定义文中得到的轨迹近似于识别成功的轨迹,汇总图5中所有关节点正确识别轨迹数量,计算3种识别方法的识别率,识别率如表3所示:
表3 3种识别方法识别率
由表3所示的实验结果可知,3种识别方法在识别相同数量轨迹时,传统识别方法1只可正确识别95条,方法对应的识别率最小,传统识别方法2可以正确识别118条轨迹,提高了传统识别方法1的识别率,而文中识别方法正确识别轨迹数量为127条,轨迹识别率为97%,对人体关节点运动轨迹识别率最大.综合上述实验结果可知,在选取关节点4时,文中设计的自动识别方法得到的轨迹结果与标准轨迹相差不大.汇总实验准备阶段标记的关节点,最终文中识别方法正确识别轨迹数量最多,识别率最高,最适合在实际中运用.
随着计算机视觉技术在体育运动领域不断应用推广,对体育运动视频人体关节轨迹进行识别,可以分析体育运动员的运动姿态,为体育运动员提供训练建议.设计体育运动视频人体关节点运动轨迹自动识别方法可以改善传统轨迹识别方法识别率低的问题,但该识别方法存在大量计算,实施环境要求较高.