资源简介
雷达数据处理对已观测的目标位置数据(称为点迹)进行滤波处理,自动形成航迹,估计预测目标的下一个位置。利用最小二乘算法(LMS)处理滤波,得到比较稳定的航迹估计。 最小二乘方法是一种较为常见的参数估计方法。对于雷达观测数据,假定已经精确知道航迹的运动学模型之后,通过建立观测方程,就可以对模型的参数 (如初速度,初始位置和加速度等) 进行最小均方误差估计。采用序贯最小二乘方法可以实时处理观测数据,对待估计参数进行实时更新,最后利用观测模型可以对 数据进行滤波计算。
代码片段和文件信息
clear all;
RealData=GetData;
sigma=100;
Monte=20;
Noise=normrnd(zeros(2331)sigma);
Measure=RealData+Noise;
FiltVal=zeros(2331);
Mean=zeros(2331);
Var=zeros(2331);
for i=1:Monte
Error=zeros(2331);
%0-400s
%initial
H=[1000;0010;1200;0012];
R=eye(4)*sigma^2;
pPrev=inv(H‘*inv(R)*H);
EstTemp=pPrev*H‘*inv(R)*[Measure(:1);Measure(:2)];
EstVal1(:1)=EstTemp;
EstVal1(:2)=EstTemp;
FiltVal(:1)=[EstTemp(11);EstTemp(31)];
FiltVal(:2)=[EstTemp(11)+EstTemp(21)*2;EstTemp(31)+EstTemp(41)*2];
for k=3:201
h=[12*(k-1)00;0012*(k-1)];
K=pPrev*h‘*inv(h*pPrev*h‘+eye(2)*sigma^2);
z=Measure(:k);
EstVal1(:k)=EstVal1(:k-1)+K*(z-h*EstVal1(:k-1));
pNow=(eye(4)-K*h)*pPrev;
pPrev=pNow;
FiltVal(:k)=[EstVal1(1k)+EstVal1(2k)*2*(k-1);EstVal1(3k)+EstVal1(4k)*2*(k-1)];
end
%400-600s
%initial
H=[100000;000100;122000;000122;148000;000148];
R=eye(6)*sigma^2;
pPrev=inv(H‘*inv(R)*H);
EstTemp=pPrev*H‘*inv(R)*[Measure(:201);Measure(:202);Measure(:203)];
EstVal2(:1)=EstTemp;
EstVal2(:2)=EstTemp;
FiltVal(:202)=[EstTemp(11)+EstTemp(21)*2+1/2*EstTemp(31)*4;EstTemp(41)+EstTemp(51)*2+1/2*EstTemp(61)*4];
FiltVal(:203)=[EstTemp(11)+EstTemp(21)*4+1/2*EstTemp(31)*16;EstTemp(41)+EstTemp(51)*4+1/2*EstTemp(61)*16];
for k=3:100
h=[12*k2*k*k000;00012*k2*k*k];
K=pPrev*h‘*inv(h*pPrev*h‘+eye(2)*sigma^2);
z=Measure(:k+201);
EstVal2(:k)=EstVal2(:k-1)+K*(z-h*EstVal2(:k-1));
pNow=(eye(6)-K*h)*pPrev;
pPrev=pNow;
FiltVal(:k+201)=[EstVal2(1k)+EstVal2(2k)*2*k+1/2*EstVal2(3k)*4*k*k;EstVal2(4k)+EstVal2(5k)*2*k+1/2*EstVal2(6k)*4*k*k];
end
%600-610s
%initial
H=[1000;0010;1200;0012];
R=eye(4)*sigma^2;
pPrev=inv(H‘*inv(R)*H);
EstTemp=pPrev*H‘*inv(R)*[Measure(:301);Measure(:302)];
EstVal3(:1)=EstTemp;
FiltVal(:302)=[EstTemp(11);EstTemp(31)];
for k=2:5
h=[12*k00;0012*k];
K=pPrev*h‘*inv(h*pPrev*h‘+eye(2)*sigma^2);
z=Measure(:k+301);
EstVal3(:k)=EstVal3(:k-1)+K*(z-h*EstVal3(:k-1));
pNow=(eye(4)-K*h)*pPrev;
pPrev=pNow;
FiltVal(:k+301)=[EstVal3(1k)+EstVal3(2k)*2*k;EstVal3(3k)+EstVal3(4k)*2*k];
end
%610-660s
%initial
H=[100000;000100;122000;000122;148000;000148];
R=eye(6)*sigma^2;
pPrev=inv(H‘*inv(R)*H);
EstTemp=pPrev*H‘*inv(R)*[Measure(:306);Measure(:307);Measure(:308)];
EstVal4(:1)=EstTemp;
EstVal4(:2)=EstTemp;
FiltVal(:307)=[EstTemp(11)+EstTemp(21)*2+1/2*EstTemp(31)*4;EstTemp(41)+EstTemp(51)*2+1/2*EstTemp(61)*4];
FiltVal(:308)=[EstTemp(11)+EstTemp(21)*4+1/2*EstTemp(31)*16;EstTemp(41)+EstTemp(51)*4+1/2*EstTemp(61)*16];
for k=3:25
h=[12*k2*k*k000;00012*k2*k*k];
K=pPrev*h‘*inv(h*pPrev*h‘+eye(2)*sigma^2);
z=Measure(:k+306);
EstVal4(:k)=EstVal4(:k-1)+K*(z-h*EstVal4(:k-1));
pNow=(eye(6)-K*h)*pPrev;
pPrev=pNow;
FiltVal(:k+306)=[Es
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 578 2014-04-04 16:09 GetData.m
文件 3665 2014-04-04 16:09 FDRls.m
----------- --------- ---------- ----- ----
4243 2
相关资源
- 流体力学中simple算法的matlab代码
- chirp信号的frft的峰值搜索仿真
- matlab编写的蛙跳聚类算法(SFLA)
- LBP特征提取的MATLAB实现
- 数字图像滤波程序
- GCC时延估计
- 基于kaiser窗的双谱线插值FFT谐波分析
- 加窗插值FFT算法的matlab 512点仿真
- GM_PHD_Filter_v110
- pls 可以用于计算排列熵
- 用α-β滤波器结合卡尔曼滤波器对相位
- matlab实现遗传算法 (Matlab Genetic Al
- 切比雪夫(Chebyshev)多项式展开式的
- SIR病毒传播模型的matlab程序
- STATCOM无功补偿不平衡负载,阶梯调制
-
matlab/simuli
nk仿真永磁无刷直流电机 - matlab 开发光伏阵列通用仿真模型
- 激光雷达点云滤波的topscan算法实现
- 比较分析协作通信三个节点时系统 (
- 基于HOUGH变换的车道线检测和识别的程
- matlab画庞加莱(poincare)映射
- 高斯过程回归算法工具箱
- 增广拉格朗日乘子法matlab源码
- 外国人开发的地磁数据处理全套程序
- 求解电力系统经济调度等优化问题的
- matlab频率估计
- 计算脉搏信号的方法 PPG (Blood Puls
- 石墨烯的电导率计算 (Complex conduc
- 提取地震子波的完整代码(Wave Extra
- PHD和CPHD两种算法的仿真程序
评论
共有 条评论