android - 如何解释 FFT 的输出并提取频率信息

标签 android signal-processing fft accelerometer

我正在通过 FFT 分析加速度计数据,因为有人建议我从 FFT 的输出中获取频率信息。 FFT 的输出与频率信息如何相关。

FFT 函数传递一个值数组(均为实数)。 FFT 函数返回 2 个相同大小的数组 - 对于实数部分和复数部分。

我阅读了之前的一些文章,但仍然对如何从 FFT 的输出数组中提取频率信息感到困惑。 1. 输出数组是频率数组吗?数组是有序的吗? 1. 输出数组的每个索引是什么意思?建议您可以计算每个索引的大小 - sort (real[i]* real[i] + img[i] * img[i]) 2. 每个索引处的幅度是否与输入数组中的索引有某种关系——或者这是一个频率? 3. 如何找到主频?

最佳答案

FFT 为您提供每个频率仓中的复数对。 FFT 中的第一个 bin 类似于信号的 DC 部分 (0 Hz),第二个 bin 是 Fs/N,其中 Fs 是采样率,N 是FFT 的窗口大小,下一个 bin 是 2 * Fs/N 等等。 要获得垃圾箱中包含的功率,您需要知道其大小。 至于主频率:即幅度的最高峰。

关于android - 如何解释 FFT 的输出并提取频率信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21977748/

相关文章:

opencv - 如何在频域中旋转非正方形图像

android - 如何在列表中创建列表?

android - 将 compileSdkVersion 和 targetSdkVersion 更新为 26 时 - 资源 'attr/fontFamily' 的重复值与配置

java - 正则表达式:如果包含 example.com/20,则选择整个链接

signal-processing - 完美正弦波密度谱中的未知噪声

matlab - 基于自相关算法的语音信号音高估计

java - 有没有办法在 BLE 特性中只写入一个字节?

c - 实时播放生成的 PCM 数据

python - FFTW 向后变换乘以 N

python - 想要检测图像的模糊,但无法正确处理