视频流中基于特征匹配的人体肘关节跟踪算法研究
2014-04-29刘晓荣
【摘要】对视频流中运动员肘关节进行检测和跟踪。本文主要对肘关节的跟踪算法做了详细的研究,利用光流特征匹配算法完成了对肘关节特征点的跟踪。胳膊肘运动幅度不是很大时,该算法能有一个很好的跟踪效果,并且给出了运动员从拉满弓到箭出靶这段时间内肘关节的運动曲线。得到视频中射箭运动员在箭射出的瞬间,运动员肘关节运动轨迹和运动速度。
【关键词】跟踪算法;光流特征匹配算法;运动轨迹;运动速度
引言
在体育竞技和训练当中,常常需要不接触运动员任何身体部位,对运动员的位置、动作、姿态进行检测和跟踪,获取运动员自身的动作参数,以便对运动员的姿态进行规范,达到更好的训练效果和比赛成绩。肘关节检测和跟踪算法是基于特征点的检测和跟踪算法。基于特征点的目标检测和跟踪算法主要分为特征点提取和特征点匹配两个部分,特征点检测可以用Harris算子对肘关节进行了特征提取。本文则详细介绍肘关节的跟踪算法。在特征跟踪过程中,主要对特征匹配阶段进行分析。匹配技术如何满足实时系统的需求同时又能保证匹配后得到特征点具有较好的稳定性,是本文研究的关键。因此就射箭运动员射箭的视频对其肘关节检测算法进行研究。
1.基于特征匹配的肘关节跟踪算法
本文所选的视频是一组运动员射箭过程的视频。迄今为止,针对不同的应用场合及需求,研究人员已经研发了许多的目标检测和跟踪方法。一般情况下目标跟踪方法被分为以下几类:(1)基于目标区域的跟踪。该方法利用高斯分布建立目标模型和背景模型,目标的像素点被分配于不同的区域部分,通过跟踪各个小块区域的匹配来完成对整个目标的跟踪[1]。(2)基于变形轮廓的跟踪。该方法通过跟踪目标的轮廓信息在图像中找出感兴趣的部分,缺点是跟踪的效果受系统初始化和局部噪声地影响[2]。(3)基于特征匹配的跟踪。该方法通过提取图像中的特征元素,在连续帧图像上对这些特征进行匹配从而实现目标跟踪。图像特征是图像中呈现的特有属性。与其他类的目标跟踪方法相比,基于特征匹配的目标跟踪原理简单易懂,在跟踪过程中对目标物的定位比较准确,并且对遮挡也有一定的适应能力。同时该方法只利用了目标上的局部特征进行计算,因此计算量比较小。
2.特征点匹配技术概述
在基于特征点的目标跟踪系统中,特征点的匹配就是寻找两幅图像的特征点之间某种映射关系或者特征点坐标之间的某种变换矩阵。目前,特征点匹配技术可以大概分为两类:一类为基于穷尽搜索的特征点匹配技术,该技术是较为经典的匹配技术,即分别获取两幅图像的特征点以及特征描述子,根据一定的搜素策略对这些特征点和描述符进行计算,最终获得最优极值点即为匹配结果,典型的如SIFT和SURF特征点的匹配就是采用的穷尽搜索的特征点匹配策略。这种基于穷尽搜索的特征的匹配准则的计算量很大,不适合实时目标跟踪系统。另外一类匹配技术是基于最优估计的特征点匹配技术,这种匹配技术只需要获取参考帧图像的特征点信息,并利用它在当前帧上的一个搜索范围内寻找其最优值,估计匹配点的最优位置,这种匹配准则的最大的优点是只需要提取参考帧的特征点,节约了一半的特征点提取的时间。其中基于最优估计的特征点匹配技术最经典的算法是KLT光流匹配算法,本文就是采用了KLT光流匹配算法[3]完成对视频流中肘关节进行跟踪。
3.KLT光流匹配算法原理
KLT光流匹配技术[4]由Lucas Kanade等人提出,是一种典型的利用帧间连续的特征点信息并且采用最优估计策略实现帧间特征点的匹配。其中该匹配技术采用了图像灰度差的平方和(Sum of squared intensity Differences,SSD)作为特征点的匹配准则。该匹配技术由于原理相对较简单、耗时量少,被广泛的应用于实时目标跟踪系统中。
该算法定义了一种不相似准则,在仿射变化模式下通过这种准则来量化序列图像相邻两帧的差值,将所得的差值用牛顿迭代法进行迭代来跟踪选好的特征点。与传统的匹配技术相比,该匹配算法不需要分别全局提取参考帧和当前帧的特征点,只需要提取参考帧的特征点,对其采用最优估计策略实现参考帧上的特征点匹配,这样大大减少了匹配过程中的搜索范围,降低了匹配算法的耗时量。
在视频图像序列中,用一个平移模型来描述特征窗口内(设特征窗口为W)的像素点变化,则在特征窗口W内,t时刻对应的图像序列表示为时刻对应的图像序列表示为,根据第一条目标物的亮度不随时间变化的假设,则它们的位置满足式(1):
(1)
根据第二条空间邻近点相似的假设,即特征窗口W内所有点的运动偏移量一致,则在的每个像素点,都可以由中特征窗口W的像素点平移得到。设两幅图像分别为I和J,该算法的核心是寻找使相邻两帧在特征窗口W上SSD(用表示)最小化的d,则表示为:
(2)
式(2)写成积分的形式为:
(3)
(2)式中,W为视频序列中既定的特征窗口,是不同像素点的加权函数。可以是高斯分布函数,这样可以强调从窗口的中心区域。为了最小化则应对式(3)求导,使得极值点导数为零。即:
(4)
对式(4)中的进行泰勒级数展开,根据第三条假设目标运动是连续的“小运动”,即d要比X小的多,因此可以去掉高次项,只保留前三项得:
(5)
将式(5)代入式(4)得:
(6)
其中:
(7)
则令式(6)为零,得到:
(8)
上式等式可以写成的形式,则:
(9)
(10)
为了使d能得到解,要求矩阵Z为可逆矩阵,一般情况下特征点满足这样的特点。这样,将参考帧中的特征点代入式进行牛顿迭代,直到迭代满足一定的精度就可以找到当前帧的最优匹配特征点,求得最终解,实现特征点的跟踪。
(11)
式(11)中,d表示特征窗口中心的平移,表示第k次牛顿迭代法计算得到的d的值。迭代计算d需要一个初始估计值。Lucas 使用了最简单的估计。
本文的基于特征点的目标跟踪算法流程做一个介绍。特征点跟踪算法的流程图如图1所示。
4.实验结果
本文对一组运动员射箭过程的视频图像进行肘关节的检测和跟踪,把运动员摆好拉弓姿势的那一帧图像作为首帧图像,用本文所用的算法对视频图像进行肘关节的检测和跟踪,图2所示是对几幅视频帧图像的检测和跟踪结果进行了截图。
图1 基于Harris角点特征点的目标跟踪算法基本流程图
a.1494作为首帧的特征检测结果 b.1495帧图像的特征跟踪结果
c.1496作为首帧的特征檢测结果 d.1497帧图像的特征跟踪结果
e.1498作为首帧的特征检测结果 f.1499帧图像的特征跟踪结果
图2 用KLT光流匹配算法对肘关节特征点的跟踪结果
图3 运动员箭射出瞬间肘关节运动轨迹
5.肘关节运动轨迹
本文通过研究视频流中人体肘关节检测和跟踪算法,想要得到视频中射箭运动员在箭射出的瞬间,运动员肘关节运动轨迹和运动速度,因此需要重点分析射箭运动员从拉满弓开始到箭出靶的这段时间内肘关节的运动情况,通过本文的检测和跟踪算法可以得到这段时间内肘关节的运动轨迹的坐标,通过对这些坐标进行拟合,得到了箭出靶瞬间肘关节的运动曲线,如图3所示。
图3所示为运动员肘关节的运动曲线图,视频流每秒有25帧图像,所以两帧图像之间的间隔是0.04s,如果知道视频图像中运动员的身高与运动员实际身高的比例,就可以计算出运动员射箭瞬间肘关节的运动速度。
6.总结
本文主要对肘关节的跟踪算法做了详细的研究,利用光流特征匹配算法完成了对肘关节特征点的跟踪。胳膊肘运动幅度不是很大时,该算法能有一个很好的跟踪效果,并且给出了运动员从拉满弓到箭出靶这段时间内肘关节的运动曲线。当运动员肘关节运动幅度很大时,将不能很好的进行跟踪,本文用的光流匹配肘关节跟踪算法还有很大的局限性,对此还有待进一步的研究。
参考文献
[1]王剑,王敬东,李鹏.一种基于主动轮廓模型的自适应模板更新算法[J].光电子技术,2009,29(1):42-46.
[2]Kass M,Witkin A,Terzopoulos D.Snakes:active contour models[J].International Journal of Computer Vision,1988,1(4):321-332.
[3]Bruce D.Lucas,Takeo Kanade.An Iterative Image Registration Technique with an Application to Stereo Vision[C].Proc.IJCA181,Vancouver B.C.Canada:1981:674-679.
[4]Shi J B,Tomasi C.Good feature to track[C].IEEE Conference on Computer Vision and Pattern Recognition,Seattle USA:IEEE Press,1994:21-23.
[5]Zhou S K,Chelappa R,Moghaddam B.Visual tracking and recognition using appearance adaptive models in particle filters[J].IEEE Trans on Image Processing,2004,13(11):1491-150.
作者简介:刘晓荣,女,硕士研究生,主要从事图像处理、无损检测的研究。