首页 >科技 > 内容

📚快速傅里叶变换FFT & Python代码实现⚡

科技 2025-03-18 06:44:12
导读 快速傅里叶变换(FFT)是一种高效计算离散傅里叶变换(DFT)的算法,在信号处理、图像处理和数据压缩等领域有着广泛应用。简单来说,它能将...

快速傅里叶变换(FFT)是一种高效计算离散傅里叶变换(DFT)的算法,在信号处理、图像处理和数据压缩等领域有着广泛应用。简单来说,它能将时域信号转换为频域信号,帮助我们更直观地分析信号特性✨。

例如,当我们有一组采样数据时,FFT可以迅速找出隐藏在数据中的频率成分。这种方法极大地减少了计算复杂度,从O(N²)降低到O(N log N),使大规模数据分析成为可能💫。

下面是一个简单的Python代码示例,展示如何用NumPy库实现FFT:

```python

import numpy as np

import matplotlib.pyplot as plt

创建一个合成信号

t = np.linspace(0, 1, 500, endpoint=False)

signal = np.sin(2 np.pi 10 t) + 0.5 np.sin(2 np.pi 20 t)

应用FFT

fft_result = np.fft.fft(signal)

frequencies = np.fft.fftfreq(signal.size, d=1/500)

绘制结果

plt.plot(frequencies[:len(frequencies)//2], np.abs(fft_result)[:len(frequencies)//2])

plt.title('FFT Result')

plt.xlabel('Frequency (Hz)')

plt.ylabel('Amplitude')

plt.show()

```

通过这段代码,我们可以轻松观察到原始信号中的主要频率成分,进一步验证了FFT的强大功能🔍!

科技 编程 信号处理 Python

免责声明:本文由用户上传,如有侵权请联系删除!