粒子滤波算法源于蒙特卡洛思想,即以某事件出现的频率来指代该事件的概率。在粒子滤波过程中,X(t)实际上是通过对大量粒子的状态进行处理得到的。
粒子滤波的5个步骤:
1)初始状态:用大量粒子模拟X(t),粒子在空间内均匀分布;
2)预测阶段:根据状态转移方程,每一个粒子得到一个预测粒子;
3)校正阶段:对预测粒子进行评价,越接近于真实状态的粒子,其权重越大;
4)重采样:根据粒子权重对粒子进行筛选,筛选过程中,既要大量保留权重大的粒子,又要有一小部分权重小的粒子;
5)滤波:将重采样后的粒子带入状态转移方程得到新的预测粒子,即步骤2。
%在二维空间,假设运动物体的一组(非线性)运动位置、速度、加速度数据,用粒子滤波方法进行处理
%实验室的博客
% 参数设置
N = 100; %粒子总数
Q =
5; %过程噪声
R =
5; %测量噪声
T =
10; %测量时间
theta =
pi/T; %旋转角度
distance =
80/T; %每次走的距离
WorldSize =
100; %世界大小
X = zeros(2,
T); %存储系统状态
Z = zeros(2,
T); %存储系统的观测状态
P = zeros(2,
N); %建立粒子群</