粒子滤波算法

上学的时候每次遇到“粒子滤波”那一堆符号,我就晕菜。今天闲来无事,搜了一些文章看,终于算是理解了。下面用白话记一下我的理解。

问题表述:

某年月,警方(跟踪程序)要在某个城市的茫茫人海(采样空间)中跟踪寻找一个罪犯(目标),警方采用了粒子滤波的方法。

1. 初始化:

警方找来了一批警犬(粒子),并且让每个警犬预先都闻了罪犯留下来的衣服的味道(为每个粒子初始化状态向量S0),然后将警犬均匀布置到城市的各个区(均匀分布是初始化粒子的一种方法,另外还有诸如高斯分布,即:将警犬以罪犯留衣服的那个区为中心来扩展分布开来)。

2. 搜索:

每个警犬都闻一闻自己位置的人的味道(粒子状态向量Si),并且确定这个味道跟预先闻过的味道的相似度(计算特征向量的相似性),这个相似度的计算最简单的方法就是计算一个欧式距离(每个粒子i对应一个相似度Di),然后做归一化(即:保证所有粒子的相似度之和为1)。

3. 决策:

总部根据警犬们发来的味道相似度确定罪犯出现的位置(概率上最大的目标):最简单的决策方法为哪个味道的相似度最高,那个警犬处的人就是目标。

4. 重采样:

总部根据上一次的决策结果,重新布置下一轮警犬分布(重采样过程)。最简单的方法为:把相似度比较小的地区的警犬抽调到相似度高的地区。

 

上述,2,3,4过程重复进行,就完成了粒子滤波跟踪算法的全过程。

 

posted on 2012-02-05 17:36  konlil  阅读(5856)  评论(0编辑  收藏  举报

导航