• 大小: 6KB
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-06-18
  • 语言: Matlab
  • 标签: RD  

资源简介

利用RD算法实现点成像,正侧视模式下的SAR成像,RCMC实现徙动校正

资源截图

代码片段和文件信息

clear all;  
clc;  

%---------------------------------start-----------------------------------%  
%-------------------------------基本参数设置-------------------------------%  
thetaT=0;                              %T平台波束斜视角
thetaT=thetaT*pi/180;                  %rad弧度
thetaR=0;                              %R平台波束斜视角
thetaR=thetaR*pi/180;                  %rad弧度
c=3e8;                                 %光速
fc=1.5e9;                    %载波频率1.5G
lambda=c/fc;                 %载波的波长
%%-----------测绘带区域----------------
X0=50;          %方位向[-X0X0],范围有自己根据实际情况确定
Rtc=3000;       %载波发射距离
Rrc=3000;       %载波接收距离
Rc=(Rtc+Rrc)/2; %载波距离向
R0=150;         %距离向[Rc-R0Rc+R0]
%%-----------距离向(Range)r/t domain---
Tr=1.5e-6;  %LFM信号脉宽 1.5us (200m)

Br=150e6;     %LFM信号带宽 150MHz
Kr=Br/Tr;     %调频斜率
Nr=512;       %快时间采样点数
 
%+++++距离域序列+++++
r=Rc+linspace(-R0R0Nr);    %距离域序列

t=2*r/c;                       %距离域t值对应
dt=R0*4/c/Nr;                  %快时间采样周期
%+++++频率域序列+++++
f=linspace(-1/2/dt1/2/dtNr); %f域序列

%%----------方位向(AzimuthCross-Range)x/u domain----
v=100;           %SAR 平台移动速度
%{
  合成孔径观点
  通过PRF进行方位向全息图的采样;
  采样间隔必须固定不变,因此要求PRF与地速成正比.
%}
Lsar=300;             %合成孔径长度
Na=1024;              % 慢时间采样点数
%+++++u域序列+++++
x=linspace(-X0X0Na);         %u域序列
u=x/v;                         %u域序列t值对应
du=2*X0/v/Na;                  %慢时间采样间隔
%+++++fu域序列+++++
fu=linspace(-1/2/du1/2/duNa);%fu域序列
ftdc=v*sin(thetaT);           %SAR-T平台波束速度
ftdr=-(v*cos(thetaT))^2/lambda/Rtc;
frdc=v*sin(thetaR);           %SAR-R平台波束速度 
frdr=-(v*cos(thetaR))^2/lambda/Rrc;
fdc=ftdc+frdc;                %Doppler调频中心频率
fdr=ftdr+frdr;                %Doppler调频斜率
%-------目标位置-----------
Ntar=3;%目标个数
Ptar=[  Rrc     0   1 %参数对应:距离向坐标方位向坐标sigma             
      Rrc+50   -50  1
      Rrc+50    50  1];
  %%-----------LFM产生回波---------
s_ut=zeros(NrNa);  %生成m×n的double类零矩阵,设定数值内存
%{
  概念普及:
  zeros:
  zeros(mn)产生m×n的double类零矩阵,zeros(n)产生n×n的全0方阵。
%}
U=ones(Nr1)*u;            %扩充为矩阵
T=t‘*ones(1Na);           % 将快时间拓展为 Na 列
%{
  概念普及:
  ones:
      ones函数——生成全1阵
  zeros(mn)产生m×n的double类零矩阵,zeros(n)产生n×n的全0方阵。
%}
for i=1:1:Ntar
    rn=Ptar(i1);          % 目标距离向坐标
    xn=Ptar(i2);          % 目标方位向坐标
    sigma=Ptar(i3);       % 目标RCS
    rtn=rn+Rtc-Rrc;        
    RT=sqrt(rtn^2+(rtn*tan(thetaT)+xn-v*U).^2);     % 发射 目标斜距
    RR=sqrt(rn^2+(rn*tan(thetaT)+xn-v*U).^2);       % 接收 目标斜距
    R=RT+RR;
    DT=T-R/c;
    phase=pi*Kr*DT.^2-2*pi/lambda*R;
    s_ut=s_ut+sigma*exp(1j*phase).*(abs(DT)end;

评论

共有 条评论