SAR成像处理算法_BP算法

目录

BP算法基本原理

距离向脉冲压缩

划分成像网格

聚焦处理

小结

BPA成像处理软件设计与接口

机载SAR模型BPA1

程序接口

仿真数据1处理(一个点目标)


 仿真数据使用前面介绍的机载SAR回波仿真软件生产,详细使用说明见

机载正侧视模型条带SAR回波仿真算法与编程_爱学习的小伟的博客-CSDN博客机载正侧视模型条带SAR回波仿真算法与编程。在机载模型下,建立空间三维坐标系,并在此坐标下计算目标和雷达相位中心的位置,得到目标的距离历程;然后根据距离历程和雷达参数构造回波数据。目前本文介绍的软件只支持正侧视条带模式SAR的回波仿真,用于验证本专栏后续介绍的成像处理算法。后续将发布考虑多模式、多通道、大斜视、星载模型等的回波仿真软件https://blog.csdn.net/smyounger/article/details/124547898?spm=1001.2014.3001.5501
也可以直接通过下面的链接下载本文使用的点目标仿真数据:
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,详细使用说明见

SAR图像聚焦质量评价插件_爱学习的小伟的博客-CSDN博客SAR图像指令评价 分辨率 峰值旁瓣比 积分旁瓣比https://blog.csdn.net/smyounger/article/details/124622941?spm=1001.2014.3001.5501

        后向投影算法(Back Projection Algorithm)是一种在时域直接对回波数据进行成像处理的算法。只要能够确定待成像场景的距离历程,该方法理论上可以对任意模式、任意几何模型下获取的获取数据进行聚焦处理。但是,该方法需要计算每一个方位采样时刻下,所有网格(也可以理解为所有采样点)的距离历程,所以运算量很大,如不做优化,效率极低。

BP算法基本原理

BP算法的思想非常朴素和直观,基本处理流程如下图(下图来源于网络)所示:

SAR成像处理算法_BP算法_第1张图片

详细的步骤描述如下:

  • 对原始回波数据进行距离向脉冲压缩;
  • 对成像场景分块,划分网格,并计算每一个网格的坐标点;
    1. 分块可以在斜距平面上进行,也可以在地距平面上进行;
    2. 分块的大小可以直接设置为每个采样单元的尺寸,也可以按照其他原则进行;
  • 从第一条采样脉冲(即第一个方位向采样点)开始,计算该时刻雷达与成像区域每个网格的距离,和所有网格距离相对成像场景近距的时间延迟;
    1. 为了提高处理效率,可以根据波束宽度等信息计算成像区域的合成孔径时间,只计算网格有效合成孔径时间内的距离历程;
  • 根据上一步计算的时间延迟,计算所有网格在脉冲时刻的距离徙动量,以此为依据计算对应的回波数据值,并与上一个脉冲的回波值相加;
    1. 累加前,要补偿不同距离历程引入的相位误差;
    2. 为了提高距离徙动校正精度,可以先对距离向压缩后的信号进行插值,然后在进行距离里徙动校正;
    3. 本步骤要遍历所有的网格,即可完成当前脉冲时刻信号的聚焦;
  • 遍历所有的方位时刻,即可完成成像场景的全分辨率成像;

下面以一个仿真点目标为例,介绍BP算法的每一步操作。处理前,点目标实部信号如下图所示。

测试数据:AirborneSAREcho_STRIP_Point1x1_AzChan1_Na3488_Nr1444.dat

SAR成像处理算法_BP算法_第2张图片

距离向脉冲压缩

对上述信号进行距离向脉冲压缩后,图像如下图所示。

SAR成像处理算法_BP算法_第3张图片

划分成像网格

以条带模式为例,网格划分示意图如下。

SAR成像处理算法_BP算法_第4张图片

 网格大小选取原则:与回波采样单元的尺寸相当或略小。

聚焦处理

        根据雷达位置与网格点坐标,计算雷达与网格点之间的距离,以及该距离与参考距离之间的时延。通常,参考距离为中心斜距。根据时延即可在时域回波数据中找到对应的回波数据。

        然而,雷达与网格点实际距离对应的回波数据,通常与划分的网格不会重合,所有无法直接从回波数据中获取当前网格的值,如下图所示。对成像区域划分网格,如左图所示,选取其中一个红点为例,假设该网格点的距离历程为R(t),如右图红点所示;按照雷达参数,每个回波的采样单元分布如右图灰色点所示,显然红点与灰点没有重合。

