资源简介

雷达数据处理对已观测的目标位置数据(称为点迹)进行滤波处理,自动形成航迹,估计预测目标的下一个位置。利用最小二乘算法(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


评论

共有 条评论