我有一個(來自CsCore),這是我FFT的結果。來自fft結果c的功率譜密度#
Complex
有一個float real
和一個float imaginary
。
由此我計算出以下
- 頻率:
(double)index * sampleRate/FftSize;
- 幅度/幅度:
Math.Sqrt(Math.Pow(real, 2) + Math.Pow(imaginary, 2));
- 階段:
Math.Atan(imaginary/real);
如果這些都錯了,請大家指正。
根據我的理解,這是頻域信息,它允許我查看哪些頻率在我的示例中最常見。現在我想看看隨着時間的推移功率密度。 Matlab documentation顯示的例子,但我不明白,因爲我不知道Matlab。有人可以解釋關於這個主題的Matlab文檔,或者幫助我用C#實現嗎?
編輯:
This answer建議簡單地廣場幅度。那是對的嗎?
根據[CsCore'Complex'代碼](https://github.com/filoe/cscore/blob/master/CSCore/Utils/Complex.cs),它具有'float real'和'float imaginary' ,不是'double' ... – JHBonarius