现代谱估计的原理及MATLAB仿真(二)(AR模型法、MVDR法、MUSIC法)

现代谱估计的原理及MATLAB仿真AR参数模型法(参数模型功率谱估计)、MVDR法(最小方差无失真响应法)、MUSIC法(多重信号分类法)

文章目录

  • 前言
  • 一、AR参数模型
    • 1 原理
    • 2 MATLAB仿真
  • 二、MVDR法
    • 1 原理
    • 2 MATLAB仿真
  • 三、MUSIC法
    • 1 原理
    • 2 MATLAB仿真
  • 四、3种方法的对比
  • 五、MATLAB源代码


前言

           \;\;\;\;\; 现代功率谱估计方法包括AR参数模型法(参数模型功率谱估计)、MVDR法(最小方差无失真响应法)、MUSIC法(多重信号分类法)。本文在总结各种方法的原理后在MATLAB平台上完成了仿真,完成了对信号频率的估计,仿真不同大小的阶数对信号频率估计的影响以及这三种方法之间的对比。


提示:以下是本篇文章正文内容,转载请附上链接!

一、AR参数模型

1 原理

           \;\;\;\;\; AR的全称是auto-regressive(自回归)参数模型。该模型功率谱估计的基本思想是,认为随机过程 u ( n ) u(n) u(n)就是白噪声通过LTI离散时间系统得到的响应,利用观测样本值估计出模型的参数(即得到频率响应 H ( ω ) H(\omega) H(ω)),也就得到了随机过程 u ( n ) u(n) u(n)的功率谱 S ( ω ) = ∣ H ( ω ) ∣ 2 σ 2 S(\omega)=\mid H(\omega)\mid^2\sigma^2 S(ω)=∣H(ω)2σ2
           \;\;\;\;\; v ( n ) v(n) v(n)是零均值、方差为 σ 2 \sigma^2 σ2的白噪声。则 p p p 阶 AR( p p p) 模型的输人 v ( n v(n v(n)和输出 u ( n ) u(n) u(n)满足如下差分方程:
u ( n ) = − ∑ k = 1 p a k u ( n − k ) + v ( n ) u(n)=-\sum_{k=1}^pa_ku(n-k)+v(n) u(n)=k=1paku(nk)+v(n)那么AR模型的正则方程式可表示为
r u ( 0 ) + a 1 r u ( − 1 ) + ⋅ ⋅ ⋅ + a p r u ( − p ) = σ 2 r_u(0)+a_1r_u(-1)+\cdotp\cdotp\cdotp+a_pr_u(-p)=\sigma^2 ru(0)+a1ru(1)+⋅⋅⋅+apru(p)=σ2
[ r u ( 0 ) r u ( − 1 ) ⋯ r u ( − p + 1 ) r u ( 1 ) r u ( 0 ) ⋯ r u ( − p + 2 ) ⋮ ⋮ ⋱ ⋮ r u ( p − 1 ) r u ( p − 2 ) ⋯ r u ( 0 ) ] [ a 1 a 2 ⋮ a p ] = [ − r u ( 1 ) − r u ( 2 ) ⋮ − r u ( p ) ] \begin{bmatrix}r_u(0)&r_u(-1)&\cdots&r_u(-p+1)\\r_u(1)&r_u(0)&\cdots&r_u(-p+2)\\\vdots&\vdots&\ddots&\vdots\\r_u(p-1)&r_u(p-2)&\cdots&r_u(0)\end{bmatrix}\begin{bmatrix}a_1\\a_2\\\vdots\\a_p\end{bmatrix}=\begin{bmatrix}-r_u(1)\\-r_u(2)\\\vdots\\-r_u(p)\end{bmatrix} ru(0)ru(1)ru(p1)ru(1)ru(0)ru(p2)ru(p+1)ru(p+2)ru(0) a1a2ap = ru(1)ru(2)ru(p) 上式可简单地表示为
R p θ p = − r p {\boldsymbol{R}}_p\boldsymbol{\theta}_p=-\boldsymbol{r}_p Rpθp=rp 其中, r p = [ r u ( 1 ) r u ( 2 ) ⋯ r u ( p ) ] T \boldsymbol r_{p}=\begin{bmatrix}r_{u}(1)&r_{u}(2)&\cdots&r_{u}(p)\end{bmatrix}^{\mathrm{T}} rp=[ru(1)ru(2)ru(p)]T。因矩阵 R ρ {\boldsymbol{R}}_{\rho} Rρ 是非奇异的,对上式两边左乘 R p − 1 {\boldsymbol{R}}_p^{-1} Rp1,有
θ p = − R p − 1 r p \boldsymbol{\theta}_p=-{\boldsymbol{R}}_p^{-1}\boldsymbol r_{p} θp=Rp1rp θ p \boldsymbol{\theta}_p θp 代人含有 σ 2 \sigma^2 σ2的那个式子中即可得到 σ 2 \sigma^2 σ2
           \;\;\;\;\; 随机过程 u ( n ) u(n) u(n)的功率谱可由下式给出:
S A R ( ω ) = σ 2 ∣ 1 + ∑ k = 1 p a k e − j ω k ∣ 2 S_{\mathrm{AR}}(\omega)=\frac{\sigma^2}{\left|1+\sum_{k=1}^pa_k\mathrm{e}^{-\mathrm{j}\omega k}\right|^2} SAR(ω)=1+k=1pakejωk2σ2

2 MATLAB仿真

           \;\;\;\;\; 仿真采用的信号为复正弦信号。参数设置和仿真结果如下:
在这里插入图片描述
在这里插入图片描述
           \;\;\;\;\; 从以上结果可看出,阶数为8时,20MHz和22MHz的两个信号不能被区分,但当阶数为16时,20MHz和22MHz的两个信号可以被区分,所以估计信号频率时阶数的选择十分重要。

二、MVDR法

1 原理

           \;\;\;\;\; 最小方差无失真响应(MVDR , minimum variance distortionless response)算法,是另一类信号频率估计方法。考虑有 M M M 个权系数的横向滤波器,如下图所示。
在这里插入图片描述
           \;\;\;\;\; 滤波器的输入为随机过程 x ( n ) x(n) x(n) ,输出为
y ( n ) = ∑ i = 0 M − 1 w i ∗ x ( n − i ) y(n)=\sum_{i=0}^{M-1}w_i^*x(n-i) y(n)=i=0M1wix(ni)其中 , w i ,w_i ,wi 表示横向滤波器的权系数。定义输人信号向量和权向量分别为
x ( n ) = [ x ( n ) x ( n − 1 ) ⋯ x ( n − M + 1 ) ] T w = [ w 0 w 1 ⋯ w M − 1 ] T \begin{aligned}&\boldsymbol{x}(n)=\begin{bmatrix}x(n)&x(n-1)&\cdots&x(n-M+1)\end{bmatrix}^\mathrm{T}\\&\boldsymbol{w}=\begin{bmatrix}w_0&w_1&\cdots&w_{M-1}\end{bmatrix}^\mathrm{T}\end{aligned} x(n)=[x(n)x(n1)x(nM+1)]Tw=[w0w1wM1]T 则输出可表示为
y ( n ) = w H x ( n ) = x T ( n ) w ∗ y(n)=\boldsymbol w^\mathrm{H}\boldsymbol x(n)=\boldsymbol x^\mathrm{T}(n)\boldsymbol w^* y(n)=wHx(n)=xT(n)w 信号 y ( n ) y(n) y(n)的平均功率可以表示为
P = E { ∣ y ( n ) ∣ 2 } = E { w H x ( n ) x H ( n ) w } = w H R w P= \mathbb{E} \{ \mid y( n) \mid ^2\} = \mathbb{E} \{ \boldsymbol w^\mathrm{H} \boldsymbol x( n) \boldsymbol x^\mathrm{H} ( n) \boldsymbol w\} = \boldsymbol w^\mathrm{H} \boldsymbol {Rw} P=E{y(n)2}=E{wHx(n)xH(n)w}=wHRw其中,矩阵 R ∈ C M × M \boldsymbol R\in\mathbb{C}^{M\times M} RCM×M为向量 x ( n ) \boldsymbol x(n) x(n) M M M 维自相关矩阵,即
R = E { x ( n ) x H ( n ) } = [ r ( 0 ) r ( 1 ) ⋯ r ( M − 1 ) r ( − 1 ) r ( 0 ) ⋯ r ( M − 2 ) ⋮ ⋮ ⋱ ⋮ r ( 1 − M ) r ( 2 − M ) ⋯ r ( 0 ) ] \begin{gathered}\boldsymbol R=E\{\boldsymbol x(n)\boldsymbol x^H(n)\}=\begin{bmatrix}r(0)&r(1)&\cdots&r(M-1)\\r(-1)&r(0)&\cdots&r(M-2)\\\vdots&\vdots&\ddots&\vdots\\r(1-M)&r(2-M)&\cdots&r(0)\end{bmatrix}\end{gathered} R=E{x(n)xH(n)}= r(0)r(1)r(1M)r(1)r(0)r(2M)r(M1)r(M2)r(0)
           \;\;\;\;\; 当权向量取
w ^ M V D R = R ^ − 1 a ( ω ) a H ( ω ) R ^ − 1 a ( ω ) \hat{w}_{\mathrm{MVDR}}=\frac{\hat{\boldsymbol R}^{-1}\boldsymbol{a}(\omega)}{\boldsymbol{a}^{\mathrm{H}}(\omega)\boldsymbol{\hat{R}}^{-1}\boldsymbol{a}(\omega)} w^MVDR=aH(ω)R^1a(ω)R^1a(ω) 则 MVDR 谱估计为
P ^ M V D R ( ω ) = 1 a H ( ω ) R ^ − 1 a ( ω ) \hat{P}_{\mathrm{MVDR}}(\omega)=\frac1{\boldsymbol a^{\mathrm{H}}(\omega)\hat{\boldsymbol R}^{-1}\boldsymbol a(\omega)} P^MVDR(ω)=aH(ω)R^1a(ω)1 其中
a ( ω ) = [ 1 e − j ω ⋯ e − j ω ( M − 1 ) ] T \boldsymbol{a}(\omega)=\begin{bmatrix} 1 & \mathrm{e}^{-\mathrm{j}\omega} & \cdots & \mathrm{e}^{-\mathrm{j}\omega(M-1)} \end{bmatrix}^\mathrm{T} a(ω)=[1ejωejω(M1)]T 有信号的频率处会呈现出一个峰值。

2 MATLAB仿真

           \;\;\;\;\; 仿真采用的信号为复正弦信号。参数设置和仿真结果如下:
在这里插入图片描述
在这里插入图片描述
           \;\;\;\;\; 从以上结果可看出,阶数为16时,20MHz和22MHz的两个信号不能被区分,但当阶数为32时,20MHz和22MHz的两个信号可以被区分。

三、MUSIC法

1 原理

           \;\;\;\;\; 信号频率估计的多重信号分类(MUSIC,multiple signal classification)算法,该算法于1979年由R.O.MUSIC算法利用了信号子空间和噪声子空间的正交性,构造空间谱函数,通过谱峰搜索,估计信号频率。
           \;\;\;\;\; 根据 N N N 个观测样本值 x ( 0 ) , x ( 1 ) , . . . , x ( N − 1 ) x(0),x(1),...,x(N-1) x(0),x(1),...,x(N1),估计自相关矩 R ^ ∈ C M × M \hat{\boldsymbol{R}}\in\mathbb{C}^{M\times M} R^CM×M。对 R ^ \hat{\boldsymbol R} R^ 进行特征分解,得到 M − K M-K MK 个最小特征值对应的特征向量,即得到噪声子空间的向量,构造矩阵 G \boldsymbol G G
G = [ u K + 1 u K + 2 ⋯ u M ] \boldsymbol G=\begin{bmatrix}\boldsymbol u_{K+1} & \boldsymbol u_{K+2} & \cdots & \boldsymbol u_M\end{bmatrix} G=[uK+1uK+2uM] [ − π , π ] [-\pi,\pi] [π,π]内改变 ω \omega ω,计算下式的值, 峰值位置就是信号频率的估计值。
P ^ M U S I C ( ω ) = 1 a H ( ω ) G G H a ( ω ) = 1 ∑ i = K + 1 M ∣ a H ( ω ) u i ∣ 2 \hat{P}_{\mathrm{MUSIC}}(\omega)=\frac{1}{\boldsymbol{a}^{\mathrm{H}}(\omega)\boldsymbol{G}\boldsymbol{G}^{\mathrm{H}}\boldsymbol{a}(\omega)}=\frac{1}{\sum_{i=K+1}^{M}\mid\boldsymbol{a}^{\mathrm{H}}(\omega)\boldsymbol{u}_{i}\mid^{2}} P^MUSIC(ω)=aH(ω)GGHa(ω)1=i=K+1MaH(ω)ui21

2 MATLAB仿真

           \;\;\;\;\; 仿真采用的信号为复正弦信号。参数设置和仿真结果如下:
在这里插入图片描述
在这里插入图片描述
           \;\;\;\;\; 从以上结果可看出,阶数为8时,20MHz和22MHz的两个信号不能被区分,但当阶数为16时,20MHz和22MHz的两个信号可以被区分。

四、3种方法的对比

           \;\;\;\;\; 参数设置如下,扫描点数和FFT点数相同,仿真结果如下。
在这里插入图片描述
在这里插入图片描述
           \;\;\;\;\; 从以上结果可看出,MVDR信号频率估计的分辨率最低,其次是AR参数模型,MUSIC法的谱分辨率最高。

五、MATLAB源代码

现代谱估计AR参数模型法和MVDR法和MUSIC法超详细的MATLAB代码

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/952608.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

搭建docker私有化仓库Harbor

Docker私有仓库概述 Docker私有仓库介绍 Docker私有仓库是个人、组织或企业内部用于存储和管理Docker镜像的存储库。Docker默认会有一个公共的仓库Docker Hub,而与Docker Hub不同,私有仓库是受限访问的,只有授权用户才能够上传、下载和管理其中的镜像。这种私有仓库可以部…

HTML5实现好看的中秋节网页源码

HTML5实现好看的中秋节网页源码 前言一、设计来源1.1 网站首页界面1.2 登录注册界面1.3 节日由来界面1.4 节日习俗界面1.5 节日文化界面1.6 节日美食界面1.7 节日故事界面1.8 节日民谣界面1.9 联系我们界面 二、效果和源码2.1 动态效果2.2 源代码 源码下载结束语 HTML5实现好看…

Linux (CentOS) 安装 Docker 和 Docker Compose

🚀 作者主页: 有来技术 🔥 开源项目: youlai-mall ︱vue3-element-admin︱youlai-boot︱vue-uniapp-template 🌺 仓库主页: GitCode︱ Gitee ︱ Github 💖 欢迎点赞 👍 收藏 ⭐评论 …

简单说一下 类

类的定义 类是用来对一个实体(对象)进行描述,类就是用来描述这个对象具有一些什么属性。 类的定义格式 //创建类 class ClassName{ field; //简单概述为字段(属性)或者成员变量 method; //简单概述为行为或者是成员方法 } cl…

Windows11环境下设置MySQL8字符集utf8mb4_unicode_ci

1.关闭MySQL8的服务CTRLshiftESC,找到MySQL关闭服务即可 2.找到配置文件路径(msi版本默认) C:\ProgramData\MySQL\MySQL Server 8.0 3.使用管理员权限编辑my.ini文件并保存 # Other default tuning values # MySQL Server Instance Config…

机器学习实战——K-近邻法(K-Nearest Neighbors,KNN)

✨个人主页欢迎您的访问 ✨期待您的三连 ✨ ✨个人主页欢迎您的访问 ✨期待您的三连 ✨ ✨个人主页欢迎您的访问 ✨期待您的三连✨ ​​​ ​​​ ​​ 在机器学习的广阔领域中,K-近邻法(KNN) 是一种既简单又强大的非参数分类方法。尽管其…

《Opencv》图像的旋转

一、使用numpy库实现 np.rot90(img,-1) 后面的参数为-1时事顺时针旋转,为1时是逆时针旋转。 import cv2 import numpy as np img cv2.imread(./images/kele.png) """方法一""" # 顺时针90度 rot_1 np.rot90(img,-1) # 逆时针90度…

模型 九屏幕分析法

系列文章 分享 模型,了解更多👉 模型_思维模型目录。九屏幕法:全方位分析问题的系统工具。 1 九屏幕分析法的应用 1.1 新产品研发的市场分析 一家科技公司计划开发一款新型智能手机,为了全面评估市场潜力和风险,他们…

_STM32关于CPU超频的参考_HAL

MCU: STM32F407VET6 官方最高稳定频率:168MHz 工具:STM32CubeMX 本篇仅仅只是提供超频(默认指的是主频)的简单方法,并未涉及STM32超频极限等问题。原理很简单,通过设置锁相环的倍频系数达到不同的频率&am…

若依框架--数据字典设计使用和前后端代码分析

RY的数据字典管理: 字典管理是用来维护数据类型的数据,如下拉框、单选按钮、复选框、树选择的数据,方便系统管理员维护。减少对后端的访问,原来的下拉菜单点击一下就需要对后端进行访问,现在通过数据字典减少了对后端的访问。 如…

openEuler 22.04使用yum源最快速度部署k8s 1.20集群

本文目的 openEuler的官方源里有kubernetes 1.20,使用yum源安装是最快部署一个k8s集群的办法 硬件环境 主机名系统架构ipmasteropenEuler release 22.03 (LTS-SP2)arm192.168.3.11edgeopenEuler release 22.03 (LTS-SP2)arm192.168.3.12deviceopenEuler release 22.…

使用宝塔面板,安装 Nginx、MySQL 和 Node.js

使用ssh远程链接服务器 在完成使用ssh远程链接服务器后 可使用宝塔面板,安装 Nginx、MySQL 和 Node.js 宝塔网站 一、远程链接服务器 二、根据服务器系统安装宝塔 wget -O install.sh https://download.bt.cn/install/install_lts.sh && sudo bash inst…

Linux第一课:c语言 学习记录day06

四、数组 冒泡排序 两两比较,第 j 个和 j1 个比较 int a[5] {5, 4, 3, 2, 1}; 第一轮:i 0 n:n个数,比较 n-1-i 次 4 5 3 2 1 // 第一次比较 j 0 4 3 5 2 1 // 第二次比较 j 1 4 3 2 5 1 // 第三次比较 j 2 4 3 2 1 5 // …

油猴支持阿里云自动登陆插件

遇到的以下问题,都已在脚本中解决: 获取到的元素赋值在页面显示,但是底层的value并没有改写,导致请求就是获取不到数据元素的加载时机不定,尤其是弱网情况下,只靠延迟还是有可能获取不到,且登陆…

什么是卷积网络中的平移不变性?平移shft在数据增强中的意义

今天来介绍一下数据增强中的平移shft操作和卷积网络中的平移不变性。 1、什么是平移 Shift 平移是指在数据增强(data augmentation)过程中,通过对输入图像或目标进行位置偏移(平移),让目标在图像中呈现出…

android framework.jar 在应用中使用

在开发APP中&#xff0c;有时会使用系统提供的framework.jar 来替代 android.jar, 在gradle中配置如下&#xff1a; 放置framework.jar 依赖配置 3 优先级配置 gradle.projectsEvaluated {tasks.withType(JavaCompile) {Set<File> fileSet options.bootstrapClasspat…

7.STM32F407ZGT6-RTC

参考&#xff1a; 1.正点原子 前言&#xff1a; RTC实时时钟是很基本的外设&#xff0c;用来记录绝对时间。做个总结&#xff0c;达到&#xff1a; 1.学习RTC的原理和概念。 2.通过STM32CubeMX快速配置RTC。 27.1 RTC 时钟简介 STM32F407 的实时时钟&#xff08;RTC&#xf…

如何开启苹果手机(IOS)系统的开发者模式?

如何开启开发者模式&#xff1f; 一、打开设置二、隐私与安全性三、找到开发者模式四、开启开发者模式------------------------------------------------------------如果发现没有开发者模式的选项一、电脑下载爱思助手二、连接手机三、工具箱——虚拟定位——打开虚拟定位——…

day06_Spark SQL

文章目录 day06_Spark SQL课程笔记一、今日课程内容二、DataFrame详解&#xff08;掌握&#xff09;5.清洗相关的API6.Spark SQL的Shuffle分区设置7.数据写出操作写出到文件写出到数据库 三、Spark SQL的综合案例&#xff08;掌握&#xff09;1、常见DSL代码整理2、电影分析案例…

stable diffusion 量化学习笔记

文章目录 一、一些tensorRT背景及使用介绍1&#xff09;深度学习介绍2&#xff09;TensorRT优化策略介绍3&#xff09;TensorRT基础使用流程4&#xff09;dynamic shape 模式5&#xff09;TensorRT模型转换 二、实操1&#xff09;编译tensorRT开源代码运行SampleMNIST 一、一些…