理想高通滤波器python
时间: 2024-01-11 15:22:17 浏览: 100
理想高通滤波器是一种常见的频率滤波器,用于增强图像中高频部分的细节。在Python中,可以使用OpenCV库来实现理想高通滤波器。
下面是一个示例代码,演示了如何使用OpenCV库实现理想高通滤波器:
```python
import cv2
import numpy as np
# 读取图像
image = cv2.imread('input.jpg', 0)
# 进行傅里叶变换
f = np.fft.fft2(image)
fshift = np.fft.fftshift(f)
# 构建理想高通滤波器
rows, cols = image.shape
crow, ccol = int(rows/2), int(cols/2)
mask = np.ones((rows, cols), np.uint8)
mask[crow-30:crow+30, ccol-30:ccol+30] = 0
# 应用滤波器
fshift = fshift * mask
# 进行傅里叶逆变换
ishift = np.fft.ifftshift(fshift)
image_filtered = np.fft.ifft2(ishift)
image_filtered = np.abs(image_filtered)
# 显示原始图像和滤波后的图像
cv2.imshow('Original Image', image)
cv2.imshow('Filtered Image', image_filtered)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
请注意,上述代码中的`input.jpg`是输入图像的文件名,你需要将其替换为你自己的图像文件名。
阅读全文
相关推荐


















