2.2.2 跟踪选定的特征点
本文采用了KL(Kanade-Lucas)算法,以下为介绍KL算法是如何实现跟踪的。假设两幅2D的灰度图像分别是I(x,y)和J(x,y),有一个点u在第一副图像I(x,y)上,现在要解决的问题是如何在J(x,y)也找到一个相似的点v,使得

,那么矢量

表示的就是图像的速度,称之为光流。如果假设

,

为两个整数,我们只要使得d最小化就可以求出光流的方向。
在上述等式中,我们观察到计算是在

的窗口里计算出来的,这个窗口叫做特征窗口,一般

,

取值为2,3,4,5,6,7。
通过给定特征点的初始位置和两幅连续的图像帧,就可以利用上述等式就可以用来解决该特征点的大致位移。
对于在特征跟踪过程中,由于存在自遮挡现象或者运动变化过大,而导致特征点丢失的情况,这时我们采用了Kalman滤波的方法,来预测特征点的位置,作为特征跟踪的补充和修正,用于后续的跟踪。
下面,我们用一段运动的视频,对特征跟踪算法做了一个实验,先在跟踪的起始帧对头部进行标注,然后在后续帧中做基于特征的跟踪。实验结果表明,只要标注位置得当,跟踪还是具有很高的准确性。下图就是我们在跟踪过程中截取的第1,7,15帧。
图2-6 头部特征点跟踪结果
Fig. 2-6 The result of tracking head point
主要介绍了一种基于特征的人体运动跟踪的方法,讲述了最早开始这项实验的理论依据,接着介绍了目前常用的二维的跟踪方法,并且使用了光流法来实现跟踪,在如何定位特征点的基础上,本章介绍了几种基于梯度的查找方法,最后本章使用了KL算法来实现了人体各个特种跟踪,并且最后给出了实验结果。