• 大小: 6KB
    文件类型: .m
    金币: 2
    下载: 1 次
    发布日期: 2021-05-26
  • 语言: Matlab
  • 标签: SAR  matlab  

资源简介

点目标成像程序,对于SAR成像初学者非常有用。里面包含多点目标成像(用RD算法),包含距离徙动矫正,最后结果的评价

资源截图

代码片段和文件信息

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%  Project:            Simulation.m                                           %%
%%  Author:             BoBo Li                                                %%
%%  Date  :             September 19th2004                                    %%
%%  Functionality:      模拟产生原始数据
%%  备注  :                                                                    %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
clear all; % 清除所有的变量
clc;       % 清屏
close all; % 关闭所有的图形窗口

cj = sqrt(-1);
pi2 = 2*pi;
c = 3e8;

%
%% System Parameters
RanNum = 1024;
AziNum = 1024;
PRF = 100;% 脉冲重复频率
Va = 100;% 方位向速度
R0 = 6e3;% 到场景中心的最短距离
%
%% fast time parameters
Klfm = 6e12; % 调频斜率
Tp = 6e-6; % Pulse duration time
BandWidth = Tp*Klfm;
SapRate = 50e6; % 采样率
flag1 = SapRate/BandWidth %采样率必须大于带宽
delta_tr = 1/ SapRate; % 采样间隔

Tr = delta_tr*[0:RanNum-1]; % 快时间
X0 = 1000; % 距离向宽度为2X0
Rmin = R0 - X0; % 
Tr_start = 2*Rmin/c;
Tr = Tr_start + Tr;
Range = Tr*c/2;
lambda = 0.3;
fc = c/lambda;
wc = pi2*fc;
wcm = wc - 0.5*Tp*Klfm;

%ptr = exp(cj*wcm+cj*pi*Klfm*Tr.^2).*(Tr>0 & Tr%plot(real(ptr));

%
%% slow time parameters
Fk = -2*Va^2/(lambda*R0); % 多普勒调频斜率
Ts = 6; % 合成孔径时间
DoBandWidth = abs(Fk)*Ts; % Doppler BandWidth
flag2 = PRF/DoBandWidth  % flag2 > 1
PRI = 1/PRF;% 脉冲重复间隔
Ta = PRI*[-AziNum/2:AziNum/2-1];

Azimuth = Va*Ta; %方位
L = 0.5*Ts*Va; % 半孔径

%Td = 2*Rt/c;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%        SIMULATION
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

% 以下使用的是各目标与场景中心的相对距离

ntargets = 1; % 点目标的个数,可以选多个。
TARGETS =zeros(29);
DX = 0.5*c*1/BandWidth;
DY = Va*1/DoBandWidth;
CENTER = [ R0 0 ];
%
%% 点目标的坐标与后向散射系数
TARGETS(:1) = [ 0   0  ].‘;                        sigma(1)= 1;  
TARGETS(:2) = [-50*DX  50*DY].‘;                   sigma(2)= 2; 

TARGETS = TARGETS + CENTER.‘*ones(19);

%
%% Generating the raw data
Sr = zeros(AziNumRanNum);
for i = 1:ntargets  
Rt = sqrt(TARGETS(1i).^2+Va^2*(Ta- TARGETS(2i)/Va).^2); % 随慢时间变化的斜距
Rt = Rt.‘;
Td = ones(AziNum1)*Tr - 2*Rt/c*ones(1RanNum);
Sr = Sr + sigma(i)*exp(cj*wcm*Td+cj*0.5*pi2*Klfm*Td.^2).*( abs(Td)end;
Sr=Sr.*(ones(AziNum1)*exp(-cj*wc*Tr));     % 去载频


%
%% visualize the raw data
figure(1);
%G=abs(Sr);
G=abs(real(Sr));
xg=max(max(G));ng=min(min(G));cg=255/(xg-ng);
colormap(gray(256));
image(RangeAzimuth255-cg*(G-ng));
title(‘the raw data‘);
xlabel(‘Range  meters‘);
ylabel(‘Azimuth meters‘);

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

评论

共有 条评论