资源简介
卡尔曼滤波小程序,可用于去噪,GPS定位中定位精度的提高,
代码片段和文件信息
clear all
close all
a1 = -0.975;
a2 = 0.95;
N = 2;%2阶模型
N1 = 1000;%产生数据点数
N2 = 512;%取稳定后的输入数据个数
K = 100;%独立实验次数
c = 0.01;
Jmin = 0.005;%过程噪声协方差
var_v = 0.0731;%噪声方差
u = zeros(1N2)‘;
u1 = zeros(1N1);
EJn = zeros(1N2);
err = zeros(1N2);
W1 = zeros(1N2);
out_W1 = zeros(1N2);
W2 = zeros(1N2);
out_W2 = zeros(1N2);
for i = 1:K
v = sqrt(var_v)*randn(1N1);
%==========产生数据=============
for m = 1:N1
u1(m+2) = -a1*u1(m+1)-a2*u1(m)+v(m);
end
u = u1(N1-N2+1:N1);%取后面N2个稳定的数据
%================Kalman滤波==================
w = zeros(1N).‘;%初始化最优权向量w(0)=w(1)=0即状态向量
u3 = [zeros(1N) u].‘;
I = eye(N);%状态转移矩阵
k = c.*I;%预测误差协方差
k1 = zeros(N);%一步预测误差协方差矩阵
A = 0;%新息过程协方差
G = zeros(1N).‘;%Kalman增益
a = 0;%定义新息过程
for n = 1:N2
k1 = k;
u2 = u3(n+N-1:-1:n);
A = (u2‘)*k1*u2+Jmin;
G = k1*u2*inv(A);
a = u(n)-(u2‘)*w;
w = w+G*a;
k = k1-G*(u2‘)*k1;
err(n) = a;
%abs(u(n)-(u2.‘)*conj(w)).^2;
W1(n) = w(1);
W2(n) = w(2);
end
EJn = EJn+(abs(err).^2);
out_W1 = out_W1+W1;
out_W2 = out_W2+W2;
end
EJn = EJn./K;
out_W1 = out_W1./K;
out_W2 = out_W2./K;
subplot(211)
plot(EJn)
grid on
title(‘Kalman滤波 a1=-0.975 a2=0.95 var_v=0.0731 c=0.01 Jmin=0.005‘)
gtext(‘均方误差学习曲线‘)
xlabel(‘迭代次数‘);
ylabel(‘均方误差‘);
%===========绘制权向量学习曲线==============
subplot(212)
plot(out_W1);
gtext(‘w1‘)
grid on
hold on
plot(out_W2);
gtext(‘w2‘)
xlabel(‘迭代次数‘)
ylabel(‘权值‘)
ylim([-1.2 1.2])
gtext(‘权值学习曲线‘)
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1758 2009-05-08 19:14 KalmanAlgorithm.m
- 上一篇:51单片机蜂鸣器播放音乐、暂停音乐以及选择音乐的实现
- 下一篇:EC数据分析
相关资源
- 简单二阶互联系统的非线性动力学分
- 手写数字识别-模板匹配法
- Stock_Watson_动态因子分析模型
- 果蝇优化算法优化支持向量回归程序
- 自己做的一个简单GUI扑克纸牌识别-
- multi output SVR
- AR过程的线性建模过程与各种功率谱估
- PCNN TOOLBOX
- plstoolbox.zip
- 中国国家基础地理信息系统GIS数据
- 粒子群微电网优化调度
- 矩阵分析-经典教材-中文版-Roger.A.Ho
- 压缩感知TwIST
- 基于最小错误率的贝叶斯手写数字分
- 最全系统辨识源代码,包括多种最小
- 导弹制导实验
- 画跟踪精确度图的程序.zip
- 重力场大地水准面及重力异常阶次误
- prtools5.2.3工具包
- 脉冲耦合神经网络工具箱PCNN-toolbox
- SVM算法-回归拟合程序.zip
- Kriging代理模型EGO算法.zip
- Matalb实现停车场完整系统
- 总体经验模态分解
- 在一张图上画多个跟踪框.zip
- 大量的有限元法求解偏微分方程的程
- 电力系统稳态潮流计算程序PQ和NR法
- 夜间车牌识别
- emd分解成多个imf分量,通过判断以后
- 心电信号的处理与自动诊断-心电信号
评论
共有 条评论