cv2.GaussianBlur 它用于对图像进行高斯模糊处理。高斯模糊是一种常用的图像模糊技术,通过高斯函数对图像进行卷积,实现图像的平滑效果,常用于去除图像噪声或实现图像的柔化。
二、语法和参数
函数的语法如下:
dst = cv2.GaussianBlur(src, ksize, sigmaX[, dst[, sigmaY[, borderType]])
1
src: 输入图像,可以是单通道灰度图像或多通道彩色图像。
ksize: 高斯核的大小,是一个 (width, height) 的元组,必须是正数和奇数。
sigmaX: X 轴方向上的高斯核的标准差。
dst: 输出图像,如果未指定,将创建与 src 相同大小和类型的图像。
sigmaY: Y 轴方向上的高斯核的标准差,如果为0,则 sigmaY 将与 sigmaX 相同。
borderType: 边界处理方式,默认为 cv2.BORDER_DEFAULT。
import cv2 width = 800 if __name__ == "__main__": camera = cv2.VideoCapture(0) firstFrame = None while True: (grabbed, frame) = camera.read() text = "Unoccupied" if not grabbed: break #frame = imutils.resize(frame, width=width) #gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) gray = cv2.GaussianBlur(frame, (21, 21), 0) if firstFrame is None: firstFrame = gray continue cv2.imshow("Security Feed", gray) if cv2.waitKey(1) & 0xFF == ord('q'): break camera.release() cv2.destroyAllWindows()
上述代码 实现读取摄像头并进行高斯模糊