python中如何使用scipy.fftpack模块计算快速傅里叶变换?

美女程序员鼓励师

在编程中,快速傅里叶变换是工程中非常有价值的一类算法,它可以将时域和频域的信号相互转化,而在pythonSciPy提供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模块计算快速傅里叶变换的过程,希望能对你有所帮助哟~

以上是 python中如何使用scipy.fftpack模块计算快速傅里叶变换? 的全部内容, 来源链接: utcz.com/z/543287.html

回到顶部