点跟踪
跟踪问题可以用帧与帧之间检测到的目标点之间的关系来表达。点之间的关联问题的复杂性特别表现在遮挡、误检测、目标进出画面等情况。
总的来说,点关联的方法可分为两大类:确定性方法和统计性方法。前者通常用定性的运动限制方法,后者用目标检测和不确定性的建模来建立关联。
Deterministic Methods for Correspondence.
确定性的方法定义了在一系列约束条件下,关联t时刻和t-1时刻图像帧中每个目标的成本。关联成本的最小化规划为一个优化组合问题。可以用最优分配方法求解,如匈牙利算法,贪婪搜索算法。关联成本的限制条件可以使以下条件的组合定义,这些条件同时适用于确定性和统计性的方法:
Proximity - 假设目标位置在两帧之间没有明显变化
Maximum velocity - 定义了目标速度的上限,即限制了目标周围可能的圆形关联邻域
Small velocity change - 家丁目标的运动方向和速度没有明显变化
Common motion - 假定在一个较小邻域内的目标们的速度相似
Rigidity - 假设目标在3D世界中是刚性的,即真实目标上的两个点之间的距离保持不变
Proximal uniformity - 是Proximity 和Common motion的组合约束
这些方法中较新较完善的是Veenman et al. [2001]和Shafique and Shah [2003]的算法。
Statistical Methods for Correspondence.
统计性方法在目标状态估计中考虑了观测噪声和模型不确定性,用状态空间方法建模速度、位置、加速度等目标属性。
目标信息通常由一系列的状态表达:Xt:t = 1, 2, … .
状态随时间的变化由动态方程控制:Xt = ft(Xt-1) + Wt. 其中Wt是白噪声.
观测域状态之间的关系由观测方程控制:Zt = ht(Xt, Nt).其中Nt是独立于Wt的白噪声.
跟踪的任务就是给定到t时刻为止的所有观测,估计得到状态Xt,即创建概率密度函数p(Xt|Z1,...,t).
理论上的最优解可由递归的贝叶斯滤波器分两步求解,预测-修正。
对于单个目标的情况,状态可用上述两步简单估计得到;对于多目标的情况,则需要将观测域相应目标对应起来。
1 单目标状态估计
如果状态转移矩阵和观测矩阵都是线性的,状态和噪声是高斯分布的,则最优的状态估计方法是卡尔曼滤波。
如果状态转移矩阵和观测矩阵不是线性的,则可以用扩展卡尔曼滤波,先对其泰勒展开进行线性化,再用卡尔曼滤波。
目标状态不是高斯分布的情况下,可以用粒子滤波方法。
2 多目标状态估计
广泛采用的两种方法是Joint Probability Data Association Filtering (JPDAF)和Multiple Hypothesis Tracking (MHT)
NEXT STEP
进阶阅读:确定性算法 - Veenman et al. [2001]和Shafique and Shah [2003]
卡尔曼滤波和粒子滤波
JPDAF - Chang and Aggarwal [1991],Rasmussen and Hager [2001]
MHT
下一个Topic:核跟踪