数字图像对傅立叶变换进行对数变换代码
时间: 2024-10-12 21:06:47 浏览: 40
数字图像处理 基于MATLAB
4星 · 用户满意度95%
数字图像的傅立叶变换是一种将空间域信号转换到频率域的重要工具,而对数变换通常用于处理图像频谱,增强低对比度部分或减少高频噪声。对数变换后的图像更易于观察和分析。下面是一个简单的Python示例,使用NumPy库来展示如何对傅立叶变换后的图像做对数变换:
```python
import numpy as np
import matplotlib.pyplot as plt
# 假设我们有一个二维数组代表图像数据
image = ... # 请提供实际图像数据,这里省略
# 对图像进行离散傅立叶变换 (DFT)
fft_image = np.fft.fft2(image)
# 计算绝对值并取对数
log_fft_image = 20 * np.log10(np.abs(fft_image))
# 检查边界效应,通常需要零填充或截断
# 这里假设进行了适当的处理,比如中心区域保留
log_fft_image_cropped = log_fft_image[...]
# 可视化原始傅立叶变换和对数变换结果
plt.subplot(121), plt.imshow(np.abs(fft_image_cropped), cmap='gray')
plt.title('Original FFT Image')
plt.subplot(122), plt.imshow(log_fft_image_cropped, cmap='gray')
plt.title('Logarithmic FFT Image')
plt.show()
阅读全文