粒子滤波(Particle Filter)的通俗解释

其实,粒子叫作估计器estimator。估计过去叫平滑smoothing,估计未来叫预测prediction,估计当前值才叫滤波filtering。粒子滤波算法源于蒙特卡洛思想,即以某事件出现的频率来指代该事件的概率。通俗的讲,粒子滤波也是能用已知的一些数据预测未来的数据。我们知道,科尔曼滤波限制噪声时服从高斯分布的,但是粒子滤波可以不局限于高斯噪声,原理上粒子滤波可以驾驭所有的非线性、非高斯系统。

一个比喻

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

1. 初始化:

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

2. 搜索:

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

3. 决策:

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

4. 重采样:

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

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


 粒子滤波的核心思想是随机采样+重要性重采样。既然不知道目标在哪里,那我就随机的放狗(随机采样)。放完狗后,根据特征相似度计算每个地区人和罪犯的相似度,然后在重要的地方再多放狗,不重要的地方就少放狗(重要性采样)。


参考:

http://www.cnblogs.com/konlil/archive/2012/02/05/2339142.html

你可能感兴趣的:(Signal,Processing)