为什么有这么多计算PSD的方法?


53

韦尔奇的方法一直是我计算平均采样时间序列功率谱密度(PSD)的首选算法。我注意到还有许多其他计算PSD的方法。例如,在Matlab中,我看到:

  • 使用Burg方法的PSD
  • 使用协方差方法的PSD
  • PSD使用周期图
  • PSD使用修正的协方差方法
  • 使用多锥度方法(MTM)的PSD
  • 使用Welch方法的PSD
  • 使用Yule-Walker AR方法的PSD
  • 使用短时傅立叶变换的频谱图
  • 光谱估计

这些各种方法的优点是什么?作为一个实际问题,我什么时候要使用Welch的方法以外的方法?


甚至不是信号处理领域的新手,但猜测{this}也可能是相关的,{this}也可能是相关的。我只是谷歌搜索。
开发人员

4
实际上,您不是“计算” PSD,而是“估计” PSD。有很大的不同。
leonbloy

1
此链接包含上述某些技术的示例:mathworks.com/help/signal/ug/nonparametric-methods.html

Answers:


67

我对Multitaper方法不熟悉。就是说,您已经问了很多问题。在攻读MSEE学位时,我完成了涵盖PSD估计的整个课程。该课程涵盖了您列出的所有内容(Multitaper方法除外)以及子空间方法。即使仅涵盖一些主要思想,这些思想也有许多方法。

首先,功率谱密度估算有两种主要方法:非参数和参数。

如果事先对信号知之甚少,则使用非参数方法。与参数模型相比,它们通常具有较少的计算复杂性。该组中的方法进一步分为两类:周期图和相关图。周期图有时也称为直接方法,因为它们会导致数据的直接转换。这些包括样品光谱,Bartlett方法,Welch方法和Daniell周期图。相关图有时会称为间接方法,因为它们利用了Wiener-Khinchin定理。因此,这些方法基于对自相关序列的某种估计进行傅立叶变换。由于与较高阶滞后相关的大量方差(由于相关中使用了少量数据样本),使用窗口。Blackman-Tukey方法推广了相关图方法。

参数方法通常在计算功率谱密度估计值之前采用某种信号模型。因此,假定提前知道信号的一些知识。参数化方法主要有两种:自回归方法和子空间方法。

自回归方法假定可以将信号建模为由白噪声序列驱动的自回归滤波器(例如IIR滤波器)的输出。因此,所有这些方法都试图求解IIR系数,从而容易地计算出最终的功率谱密度。但是,必须确定模型顺序(或抽头数)。如果模型阶数太小,频谱将高度平滑,并且缺乏分辨率。如果模型阶数太高,则来自大量极点的虚假峰开始出现。如果可以通过模型“ p”的AR过程对信号进行建模,则由信号驱动的> = p阶滤波器的输出将产生白噪声。有数百种用于模型订单选择的指标。请注意,这些方法对于高至中等SNR窄带信号非常有用。前者是因为该模型在很大的噪声下崩溃了,因此可以更好地建模为ARMA流程。后者是由于所得模型的傅立叶变换中来自极点的所得频谱的脉冲性质。AR方法基于线性预测,这是用于在已知值之外推断信号的方法。结果,它们没有旁瓣,也不需要开窗。

子空间方法将信号分解为信号子空间和噪声子空间。利用两个子空间之间的正交性可以形成伪谱,在伪谱中窄带分量处可能出现大的峰值。这些方法在低SNR环境中效果很好,但是计算上非常昂贵。它们可以分为两类:噪声子空间方法和信号子空间方法。

可以通过以下两种方式之一来使用这两种类别:自相关矩阵的特征值分解或数据矩阵的奇异值分解。

噪声子空间方法尝试求解1个或多个噪声子空间特征向量。然后,噪声子空间和信号子空间之间的正交性在所得频谱估计的分母中产生零,从而导致真实信号分量处出现较大的值或尖峰。必须确定/估计离散正弦波的数量或信号子空间的等级,或者提前知道。

信号子空间方法尝试在频谱估计之前丢弃噪声子空间,从而改善SNR。缩减秩自相关矩阵仅由确定为属于信号子空间的特征向量构成(再次是模型阶数问题),并且缩减秩矩阵用于其他任何方法中。

