1. 二维高斯核函数
参考链接:https://blog.youkuaiyun.com/qq_16013649/article/details/78784791
g(x, y, sigma) = exp(-(x**2+y**2)/(2*sigma**2))
2. 卷积过程
高斯模糊:
G(xi, yi, sigma)= img*kernel
3. code
# 高斯核函数
import numpy as np
def gauss(kernel_size, sigma):
kernel = np.zeros((kernel_size, kernel_size))
center = kernel_size//2
if sigma<=0:
sigma = ((kernel_size-1)*0.5-1)*0.3+0.8
s = sigma**2
sum_val = 0
for i in range(kernel_size):
for j in range(kernel_size):
x, y = i-center, j-center
kernel[i, j] = np.exp(-(x**2+y**2)/2*s)
sum_val += kernel[i, j]
kernel = kernel/sum_val
return kernel
gauss_kernel = gauss(3, 2)
import matplotlib.