SAR动目标成像

  • julista
    了解作者
  • matlab
    开发工具
  • 4.4KB
    文件大小
  • zip
    文件格式
  • 0
    收藏次数
  • 10 积分
    下载积分
  • 0
    下载次数
  • 2022-05-24 16:16
    上传日期
利用MATLAB对SAR运动目标回波模拟以及对回波数据成像的仿真
SAR动目标成像.zip
  • iftx.m
    81B
  • fty.m
    79B
  • dian.asv
    4.9KB
  • ftx.m
    78B
  • dian.m
    4.8KB
  • ifty.m
    84B
内容介绍
%%======================================================== clear;clc;close all; %%======================================================== %%常数 C=3e8; %光速 %%雷达特性 Fc=1e9; %载频1GHz lambda=C/Fc; %波长 %%目标区域 Xmin=0; %方位向上的目标区域[Xmin,Xmax] Xmax=50; Yc=10000; %成像区域中心 Y0=500; %距离向上的目标区域[Yc-Y0,Yc+Y0] %成像宽度 2*Y0 %%轨道信息 V=100; %合成孔径雷达速度 100 m/s Vy=5; %动目标距离向速度 Vx=0; %动目标方位向速度 H=5000; %高度 5000 m R0=sqrt(Yc^2+H^2); %目标距离雷达的距离 %%天线 D=4; %方位方向的天线长度 Lsar=lambda*R0/D; %SAR 积分长度 Tsar=Lsar/V; %SAR 积分时间 %%慢时域 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); %慢时域中的样本数 sn=linspace((Xmin-Lsar/2)/V,(Xmax+Lsar/2)/V,Nslow);%慢时域离散时间阵列 PRT=(Xmax-Xmin+Lsar)/V/Nslow; PRF=1/PRT; ds=PRT; %%快速时域 Tr=5e-6; %脉冲持续时间 10us Br=30e6; %调频带宽带宽 30MHz Kr=Br/Tr; %调频斜率 Fsr=3*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);%快速时域中的样本数 tm=linspace(2*Rmin/C,2*Rmax/C+Tr,Nfast); %快速时域离散时间阵列 dt=(2*Rmax/C+Tr-2*Rmin/C)/Nfast; Fsr=1/dt; %%分辨率 DY=C/2/Br; %距离分辨率 DX=D/2; %方位向分辨率 %%点目标 Ntarget=3; %点目标个数 Ptarget=[Xmin+70*DX,Yc-100*DY,1 Xmin,Yc+10*DY,1 Xmin+20*DX,Yc+50*DY,1]; disp('参数:') disp('快时间域采样率:');disp(Fsr/Br) disp('快时间域采样点数:');disp(Nfast) disp('慢时间域采样率:');disp(PRF/Ba) disp('慢时间域采样点数:');disp(Nslow) disp('距离分辨率:');disp(DY) disp('方位分辨率:');disp(DX) disp('合成孔径长度:');disp(Lsar) disp('目标位置【(0-50),(9500-10500)】');disp(Ptarget) %%======================================================== %%生成原始信号数据 K=Ntarget; %目标个数 N=Nslow; %慢时间域采样点数 M=Nfast; %快时间域采样点数 T=Ptarget; %目标位置 Srnm1=zeros(N,M); Srnm2=zeros(N,M); for k=1:1:K sigma=T(k,3); Dslow=sn*V-T(k,1); R1=sqrt(Dslow.^2+(T(k,2)+sn*Vy).^2+H^2); R2=sqrt(Dslow.^2+T(k,2)^2+H^2); tau1=2*R1/C; tau2=2*R2/C; Dfast1=ones(N,1)*tm-tau1'*ones(1,M); Dfast2=ones(N,1)*tm-tau2'*ones(1,M); phase1=pi*Kr*Dfast1.^2-(4*pi/lambda)*(R1'*ones(1,M)); phase2=pi*Kr*Dfast2.^2-(4*pi/lambda)*(R1'*ones(1,M)); Srnm1=Srnm1+sigma*exp(j*phase1).*(0<Dfast1&Dfast1<Tr).*((abs(Dslow)<Lsar/2)'*ones(1,M)); Srnm2=Srnm2+sigma*exp(j*phase2).*(0<Dfast2&Dfast2<Tr).*((abs(Dslow)<Lsar/2)'*ones(1,M)); end %%======================================================== %%距离压缩 tr=tm-2*Rmin/C; Refr=exp(j*pi*Kr*tr.^2).*(0<tr&tr<Tr); Sr1=ifty(fty(Srnm1).*(ones(N,1)*conj(fty(Refr)))); Sr2=ifty(fty(Srnm2).*(ones(N,1)*conj(fty(Refr)))); Gr1=abs(Sr1); Gr2=abs(Sr2); %%方位压缩 ta=sn-Xmin/V; Refa=exp(j*pi*Ka*ta.^2).*(abs(ta)<Tsar/2); Sa1=iftx(ftx(Sr1).*(conj(ftx(Refa)).'*ones(1,M))); Sa2=iftx(ftx(Sr2).*(conj(ftx(Refa)).'*ones(1,M))); Ga1=abs(Sa1); Ga2=abs(Sa2); %%======================================================== %%绘制信号的强度图像 colormap(gray); figure(1) subplot(2,2,1); row=tm*C/2-2008;col=sn*V-26; imagesc(row,col,255-Gr1); %强度图像Sr1 axis([Yc-Y0,Yc+Y0,Xmin-Lsar/2,Xmax+Lsar/2]); xlabel('方位向距离/m'),ylabel('距离向距离/m'), title('距离压缩后的运动点目标图像'), subplot(2,2,2); imagesc(row,col,255-Ga1); %强度图像Sa1 axis([Yc-Y0,Yc+Y0,Xmin-Lsar/2,Xmax+Lsar/2]); xlabel('方位向距离/m'),ylabel('距离向距离/m'), title('距离和方位压缩后的运动点目标图像'), subplot(2,2,3); row=tm*C/2-2008;col=sn*V-26; imagesc(row,col,255-Gr2); %强度图像Sr2 axis([Yc-Y0,Yc+Y0,Xmin-Lsar/2,Xmax+Lsar/2]); xlabel('方位向距离/m'),ylabel('距离向距离/m'), title('距离后静止点目标图像'), subplot(2,2,4); imagesc(row,col,255-Ga2); %强度图像Sa2 axis([Yc-Y0,Yc+Y0,Xmin-Lsar/2,Xmax+Lsar/2]); xlabel('方位向距离/m'),ylabel('距离向距离/m'), title('距离和方位压缩后的静止点目标图像'), %%========================================================
评论
    相关推荐
    • Matlab合集
      冈萨雷斯数字图像处理MATLAB版.中文版+数字图像处理第二版中文版(冈萨雷斯)+MATLAB-R2014a完全自学一本通+MATLAB R2016a完全自学一本通 素材文件+[模式识别与智能计算:MATLAB技术实现(第2版)].杨淑莹.扫描版
    • MATLAB教程
      MATLAB教程MATLAB教程MATLAB教程MATLAB教程MATLAB教程MATLAB教程
    • MATLAB
      MATLAB 该项目是在matlab上完成的,涉及创建和移动宇宙飞船和机器人。 太空飞船和机器人是使用Matlab中的简单几何形状创建的,并通过连续变换矩阵进行移动。 这个项目教我如何使用变换矩阵(旋转,平移等)的概念...
    • MATLAB基础
      一本学习matlab的一本好书
    • MATLAB编译器
      基于MATLAB 2018b版本介绍MATLAB编译器。介绍如何利用编译器将MATLAB代码编译为独立应用程序或组件,并在没有安装MATLAB的计算机上进行部署。
    • matlabruntime
      通过奇点容器运行您的matlab项目 可以在没有MATLAB的容器中运行matlab代码。 为此,我们首先需要通过Matlab编译器在本地构建相应的Matlab代码的独立应用程序,然后使用具有Matlab运行时( 的容器)运行该应用程序 )...
    • matlab实现
      matlab实现 matlab实现matlab实现matlab实现matlab实现
    • matlab 教程
      matlab 信号处理资料,里面包含信号处理pdf文档,一些杂乱的程序和命令等
    • matlab教程
      matlab教程,PPT格式,包含 matlab基本知识、matlab入门、matlab作图、线性规划、无约束优化、非线性规划、统计工具箱、差值、微分方程等多项知识点,并且每个知识点独立成为PPT,内还含有matlab信号处理详解等文档...
    • matlab简介
      1.MATLAB 开发环境 1.1 MATLAB 的视窗环境 进入MATLAB之后,会看到一个视窗MATLAB Command Window称为指令视窗,它是你键入指令的地方同时 MATLAB也将计算结果显示在此。 1.2 简易计算 我们先从MATLAB的...