经典功率谱估计的原理及MATLAB仿真(自相关函数BT法、周期图法、bartlett法、welch法)

经典功率谱估计的原理及MATLAB仿真(自相关函数BT法、周期图法、bartlett法、welch法)

文章目录

  • 前言
  • 一、BT法
  • 二、周期图法
  • 三、Bartlett法
  • 四、welch法
  • 五、MATLAB仿真
  • 六、MATLAB详细代码
  • 总结


前言

经典功率谱估计方法包括BT法(对自相关函数求傅里叶变换求功率谱)、周期图法、Bartlett法(分段求平均)、welch法(有重合分段求平均)。本文在总结各种方法的原理后将在MATLAB平台上进行仿真,完成对功率谱密度的估计。


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

一、BT法

u N ( 0 ) , u N ( 1 ) , ⋅ ⋅ ⋅ , u N ( N − 1 ) u_N(0),u_N(1),\cdotp\cdotp\cdotp,u_N(N-1) uN(0),uN(1),⋅⋅⋅,uN(N1) 为广义平稳随机过程 u ( n ) u(n) u(n) N N N 个观测值(为描述方便,本章观测样本的序号为从0到 N − 1 N-1 N1的整数),且设 u N ( n ) u_N(n) uN(n)其他时刻的值为零,则 u N ( n ) u_N(n) uN(n)可表示为

