【发布时间】:2018-01-31 22:13:52
【问题描述】:
我将不同的窗口应用于信号,然后使用MATLAB 中的fft 函数获取频率响应。这个想法是隔离信号的峰值,去除噪声和混响。
不同的窗口:
我的频率响应:
放大峰值:
我不明白为什么会有差异,尤其是我使用Gaussian 得到的峰值(图 3)。我知道使用具有小标准偏差的Gaussian 可以消除噪音,获得更清晰的信号。
为什么会这样?能不能给个科学的解释?
谢谢。
【问题讨论】:
-
请发布您用于应用窗口和计算频率响应的代码。很难知道我们在这里看到的是什么。您的高斯窗口比其他窗口窄得多,您可能正在杀死包含该特定频率的信号的一部分。
-
@CrisLuengo 代码太长,但基本上使用 hann、hamming 和 gausswin 函数进行窗口化,并使用 fft 执行傅里叶变换。也许我真的用这样的标准偏差杀死了那个频率。我不是在寻找不同的解决方案,只是解释为什么会发生这种情况。非常感谢您的评论。
-
我要求提供代码,因为我认为这是一种奇怪的效果,与我预期的相反。这是可以尝试的:将高斯窗口移动到信号中的不同位置,看看信号的频率内容如何变化。
标签: matlab signal-processing fft