基于OMP正交匹配追踪和稀疏字典构造的杂波谱恢复算法matlab仿真

目录

1.引言

2.算法测试效果

3.算法涉及理论知识概要

[3.1 MIMO杂波信号模型](#3.1 MIMO杂波信号模型)

[3.2 杂波协方差矩阵的稀疏求解](#3.2 杂波协方差矩阵的稀疏求解)

[3.3 稀疏字典构造](#3.3 稀疏字典构造)

4.MATLAB核心程序

5.完整算法代码文件获得


本文提出基于OMP正交匹配追踪和稀疏字典构造的机载MIMO雷达杂波谱恢复算法。针对传统稀疏字典存在的网格失配问题,通过沿杂波脊线及其垂直方向构建网格,从源头提高杂波谱恢复精度。算法建立了MIMO杂波信号模型,推导了杂波协方差矩阵的稀疏求解方法,并详细阐述了基于先验知识的稀疏字典构造流程。

1.引言

机载MIMO雷达的空时自适应处理是杂波背景下检测运动目标的核心技术,其性能依赖于精准的杂波协方差矩阵估计。但实际环境中杂波的非均匀性导致训练样本数难以满足RMB准则要求,稀疏恢复技术的引入有效解决了这一问题,却因传统稀疏字典存在网格失配问题影响杂波谱恢复精度。针对该问题,本文提出基于OMP正交匹配追踪和稀疏字典构造的杂波谱恢复算法。

2.算法测试效果

3.算法涉及理论知识概要

3.1 MIMO杂波信号模型

机载MIMO雷达采用均匀线阵体制,设发射阵元数为M、接收阵元数为N,1个相干处理间隔内发射K个脉冲,脉冲重复频率为fr,工作波长为λ,发射与接收阵元间距均为dr=λ/2。杂波块的空间频率fs与多普勒频率fd由其俯仰角φ、方位角θ及载机速度V决定,对应的空时导向矢量为:

式中γ为发射与接收阵元间距之比。空间频率与多普勒频率的物理表达式为:

正侧视条件下,杂波脊线的多普勒频率与空间频率之比为折叠系数β,可由先验知识精确求得:

3.2 杂波协方差矩阵的稀疏求解

杂波在空时二维平面具有稀疏性,可由超完备字典近似表示为xc=ψσ,其中ψ为字典矩阵,σ为稀疏参数矢量。稀疏恢复问题转化为l0范数最小化问题:

3.3 稀疏字典构造

利用先验知识确定精准杂波脊线,沿脊线方向及其垂直方向构建网格,通过基向量组合确定网格节点的空时坐标,最终削减超范围原子得到最终字典,从源头消除网格失配。正侧视条件下杂波脊线为直线,斜率k=1/β可精准估计。具体构造步骤如下:

步骤1:确定核心参数与折叠系数;

步骤2:定义网格基向量与模值;

步骤3:确定网格节点的空时坐标;

步骤4:削减字典范围以保证精度;

当折叠系数β=0.7时,传统字典的网格节点与杂波脊线存在明显偏移,网格失配问题突出;而所提字典沿杂波脊线及垂直方向构建网格,杂波脊线精准落在网格节点上,从源头消除了网格失配。

4.MATLAB核心程序

复制代码
%杂波协方差矩阵的求解
R      = zeros(M*N_zy,M*N_zy);                     
S      = zeros(M*N_zy,Cm);                   
deltas = 10^(CNR/10)*(randn(1,Cm)+j*randn(1,Cm))/sqrt(2);     

for ii = 1:Cm
    S(:,ii) = kron(Va_fs(:,ii),Vb_fs(:,ii));  
    
    R       = R + deltas(ii).*(S(:,ii)*S(:,ii)');       
end
%干扰协方差矩阵
R = R +eye(M*N_zy);
%OMP
for ii = 1:M*N_zy
    Ys(1:M*N_zy,ii)=func_omp(R(:,ii),S(:,ii)*S(:,ii)',150);
end
invR    = inv(Ys);
invR    = invR.*(1+randn(size(invR))/100);   
Pmn = zeros(Cm,Cm);
%杂波空时功率谱
for ii = 1:Cm
    for jj = 1:Cm
        SS         = kron(Va_fs(:,ii),Vb_fs(:,jj));   
        Pmn(ii,jj) = 1./(SS'*invR*SS);
    end
end        
figure
plot(vfd1/pi,10*log10(abs(SINR(floor(length(vfd1)/2),:))),'r-.','linewidth',2);
hold on
xlabel('归一化Dopple频率');
ylabel('归一化SINR(dB)');
grid on
title('SINR对比图');
% legend('改进字典','传统字典');
xlim([-0.5,0.5]);
save OMP.mat
01_240m

5.完整算法代码文件获得

完整程序见博客首页左侧或者打开本文底部GZH名片

(V关注后回复码:X125)

V

相关推荐
云青黛1 小时前
ReAct(推理与行动)框架
python·算法
im_AMBER2 小时前
Leetcode 142 将有序数组转换为二叉搜索树 | 排序链表
算法·leetcode
码农三叔2 小时前
(10-5-01)大模型时代的人形机器人感知:基于RoboBrain大模型的人形机器人通用智能感知系统(1)构建模型
人工智能·算法·机器人·人形机器人
scott1985122 小时前
扩散模型之(十三)条件生成 Conditioned Generation
人工智能·算法·生成式
英英_2 小时前
优化 MATLAB MapReduce 程序性能:从基础调优到进阶提速
开发语言·matlab·mapreduce
Wect2 小时前
LeetCode 53. 最大子数组和:两种高效解法(动态规划+分治)
前端·算法·typescript
春日见2 小时前
端到端自动驾驶综述
linux·人工智能·算法·机器学习·自动驾驶
Book思议-2 小时前
【数据结构实战】单向循环单链表判别条件理解
c语言·数据结构·算法
逆境不可逃2 小时前
【后端新手谈 04】Spring 依赖注入所有方式 + 构造器注入成官方推荐的原因
java·开发语言·spring boot·后端·算法·spring·注入方式