SAR最小熵自聚焦算法
项目介绍
本项目实现了合成孔径雷达(SAR)及合成孔径激光雷达(SAL)成像中的最小熵自聚焦(MEA)算法。该算法通过优化图像的熵值来估计并补偿方位向的残余相位误差。当图像熵达到最小时,图像的聚焦效果通常达到最优,主瓣被压缩,副瓣得到抑制,目标的几何轮廓变得清晰。该算法尤其擅长处理传统PGA算法难以解决的高阶非线性相位误差,且不依赖强散射点。
功能特性
- 多目标场景仿真:自动生成包含多个点目标的标准SAR成像场景,用于算法验证。
- 高阶相位污染模拟:模拟注入包含二次、三次及四次项的复高阶非线性相位误差,体现算法对复杂运动误差的纠正能力。
- 自适应迭代寻优:基于梯度下降法进行相位矢量的迭代搜索,支持自适应步长调整。
- 图像熵指标监控:实时计算并记录迭代过程中的图像熵变化,可视化展示算法的收敛过程。
- 多维度结果评估:提供校正前后的二维图像对比、相位误差曲线对比以及方位向冲激响应(dB)切片分析。
使用方法
- 环境准备:确保计算机已安装运行环境。
- 执行流程:在命令行窗口直接运行主程序脚本。
- 交互输出:程序将自动执行建模、注入误差、迭代优化及绘图逻辑,无需人工干预。
- 结果查看:待迭代完成后,程序会弹出两个对比窗口,分别展示二维图像质量的提升情况以及方位向切片的聚焦性能指标。
系统要求
- 软件环境:MATLAB R2016b 或更高版本。
- 基础工具:无需特殊工具箱,主要依赖矩阵运算及FFT功能。
- 硬件建议:标准桌面级配置即可满足 128x256 规模数据的实时处理。
实现逻辑与功能说明
代码逻辑严格遵循自聚焦处理的标准流程:
1. 信号建模与误差注
程序首先在空间域定义点目标分布,通过方位向FFT将其变换至方位频率域(距离-多普勒域)。随后根据数学公式生成一个四次多项式相位矢量,并将其通过乘法运算注入到频谱中,模拟平台非理想运动造成的相位缺失。
2. 最小熵自聚焦核心迭代
这是算法的核心部分,包含以下子步骤:
- 图像熵计算:将当前补偿后的复数图像转换为强度分布,计算归一化后的香农熵。
- 梯度计算:根据最小熵准则,利用图像强度分布的加权值对当前相位进行偏导数推导。梯度计算考虑了图像强度与平均能量的对数关系。
- 相位更新:采用最速下降法,利用计算得到的梯度矢量更新相位补偿矢量。通过设置初始学习率,确保收敛的稳定性。
- 补偿与反馈:在方位频率域应用新的相位矢量进行修正,并利用IFFT返回图像空间域,进行下一次迭代。
3. 收敛控制
程序预设了最大迭代次数(100次)及收敛阈值(1e-6)。当连续两次迭代之间的熵值变化量小于阈值时,程序判断算法已收敛并提前跳出循环,以节省计算资源。
4. 结果量化与可视化
- 二维对比:展示污染图像与校正图像的幅度分布。
- 相位吻合度:对比预设的真实相位误差与算法估计出的相位矢量。
- 性能曲线:绘制熵值随迭代次数下降的曲线,证明优化的有效性。
- 切片分析:对中心点目标进行方位向切片,并以对数(dB)形式对比校正前后的主瓣宽度和副瓣电平。
关键技术细节分析
- 梯度正则化:在每一代更新中,对梯度矢量进行了单位化处理(除以其范数),目的是防止由于图像能量波动导致步长过大,从而保证了迭代的平稳性。
- 防止数值异常:在计算熵损失函数的对数项时,引入了微小正数(eps),避免了在图像背景区域出现 $log(0)$ 的数值错误。
- 相位补偿策略:校正过程是在方位向频谱域通过点乘共轭相位向量实现的,这符合合成孔径成像中的相位误差补偿理论。
- 零均值化处理:在最后的相位对比图中,对估计出的相位进行了去均值处理,消除了常数项相位偏移对对比结果的影响,更准确地反映了对高阶项的拟合能力。