Создайте гауссово ядро ​​3×3 для сглаживания изображения.

«Ядро Гаусса 3×3» относится к матрице 3×3, которая используется при обработке изображений и компьютерном зрении для применения к изображению размытия по Гауссу. Ядро сворачивается с изображением для получения сглаженной версии изображения.

Вот несколько методов с примерами кода на Python для создания гауссовского ядра 3×3:

Метод 1: использование NumPy и SciPy

import numpy as np
from scipy.ndimage import gaussian_filter
# Create a 3x3 Gaussian kernel with standard deviation of 1
kernel = np.array([[1, 2, 1],
                   [2, 4, 2],
                   [1, 2, 1]]) / 16
# Apply the kernel to an image using the gaussian_filter function
smoothed_image = gaussian_filter(image, sigma=1)

Метод 2: использование OpenCV

import cv2
# Create a 3x3 Gaussian kernel with standard deviation of 1
kernel = cv2.getGaussianKernel(3, 1)
# Apply the kernel to an image using the filter2D function
smoothed_image = cv2.filter2D(image, -1, kernel)

Метод 3: расчет вручную

import numpy as np
def gaussian_kernel(size, sigma):
    kernel = np.fromfunction(lambda x, y: (1/(2*np.pi*sigma2)) * np.exp(-((x-(size-1)/2)2 + (y-(size-1)/2)2)/(2*sigma2)), (size, size))
    return kernel / np.sum(kernel)
# Create a 3x3 Gaussian kernel with standard deviation of 1
kernel = gaussian_kernel(3, 1)
# Apply the kernel to an image using convolution
smoothed_image = np.convolve(image, kernel, mode='same')