在编程中,快速傅里叶变换是工程中非常有价值的一类算法,它可以将时域和频域的信号相互转化,而在python中SciPy提供fftpack
模块,可让用户计算快速傅立叶变换,本文介绍python中使用scipy.fftpack模块计算快速傅里叶变换的过程。
1、使用scipy.fftpack.fftfreq()函数将生成取样频率
因为功率结果是对称的,仅仅需要使用谱的正值部分来找出频率:
In[48]:pidxs=np.where(sample_freq>0) In[49]:freqs=sample_freq[pidxs] In[50]:power=np.abs(sig_fft)[pidxs]
2、使用scipy.fftpack.fft()将计算快速傅里叶变换
>>>a=np.arange(1,5) >>>a array([1,2,3,4]) >>>b=fft(a) >>>b array([10.+0.j,-2.+2.j,-2.+0.j,-2.-2.j]) >>>b[1] (-2+2j) >>>b[1].real-2.0 >>>b[1].imag2.0
以上就是python中使用scipy.fftpack模块计算快速傅里叶变换的过程,希望能对你有所帮助哟~
下一篇