u N ( n ) = { u ( n ) , 0 ⩽ n ⩽ N − 1 0 , 其他 (1) u_N(n)=\begin{cases}u(n),&0\leqslant n\leqslant N-1\\\\0,&\text{其他}\end{cases} \tag{1} uN(n)= u(n),0,0nN1其他(1)

u ( n ) u(n) u(n) 的自相关函数 r ( m ) r(m) r(m) 可用时间平均进行估计,即

r ^ ( m ) = 1 N ∑ n = 0 N − 1 u N ( n ) u N ∗ ( n − m ) , ∣ m ∣ ⩽ N − 1 (2) \hat{r}(m)=\frac{1}{N}\sum_{n=0}^{N-1}u_N(n)u_N^*(n-m),\quad\mid m\mid\leqslant N-1 \tag{2} r^(m)=N1n=0N1uN(n)uN(nm),mN1(2)
根据维纳-辛钦定理,对由式(2) 估计得到的自相关函数 r ^ ( m ) \hat{r}(m) r^(m)求傅里叶变换,可得功率谱的估计为

S ^ B T ( ω ) = ∑ m = − ∞ ∞ r ^ ( m ) e − j ω m = ∑ m = − N + 1 N − 1 r ^ ( m ) e − j ω m (3) \hat{S}_{\mathrm{BT}}\left(\omega\right)=\sum_{m=-\infty}^{\infty}\hat{r}\left(m\right)\mathrm{e}^{-\mathrm{j}\omega m}=\sum_{m=-N+1}^{N-1}\hat{r}\left(m\right)\mathrm{e}^{-\mathrm{j}\omega m} \tag{3} S^BT(ω)=m=r^(m)ejωm=m=N+1N1r^(m)ejωm(3)

考虑到自相关函数 r ^ ( m ) \hat{r}(m) r^(m) ∣ m ∣ > N − 1 \mid m\mid>N-1 m∣>N1 时为零,且 r ^ ( m ) \hat{r}(m) r^(m) m m m 接近 N − 1 N-1 N1 时性能较差, 式(3)经常表示为

S ^ B T ( ω ) = ∑ m = − M M r ^ ( m ) e − j ω m , 0 ⩽ M ⩽ N − 1 (4) \hat{S}_{\mathrm{BT}}\left(\omega\right)=\sum_{m=-M}^M\hat{r}\left(m\right)\mathrm{e}^{-\mathrm{j}\omega m}\:,\quad0\leqslant M\leqslant N-1 \tag{4} S^BT(ω)=m=MMr^(m)ejωm,0MN1(4)

以此结果作为对理论功率谱 S ( ω ) S(\omega) S(ω) 的估计,因为这种方法估计出的功率谱是通过自相关函数间接得到的,所以此方法又称为间接法。

当时延m≥0时,r(m)的均值可以表示为

E ⁡ { r ^ ( m ) } = E { 1 N ∑ n = 0 N − 1 u N ( n ) u N ∗ ( n − m ) } = 1 N ∑ n = m N − 1 E { u N ( n ) u N ∗ ( n − m ) } = 1 N ∑ n = m N − 1 r ( m ) = N − m N r ( m ) (5) \begin{aligned} \operatorname{E}\{\hat{r}(m)\}& =\text{ E}\left\{\frac1N\sum_{n=0}^{N-1}u_N\left(n\right)u_N^*\left(n-m\right)\right\} \\ &=\frac1N\sum_{n=m}^{N-1}E\{u_N(n)u_N^*(n-m)\} \\ &=\frac1N\sum_{n=m}^{N-1}r\left(m\right) \\ &=\frac{N-m}Nr\left(m\right)\tag{5} \end{aligned} E{r^(m)}= E{N1n=0N1uN(n)uN(nm)}=N1n=mN1E{uN(n)uN(nm)}=N1n=mN1r(m)=NNmr(m)(5)

考虑到 m m m 的取值可正可负,所以有

E ⁡ { r ^ ( m ) } = N − ∣ m ∣ N r ( m ) (6) \operatorname{E}\{\hat{r}(m)\}=\frac{N-\mid m\mid}{N}r(m) \tag{6} E{r^(m)}=NNmr(m)(6)

BT法结论:
r ^ ( m ) \hat{r}(m) r^(m) r ( m ) r(m) r(m) 的渐近无偏估计。
r ^ ( m ) \hat{r}(m) r^(m) r ( m ) r(m) r(m) 的渐近一致估计。

二、周期图法

由于随机过程 u ( n ) u(n) u(n) N N N个观测值 u N ( n ) u_N(n) uN(n) 是确定信号,对其进行傅里叶变换,得

U N ( ω ) = ∑ n = 0 N − 1 u N ( n ) e − j ω n (7) U_N(\omega)=\sum_{n=0}^{N-1}u_N(n)\:\mathrm{e}^{-\mathrm{j}\omega n}\tag{7} UN(ω)=n=0N1uN(n)ejωn(7)

根据帕塞瓦尔定理,上式的模的平方是确定信号 u N ( n ) u_N(n) uN(n)的能量谱,对能量谱除以持续时间 N N N, 其结果应是 u N ( n ) u_N(n) uN(n) 的功率谱估计,将其作为随机过程 u ( n ) u(n) u(n)的功率谱的估计,表示为

S ^ P E R ( ω ) = 1 N ∣ U N ( ω ) ∣ 2 (8) \hat{S}_{\mathrm{PER}}(\omega)=\frac1N\mid U_N(\omega)\mid^2 \tag{8} S^PER(ω)=N1UN(ω)2(8)

该方法称为功率谱估计的周期图法(periodogram)。因为这种功率谱估计方法是直接通过观测数据的傅里叶变换求得的,称之为直接法。

周期图法结论:
r ^ ( m ) \hat{r}(m) r^(m) r ( m ) r(m) r(m) 的渐近无偏估计。
r ^ ( m ) \hat{r}(m) r^(m) 不是 r ( m ) r(m) r(m) 的一致估计,估计方差趋近于一个有限值。

三、Bartlett法

Bartlett法的基本步骤是,将 N N N 点的观测数据 u N ( n ) u_N(n) uN(n) 分为 L L L 段,每段数据的长度为 M M M, 整数 L L L M M M 满足

L = N M (9) L=\frac NM \tag{9} L=MN(9)

i i i 段数据加矩形窗后,有

u N i ( n ) = u ( n + ( i − 1 ) M ) w M ( R ) ( n ) , 0 ⩽ n ⩽ M − 1 , 1 ⩽ i ⩽ L (10) u_N^i(n)=u(n+(i-1)M)w_M^{(R)}(n)\:,\quad0\leqslant n\leqslant M-1,1\leqslant i\leqslant L \tag{10} uNi(n)=u(n+(i1)M)wM(R)(n),0nM1,1iL(10)
其中 , w M ( R ) ( n ) ,w_{M}^{(R)}(n) ,wM(R)(n) 是长度为 M M M 的矩形窗。

对于每段数据 u N i ( n ) u_{\mathbb{N}}^{i}\left(n\right) uNi(n), 先利用周期图法求得其功率谱 S ^ P E R i ( ω ) \hat{S}_{\mathrm{PER}}^i(\omega) S^PERi(ω), 限

S ^ P E R i ( ω ) = 1 M ∣ ∑ n = 0 M − 1 u N i ( n ) e − j ω n ∣ 2 , 1 ⩽ i ⩽ L (11) \hat{S}_{\mathrm{PER}}^i(\omega)=\frac{1}{M}\Big|\sum_{n=0}^{M-1}u_N^i(n)\:\mathrm{e}^{-\mathrm{j}\omega n}\Big|^2,\quad1\leqslant i\leqslant L\tag{11} S^PERi(ω)=M1 n=0M1uNi(n)ejωn 2,1iL(11)

然后计算各段功率谱估计的平均,得到平均周期图 S ‾ P E R ( ω ) \overline{\mathcal{S}}_{\mathrm{PER}}\left(\omega\right) SPER(ω), 即

S ‾ P E R ( ω ) = 1 L ∑ i = 1 L S ^ P E R i ( ω ) = 1 L M ∑ i = 1 L ∣ ∑ n = 0 M − 1 u N i ( n ) e − j ω n ∣ 2 (12) \overline{S}_{\mathrm{PER}}\left(\omega\right)=\frac{1}{L}\sum_{i=1}^{L}\hat{S}_{\mathrm{PER}}^{i}\left(\omega\right)=\frac{1}{LM}\sum_{i=1}^{L}\Big|\sum_{n=0}^{M-1}u_{N}^{i}\left(n\right)\mathrm{e}^{-\mathrm{j}\omega n}\Big|^{2}\tag{12} SPER(ω)=L1i=1LS^PERi(ω)=LM1i=1L n=0M1uNi(n)ejωn 2(12)

Bartlett法结论:
Bartlett功率谱估计使得数据点数从 N N N 减小为 M = N / L M=N/L M=N/L, 于是窗函数的频谱宽度增大为周期图法的 L L L 倍,因此频率分辨率下降为原来的 1 / L 1/L 1/L
Bartlett功率谱估计的方差减小为周期图法的 1 / L 1/L 1/L, 因此Bartlett功率谱估计较周期图法的结果更为平滑。

四、welch法

Welch法也对 N N N点的信号 u N ( n ) u_N(n) uN(n) 进行分段,但允许分段时每段信号样本重叠。若每段的样本长度为 M M M, 信号被分为 L L L 段,取相邻两段的信号样本重叠 50 % 50\% 50% L L L满足

L = N − M / 2 M / 2 (13) L=\frac{N-M/2}{M/2}\tag{13} L=M/2NM/2(13)

将每段信号 u N i ( n ) u_N^i(n) uNi(n) 和窗函数 w ( n ) w(n) w(n)(可以采用矩形窗、三角窗、汉宁窗或海明窗等)相乘,然后按式(11) 得到每段信号的功率谱估计为

S ^ P E R i ( ω ) = 1 M ∣ ∑ n = 0 M − 1 u N i ( n ) w ( n ) e − j ω n ∣ 2 (14) \hat{S}_{\mathrm{PER}}^i(\omega)=\frac{1}{M}\Big|\sum_{n=0}^{M-1}u_N^i(n)w(n)\:\mathrm{e}^{-\mathrm{j}\omega n}\Big|^2\tag{14} S^PERi(ω)=M1 n=0M1uNi(n)w(n)ejωn 2(14)

由此得到修正的周期图 S ‾ P E R ( ω ) \overline{\mathcal{S}}_{\mathrm{PER}}\left(\omega\right) SPER(ω)
S ‾ P E R ( ω ) = 1 L ∑ i = 1 L S ^ P E R i ( ω ) = 1 L M ∑ i = 1 L ∣ ∑ n = 0 M − 1 u N i ( n ) w ( n ) e − j ω n ∣ 2 (15) \overline{\mathcal{S}}_{\mathrm{PER}}\left(\omega\right)=\frac{1}{L}\sum_{i=1}^{L}\hat{S}_{\mathrm{PER}}^i(\omega)=\frac{1}{LM}\sum_{i=1}^{L}\:\Big|\:\sum_{n=0}^{M-1}u_{N}^{i}(n)w(n)\:\mathrm{e}^{-\mathrm{j}\omega n}\:\Big|^{2}\tag{15} SPER(ω)=L1i=1LS^PERi(ω)=LM1i=1L n=0M1uNi(n)w(n)ejωn 2(15)

Welch法结论:
Welch方法允许分段数据样本的重叠,于是可以得到更多的周期图估计,从而进一步减小估计的功率谱密度的方差。而与使用矩形窗实现数据分段的Bartlett方法相比,Welch方法可以使用多种窗函数。通过窗函数加权,可以减小每个分段起始和结束位置附近的样本在估计中的作用,从而减小了相邻样本段之间的相关性。所以,Welch 方法可以更好地控制功率谱密度估计的方差特性。

五、MATLAB仿真

设随机过程 u N ( n ) u_N(n) uN(n)由3个实正弦信号加噪声构成,为
u N ( n ) = ∑ k = 1 3 s k ( n ) + v ( n ) (16) u_N(n)=\sum_{k=1}^3s_k(n)+v(n)\tag{16} uN(n)=k=13sk(n)+v(n)(16)
其中, s k ( n ) = A k cos ⁡ ( 2 π f k n + φ k ) , k = 1 , 2 , 3 s_k( n) = A_k\cos ( 2\pi f_kn+ \varphi _k) , k= 1, 2, 3 sk(n)=Akcos(2πfkn+φk),k=1,2,3,其归一化频率分别是 f 1 = 0.1 , f 2 = 0.25 f_1=0.1,f_2=0.25 f1=0.1,f2=0.25 f 3 = 0.27 , φ k f_3=0.27,\varphi_k f3=0.27,φk是相互独立并在 [ 0 , 2 π ] \begin{bmatrix}0,2\pi\end{bmatrix} [0,2π]上服从均匀分布的随机相位; v ( n ) v(n) v(n)是均值为0、方差 σ 2 = 1 \sigma^2=1 σ2=1的实高斯白噪声序列。3个信号的信噪比分别为 S N R 1 = 30 \mathrm{SNR}_1=30 SNR1=30dB , S N R 2 = 30 ,\mathrm{SNR}_2=30 ,SNR2=30dB , S N R 3 = 27 ,\mathrm{SNR}_3=27 ,SNR3=27dB。
参数设置如下:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
通过以上结果可以看出点数对信号分辨率的影响,点数加大时,可以提高分辨率,我这里就不贴图了,感兴趣的可以自己下载代码验证。

六、MATLAB详细代码

经典功率谱估计超详细的MATLAB代码(BT法和周期图法和bartlett法和welch法)

总结

例如:以上就是今天要讲的内容,本文介绍了BT法、周期图法、Bartlett法、welch法四种经典功率谱估计方法,并在MATLAB上面完成了功率谱估计仿真。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python实现onvif协议下控制摄像头变焦,以及融合人形识别与跟踪控制

#1024程序员节 | 征文# 这两天才因为项目需要,对网络摄像头的视频采集以及实现人形识别与跟踪技术。对于onvif协议自然起先也没有任何的了解。但是购买的摄像头是SONY网络头是用在其他地方的。因为前期支持探究项目解决方案,就直接拿来做demo测试使用。 …

react18中在列表项中如何使用useRef来获取每项的dom对象

在react中获取dom节点都知道用ref,但是在一个列表循环中,这样做是行不通的,需要做进一步的数据处理。 实现效果 需求:点击每张图片,当前图片出现在可视区域。 代码实现 .box{border: 1px solid #000;list-style: …

微前端架构新选择:micro-app 框架一文全解析

目录 前言技术方案沙箱withiframe 环境变量主应用生命周期子应用生命周期初始化更新卸载缓存 JS 沙箱样式隔离元素隔离路由系统⭐数据通信⭐资源系统预加载umd 模式其他功能调试工具 前言 https://micro-zoe.github.io/micro-app/ micro-app 是由京东前端团队推出的一款微前端…

基于springboot美食商城推荐系统

基于springboot美食商城推荐系统 开发语言:Java 框架:springboot JDK版本:JDK1.8 服务器:tomcat7 数据库:mysql 5.7 数据库工具:Navicat11 开发软件:idea 源码获取:https://downlo…

iOS调试真机出现的 “__llvm_profile_initialize“ 错误

一、错误形式&#xff1a; app启动就崩溃&#xff0c;如下&#xff1a; Demo__llvm_profile_initialize:0x1045f7ab0 <0>: stp x20, x19, [sp, #-0x20]!0x1045f7ab4 <4>: stp x29, x30, [sp, #0x10]0x1045f7ab8 <8>: add x29, sp, #0x100x1…

物联网平台是什么?

在数字化时代&#xff0c;物联网&#xff08;Internet of Things&#xff0c;简称IoT&#xff09;已经成为推动社会进步和产业升级的重要力量。物联网平台&#xff0c;作为连接物理世界与数字世界的桥梁&#xff0c;正逐渐成为智能设备、数据和服务的中心枢纽。本文将带你深入了…

Mochi 1视频生成模型亮相:动作流畅,开放源代码

前沿科技速递&#x1f680; 近日&#xff0c;AI公司Genmo发布了最新的开源视频生成模型Mochi 1。Mochi 1在动作质量和提示词遵循能力方面有显著提升&#xff0c;并且与市面上许多闭源商业模型相媲美。作为一款支持个人和商业用途的开源工具&#xff0c;Mochi 1不仅展示了开源技…

UEFI EDK2框架学习 (四)——UEFI图形化

一、修改protocol.c #include <Uefi.h> #include <Library/UefiLib.h> #include <Library/UefiBootServicesTableLib.h> #include <stdio.h>EFI_STATUS EFIAPI UefiMain(IN EFI_HANDLE ImageHandle,IN EFI_SYSTEM_TABLE *SystemTable ) {EFI_STATUS S…

软考中级网络工程师,快背,都是精华知识点!

一、上午常考概念 计算机硬件基础&#xff1a;根据考纲分析&#xff0c;本章主要考查三个模块&#xff1a;计算机体系结构、存储系统、I/O输入输出系统&#xff0c;其中每一模块又分若干知识点。“计算机硬件基础”相当于软考中的“公共基础课”&#xff0c;不同方向、不同级别…

初始JavaEE篇——多线程(2):join的用法、线程安全问题

找往期文章包括但不限于本期文章中不懂的知识点&#xff1a; 个人主页&#xff1a;我要学编程(ಥ_ಥ)-CSDN博客 所属专栏&#xff1a;JavaEE 目录 模拟实现线程中断 join的用法 线程的状态 NEW&#xff1a; RUNNABLE&#xff1a; TIMED_WAITING&#xff1a; TERMINATED…

系统架构图设计(轻量级架构)

轻量级架构一般包括&#xff1a;表现层、业务逻辑层、持久层、数据库层 表现层架构 MVC 模型&#xff08;Model&#xff09;&#xff1a;应用程序的主体部分&#xff0c;表示业务数据和业务逻辑视图&#xff08;View&#xff09;&#xff1a;用户看到并与之交流的界面控制器&…

Lim测试平台,五步完成批量生成数据

一、前言 在日常的测试工作中&#xff0c;我们常常需要生成大量的数据&#xff0c;例如为了测试分页功能、进行性能压力测试或准备测试所需的数据集。 虽然可以通过编写脚本或者使用如JMeter这样的工具来完成这些任务&#xff0c;但在团队合作的情境下&#xff0c;这种方法存…

打造通往自由的交易系统与策略——《以交易为生》读后感

我们知道要顺势而为&#xff0c;可什么是“势”&#xff1f;交易市场就像一片汪洋大海&#xff0c;潮起潮落的背后&#xff0c;有一套可以捕捉趋势的规律。要想看到势&#xff0c;就像软件工程中的可观测性&#xff0c;要找到合适的工具和指标&#xff0c;才能发现市场中重要的…

【云从】十、常见安全问题与云计算的计费模式

文章目录 1、常见安全问题1.1 DDoS攻击1.2 病毒攻击1.3 木马攻击1.4 代码自身漏洞 2、安全体系3、云计算的计费模式4、常见云产品的计费方案5、云产品计费案例 1、常见安全问题 1.1 DDoS攻击 通过分布在各地的大量终端&#xff0c;同时向目标发送恶意报包&#xff0c;以占满目…

微信小程序版本更新管理——实现自动更新

✅作者简介&#xff1a;2022年博客新星 第八。热爱国学的Java后端开发者&#xff0c;修心和技术同步精进。 &#x1f34e;个人主页&#xff1a;Java Fans的博客 &#x1f34a;个人信条&#xff1a;不迁怒&#xff0c;不贰过。小知识&#xff0c;大智慧。 &#x1f49e;当前专栏…

图表设计中文本的字体、大小与颜色

在创建图表时&#xff0c;我们往往过分关注图形的设计而忽视了文本的重要性。文本在图表中扮演着至关重要的角色&#xff0c;它不仅辅助图形具象化地展示数据&#xff0c;更是图表真实性和可靠性的关键。然而&#xff0c;很多人在设计图表时&#xff0c;并没有考虑到字体的选择…

生成对抗网络模拟缺失数据,辅助PAMAP2数据集仿真实验

PAMAP2数据集是一个包含丰富身体活动信息的数据集&#xff0c;它为我们提供了一个理想的平台来开发和测试HAR模型。本文将从数据集的基本介绍开始&#xff0c;逐步引导大家通过数据分割、预处理、模型训练&#xff0c;到最终的性能评估&#xff0c;在接下来的章节中&#xff0c…

PPT一键合并单元格!2个实用办公技巧,助力轻松搞定ppt!

我们都知道&#xff0c;ppt是一个多元的内容呈现媒介&#xff0c;我们可以在ppt中插入文字、图片、视频、音频和表格等&#xff0c;每种元素起到不同的作用&#xff0c;彼此间相得益彰。对于PPT中的表格&#xff0c;有时需要进行合并单元格的操作&#xff0c;即多合一&#xff…

校园建筑用电安全监测装置 电气火灾监测预防设备功能介绍

在现代建筑中&#xff0c;电气火灾监测装置的作用越来越重要。随着建筑规模的扩大和电气设备的多样化&#xff0c;电气火灾的风险也随之增加。因此&#xff0c;建立有效的火灾监测和预警系统&#xff0c;对于保护人身安全和财产安全显得尤为关键。 电气火灾指由电气故障引发的…

【Spring篇】Spring的Aop详解

&#x1f9f8;安清h&#xff1a;个人主页 &#x1f3a5;个人专栏&#xff1a;【计算机网络】【Mybatis篇】【Spring篇】 &#x1f6a6;作者简介&#xff1a;一个有趣爱睡觉的intp&#xff0c;期待和更多人分享自己所学知识的真诚大学生。 目录 &#x1f3af;初始Sprig AOP及…