现在,我将尝试快速介绍您的列表:

  • 使用Burg方法的PSD:Burg方法利用的Levinson递归与Yule-Walker方法略有不同,因为它通过使前向和后向线性预测误差的平均值最小来估计反射系数。这导致前向和后向线性预测误差的部分相关系数的谐波均值。像所有自回归方法一样,它产生非常高分辨率的估计,因为它使用线性预测将信号外推到其已知数据记录之外。这有效地消除了所有旁瓣现象。对于短数据记录,它优于YW方法,并且随着加权因子的划分,消除了在利用有偏和无偏自相关估计之间的权衡。一个缺点是它可能表现出谱线分裂。此外,它也遇到了所有AR方法都存在的相同问题。也就是说,低到中等的SNR严重降低了性能,因为它不再由AR流程正确地建模,而是由ARMA流程正确地建模。很少使用ARMA方法,因为它们通常会导致关于移动平均参数的非线性方程组。

  • 使用协方差方法的PSD:协方差方法是最小二乘法的一种特殊情况,因此线性预测误差的加窗部分将被丢弃。这具有比Burg方法更好的性能,但是与YW方法不同,要求解的矩阵逆通常不是Hermitian Toeplitz,而是两个Toeplitz矩阵的乘积。因此,Levinson递归不能用于求解系数。另外,不能保证通过这种方法生成的滤波器是稳定的。但是,对于光谱估计而言,这是一件好事,会导致正弦波含量的峰值很大。

  • 使用周期图的PSD:这是最差的估计值之一,是Welch方法的特例,它具有单段,矩形或三角形窗口(取决于使用的是自相关估计,有偏或无偏),并且没有重叠。但是,它是计算上“最便宜的”之一。产生的差异可能会很大。

  • 使用改进的协方差方法的PSD:改进了协方差方法和Burg方法。可以将其与Burg方法进行比较,其中Burg方法仅相对于反射系数使平均向前/向后线性预测误差最小,而MC方法相对于所有AR系数使它最小化。此外,它不会受到谱线分裂的影响,并且比以前列出的方法失真小得多。另外,虽然不能保证稳定的IIR滤波器,但其晶格滤波器实现是稳定的。与其他两种方法相比,它对计算的要求也更高。

  • 使用韦尔奇(Welch)方法的PSD:韦尔奇(Welch)的方法通过解决真正的PSD公式中缺少整体平均的问题,改进了周期图。它通过使用重叠和窗口化来概括Barlett的方法,以为伪集合平均提供更多的PSD“样本”。根据应用,它可以是一种便宜,有效的方法。但是,如果您遇到正弦波间隔很近的情况,则AR方法可能更适合。但是,它不需要像AR方法那样估算模型顺序,因此,如果对先验频谱了解甚少,那么它可能是一个很好的起点。

  • 使用Yule-Walker AR方法的PSD:这是最小二乘法的一种特殊情况,其中利用了完整的误差残差。与协方差方法相比,这会导致性能下降,但可以使用Levinson递归有效地解决。也称为自相关方法。

  • 使用短时傅立叶变换的频谱图:现在您正在跨入另一个域。用于时变光谱。即,其频谱随时间变化。这打开了另一整个蠕虫罐,并且时频分析的方法与您列出的方法一样多。这当然是最便宜的,这就是为什么它如此频繁使用的原因。

  • 频谱估计:这不是一种方法,而是您其余帖子的总称。有时,周期图被称为“样本频谱”或“舒斯特周期图”,前者可能就是您所指的东西。

如果您有兴趣,还可以研究子空间方法,例如MUSIC和Pisarenko谐波分解。这些将信号分解成信号和噪声子空间,并利用噪声子空间和信号子空间特征向量之间的正交性产生伪频谱。与AR方法非常相似,您可能无法获得“真实的” PSD估计值,因为最有可能功率不守恒,并且频谱分量之间的幅度是相对的。但是,这完全取决于您的应用程序。

干杯


感谢您的出色回答!您能否添加一些有关参数方法和非参数方法之间差异的介绍性注释?同样,将密切相关或相互推导的方法进行分组可能更清楚,即周期图⊆Bartlett方法⊆Welch方法。
nibot 2012年

当然。我刚刚添加了简介和一些类别。
布赖恩

欢迎。感谢您提供如此详细的答案。
杰森R

如果您可以更详细地了解优点/缺点,而不是如何计算每个优点/缺点,它将使我们更好地了解如何为特定应用选择一个。
Cyber​​Men 2012年

1
如果您阅读了回复,那么我已经做到了。同样,对于实际的实现,如何计算每个因素在很大程度上是一个优点/缺点。其中一些在计算上非常有效,但效果却不佳。它们中的一些性能很好,但是非常复杂,很难在低功耗目标上实现。
布赖恩2012年

12

我想添加到第一篇文章未涵盖的唯一类别中。多锥度法是类似于周期图法的用于计算功率谱的非参数法。在这种方法中,通过对数据进行加窗处理并计算傅立叶变换,并取结果的大小并进行平方来计算功率谱。多锥方法平均每个周期用不同窗口计算的预定周期图的数量。此方法之所以有效,是因为所选窗口具有两个数学属性。首先,窗口是正交的。这意味着每个周期图都是不相关的,因此对多个周期图进行平均得出的估计值方差比仅使用一个锥度要小。其次,对于固定的信号长度,窗口在频域中具有最佳的集中度。

在matlab中,可以使用函数dpss调用窗口函数。除了使用最佳窗口外,还推导了一种算法,根据它们会增加多少功率谱估计量的泄漏,对不同的周期图进行加权。该算法产生一组数据自适应权重。在Matlab中,可以通过创建一个带有'adaptive'作为combining选项的Spectrum.mtm对象来获得具有一组数据自适应权重的频谱估计。

对于非参数方法,MT方法可以说是估算固定时间序列功率谱的最佳方法。


查看帖子中的最后一句话,您总是希望对Welch方法使用MT计算。
ncRubert 2012年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.