写一个python函数实现cv2.GaussianBlur的功能
时间: 2023-10-23 08:19:38 浏览: 47
下面是一个 Python 函数实现的例子,可以使用 OpenCV 库的 cv2.GaussianBlur 函数进行高斯模糊处理:
```python
import cv2
def gaussian_blur(image, kernel_size=3, sigma=0):
"""
高斯模糊处理函数
:param image: 待处理图像
:param kernel_size: 高斯核大小,默认为 3
:param sigma: 高斯核在 X 方向上的标准差,表示模糊程度,默认为 0
:return: 高斯模糊后的图像
"""
img_blur = cv2.GaussianBlur(image, (kernel_size, kernel_size), sigma)
return img_blur
```
在这个例子中,定义了一个名为 `gaussian_blur` 的函数,它接收一个待处理的图像,一个高斯核大小和一个高斯核在 X 方向上的标准差,然后使用 cv2.GaussianBlur 函数进行高斯模糊处理,并返回模糊后的图像。可以根据实际情况调整高斯核大小和标准差的值。
使用这个函数的示例代码如下:
```python
img = cv2.imread('example.png')
img_blur = gaussian_blur(img, kernel_size=5, sigma=0)
cv2.imshow('Gaussian Blur', img_blur)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
这个示例代码读入一张名为 `example.png` 的图像,然后使用 `gaussian_blur` 函数进行高斯模糊处理,其中 `kernel_size` 参数设置为 5,`sigma` 参数设置为 0。最后使用 `cv2.imshow` 函数显示模糊后的图像,`cv2.waitKey` 函数等待按键事件,`cv2.destroyAllWindows` 函数关闭所有窗口。