✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。
🍎个人主页:Matlab科研工作室
🍊个人信条:格物致知。
更多Matlab仿真内容点击👇
⛄ 内容介绍
随着科技的飞速发展,尤其是航空航天技术的突飞猛进,先后有国家研发了高速高机动飞行器,这类目标具有高声速,大范围机动,系统模型非线性和参数时变等特点.在目标跟踪系统中,目标状态的准确估计尤为关键,而实际系统模型大多是非线性的,这对非线性滤波算法提出了更高的要求.
⛄ 部分代码
% Least squares method for GPS positioning.
function [Rcv_Pos,Rcv_b] = Rcv_Pos_Compute(SV_Pos, SV_Rho)
Num_Of_SV=size(SV_Pos);
if Num_Of_SV<4
Rcv_Pos=[0 0 0];Rcv_b=0;
return;
end
%%
%Initial GPS Position
Rcv_Pos=[0 0 0];Rcv_b=0;
%Start Iteration
%Constrain for convergence
B1=1;
END_LOOP=100;
count=0;
while (END_LOOP > B1)
%A.Compute G
G = G_Compute(SV_Pos, Rcv_Pos);
%B.Compute Delta_Rho
Delta_Rho = Delta_Rho_Compute(SV_Rho, SV_Pos, Rcv_Pos, Rcv_b);
%C.Iteration for new postion
Delta_X = inv(G' * G) * G' * Delta_Rho;
Rcv_Pos = (Rcv_Pos' + Delta_X(1:3))';
Rcv_b = Rcv_b + Delta_X(4);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
END_LOOP = (Delta_X(1)^2 + Delta_X(2)^2 + Delta_X(3)^2)^.5;
count = count+1;
if count>10
END_LOOP=B1/2;
end
end%End of While
end
⛄ 运行结果

⛄ 参考文献
[1]董俊松. 基于扩展卡尔曼滤波的单目标跟踪算法研究[D]. 西北师范大学, 2019.
⛄ 完整代码
❤️部分理论引用网络文献,若有侵权联系博主删除
❤️ 关注我领取海量matlab电子书和数学建模资料
该博客由一位热衷于科研的Matlab开发者撰写,探讨了在高速高机动飞行器目标跟踪系统中,如何利用非线性滤波算法进行状态估计。作者分享了一段关于最小二乘法定位的代码示例,并提供了完整的算法实现。文章引用了扩展卡尔曼滤波在单目标跟踪算法研究中的应用作为参考文献。
386

被折叠的 条评论
为什么被折叠?



