opencv 图像锐化demo
时间: 2023-09-18 12:10:42 浏览: 95
opencv实现图片模糊和锐化操作
5星 · 资源好评率100%
下面是一个使用Opencv实现图像锐化的简单代码示例:
```python
import cv2
import numpy as np
# 读取图像
img = cv2.imread('image.jpg')
# 构建锐化核
kernel_sharpen_1 = np.array([[-1,-1,-1], [-1,9,-1], [-1,-1,-1]])
kernel_sharpen_2 = np.array([[1,1,1], [1,-7,1], [1,1,1]])
kernel_sharpen_3 = np.array([[-1,-1,-1,-1,-1],
[-1,2,2,2,-1],
[-1,2,8,2,-1],
[-1,2,2,2,-1],
[-1,-1,-1,-1,-1]]) / 8.0
# 滤波图像
output_1 = cv2.filter2D(img, -1, kernel_sharpen_1)
output_2 = cv2.filter2D(img, -1, kernel_sharpen_2)
output_3 = cv2.filter2D(img, -1, kernel_sharpen_3)
# 显示结果
cv2.imshow('Original', img)
cv2.imshow('Sharpen 1', output_1)
cv2.imshow('Sharpen 2', output_2)
cv2.imshow('Sharpen 3', output_3)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
在上面的代码中,我们使用了三个不同的锐化核来对图像进行滤波,分别是`kernel_sharpen_1`、`kernel_sharpen_2`和`kernel_sharpen_3`。其中,`kernel_sharpen_1`和`kernel_sharpen_2`是标准的锐化核,而`kernel_sharpen_3`是一个更加复杂的锐化核,可以更好地保留图像细节。
使用`cv2.filter2D`函数可以对图像进行滤波操作,并将结果保存到`output_1`、`output_2`和`output_3`中。最后,我们使用`cv2.imshow`函数显示原始图像和滤波后的结果。
注意:在使用Opencv时,需要安装Opencv库,并将库文件导入到代码中。
阅读全文