我可以从 scipy.signal.welch 功率谱中检索信号吗?

Can I retrieve a signal from a scipy.signal.welch power spectrum?

如果我在 scipy.signal 中有使用 welch 方法计算的功率谱,有什么方法可以检索信号原始信号吗?如果不是,我可以获得哪些数据可以告诉我关于给定功率谱的信号的一些信息?

Is there any way I can retrieve the signal original signal?

不可能从其功率谱密度恢复原始信号。韦尔奇法计算为

其中 K 是一起平均的段数,L 是每个段的傅里叶变换中的样本数,R 是抽取因子,或移动到下一段时“跳跃”的样本数,w[ n] 是 window 函数(例如 Hann、Hamming),U 是归一化因子,等于 window 函数的能量:

需要注意两件重要的事情:

  1. 傅立叶变换(由 n 索引的和)有一个绝对值的平方。这意味着 您丢失了信号的所有相位信息。以此 post 来了解信号中相位信息的重要性。仅凭星等信息,无法判断原来的signal/image是什么。

  2. 上面的等式是多个 PSD 估计值的平均值(具体来说是修改后的周期图)。与简单平均丢失单个样本 x[n] 中包含的所有详细信息及其随时间变化的方式相同,Welch 的方法也会丢失信号随时间变化的方式。要获得有关信号如何随时间变化的任何信息,您需要计算频谱图。

If not, what data can I get that can tell me something about the signal given the power spectrum?

顾名思义,功率谱密度 (PSD) 告诉您每个频率的能量密度。您可以确定大部分能量是处于低频、中频还是高频。韦尔奇方法的平均在减少随机噪声方面做得不错,因此信号中存在的稳态特征应该与噪声很好地分离。假设你的 L 足够大并且你没有混淆你的数据,你应该能够轻松估计任何签名的功率级别和频率。