【发布时间】:2019-09-05 23:13:12
【问题描述】:
我有 x、y、z 轴形式的原始加速度计数据,这些数据经过平滑处理,并应用了带通滤波器。现在我想将其转换为频域信号并使用scipy.fftpack.fft 来应用 FFT。
sampling_frequency = 32
def fft(acc_data):
N = len(acc_data)
fft_data = sp.fftpack.fft(acc_data)
freqs = sp.fftpack.fftfreq(N)
plt.bar(freqs, np.abs(fft_data))
plt.xlabel('Frequency in Hertz [Hz]')
plt.ylabel('Magnitude')
plt.title('FFT')
plt.show()
这个图没有绘制点并且是空的。 fft 的返回值是一个复数数组。我正在使用fftfreq 来获得最高振幅的频率。
有人可以指出错误的地方或举例说明如何通过应用 FFT 获得最高振幅的频率值吗?
完整代码可在here获取
【问题讨论】:
标签: python scipy fft accelerometer heartrate