python代码实现傅里叶变换图像
时间: 2023-07-25 10:24:48 浏览: 181
傅里叶变换的高通滤波程序.txt
以下是一个使用Python实现傅里叶变换的示例代码:
```python
import numpy as np
import matplotlib.pyplot as plt
# 生成信号
t = np.linspace(0, 1, 400, endpoint=False)
x = np.sin(2 * np.pi * 10 * t) + np.sin(2 * np.pi * 20 * t)
# 计算傅里叶变换
y = np.fft.fft(x)
# 计算频率
f = np.fft.fftfreq(len(x), t[1] - t[0])
# 绘制原始信号和傅里叶变换后的频谱图
plt.subplot(211)
plt.plot(t, x, 'b')
plt.xlabel('t')
plt.ylabel('x')
plt.title('Original signal')
plt.grid(True)
plt.subplot(212)
plt.plot(f, np.abs(y), 'r')
plt.xlabel('f')
plt.ylabel('|y(f)|')
plt.title('Frequency domain')
plt.grid(True)
plt.show()
```
上述代码中,我们首先生成了一个包含两个正弦波的信号。然后使用numpy库中的fft函数计算信号的傅里叶变换,得到频域的复数表示。接着使用np.fft.fftfreq函数计算频率。最后,我们使用matplotlib库中的plot函数将原始信号和变换后的频谱图绘制在一张图中,显示出来。运行程序后,我们可以看到原始信号的波形和变换后的频谱图。
阅读全文