cvsan.m

来自「目标运动模型」· M 代码 · 共 63 行

M
63
字号
clear
%三维的作匀速直线运动的空中或水下目标的航迹示意图:

%产生[0 1]间的正态分布的随机数
a0=19;
C=51329;
x1(1)=47169; 
M=2^16;  
for i=1:5999
	  x1(i+1)=mod(x1(i)*a0+C,M);
end
for i=1:6000
	  fakerand(i)=x1(i)/M;
end
for i=1:500
	  normrnd1(i)=0;
	  for j=(12*(i-1)+1):(12*i)
		  normrnd1(i)=normrnd1(i)+fakerand(j);
      end
	  normrnd1(i)=normrnd1(i)-6;
end


x0=3000;
y0=4000;
z0=2000;  %Z为负数时,目标为水下目标,正数时为空中目标


v=100;


Q1=120;
Q2=160;
Q3=140;


q=-pi/4;
b=pi/3;
vx=v*cos(q)*sin(b);
vy=v*cos(q)*cos(b);
vz=v*sin(q);

t0=0;
t=[1:500]+t0;
for i=1:50
    x(i)=x0+vx*(t(i)-t0)+Q1*normrnd1(i);
    y(i)=y0+vy*(t(i)-t0)+Q2*normrnd1(i);
    z(i)=z0+vz*(t(i)-t0)+Q3*normrnd1(i);
end
for i=1:50
    X(i)=x0+vx*(t(i)-t0);
    Y(i)=y0+vy*(t(i)-t0);
    Z(i)=z0+vz*(t(i)-t0);
end
plot3(x0,y0,z0,'r^',[x0 x],[y0 y],[z0 z],'b.',[x0 X],[y0 Y],[z0 Z],'r-')
hold on
legend('起始点','方差为Q1=120;Q2=160;Q3=140的观测曲线','理论曲线');
title('三维匀速直线运动连续模型目标轨迹示意图');
xlabel('X坐标轴');
ylabel('Y坐标轴');
zlabel('Z坐标轴');
grid on

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?