目录
主要记录Python-OpenCV中的图像模糊操作;
1. 高斯模糊:cv2.GaussianBlur()
def GaussianBlur(src, ksize, sigmaX, dst=None, sigmaY=None, borderType=None):"""使用高斯滤波器模糊图像Argument: src: 原图像 dst: 目标图像 ksize: 高斯核的大小;(width, height);两者都是正奇数;如果设为0,则可以根据sigma得到; sigmaX: X方向的高斯核标准差; sigmaY: Y方向的高斯核标准差; 如果sigmaY设为0,则与sigmaX相等; 如果两者都为0,则可以根据ksize来计算得到; (推荐指定ksize,sigmaX,sigmaY) borderType: pixel extrapolation method"""
使用:
#!/usr/bin/env python#-*- coding:utf-8 -*-# @Time : 19-4-20 下午4:27# @Author : chenimport cv2import matplotlib.pyplot as plt# BGRlena_BGR = cv2.imread("./lena.png")plt.subplot(1, 3, 1)plt.imshow(lena_BGR)plt.axis('off')plt.title('lena')# RGBlena_RGB = cv2.cvtColor(lena_BGR, cv2.COLOR_BGR2RGB) # 颜色空间转换plt.subplot(1, 3, 2)plt.imshow(lena_RGB)plt.axis('off')plt.title('lena_RGB')# RGB + GaussianBlurlena_gaussian_blur = cv2.GaussianBlur(lena_RGB, (5, 5), 1, 0) # 高斯模糊plt.subplot(1, 3, 3)plt.imshow(lena_gaussian_blur)plt.axis('off')plt.title('lena_gaussian_blur')plt.show()