【问题标题】:Different frequency responses using FFT in MATLAB在 MATLAB 中使用 FFT 的不同频率响应
【发布时间】:2018-01-31 22:13:52
【问题描述】:

我将不同的窗口应用于信号,然后使用MATLAB 中的fft 函数获取频率响应。这个想法是隔离信号的峰值,去除噪声和混响。

不同的窗口:

我的频率响应:

放大峰值:

我不明白为什么会有差异,尤其是我使用Gaussian 得到的峰值(图 3)。我知道使用具有小标准偏差的Gaussian 可以消除噪音,获得更清晰的信号。

为什么会这样?能不能给个科学的解释?

谢谢。

【问题讨论】:

  • 请发布您用于应用窗口和计算频率响应的代码。很难知道我们在这里看到的是什么。您的高斯窗口比其他窗口窄得多,您可能正在杀死包含该特定频率的信号的一部分。
  • @CrisLuengo 代码太长,但基本上使用 hann、hamming 和 gausswin 函数进行窗口化,并使用 fft 执行傅里叶变换。也许我真的用这样的标准偏差杀死了那个频率。我不是在寻找不同的解决方案,只是解释为什么会发生这种情况。非常感谢您的评论。
  • 我要求提供代码,因为我认为这是一种奇怪的效果,与我预期的相反。这是可以尝试的:将高斯窗口移动到信号中的不同位置,看看信号的频率内容如何变化。

标签: matlab signal-processing fft


【解决方案1】:

这里有两个相关的现象:

  1. 时域较窄的窗口具有较宽的频率响应,而时域较宽的窗口具有较窄的频率响应。
  2. 信号与时域中的窗口相乘相当于频域中的卷积

您的具有较小标准偏差的高斯窗口在时域中比其他窗口更窄,因此它具有更宽的频率响应。这种宽频率响应与未加窗信号频谱的卷积可以平滑加窗信号的频率响应。

当然,这种平滑需要权衡取舍。当您在时域中使窗口变窄时,加窗信号的频谱会变得更平滑,但分辨率会变得越来越粗糙。 .

【讨论】:

  • 非常感谢您的洞察力!这是一个很好的解释!干杯!
  • 但这并不能解释峰值......它应该已经被平滑了!
  • 山峰的墙壁已经被抹平了,但为什么山峰一定要被淘汰呢?频域中的卷积是两个复频谱,而不是频谱的幅度,这就是我们在图中看到的所有内容。根据您上面的示例,假设我们将高斯窗口显着地向左或向右移动。窗口频谱的大小将保持不变,但输出信号会明显变弱,并且由于窗口频谱的相位发生了变化,因此形式会有所不同。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-12-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多