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

665次阅读
没有评论

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

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

神龙|纯净稳定代理IP免费测试>>>>>>>>天启|企业级代理IP免费测试>>>>>>>>IPIPGO|全球住宅代理IP免费测试

相关文章:

版权声明:Python基础教程2022-12-07发表,共计551字。
新手QQ群:570568346,欢迎进群讨论 Python51学习