cv2.GaussianBlur 是 OpenCV 图像处理库中的一个函数,它用于对图像进行高斯模糊处理。高斯模糊是一种常用的图像模糊技术,通过高斯函数对图像进行卷积,实现图像的平滑效果,常用于去除图像噪声或实现图像的柔化。
函数的语法如下:
dst = cv2.GaussianBlur(src, ksize, sigmaX[, dst[, sigmaY[, borderType]]) src: 输入图像,可以是单通道灰度图像或多通道彩色图像。ksize: 高斯核的大小,是一个 (width, height) 的元组,必须是正数和奇数。sigmaX: X 轴方向上的高斯核的标准差。dst: 输出图像,如果未指定,将创建与 src 相同大小和类型的图像。sigmaY: Y 轴方向上的高斯核的标准差,如果为0,则 sigmaY 将与 sigmaX 相同。borderType: 边界处理方式,默认为 cv2.BORDER_DEFAULT。代码:
import cv2 # 读取彩色图像 image = cv2.imread('example.jpg') # 应用高斯模糊,核大小为5x5,标准差为0 blurred_image = cv2.GaussianBlur(image, (5, 5), 0) # 显示原图和模糊后的图像 cv2.imshow('Original Image', image) cv2.imshow('Blurred Image', blurred_image) # 等待按键后关闭所有窗口 cv2.waitKey(0) cv2.destroyAllWindows() 输出:
运行上述代码后,将显示原图和高斯模糊后的图像。请注意,实际输出将取决于 example.jpg 图像的内容。
代码:
import cv2 # 读取灰度图像 image = cv2.imread('example.jpg', cv2.IMREAD_GRAYSCALE) # 应用高斯模糊,核大小为5x5,标准差为1 blurred_image = cv2.GaussianBlur(image, (5, 5), 1) # 显示原图和模糊后的图像 cv2.imshow('Original Image', image) cv2.imshow('Blurred Image', blurred_image) # 等待按键后关闭所有窗口 cv2.waitKey(0) cv2.destroyAllWindows() 输出:
运行上述代码后,将显示灰度原图和高斯模糊后的图像。请注意,实际输出将取决于 example.jpg 图像的内容。
ksize 的宽度和高度都是正奇数,否则函数将抛出错误。sigmaX 和 sigmaY 的值通常设置为正数,如果设置为0,它们将由 ksize 决定。dst 参数,函数将自动分配内存来存储输出图像。borderType 可以影响图像边缘的处理,常用的选项包括 cv2.BORDER_DEFAULT、cv2.BORDER_CONSTANT 等。
上一篇:拿到ctf的flag之后干什么