一种基于双向反馈粒子滤波算法的实时二维目标跟踪方法技术领域
本发明涉及一种二维目标跟踪方法,尤其是一种基于双向反馈粒子滤波算法的实时二维
目标跟踪方法。
背景技术
粒子滤波适合于处理非线性、非高斯状态估计问题,适合在复杂环境下进行跟踪,而且
能从短暂的失效中恢复跟踪。但常规粒子滤波最致命的缺点是运算量大,为了获得精确的状
态估计,需要大量的粒子描述跟踪场景的后验概率分布,而且随着估计状态维数的增加,粒
子数将按指数级别增长。常规PF的另一个缺点是粒子退化问题,即随着迭代的不断进行,粒
子权重的方差会不断增大,以至于在若干次迭代之后仅有少量的粒子拥有有效的权重,而大
量的计算浪费在对后验概率分布几乎不产生影响的粒子上。如果发生粒子退化现象,PF保持
状态分布多样性的优点也就荡然无存了。另外当被跟踪目标发生快速、不规则运动时,或者
当系统状态方程有很小的过程噪声或观测噪声有很小的方差时,常规PF跟踪算法的效果并不
是很令人满意。
发明内容
本发明要解决的技术问题是现有的粒子滤波存在运算量大、粒子退化以及无法对动态目
标跟踪的缺陷。
为了解决上述技术问题,本发明提供了一种基于双向反馈粒子滤波算法的实时二维目标
跟踪方法,包括如下步骤:
步骤1,提取并记录跟踪图库中待跟踪二维目标中的颜色、纹理、形状以及基于FAST
的多尺度特征点四类特征,再生成N个与待跟踪二维目标相对应的粒子进程;
步骤2,按时间序列导入视频信号的视频帧,在t=0时刻,N个粒子进程独立利用颜色和
纹理特征对视频帧进行特征匹配,计算各个粒子进程的粒子权重;在t>0时刻,若t-1时刻的
有效权重<权重阈值Vpt,则N个粒子进程利用t-1时刻使用的特征对t时刻视频帧进行特征
匹配,并计算各个粒子进程对应的粒子权重,若t-1时刻的有效权重≥权重阈值Vpt且利用颜
色和纹理特征进行特征匹配,则N个粒子进程利用颜色、纹理和形状特征对t时刻视频帧进
行特征匹配,并计算各个粒子进程对应的粒子权重,若t-1时刻的有效权重≥权重阈值Vpt且
利用颜色、纹理和形状进行特征匹配,则N个粒子进程利用颜色、纹理、形状和基于FAST
的多尺度特征点特征对t时刻视频帧进行特征匹配,并计算各个粒子进程对应的粒子权重,
若t-1时刻的有效权重≥权重阈值Vpt且利用颜色、纹理、形状和基于FAST的多尺度特征点
进行特征匹配,则N个粒子进程继续利用颜色、纹理、形状和基于FAST的多尺度特征点特
征对t时刻视频帧进行特征匹配,并计算各个粒子进程对应的粒子权重;
步骤3,对各个粒子进程对应的粒子权重进行归一化处理,再根据归一化处理结果计算t
时刻N个粒子进程的有效权重以及有效粒子进程的个数,若有效粒子进程的个数>N/5,则
进入步骤5,若有效粒子进程的个数≤N/5,则进入步骤4;
步骤4,对归一化处理后的N个粒子权重进行覆盖优化,在保持N个粒子权重大小关系
的前提下缩小N个粒子权重之间的差距;
步骤5,利用层次重采样算法对N个粒子进程的粒子权重进行重采样计算,将高权重值
的粒子进程覆盖替换低权重值的粒子进程;
步骤6,在N个粒子进程对应的粒子权重中选择最大的粒子权重作为t时刻视频帧中二
维目标的跟踪结果,再利用随机模型对N个粒子进程对应的特征、系统噪声以及测量噪声进
行更新,再将t加1后返回步骤2,直至没有新的视频帧。
采用步骤2中设定权重阈值Vpt以逐步增加特征的方法,在开始时无需对四个特征同时
进行匹配计算,能够有效降低计算量,提高目标跟踪效率;采用步骤3中有效粒子进程数的
比较,在低于N/5时进入步骤4时进行覆盖优化,从而缩小N个粒子权重之间的差距,从而
在步骤5时减少粒子进程被覆盖替换的数量,防止权值较大的粒子不断的被选择替换权值小
的粒子,避免导致粒子的多样性缺失而引起粒子匮乏问题;采用步骤5的重采样计算将高权
重值的粒子进程覆盖替换低权重值的粒子进程,能够有效解决粒子退化的问题;采用步骤6
中利用随机模型对N个粒子进程对应的特征、系统噪声以及测量噪声进行动态更新,在对快
速、不规则运动的跟踪目标或者当系统状态方程有很小的过程噪声或观测噪声有很小的方差
时均具有很好的跟踪效果。
作为本发明的进一步限定方案,步骤2中的有效权重计算步骤为:
步骤a,根据式1计算第i个粒子进程对应的粒子权重为:
式中,M表示特征的种类,j表示提取第几个特征进行特征匹配,表示t时刻第j个特
征的惩罚因子,且当第j个特征被加入匹配时当第j个特征未被加入匹配时
表示t时刻第i个粒子进程与视频帧在第
j个特征上的差异,βt为测量噪声;
步骤b,根据式2对N个粒子权重进行归一化处理为:
步骤c,再根据式3计算有效权重为:
式中,k表示将归一化处理后的N个粒子权重按从大到小的顺序依次排列的前N/2个粒
子权重的编号,有效权重即为排列前N/2个粒子权重的和。
作为本发明的进一步限定方案,步骤4中,覆盖优化的计算公式为:
式中,表示N个粒子进程中有效粒子进程的个数。
作为本发明的进一步限定方案,步骤5中,进行重采样计算时包括如下步骤:
首先利用式5计算均匀分布为:
再利用式6计算各个粒子的累计权重分布为:
最后进行比较,若qi-1<ug≤qi,则表示第i个粒子进程被第g个粒子进程覆盖。
作为本发明的进一步限定方案,步骤6中,利用随机模型对N个粒子进程对应的特
征、系统噪声以及测量噪声进行更新时,四个特征更新的随机模型为:
式中,p(t,i)表示t时刻第i个粒子进程的四个特征的集合,是关于的减
函数,表示t时刻N个粒子进程的粒子权重平均值,rand(1,-1)表示1
至-1间的随机变量,N(μ,σ2)表示均值为μ、方差为σ的高斯分布,系统噪声更新的随
机模型为:
式中,αt为t时刻的系统噪声,表示N个粒子进程中有效
粒子进程的个数,测量噪声更新的随机模型为:
式中,表示有效权重计算的反函数。
作为本发明的进一步限定方案,权重阈值Vpt为0.8。
本发明的有益效果在于:(1)采用步骤2中设定权重阈值Vpt以逐步增加特征的方法,
在开始时无需对四个特征同时进行匹配计算,能够有效降低计算量,提高目标跟踪效率;(2)
采用步骤3中有效粒子进程数的比较,在低于N/5时进入步骤4时进行覆盖优化,从而缩小
N个粒子权重之间的差距,从而在步骤5时减少粒子进程被覆盖替换的数量,防止权值较大
的粒子不断的被选择替换权值小的粒子,避免导致粒子的多样性缺失而引起粒子匮乏问题;
(3)采用步骤5的重采样计算将高权重值的粒子进程覆盖替换低权重值的粒子进程,能够有
效解决粒子退化的问题;(4)采用步骤6中利用随机模型对N个粒子进程对应的特征、系统
噪声以及测量噪声进行动态更新,在对快速、不规则运动的跟踪目标或者当系统状态方程有
很小的过程噪声或观测噪声有很小的方差时均具有很好的跟踪效果。
附图说明
图1为本发明的方法流程图。
具体实施方式
如图1所示,本发明提供的基于双向反馈粒子滤波算法的实时二维目标跟踪方法,包括
如下步骤:
步骤1,提取并记录跟踪图库中待跟踪二维目标中的颜色、纹理、形状以及基于FAST
的多尺度特征点四类特征,再生成N个与待跟踪二维目标相对应的粒子进程;
步骤2,按时间序列导入视频信号的视频帧,在t=0时刻,N个粒子进程独立利用颜色和
纹理特征对视频帧进行特征匹配,计算各个粒子进程的粒子权重;在t>0时刻,若t-1时刻的
有效权重<权重阈值Vpt,则N个粒子进程利用t-1时刻使用的特征对t时刻视频帧进行特征
匹配,并计算各个粒子进程对应的粒子权重,若t-1时刻的有效权重≥权重阈值Vpt且利用颜
色和纹理特征进行特征匹配,则N个粒子进程利用颜色、纹理和形状特征对t时刻视频帧进
行特征匹配,并计算各个粒子进程对应的粒子权重,若t-1时刻的有效权重≥权重阈值Vpt且
利用颜色、纹理和形状进行特征匹配,则N个粒子进程利用颜色、纹理、形状和基于FAST
的多尺度特征点特征对t时刻视频帧进行特征匹配,并计算各个粒子进程对应的粒子权重,
若t-1时刻的有效权重≥权重阈值Vpt且利用颜色、纹理、形状和基于FAST的多尺度特征点
进行特征匹配,则N个粒子进程继续利用颜色、纹理、形状和基于FAST的多尺度特征点特
征对t时刻视频帧进行特征匹配,并计算各个粒子进程对应的粒子权重,权重阈值Vpt优选
设置为0.8;
步骤3,对各个粒子进程对应的粒子权重进行归一化处理,再根据归一化处理结果计算t
时刻N个粒子进程的有效权重以及有效粒子进程的个数,若有效粒子进程的个数>N/5,则
进入步骤5,若有效粒子进程的个数≤N/5,则进入步骤4;
步骤4,对归一化处理后的N个粒子权重进行覆盖优化,在保持N个粒子权重大小关系
的前提下缩小N个粒子权重之间的差距;
步骤5,利用层次重采样算法对N个粒子进程的粒子权重进行重采样计算,将高权重值
的粒子进程覆盖替换低权重值的粒子进程;
步骤6,在N个粒子进程对应的粒子权重中选择最大的粒子权重作为t时刻视频帧中二
维目标的跟踪结果,再利用随机模型对N个粒子进程对应的特征、系统噪声以及测量噪声进
行更新,再将t加1后返回步骤2,直至没有新的视频帧。
其中,步骤2中的有效权重计算步骤为:
步骤a,根据式1计算第i个粒子进程对应的粒子权重为:
式中,M表示特征的种类,j表示提取第几个特征进行特征匹配,表示t时刻第j个特
征的惩罚因子,且当第j个特征被加入匹配时当第j个特征未被加入匹配时
表示t时刻第i个粒子进程与视频帧在第
j个特征上的差异,βt为测量噪声;
步骤b,根据式2对N个粒子权重进行归一化处理为:
步骤c,再根据式3计算有效权重为:
式中,k表示将归一化处理后的N个粒子权重按从大到小的顺序依次排列的前N/2个粒
子权重的编号,有效权重即为排列前N/2个粒子权重的和。
步骤4中,覆盖优化的计算公式为:
式中,表示N个粒子进程中有效粒子进程的个数。
步骤5中,进行重采样计算时包括如下步骤:
首先利用式5计算均匀分布为:
再利用式6计算各个粒子的累计权重分布为:
最后进行比较,若qi-1<ug≤qi,则表示第i个粒子进程被第g个粒子进程覆盖。
步骤6中,利用随机模型对N个粒子进程对应的特征、系统噪声以及测量噪声进行
更新时,四个特征更新的随机模型为:
式中,p(t,i)表示t时刻第i个粒子进程的四个特征的集合,是关于的减
函数,表示t时刻N个粒子进程的粒子权重平均值,rand(1,-1)表示1
至-1间的随机变量,N(μ,σ2)表示均值为μ、方差为σ的高斯分布,系统噪声更新的随
机模型为:
式中,αt为t时刻的系统噪声,表示N个粒子进程中有效
粒子进程的个数,测量噪声更新的随机模型为:
式中,表示有效权重计算的反函数。