0
我想實現一個FFT,我想問一下我所做的事情是否正確。我正在使用GSL(GNU科學庫)進行FFT功能。我一直在閱讀關於FFT的教程,但我仍然想要求某人確認我正朝着正確的方向前進。我是否試圖使用FFT來正確識別輸入信號?
下面是我通過網絡材料想出方法:
The input is a list of the amplitudes of a sin wave generated
in audacity at 440Hz (A).
The sample rate is 44100
# FFT points: 1024
有人能解釋如何選擇的FFT點數?或者它是否重要。我可能忽略了它,但似乎無法找到選擇此號碼的方法。
編輯:我認爲命名這個FFT窗口比較合適,因爲在樣本中滑動1024個窗口可以找到頻率。
bin size = 44100/1024 = 43.066
運行FFT後,我有幅度的另一份名單,並根據他們在什麼斌認爲是被檢測的,正確的頻率是多少?所以爲了找到生成信號的頻率,我想找到最高峯?
A bin is defined as a peak if and only if the bin has an amplitude greater than
2 bins to the left and 2 bins to the right.
此方法是否正確獲取輸入信號的頻率?
FFT窗口的大小取決於你的需求,你沒有告訴我們。它需要多準確?箱子越小,它們越精確,並且獲得它們所需的榨取數量也越多。 – Brad 2012-03-04 22:16:21
對不起,我需要它能夠識別某人的聲音。我想,我希望能夠實時完成。 – 2012-03-05 01:09:14