Python实现高斯模糊算法(含完整源码)
在图像处理中,高斯模糊是一种常用的模糊滤镜算法,其主要原理是通过对图像进行卷积操作来减少噪点和细节,从而得到更加平滑的图像效果。在Python语言中,我们可以通过NumPy和OpenCV等第三方库来实现高斯模糊算法。
下面是基于NumPy和OpenCV实现的高斯模糊算法的完整源码:
import cv2
import numpy as np
def gaussian_blur(image, kernel_size=5, sigma=1.4):
kernel = np.zeros((kernel_size, kernel_size), dtype=np.float32)
center = kernel_size // 2
sum_val = 0.0
for i in range(kernel_size):
for j in range(kernel_size):
x = i - center
y = j - center
kernel[i, j] = np.exp(-0.5 * (x ** 2 + y ** 2) / (sigma ** 2))
sum_val += kernel[i, j]
kernel /= sum_val
blurred_image = cv2.filter2D(imag