均值滤波器的使用方法,均值加权滤波器使用方法

首页 > 企业招商 > 作者:YD1662023-12-30 22:51:46

高斯滤波

为了克服简单局部平均法的弊端(图像模糊),目前已提出许多保持边缘、细节的局部平滑算法。它们的出发点都集中在如何选择邻域的大小、形状和方向、参数加平均及邻域各店的权重系数等。

图像高斯平滑也是邻域平均的思想对图像进行平滑的一种方法,在图像高斯平滑中,对图像进行平均时,不同位置的像素被赋予了不同的权重。高斯平滑与简单平滑不同,它在对邻域内像素进行平均时,给予不同位置的像素不同的权值,下图的所示的 3 * 3 和 5 * 5 领域的高斯模板。

均值滤波器的使用方法,均值加权滤波器使用方法(21)

高斯滤波让临近的像素具有更高的重要度,对周围像素计算加权平均值,较近的像素具有较大的权重值。如下图所示,中心位置权重最高为0.4。

均值滤波器的使用方法,均值加权滤波器使用方法(22)

Python中OpenCV主要调用GaussianBlur函数,如下:

dst = cv2.GaussianBlur(src, ksize, sigmaX)

其中,src表示原始图像,ksize表示核大小,sigmaX表示X方向方差。注意,核大小(N, N)必须是奇数,X方向方差主要控制权重。

均值滤波器的使用方法,均值加权滤波器使用方法(23)

代码如下:

#encoding:utf-8import cv2 import numpy as np import matplotlib.pyplot as plt
#读取图片img = cv2.imread('test01.png')source = cv2.cvtColor(img,cv2.COLOR_BGR2RGB)
#高斯滤波result = cv2.GaussianBlur(source, (3,3), 0)

#显示图形titles = ['Source Image', 'GaussianBlur Image'] images = [source, result] for i in xrange(2): plt.subplot(1,2,i 1), plt.imshow(images[i], 'gray') plt.title(titles[i]) plt.xticks([]),plt.yticks([]) plt.show

输出结果如下所示:

均值滤波器的使用方法,均值加权滤波器使用方法(24)

上一页23456下一页

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.