📅  最后修改于: 2023-12-03 15:18:07.534000             🧑  作者: Mango
OpenCV是一个广泛使用的计算机视觉库,其中包含许多常用的图像处理函数。高斯模糊(Gaussian Blur)是其中一种常用滤波器,可以将图像中的噪声和细节进行平滑处理。
cv2.GaussianBlur(src, ksize, sigmaX[, dst[, sigmaY[, borderType]]]) -> dst
其中,参数说明如下:
src
:输入图像。ksize
:高斯核大小,通常选择奇数。如果只在x方向使用,则为 (ksize, 1)
。sigmaX
:高斯核在x方向上的标准差。sigmaY
:高斯核在y方向上的标准差,如果设置为0,则默认取sigmaX的值。dst
:输出图像,默认为None,此时函数会在内部创建一个与输入图像大小和类型相同的输出图像。borderType
:边框类型,默认为cv2.BORDER_DEFAULT
,即根据图像大小自动选择边框类型。import cv2
# 读入图像
img = cv2.imread('example.jpg')
# 进行高斯模糊
ksize = (5, 5)
sigmaX = 0
blur = cv2.GaussianBlur(img, ksize, sigmaX)
# 显示原图和处理结果
cv2.imshow('Original Image', img)
cv2.imshow('Gaussian Blur Image', blur)
cv2.waitKey(0)
cv2.destroyAllWindows()
这段代码读入一张图像,然后进行高斯模糊处理,并通过imshow函数显示出原图和处理结果。注意imshow函数必须与waitKey和destroyAllWindows函数配合使用,否则窗口会一闪而过。如果需要将处理结果保存为图像文件,可以使用cv2.imwrite()
函数。
高斯模糊是一种简单而有效的图像处理方法,可以平滑图像中的噪声和细节。OpenCV提供了简单易用的高斯模糊函数,使用起来非常方便。