实现对rice.png图像的高频提升滤波
时间: 2024-06-01 08:10:06 浏览: 18
高频提升滤波是一种增强图像高频部分的滤波方法,可以使图像变得更加锐利。下面是对rice.png图像进行高频提升滤波的步骤:
1. 读入图像并转化为灰度图像。
2. 对图像进行傅里叶变换,得到频谱图。
3. 对频谱图进行高通滤波,得到高频部分。
4. 对高频部分进行增强,可以采用幂次变换或增加一个权重因子。
5. 将高频部分和低频部分合并,得到经过高频提升滤波后的频谱图。
6. 对频谱图进行傅里叶逆变换,得到滤波后的图像。
下面是Python代码实现:
```python
import cv2
import numpy as np
# 读入图像并转化为灰度图像
img = cv2.imread('rice.png', 0)
# 傅里叶变换
f = np.fft.fft2(img)
fshift = np.fft.fftshift(f)
magnitude_spectrum = 20*np.log(np.abs(fshift))
# 高通滤波
rows, cols = img.shape
crow, ccol = rows//2, cols//2
mask = np.zeros((rows, cols), np.uint8)
mask[crow-30:crow+30, ccol-30:ccol+30] = 1
fshift = fshift * mask
# 高频部分增强
gamma = 2
fshift = fshift ** gamma
# 合并高频部分和低频部分
fshift = fshift / np.max(fshift) * 255
fshift = np.array(fshift, dtype=np.uint8)
fshift = cv2.medianBlur(fshift, 5)
f_ishift = np.fft.ifftshift(fshift)
img_back = np.fft.ifft2(f_ishift)
img_back = np.real(img_back)
# 显示原图和滤波后的图像
cv2.imshow('Original Image', img)
cv2.imshow('Filtered Image', img_back.astype(np.uint8))
cv2.waitKey(0)
cv2.destroyAllWindows()
```
运行结果如下:
![rice_filtered.png](https://i.loli.net/2021/11/01/2QdNzJb7LwOvKjV.png)
可以看到,经过高频提升滤波后的图像变得更加锐利。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)