基于改进粒子滤波的目标跟踪算法

  • 格式:docx
  • 大小:42.00 KB
  • 文档页数:8

基于改进粒子滤波的目标跟踪算法

梁楠;郭雷;王瀛

【摘 要】针对传统的粒子滤波采用系统转移概率作为建议分布,不能利用当前观测信息.提出了一种结合集合卡尔曼滤波的粒子滤波跟踪方法.对每个粒子产生一个采样子集,使用集合卡尔曼滤波结合当前的观测信息构造建议分布,依据新的建议分布对粒子进行采样.同时在跟踪过程中对于遮挡现象给出了判断和解决方法.实验结果证明该方法提高了粒子滤波估计的准确性,相对于传统粒子滤波和其他粒子滤波方法有更好的稳定性.%The conventional particle filter uses system transition as

the proposal distribution. In order to improve the performance of particle

filters for target tracking, a sub-set of each particle is first sampled and

then the Ensemble kalman filter is proposed to construct proposal

distribution. If the target is occluded, the method based on similarity of

the sub-block is used to judge occlusion and keep tracking. Experimental

results show that the proposed algorithm improves the stability of object

tracking and increases the estimation accuracy.

【期刊名称】《西安工业大学学报》

【年(卷),期】2012(032)001

【总页数】5页(P15-18,30)

【关键词】目标跟踪;粒子滤波;集合卡尔曼滤波;建议分布;遮挡

【作 者】梁楠;郭雷;王瀛 【作者单位】西北工业大学自动化学院,西安710072;西北工业大学自动化学院,西安710072;西北工业大学自动化学院,西安710072

【正文语种】中 文

【中图分类】TP391

运动目标的自动跟踪与识别一直是计算机视觉邻域的研究热点.其核心是利用计算机视觉级数从图像序列中检测、识别和跟踪目标.在机器人视觉、安全检测、军事方面都有广泛的应用.粒子滤波[1-2]又叫序贯蒙特卡罗方法,它是一种非参数化的蒙特卡罗模拟方法,通过递推的贝叶斯滤波来近似逼近最优化的估计,可以较好解决非高斯非线性观测下的目标跟踪.其基本思想是采用带有权重的粒子集来表示对系统状态的估计,并通过序贯重要性采样[3-4]法来更新粒子集合,实现对系统状态的动态估计,其关键的问题是建议分布的选取.传统粒子滤波使用先验概率密度函数作为建议分布,建议概率密度与当前的测量值无关,引入了一定的误差,降低了粒子的使用效率.文献[5]提出了扩展卡尔曼粒子滤波算法(EKF-PF),使用扩展卡尔曼滤波为粒子滤波构造建议分布,由于扩展卡尔曼滤波丢弃了泰勒展开式的高阶,会引进较高的误差.

本文提出了一种基于粒子滤波的目标追踪方法.在粒子滤波视频跟踪的框架下,使用集合卡尔曼滤波方法结合系统测量信息对建议分布进行了改进.同时提出了一种应对遮挡的方法.结合上述方法来提高粒子滤波的稳定性和准确性.并对于一维非线性系统和图像跟踪均进行了仿真验证.

1 粒子滤波

非线性离散系统可以表示为

状态方程 xt =f(xt-1)+vt-1, 测量方程 zt=h(xt)+wt,

式中:xt和zt分别表示系统在t时刻的状态值和观测值;vt和wt分别表示过程噪声和观测噪声.

粒子滤波的目的就是得到后验分布p(xt|y1:t)的估计值.依据贝叶斯理论有

应用序列重采样原理,后验分布可以由一组加权后的粒子表示为

式中:Ns表示粒子数;变量为归一化的粒子权重,由得到,其中ωt(i)为

粒子由建议分布(也叫重要性密度函数)采样得到.可见建议分布的准确性在粒子滤波中起着重要作用.传统粒子滤波的建议分布的选取方法是令由于没有使用k时刻的观测信息y,在目

k标非线性运动或者存在噪声的情况下,使用传统建议分布会带来较高的估计误差.

2 建议分布设计

2.1 集合卡尔曼滤波

集 合 卡 尔 曼 滤 波[6-7](Ensemble Kalman Filter,EnKF)是基于随机动力预测理论发展而来的,其原理为利用短期集合预报去估计随流型演变的背景误差协方差,进行最优化分析,而后实现对误差协方差的更新.其目的是使模式向量的预测值尽可能的接近观测资料,即通过已知的观测资料估计和预测状态向量的概率密度函数.文献[8]中证明,在非线性环境下,集合卡尔曼滤波对于方差和均值的估计可以达到二阶以上估计精度.

集合卡尔曼滤波使用了如下方程来表述

其中xf表示前一时刻所预测的控制变量向量集合,称为背景场,xa表示分析的控制变量向量的集合,称为分析场.K为增益矩阵,Re是观测误差协方差矩阵,Pa与Pf分别为分析场误差协方差和预报场误差协方差矩阵.集合卡尔曼滤波分析方法是结合预测的控制向量信息集合和观测信息集合对当前时刻的控制向量真实集合进行估计.

由于集合卡尔曼滤波分析的对象是向量集合,其分析方程为

其中Nc代表状态向量集合的成员个数,PfHT表示模式控制向量与观测向量之间的观测误差协方差.结合式(5)和式(6)得到对背景集合分析,得到方程式为

2.2 建议分布的构造

集合卡尔曼滤波方法对集合数据进行最优化分析,可以对非线性系统更准确的估计.本文将集合卡尔曼滤波方法融入粒子滤波框架.使用集合卡尔曼滤波方法来进行建议分布的构造.