SAR成像处理算法_BP算法_第5张图片

        解决上面采样点和网格点不重合的方法是插值:以红色实心点所在的脉冲为例,蓝色实心点为雷达采样点,是已知量;红色实心点是网格位置的采样点,是待求量。那么,使用插值的方式,即可得到红点的值。使用同样的方式,可以得到其他所有红色圆圈的值,最后累加插值得到的值,即可得到该网格的全分辨率图像。

下文介绍的sinc插值,可以解决上述问题,且精度可以通过增加插值核长度来保证。

https://blog.csdn.net/smyounger/article/details/123532859?csdn_share_tail=%7B%22type%22%3A%22blog%22%2C%22rType%22%3A%22article%22%2C%22rId%22%3A%22123532859%22%2C%22source%22%3A%22smyounger%22%7D&ctrtid=cAbiHhttps://blog.csdn.net/smyounger/article/details/123532859?csdn_share_tail=%7B%22type%22%3A%22blog%22%2C%22rType%22%3A%22article%22%2C%22rId%22%3A%22123532859%22%2C%22source%22%3A%22smyounger%22%7D&ctrtid=cAbiHSAR成像处理算法_BP算法_第6张图片

小结

BP算法有以下特点:

  • 原理简单朴素,容易理解;
  • 没有傅里叶变换,可以天然的避免方位向欠采样等的影响;
  • 运算量大,处理效率低,难以工程化。

BPA成像处理软件设计与接口

机载SAR模型BPA1

 本方法对应的Matlab程序可以在下面的连接中下载

SARImage_BPA_v0.0_CSDN_release.zip-图像处理文档类资源-CSDN下载SAR成像处理算法,BP算法更多下载资源、学习资料请访问CSDN下载频道.https://download.csdn.net/download/smyounger/85389628

程序接口

BP成像处理算法
  调用方式:sig_image = SARImageBPA1(sig_echo, param)
  输入参数:
    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.lookAngle:下视角,单位rad,左侧视为正
          param.squintAngle:斜视角,单位rad,前斜视为正
          param.IaSize:成像网格方位向点数
          param.IrSize:成像网格距离向点数
  输出参数
    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

测试主函数:SARImageBPA_SimuDataMain.m

%
clear all;
close all;

%% 常数
Vc = 299792458;                % 光速
ET = pi/180;

%% 读取回波数据
echoDataPath = 'D:\EchoData\';
echoDataName = [echoDataPath 'AirborneSAREcho_STRIP_Point1x1_AzChan1_Na3488_Nr1444.dat']; % 正侧视,2.7m分辨率

fprintf('回波数据路径:%s\n', echoDataName);
ReadSimulatedEchoData;
figure, imagesc(abs(real(sig_echo)))
title('原始回波数据实部')
xlabel('实部');
ylabel('虚部');

%% BP
param.sampleRate = sampleRate;
param.Rnear = Rnear;
param.chirpRate = chirpRate;
param.prf = prf;
param.lambda = lambda;
param.Vst = Vst;
param.lookAngle = lookAngle;
param.squintAngle = squintAngle;
param.IaSize = 32;
param.IrSize = 256;
sig_image = SARImageBPA1(sig_echo, param);

%% 图像输出
figure, set(gcf, 'color', 'white');
imagesc(abs(sig_image))
colormap(gray); 
xlabel('Range'); ylabel('Azimuth');

%%
sliceSize = 16;
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')

程序运行结果如下所示。

SAR成像处理算法_BP算法_第7张图片

SAR成像处理算法_BP算法_第8张图片

SAR成像处理算法_BP算法_第9张图片

本博客上传的所有原创类资料,仅可用于个人学习、交流等非商业性用途。未经作者同意,不可用于任何商业用途。
如在文献、报告等文字材料中引用本博客发布的原创类资料,请注明出处。

你可能感兴趣的:(合成孔径雷达,SAR,后向投影算法,BP算法)