目录
针对正侧视SAR和大斜视SAR模型,设计基于CS算法的成像处理软件。本文给出了软件的接口与调用方式;使用仿真数据验证了软件的有效性;处理了RadarSat-1实际数据,但是处理效果不理想。如有读者有实际数据,欢迎共享,一起交流学习,公共进步。
仿真数据使用前面介绍的机载SAR回波仿真软件生产,详细使用说明见
机载正侧视模型条带SAR回波仿真算法与编程_爱学习的小伟的博客-CSDN博客机载正侧视模型条带SAR回波仿真算法与编程。在机载模型下,建立空间三维坐标系,并在此坐标下计算目标和雷达相位中心的位置,得到目标的距离历程;然后根据距离历程和雷达参数构造回波数据。目前本文介绍的软件只支持正侧视条带模式SAR的回波仿真,用于验证本专栏后续介绍的成像处理算法。后续将发布考虑多模式、多通道、大斜视、星载模型等的回波仿真软件https://blog.csdn.net/smyounger/article/details/124547898
也可以直接通过下面的链接下载本文使用的点目标仿真数据:
AirborneSAREcho_STRIP_Point1x1_AzChan1_Na3488_Nr1444.dat-图像处理文档类资源-CSDN下载机载模型SAR点目标仿真数据更多下载资源、学习资料请访问CSDN下载频道.https://download.csdn.net/download/smyounger/85355290AirborneSAREcho_STRIP_Point1x1_AzChan1_Na5440_Nr2338.dat-图像处理文档类资源-CSDN下载斜视SAR点目标仿真回波更多下载资源、学习资料请访问CSDN下载频道.
https://download.csdn.net/download/smyounger/85366121
测试指标时,使用SAR图像聚焦质量评价插件:SARImageFocuseQuality_v0.0,详细使用说明见
https://blog.csdn.net/smyounger/article/details/124622941https://blog.csdn.net/smyounger/article/details/124622941
CSA成像处理软件设计与接口
机载正侧视SAR模型CSA1
本方法对应的Matlab程序可以在下面的连接中下载
CS成像处理算法-机载正侧视,分步进行
调用方式:sig_image = SARImageCSA1(sig_echo, param, showimg_flag)
输入参数:
sig_echo:复回波数据
param:成像处理参数
param.sampleRate:采样率,单位Hz
param.Rnear:图像近距, 单位m
param.chirpRate:调频率,单位Hz/s,注意正负号
param.prf:PRF,单位Hz
param.lambda:信号波长,单位m
param.Vst:平台速度,单位m/s
param.Fdc:多普勒中心,单位Hz
showimg_flag:是否显示每一步的处理结果,0-不显示,1-显示
输出参数
sig_image:复图像
仿真数据1处理(一个点目标)
测试数据:AirborneSAREcho_STRIP_Point1x1_AzChan1_Na3488_Nr1444.dat
重要参数
---------------仿真数据参数---------------
回波尺寸[Na x Nr]:3488 x 1444
雷达参数:
信号波长:0.0500 m
信号带宽:100.0000 MHz
信号脉宽:10.0000 us
信号调频率:10000000000000.0000 Hz/s
信号采样率:133.0000 MHz
脉冲重复频率:3500.0000 Hz
采样时延:0.0002 us
天线参数:
方位向孔径:6.0000 m
距离向孔径:3.0000 m
方位向通道数:1
距离向通道数:1
下视角:45.0000 deg
斜视角:0.0000 deg
平台参数:
飞行速度:7000.0000 m/s
场景近距:499137.8149 m
测试主函数:SARImageCSA_SimuDataMain.m
%
clear all;
close all;
%% 常数
Vc = 299792458; % 光速
ET = pi/180;
%% 读取回波数据
echoDataPath = 'D:\EchoData\';
echoDataName = [echoDataPath 'AirborneSAREcho_STRIP_Point1x1_AzChan1_Na3488_Nr1444.dat'];
fprintf('回波数据路径:%s\n', echoDataName);
ReadSimulatedEchoData;
%% 成像处理
param.sampleRate = sampleRate;
param.Rnear = Rnear;
param.chirpRate = chirpRate;
param.prf = prf;
param.lambda = lambda;
param.Vst = Vst;
param.Fdc = 2*Vst/lambda * sin(squintAngle);
sig_image = SARImageCSA1(sig_echo, param, 1);
%% 图像输出
figure, set(gcf, 'color', 'white');
imagesc(abs(sig_image))
colormap(gray);
xlabel('Range'); ylabel('Azimuth');
%%
sliceSize = 32;
interpNum = 16;
pointSize = 512;
[Radiopara, Rgpara, Azpara] = ...
SARImageFocusedQuality1(sig_image, prf, sampleRate, Vst, sliceSize, interpNum);
fprintf('\n\n切片峰值: %f; 能量: %f; 坐标:[%d, %d]\n', Radiopara.peakVal, ...
Radiopara.pow, Radiopara.posa, Radiopara.posr);
fprintf('------- 距离向指标 -------\n');
fprintf('峰值: %8.2f ',Rgpara.max);
fprintf(' 分辨率: %4.3f', Rgpara.res);
fprintf(' 峰值旁瓣比:%5.3f', Rgpara.PSLR);
fprintf(' 积分旁瓣比:%5.3f\n', Rgpara.ISLR);
fprintf('------- 方位向指标 -------\n');
fprintf('峰值: %8.2f ',Azpara.max);
fprintf(' 分辨率: %4.3f', Azpara.res);
fprintf(' 峰值旁瓣比:%5.3f', Azpara.PSLR);
fprintf(' 积分旁瓣比:%5.3f\n', Azpara.ISLR);
fprintf('\n\n')
程序运行后,每一步结果如下所示:
|
原始回波数据(实部) |
|
方位向FFT |
|
Chirp变标 |
|
距离向FFT |
|
距离向压缩 |
距离向IFFT |
|
方位向压缩 |
|
方位向IFFT |
|
图像指标 |
机载斜视SAR模型CSA2
本方法对应的Matlab程序可以在下面的连接中下载
程序接口
CS成像处理算法-机载斜视,优化处理过程,提高处理效率
调用方式:sig_image = SARImageCSA2(sig_echo, param, showimg_flag)
输入参数:
sig_echo:复回波数据
param:成像处理参数
param.sampleRate:采样率,单位Hz
param.Rnear:图像近距, 单位m
param.chirpRate:调频率,单位Hz/s,注意正负号
param.prf:PRF,单位Hz
param.lambda:信号波长,单位m
param.Vst:平台速度,单位m/s
param.Fdc:多普勒中心,单位Hz
param.squintAngle:斜视角,单位rad,前斜视为正
showimg_flag:是否显示每一步的处理结果,0-不显示,1-显示
输出参数
sig_image:复图像
仿真数据1处理(一个点目标)
测试数据:AirborneSAREcho_STRIP_Point1x1_AzChan1_Na3488_Nr1444.dat
重要参数:
---------------仿真数据参数---------------
回波尺寸[Na x Nr]:3488 x 1444
雷达参数:
信号波长:0.0500 m
信号带宽:100.0000 MHz
信号脉宽:10.0000 us
信号调频率:10000000000000.0000 Hz/s
信号采样率:133.0000 MHz
脉冲重复频率:3500.0000 Hz
采样时延:0.0002 us
天线参数:
方位向孔径:6.0000 m
距离向孔径:3.0000 m
方位向通道数:1
距离向通道数:1
下视角:45.0000 deg
斜视角:0.0000 deg
平台参数:
飞行速度:7000.0000 m/s
场景近距:499137.8149 m
测试主函数:SARImageCSA_SimuDataMain.m
%
clear all;
close all;
%% 常数
Vc = 299792458; % 光速
ET = pi/180;
%% 读取回波数据
echoDataPath = 'D:\EchoData\';
echoDataName = [echoDataPath 'AirborneSAREcho_STRIP_Point1x1_AzChan1_Na3488_Nr1444.dat'];
fprintf('回波数据路径:%s\n', echoDataName);
ReadSimulatedEchoData;
%% 成像处理
param.sampleRate = sampleRate;
param.Rnear = Rnear;
param.chirpRate = chirpRate;
param.prf = prf;
param.lambda = lambda;
param.Vst = Vst;
param.Fdc = 2*Vst/lambda * sin(squintAngle);
param.squintAngle = squintAngle;
sig_image = SARImageCSA2(sig_echo, param,);
%% 图像输出
figure, set(gcf, 'color', 'white');
imagesc(abs(sig_image))
colormap(gray);
xlabel('Range'); ylabel('Azimuth');
%%
sliceSize = 32;
interpNum = 16;
pointSize = 512;
[Radiopara, Rgpara, Azpara] = ...
SARImageFocusedQuality1(sig_image, prf, sampleRate, Vst, sliceSize, interpNum);
fprintf('\n\n切片峰值: %f; 能量: %f; 坐标:[%d, %d]\n', Radiopara.peakVal, ...
Radiopara.pow, Radiopara.posa, Radiopara.posr);
fprintf('------- 距离向指标 -------\n');
fprintf('峰值: %8.2f ',Rgpara.max);
fprintf(' 分辨率: %4.3f', Rgpara.res);
fprintf(' 峰值旁瓣比:%5.3f', Rgpara.PSLR);
fprintf(' 积分旁瓣比:%5.3f\n', Rgpara.ISLR);
fprintf('------- 方位向指标 -------\n');
fprintf('峰值: %8.2f ',Azpara.max);
fprintf(' 分辨率: %4.3f', Azpara.res);
fprintf(' 峰值旁瓣比:%5.3f', Azpara.PSLR);
fprintf(' 积分旁瓣比:%5.3f\n', Azpara.ISLR);
fprintf('\n\n')
程序运行后,每一步结果如下所示:
|
原始回波数据(实部) |
|
变标因子相乘 |
|
距离压缩 |
|
方位压缩 |
|
图像指标 |
|
仿真数据2处理(一个点目标,斜视)
测试数据:AirborneSAREcho_STRIP_Point1x1_AzChan1_Na5440_Nr2338.dat
重要参数:
---------------仿真数据参数---------------
回波尺寸[Na x Nr]:5440 x 2338
雷达参数:
信号波长:0.0500 m
信号带宽:180.0000 MHz
信号脉宽:10.0000 us
信号调频率:18000000000000.0000 Hz/s
信号采样率:150.0000 MHz
脉冲重复频率:4500.0000 Hz
天线参数:
方位向孔径:4.0000 m
距离向孔径:3.0000 m
方位向通道数:1
距离向通道数:1
下视角:30.0000 deg
斜视角:5.0000 deg
平台参数:
飞行速度:7000.0000 m/s
场景近距:500222.9703 m
测试主函数:SARImageCSA_SimuDataMain.m
程序运行后,每一步结果如下所示:
|
原始回波数据(实部) |
|
变标因子相乘 |
|
距离压缩 |
|
方位压缩 |
|
图像指标 |
|
RadarSat-1数据(光盘)
《合成孔径雷达成像算法与实现》一书附带光盘提供了RadarSat-1的数据,这里使用本文设计的斜视CSA软件处理光盘数据。成像使用的参数如下所示。
% 雷达参数
C = 2.9979e8; % 光速
f0 = 5.3e9; % 中心频率
lambda = C/f0; % 波长
% 飞行平台
V = 7062; % 平台速度
% 距离向
Kr = -0.72135e12; % 调频率
Tr = 41.75e-6; % 脉冲持续时间
Fr = 32.317e6; % 距离向采样率
dtau = 1/Fr; % 距离向采样时间间隔
% 方位向
Ka = 1733; % 方位向调频率
Fa = 1256.98; % 方位向采样率
fc = -7050; % 多普勒中心频率
deta = 1/Fa; % 距离向采样时间间隔
% 其他参数
t0 = 6.5956e-3; % 获取数据时间
R0 = t0*C/2; % 最短斜距
读取其中一块回波数据后,绘制信号频谱,如下图所示。距离谱为什么这么离谱,难道信号频谱就是这样?
使用CSA2处理后,得到的单视幅度图像如下图所示,由于没有对回波的方位向和距离向不满足全分辨的像素进行裁剪,所以图像有明显的混叠。
上述数据处理的代码可通过本文提供的连接下载的连接获取。 相关数据,读者可购买正版光盘获取。
本博客上传的所有原创类资料,仅可用于个人学习、交流等非商业性用途。未经作者同意,不可用于任何商业用途。
如在文献、报告等文字材料中引用本博客发布的原创类资料,请注明出处。