阵列信号处理_对比常规波束形成法(CBF)和Capon算法

2023-11-09 17:20

本文主要是介绍阵列信号处理_对比常规波束形成法(CBF)和Capon算法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

空间谱估计

利用电磁波信号来获取目标或信源相对天线阵列的角度信息的方式,也称测向、波达方向估计(DOA)。主要应用于雷达、通信、电子对抗和侦察等领域。

发展

  • 常规波束形成(CBF)。本质是时域傅里叶变换在空域直接应用,分辨力受限于瑞利限;
  • Capon自适应波束形成(1969年)。本质将维纳(Wiener)滤波思想应用于空域处理;但未利用噪声统计特性,对分辨力提升有限;
  • 信号子空间类方法:多重信号分类(MUSIC)法(1986年)和旋转不变子空间(ESPRIT)法(1989年);
  • 最大似然估计法(1990年);
  • 压缩感知或稀疏恢复DOA方法(2006年~2015年);

常规波束形成法(Conventional Beamforming,CBF)

在这里插入图片描述

在这里插入图片描述

物理含义:

1、对回拨数据做空域傅里叶变换,得到数据在各方向功率值;

2、在各个角度做相参积累。

缺点:受限于瑞利限,当来向角接近时,无法分辨
在这里插入图片描述

Capon算法 或 最小方差无失真响应(MVDR)

自适应信号处理器

根据阵列输入信号及输出信号自适应形成权矢量,不同权矢量可将形成的波束指向不同方向,对期望信号得到最大输出功率的方向即信号入射方向。

在这里插入图片描述

波束形成的最优权:

保证某确定方向 θ d \theta_d θd 信号能正确接收,而其它入射方向信号被干扰或被完全抑制

在这里插入图片描述
实际应用中,不知道目标来向 θ d \theta_d θd ,只能通过扫描得到谱曲线

在这里插入图片描述

仿真对比

%%% 公共仿真条件:d=lambda/2,两目标来向角分别为10°和20°,估计R快拍数=500,阵元数为16
%%% 变化参数:SNR为5dB、10dB、15dB、20dB四种情况
%% 参数设置
source_number=2;              %信元数=2
sensor_number=16;             %阵元数16个
Signal_length=500;            %信号长度
snapshot_number=Signal_length;%估计R快拍数=500
w=[pi/4 pi/6].';              %信号频率
lambda=((2*pi*3e8)/w(1)+(2*pi*3e8)/w(2))/2;%信号波长  
d=0.5*lambda;                 %阵元间距
source_doa=[10 20];           %两个信号的入射角度即目标来向角:10°和20°
snr=[5,10,15,20];             %信噪比SNR为5dB、10dB、15dB、20dB四种情况

变化SNR时结果对比

%%% 公共仿真条件:d=lambda/2,两目标来向角分别为10°和20°,SNR=10dB,阵元数为16
%%% 变化参数:估计R快拍数为:20、50、100、500四种情况
Signal_length=[20,50,100,500];%信号长度
snapshot_number=Signal_length;%估计R快拍数

变化R快拍数时估计结果对比

%%% 公共仿真条件:d=lambda/2,两目标来向角分别为10°和20°,SNR=20dB,估计R快拍数=100
%%% 变化参数:阵元数分别为8、16、24、32四种情况
sensor_number=[8,16,24,32];     %变化参数:阵元数  仿真8、16、24、32四种情况

变化阵元数时仿真结果对比

这篇关于阵列信号处理_对比常规波束形成法(CBF)和Capon算法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/377517

相关文章

Linux中的more 和 less区别对比分析

《Linux中的more和less区别对比分析》在Linux/Unix系统中,more和less都是用于分页查看文本文件的命令,但less是more的增强版,功能更强大,:本文主要介绍Linu... 目录1. 基础功能对比2. 常用操作对比less 的操作3. 实际使用示例4. 为什么推荐 less?5.

使用雪花算法产生id导致前端精度缺失问题解决方案

《使用雪花算法产生id导致前端精度缺失问题解决方案》雪花算法由Twitter提出,设计目的是生成唯一的、递增的ID,下面:本文主要介绍使用雪花算法产生id导致前端精度缺失问题的解决方案,文中通过代... 目录一、问题根源二、解决方案1. 全局配置Jackson序列化规则2. 实体类必须使用Long封装类3.

基于Go语言实现Base62编码的三种方式以及对比分析

《基于Go语言实现Base62编码的三种方式以及对比分析》Base62编码是一种在字符编码中使用62个字符的编码方式,在计算机科学中,,Go语言是一种静态类型、编译型语言,它由Google开发并开源,... 目录一、标准库现状与解决方案1. 标准库对比表2. 解决方案完整实现代码(含边界处理)二、关键实现细

PostgreSQL 序列(Sequence) 与 Oracle 序列对比差异分析

《PostgreSQL序列(Sequence)与Oracle序列对比差异分析》PostgreSQL和Oracle都提供了序列(Sequence)功能,但在实现细节和使用方式上存在一些重要差异,... 目录PostgreSQL 序列(Sequence) 与 oracle 序列对比一 基本语法对比1.1 创建序

Springboot实现推荐系统的协同过滤算法

《Springboot实现推荐系统的协同过滤算法》协同过滤算法是一种在推荐系统中广泛使用的算法,用于预测用户对物品(如商品、电影、音乐等)的偏好,从而实现个性化推荐,下面给大家介绍Springboot... 目录前言基本原理 算法分类 计算方法应用场景 代码实现 前言协同过滤算法(Collaborativ

exfat和ntfs哪个好? U盘格式化选择NTFS与exFAT的详细区别对比

《exfat和ntfs哪个好?U盘格式化选择NTFS与exFAT的详细区别对比》exFAT和NTFS是两种常见的文件系统,它们各自具有独特的优势和适用场景,以下是关于exFAT和NTFS的详细对比... 无论你是刚入手了内置 SSD 还是便携式移动硬盘或 U 盘,都需要先将它格式化成电脑或设备能够识别的「文

openCV中KNN算法的实现

《openCV中KNN算法的实现》KNN算法是一种简单且常用的分类算法,本文主要介绍了openCV中KNN算法的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的... 目录KNN算法流程使用OpenCV实现KNNOpenCV 是一个开源的跨平台计算机视觉库,它提供了各

springboot+dubbo实现时间轮算法

《springboot+dubbo实现时间轮算法》时间轮是一种高效利用线程资源进行批量化调度的算法,本文主要介绍了springboot+dubbo实现时间轮算法,文中通过示例代码介绍的非常详细,对大家... 目录前言一、参数说明二、具体实现1、HashedwheelTimer2、createWheel3、n

SpringBoot实现MD5加盐算法的示例代码

《SpringBoot实现MD5加盐算法的示例代码》加盐算法是一种用于增强密码安全性的技术,本文主要介绍了SpringBoot实现MD5加盐算法的示例代码,文中通过示例代码介绍的非常详细,对大家的学习... 目录一、什么是加盐算法二、如何实现加盐算法2.1 加盐算法代码实现2.2 注册页面中进行密码加盐2.

Python实现Microsoft Office自动化的几种方式及对比详解

《Python实现MicrosoftOffice自动化的几种方式及对比详解》办公自动化是指利用现代化设备和技术,代替办公人员的部分手动或重复性业务活动,优质而高效地处理办公事务,实现对信息的高效利用... 目录一、基于COM接口的自动化(pywin32)二、独立文件操作库1. Word处理(python-d