gpt4 book ai didi

algorithm - 与FFT算法混淆

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:35:04 24 4
gpt4 key购买 nike

我正在尝试理解 FFT 算法,到目前为止,我认为我理解了它背后的主要概念。但是,我对“framesize”和“window”之间的区别感到困惑。

根据我的理解,他们之间似乎是多余的?例如,我将帧大小为 1024 的样本 block 作为输入。所以我将 byte[1024] 作为输入。

那么窗口函数的作用是什么?因为最初,我认为窗口函数的目的是从原始数据中选择样本 block 。

谢谢!

最佳答案

What then is the purpose of the windowing function?

它是为了处理所谓的“频谱泄漏”:FFT 假设一个无限系列一遍又一遍地重复给定的样本帧。如果您有一个正弦波,它是样本帧内的整数个周期,那么一切都很好,并且 FFT 会在适当的频率为您提供一个漂亮的窄峰。但是,如果您的正弦波不是整数个周期,则最后一个样本和第一个样本之间会存在不连续性,并且 FFT 会给出错误的谐波。

窗口函数降低样本帧开始和结束处的振幅,以减少由这种不连续性引起的谐波。

一些图表来自 National Instruments webpage on windowing :

整数周期数:

enter image description here

非整数周期数:

enter image description here

更多信息:

http://www.tmworld.com/article/322450-Windowing_Functions_Improve_FFT_Results_Part_I.php

http://zone.ni.com/reference/en-XX/help/371361B-01/lvanlsconcepts/char_smoothing_windows/

http://www.physik.uni-wuerzburg.de/~praktiku/Anleitung/Fremde/ANO14.pdf

关于algorithm - 与FFT算法混淆,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5012075/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com