说明
1、本质上是数据光滑技术,可用于一维、二维甚至多维空间。
2、数据被高斯模糊处理后,数据倾向于周边附近的其他数据,各数据相同。
在图像领域,各个位置的像素值使用“周边邻居像素点加权平均”重新赋值。对于每个像素点,由于计算时均以当前像素点为中心,所以均值μ=0。使用时有2个超参数需要设置:高斯核大小和高斯函数标准差σ。高斯核大小表示“影响当前点的邻域范围”,而标准差表示“邻域中的其他像素点对当前点的影响力”。
实例
def gaussian_kernel(self): kernel = np.zeros(shape=(self.kernel_size, self.kernel_size), dtype=np.float) radius = self.kernel_size//2 for y in range(-radius, radius + 1): # [-r, r] for x in range(-radius, radius + 1): # 二维高斯函数 v = 1.0 / (2 * np.pi * self.sigma ** 2) * np.exp(-1.0 / (2 * self.sigma ** 2) * (x ** 2 + y ** 2)) kernel[y + radius, x + radius] = v # 高斯函数的x和y值 vs 高斯核的下标值 kernel2 = kernel / np.sum(kernel) return kernel2
以上就是python中高斯模糊的介绍,希望对大家有所帮助。更多Python学习指路:python基础教程
本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。