合成孔径雷达点目标仿真MATLAB程序
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
合成孔径雷达成像系统点目标仿真
源程序:
clc
close all
C=3e8; %光速
Fc=1e9; %载波频率
lambda=C/Fc; %波长
%成像区域
Xmin=0;
Xmax=50;
Yc=10000;
Y0=500;
%SAR基本参数
V=100; %雷达平台速度
H=0; %雷达平台高度
R0=sqrt(Yc^2+H^2);
D=4; %天线孔径长度
Lsar=lambda*R0/D; %合成孔径长度
Tsar=Lsar/V; %合成孔径时间
Ka=-2*V^2/lambda/R0;%线性调频率
Ba=abs(Ka*Tsar);
PRF=2*Ba; %脉冲重复频率
PRT=1/PRF;
ds=PRT; %脉冲重复周期
Nslow=ceil((Xmax-Xmin+Lsar)/V/ds);%脉冲数
Nslow=2^nextpow2(Nslow); %量化为2的指数
sn=linspace((Xmin-Lsar/2)/V,(Xmax+Lsar/2)/V,Nslow); %创建时间向量PRT=(Xmax-Xmin+Lsar)/V/Nslow; %更新
PRF=1/PRT; % 更新脉冲重复频率
fa=linspace(-0.5*PRF,0.5*PRF,Nslow);
Tr=5e-6; %脉冲宽度
Br=30e6; %调频信号带宽
Kr=Br/Tr; %调频率
Fsr=2*Br; %快时间域取样频率
dt=1/Fsr; %快时间域取样间隔
Rmin=sqrt((Yc-Y0)^2+H^2);
Rmax=sqrt((Yc+Y0)^2+H^2+(Lsar/2)^2);
Nfast=ceil(2*(Rmax-Rmin)/C/dt+Tr/dt);
Nfast=2^nextpow2(Nfast);
tm=linspace(2*Rmin/C,2*Rmax/C+Tr,Nfast);
dt=(2*Rmax/C+Tr-2*Rmin/C)/Nfast; %更新
Fsr=1/dt;
fr=linspace(-0.5*Fsr,0.5*Fsr,Nfast);
DY=C/2/Br; %距离分辨率
DX=D/2; %方位分辨率
Ntarget=3; %目标数目
Ptarget=[Xmin,Yc,1 %目标位置
Xmin,Yc+10*DY,1
Xmin+20*DX,Yc+50*DY,1];
K=Ntarget; %目标数目
N=Nslow; %慢时间采样数
M=Nfast; %快时间采样数
T=Ptarget; %目标位置
%合成孔径回波仿真
Srnm=zeros(N,M);
for k=1:1:K
sigma=T(k,3);
Dslow=sn*V-T(k,1);
R=sqrt(Dslow.^2+T(k,2)^2+H^2);
tau=2*R/C;
Dfast=ones(N,1)*tm-tau'*ones(1,M);
phase=pi*Kr*Dfast.^2-(4*pi/lambda)*(R'*ones(1,M));
Srnm=Srnm+sigma*exp(j*phase).*(0 end %距离压缩 tr=tm-2*Rmin/C; Refr=exp(j*pi*Kr*tr.^2).*(0 F_Refr=fft((Refr)); Sr=zeros(N,M); for k2=1:1:M temp1=fft(Srnm(k2,:)); FSrnm=temp1.*conj(F_Refr); Sr(k2,:)=ifft(FSrnm); end %方位压缩 ta=sn-(Xmin+Xmax)/2/V; Refa=exp(j*pi*Ka*ta.^2).*(abs(ta) Sa=zeros(N,M); for k3=1:1:M temp2=fft(Sr(:,k3)); F_Sa=temp2.*conj(F_Refa.'); Sa(:,k3)=fftshift(ifft(F_Sa)); end row=tm*C/2; col=sn*V; %绘图 %回波雷达数据 figure(1) subplot(211) imagesc(abs(Srnm));title('SAR data') subplot(212) imagesc(angle(Srnm)) %灰度图 figure(2) colormap(gray) imagesc(row,col,255-abs(Sr)); title('距离压缩'),xlabel('距离向'),ylabel('方位向'); figure(3) colormap(gray) imagesc(row,col,255-abs(Sa)); title('方位压缩'),xlabel('距离向'),ylabel('方位向'); %轮廓图 figure(4) Ga=abs(Sa); a=max(max(Ga)); contour(row,col,Ga,[0.707*a,a],'b');grid on x1=sqrt(H^2+min(abs(Ptarget(:,2))).^2)-5*DY; x2=sqrt(H^2+max(abs(Ptarget(:,2))).^2)+5*DY; y1=min(Ptarget(:,1))-5*DX; y2=max(Ptarget(:,1))+5*DX; axis([x1,x2,y1,y2]) %三维成像图 figure(5)