2013-11-15 58 views
2

我需要爲一個非常大的數組計算FFT。 (Array Size = 4198320)FFT的窗口大小的意義

我有一種方法可以計算FFT並計算給定塊大小的大小。該方法的一個要求是塊大小必須是2的冪。

對於給定的塊大小,可以說塊大小爲1024,它將計算大數組中每1024個元素的FFT和幅度。

對於塊大小= 2,I得到的值,如17.0,1.0,15.0,1.0,12.0,0.0,12.0等

對於塊大小= 4096,我得到的值,如2334.0,166.05, 235.84,313.74等

這裏的問題是,爲什麼我得到不同大小的值爲不同的塊大小,雖然輸入數組是相同的。這裏的輸入數組是一個表示音頻文件的字節數組。什麼是理想的塊大小使用?

+0

您忘記了規範化因素嗎? – Mehrdad

回答

2

有當你改變變換的長度原因有兩個數字是不同的:

  • 震級必然是一個較長的窗口更大(這是一個總和)。
  • 窗口的長度需要計算的頻率。

有沒有「理想」的長度使用。更長的長度提供更「精確」的頻率相關信息(更好的分辨率)和更短的長度提供更「精確」的時間相關信息(更快的響應)。