我有一个Complex[]
(来自 CsCore),这是我的 FFT 的结果。
Complex
有一个float real
和一个float imaginary
。
据此,我计算了以下
- 频率:
(double)index * sampleRate / FftSize;
- 幅度/幅度:
Math.Sqrt(Math.Pow(real, 2) + Math.Pow(imaginary, 2));
- 阶段:
Math.Atan(imaginary / real);
如果这些是错误的,请纠正我。
据我了解,这是频域信息,它允许我查看样本中最常见的频率。现在我想看看随时间变化的功率密度。Matlab文档显示了示例,但我不明白,因为我不了解Matlab。有人可以解释有关此主题的 Matlab 文档或帮助我实现 C# 吗?
编辑:
这个答案建议简单地平方幅度。那是对的吗?