使用集合卡尔曼滤波方法对粒子的分布进行预测,首先需要对每一个粒子建立背景集合.文中在对每一个粒子xi采样时产生一个采样子集为子集采样个数.对于粒子xi,则 采 样 子 集构 成 了 背 景 场,令为t时刻的分析场,为该采样子集第n个估计值对应的观测信息.P(t|t-1)与P(t|t)分别为背景场和分析场对应的协方差矩阵.使用预测 集 合 和 当 前 观 测 信 息 对 背 景 场进行集合分析如下

由式(7)可得分析场描述为

根据集合卡尔曼滤波的集合平均最优思想,当前观测时刻粒子xi的位置由分析场均值表示.如果用高斯分布来近似每一个粒子的分布,则当前观测时刻粒子分布可以由均值和协方差所描述的高斯分布描述.可见该分布包含了当前观测值的信息,比系统转移概率更接近真实的后验分布,能够更准确描述当前粒子的分布信息.即令

在每一步跟踪完成之后,使用式(9)计算并获取建议分布q(xt|x0:t-1,y1:t),并根据此分布进行新一轮的粒子采样.

如果粒子不需要重采样,则当前的分析场根据状态模型进行同步转移,产生了新的背景场.从而进行下一步迭代.

2.3 重采样

传播过程中,一部分偏离目标的粒子权值会越来越小.从而重采样技术被提出:即抛弃部分权值过小的粒子,从权值较大的粒子进行多次采样来进行补充.本文在进行重采样时,被抛弃的粒子与其子集同时被抛弃.在采样新的粒子时,重新对新粒子采样产生新的背景子集.

3 基于子区域相似度的遮挡处理

在图像跟踪过程中,遮挡情况的出现会使跟踪准确性降低甚至使跟踪失效.通常使用Bhattacharyya距离计算目标与模板之间的相似度[9-10].在产生遮挡的情况下,Bhattacharyya系数会持续下降.本文对于跟踪过程中的遮挡情况提出了一种分块处理的解决办法,可以在一定程度上提高遮挡情况下跟踪的准确性:

由于目标在自身形变和发生遮挡的情况下相似性系数均会下降.首先引入全局相似性阈值ρth1和ρth2,其中ρth2<ρth1.在相似性系数低于阈值ρth2的时候,首先进行遮挡判断.

3.1 遮挡判断

定义粒子滤波跟踪过程中当前时刻目标所在位置与模板的相似性为ρ.将目标区域均分为四个子区域{T1,T2,T3,T4}并计算各子区域与模板对应子区域相似度{ρ1,ρ2,ρ3,ρ4},如图1所示. 图1 子区域示意图Fig.1 Sub-blocks of target

一般情况下,若目标自身变化引起相似度降低,由于其自身特征的相关性,其各个子区域的相似度同时降低.由于局部遮挡引起的相似度降低,会引起部分子区域的相似度急剧下降.导致整体相似度下降.

定义遮挡度:

可见如果目标自身形变,其遮挡度较低.如果是局部产生遮挡,ξ会出现一个比较高的值.最简单的处理办法是采用一个硬阈值ξt来判定遮挡.

在不同的场景跟踪下,根据目标的运动特性,ξt的值可以根据经验设定.

3.2 跟踪方法

在判断遮挡产生的情况下即停止更新模板.使用原模板持续跟踪,直到目标脱离遮挡.若相似性低于阈值ρth2,可以认为目标大部被遮挡.此时模板无效,使用系统转移模型外推目标的新位置,持续搜索直到相似性系数升高到阈值ρth2以上为止.

4 仿真实验

对于一维非线性系统验证本文提出的使用集合卡尔曼滤波构造建议分布的粒子滤波的有效性.假设一维非线性系统的状态方程和量测方程分别为

其中噪声w(t)~ N(0,1)和v(t)~ N(0,0.001)都服从正态分布.同时使用本文算法与传统的粒子滤波算法和文献[5]方法对该系模型进行滤波仿真.本文改进粒子滤波算法对背景子集采样数为10,算法的粒子数都取50,分别在Matlab上进行100次的Monte Carlo仿真实验.滤波结果的精确度采用均方根误差(RMSE)来描述.图2是在一次试验中不同粒子滤波算法的状态估计结果.图3为100次实验的均方根误差统计,它定性的分析了不同滤波算法对状态估计的准确度.如仿真结果所示,这种新的建议分布由于得到了来自真实后验分布更多的支持,因此RMSE更小.

使用本文方法对包含人脸的视频序列图像进行了跟踪验证.用于实验的图像序列来自Clemson大学的头部跟踪数据库,手动选取跟踪的初始人脸区域.粒子数取值50,子集采样数为15.ρth1=0.9,ρth2=0.3,ξt=0.2.

图2 不同算法的状态估计值对比Fig.2 The results of state estimation from

the different algorithms

图3 不同算法的RMSE对比Fig.3 The results of RMSE from the different

algorithms

图4 粒子滤波跟踪结果对比Fig.4 Visual tracking using different algorithms

图4为对包含人脸的视频序列进行跟踪验证的结果.与传统粒子滤波和文献[5]中提出的扩展卡尔曼粒子滤波方法进行了跟踪比较.序列中的人脸包括了遮挡、缩放和角度的变化,并且背景部分包含了和人脸颜色近似的区域.在头部快速运动和存在遮挡的情况下,相对于扩展卡尔曼粒子滤波方法的单轨迹分析和不可避免的截断误差,集合卡尔曼滤波相当于对于局部的多个轨迹使用卡尔曼方法进行集合分析,表现要优于扩展卡尔曼粒子滤波方法.使用本文提出的遮挡处理方法,在产生遮挡且目标自身形变较小的情况下也可以得到较好的跟踪效果,但是对于遮挡的同时自身形变较大的情况下跟踪效果较差.