【滤波跟踪】基于变分贝叶斯卡尔曼滤波器实现目标跟踪附matlab代码
1 内容介绍
一种带有色量测噪声和变分贝叶斯自适应卡尔曼滤波的目标跟踪方法.包括1,建立目标跟踪的状态方程和量测方程.2,采用量测差分方法将有色量测噪声转化为白色量测噪声.3,将状态扩展向量的一步预测协方差矩阵和量测协方差矩阵的先验分布选择为逆Wishart分布.4,联合后验概率密度函数的变分近似.5,通过变分贝叶斯方法联合估计扩展状态向量及其相应的一步预测协方差矩阵和量测协方差矩阵.本发明的方法在带有不精确的噪声协方差矩阵和有色量测噪声情况下完成目标跟踪过程中的状态估计任务,其跟踪精度高于现有的基于其它滤波器的目标跟踪方法.
2 部分代码
function C = utchol(P)
%
%
% M. S. Grewal & A. P. Andrews
% Kalman Filtering Theory and Practice Using MATLAB
% Third Edition, Wiley & Sons, 2008
%
% for P symmetric and positive definite,
% computes upper triangular C such that
% C*C' = P
%
[n,m] = size(P);
if (n-m) error('non-square argument'); end;
for j=m:-1:1,
for i=j:-1:1,
sigma = P(i,j);
for k=j+1:m,
sigma = sigma - C(i,k)*C(j,k);
end;
C(j,i) = 0;
if (i==j)
C(i,j) = sqrt(max([0,sigma]));
elseif (C(j,j) == 0)
C(i,j) = 0;
else
C(i,j) = sigma/C(j,j);
end;
end;
end;
3 运行结果
4 参考文献
[1]李鹏, 王文慧, 舒振球,等. 一种基于变分贝叶斯T分布卡尔曼滤波的PHD多目标跟踪方法:, CN111325776A[P]. 2020.
博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机、雷达通信、无线传感器等多种领域的Matlab仿真,相关matlab代码问题可私信交流。
部分理论引用网络文献,若有侵权联系博主删除。