信号频率估计经典功率谱估计及其MATLAB仿真

Posted Zhi Zhao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了信号频率估计经典功率谱估计及其MATLAB仿真相关的知识,希望对你有一定的参考价值。

目录

一、经典功率谱估计方法

对于离散时间平稳随机过程 u ( n ) u(n) u(n),它的功率谱 S ( w ) S(w) S(w) 描述了随机过程 u ( n ) u(n) u(n) 中各频率成分的平均功率的大小。因此,可以通过计算功率谱密度函数 S ( w ) S(w) S(w) 来间接的了解随机过程 u ( n ) u(n) u(n) 中各频率成分的构成情况。
根据维纳-辛钦定理,平稳随机过程 u ( n ) u(n) u(n) 的自相关函数 r ( m ) r(m) r(m) 与其功率谱 S ( w ) S(w) S(w) 是一对傅里叶变换关系。利用相关函数的傅里叶变换来估计随机过程功率谱的方法,称为经典功率谱估计。

1、周期图法

由于随机过程 u ( n ) u(n) u(n) N N N 个观测值 u N ( n ) u_N(n) uN(n) 是确定信号,对其进行傅里叶变换,得:
U N ( w ) = ∑ n = 0 N − 1 u N ( n ) e − j w n U_N(w) =\\sum_n=0^N-1u_N(n) e^-jwn UN(w)=n=0N1uN(n)ejwn
根据帕斯瓦尔关系,上式的模的平方是确定信号 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 ( w ) = 1 N ∣ U N ( w ) ∣ 2 S_per(w) =\\frac1N|U_N(w)|^2 Sper(w)=N1UN(w)2
该方法称为功率谱估计的周期图法(periodogram)。该方法由于是直接通过观测数据的傅里叶变换求得,其又被称为直接法。

2、BT法

1958年,Blackman和Tukey在维纳-辛钦定理的基础上,提出了自相关谱估计法(简称BT法)。其具体实现方法为:先由观测数据估计出自相关函数,然后对其求傅里叶变换,以此结果作为对功率谱的估计。
该方法的计算步骤为以下两个公式:
r ( m ) = 1 N ∑ n = 0 N − 1 u N ( n ) u N ∗ ( n − m ) r(m)=\\frac1N\\sum_n=0^N-1u_N(n)u_N^*(n-m) r(m)=N1n=0N1uN(n)uN(nm)
S B T ( w ) = ∑ m = − M M r ( m ) e − j w m , 0 ≤ M ≤ N − 1 S_BT(w)=\\sum_m=-M^Mr(m) e^-jwm,0≤M≤N-1 SBT(w)=m=MMr(m)ejwm0MN1
上述方法是通过自相关函数间接得到的,因此又被称为间接法。
M = N − 1 M=N-1 M=N1 时,上式的功率谱估计可表示为:
S B T ( w ) = 1 N ∣ U N ( w ) ∣ 2 S_BT(w) =\\frac1N|U_N(w)|^2 SBT(w)=N1UN(w)2
比较周期图法和BT法可以看出,周期图法是BT法的一个特例。当 M = N − 1 M=N-1 M=N1 时,周期图法与BT法相同;当 M < < N − 1 M<<N-1 M<<N1 时,BT法是对周期图法的平滑。

3、Welch法

1967年Welch提出了修正平均周期图法,即Welch法,它是在Bartlett法的基础上改进的。
Welch法估计信号功率谱的计算步骤如下:
(1)将长度为 N N N 的信号 u N ( n ) u_N(n) uN(n) 进行分段,相邻的两段数据交叠一半。若每段信号的长度为 M M M,信号将被分成 L L L 段,即:
L = N − M / 2 M / 2 L=\\fracN-M/2M/2 L=M/2NM/2
(2)将第 i ( 1 ≤ i ≤ L ) i(1≤i≤L) i(1iL) 段信号 u N i ( n ) u_N^i(n) uNi(n) 与长度为 M M M 的窗函数 w ( n ) w(n) w(n) 相乘。
(3)对加窗后的每段信号,利用周期图法求得其功率谱,即:
S p e r i ( w ) = 1 M ∣ ∑ n = 0 M − 1 u N i ( n ) w ( n ) e − j w n ∣ 2 S_per^i(w)= \\frac1M|\\sum^M-1_n=0u_N^i(n)w(n)e^-jwn|^2 Speri(w)=M1n=0M1uNi(n)w(n)ejwn2
(4)对每一段估计到的功率谱 S p e r i ( w ) S_per^i(w) Speri(w) 进行求和平均,则得到Welch法的功率谱估计:
S − p e r ( w ) = 1 L ∑ i = 1 L S p e r i ( w ) \\overset-S_per(w)=\\frac1L\\sum_i=1^LS_per^i(w) Sper(w)=L1i=1LSperi(w)

二、仿真实例

设随机过程 u N ( n ) u_N(n) uN以上是关于信号频率估计经典功率谱估计及其MATLAB仿真的主要内容,如果未能解决你的问题,请参考以下文章

信号频率估计经典功率谱估计及其MATLAB仿真

盲解调基于频率和滤波器参数估计的FH-GFSK调制信号盲解调算法matlab仿真

短时幅度谱短时幅度谱估计在语音增强方面的MATLAB仿真

MATLAB教程案例40语音信号的共振峰频率倒谱法估计matlab仿真学习

高分!急!用matlab分析功率谱密度,采样频率的设定.高手进!

现代信号处理 15 - 谱分析基础和周期图谱分析