关于Android中EEG信号的FFT理解代码

Jon*_*han 6 android fft

我一直试图找到一个能够对Android中的某些EEG信号执行FFT(快速傅里叶变换)的库.

在Geobits的帮助下,我终于找到了可以帮助我对EEG信号进行FFT 的代码.但我很难弄清楚代码是如何工作的.我想知道浮点数x和y是什么,也许是一个可能对我有所帮助的例子.

Dan*_*ban 3

fft 应该返回特定频率范围的一系列复数(可以是直角坐标,也可以是极坐标:相位和幅度)...

我仍在研究这些表达式,但我敢打赌,x 和 y 数组是作为转换结果的复数的实数 (x) 和虚数 (y) 分量。

这两个分量的平方和的绝对值应该是每个频率处谐波分量的幅度(转换为极坐标)。

如果相位对您的应用很重要,请记住 FFT(与任何相量一样)可以是正弦参考或余弦参考。然而,我相信正弦是标准。

看:

http://www.mathworks.com/help/matlab/ref/fft.html

http://mathworld.wolfram.com/FastFourierTransform.html

由于 FFT 给出了由周期波形的谐波分解创建的无限级数的截断近似值,因此任何周期波形都可用于测试代码的功能。

例如,方波应该易于复制,并且具有众所周知的谐波系数。数据集的分辨率将决定您可以计算的谐波数量(大多数 fft 算法对于长度等于 2 的幂的数据集效果最好,并且是您可以计算的最长频率的整数波长数)想用)。

方波系数应为基频的奇数倍,并且其幅度与谐波阶次成反比。

http://en.wikipedia.org/wiki/Square_wave