가우시안 필터는 이미지의 전체적인 구조를 떨어뜨리지 않고, 유지하면서 스케일을 크게하는 효과를 가지고 있다.
즉 샘플링에 따른 이미지 정보의 손실을 최소화 하면서, 해당 스케일에서의 이미지 구조를 잘 보존하고 있다.
지금까지 알려진 필터 중에는 가우시안 필터가 유일하다고 한다.
아래는 가우시안 필터를 적용했을 때, 250, : 픽셀들을 그래프로 나타낸 코드이다.
import cv2
import numpy as np
import matplotlib.pyplot as plt
img = cv2.imread('Lenna.png', cv2.IMREAD_GRAYSCALE)
img = cv2.resize(img, (500, 700))
fig, ax = plt.subplots(2, 3, figsize = (9, 9))
k = 0
for i in range(0, 2):
for j in range(0, 3):
# cv2.imshow(f'Gaussian_{i + j}', img)
ax[i, j].set(xlim = [0, 500], ylim = [0, 255])
ax[i, j].plot(np.arange(0, img.shape[1]), img[250, :], color = 'b')
ax[i, j].set_title(f'Gaussian_{k}')
k += 1
img = cv2.GaussianBlur(img, ksize=(9, 9), sigmaX = 5, sigmaY = 5)
plt.show()

보면 극대점과 극소점이 유지되는 것을 볼 수 있다.
'인공지능 > Computer Vision' 카테고리의 다른 글
[CV - Python] Gaussian Filtering (3) | 2022.10.14 |
---|---|
[CV - python] 2D Partial Derivative for Edge Detection (엣지 검출을 위한 2차원 편미분) (2) | 2022.10.13 |
[CV] Camera & Optics (2) | 2022.09.23 |
[CV] 빛의 속성 (Properties of Light) (4) | 2022.09.22 |
cs231n 강의 (4) | 2022.09.01 |