[python] 이미지 블러링과 스모딩

이미지 블러링 및 스모딩은 이미지 처리를 위해 널리 사용되는 기술입니다. 블러링은 이미지를 흐리게 만들어 선명도를 감소시켜 세부 사항을 제거하는 것이고, 스모딩은 이미지에 있는 잡음을 줄이고 부드럽게 만드는 것을 의미합니다.

이미지 블러링

이미지 블러링을 수행하기 위해 여러 알고리즘이 사용될 수 있습니다. 그러나 가장 일반적인 알고리즘은 가우시안 필터를 사용한 블러링입니다. 가우시안 필터는 주변 픽셀의 가중치를 적용하여 픽셀 값을 평균화하는 방식으로 이미지를 흐리게 만듭니다.

아래는 Python에서 OpenCV 라이브러리를 사용하여 이미지를 블러링하는 예제 코드입니다:

import cv2

# 이미지 로드
image = cv2.imread('input.jpg')

# 가우시안 필터 적용
blurred = cv2.GaussianBlur(image, (5, 5), 0)

# 결과 이미지 저장
cv2.imwrite('output.jpg', blurred)

위의 코드에서, cv2.GaussianBlur 함수를 사용하여 이미지에 가우시안 필터를 적용했습니다. 필터 크기는 (5, 5)로 설정하고, 세 번째 매개변수는 가우시안 필터의 표준 편차를 나타냅니다.

이미지 스모딩

이미지 스모딩은 이미지의 잡음을 줄이고 부드럽게 만들기 위해 사용됩니다. 가장 간단한 스모딩 기법은 평균 필터를 사용하는 것입니다. 평균 필터는 주변 픽셀 값의 평균을 사용하여 현재 픽셀 값을 대체합니다.

다음은 Python에서 OpenCV를 사용하여 이미지를 스모딩하는 예제 코드입니다:

import cv2

# 이미지 로드
image = cv2.imread('input.jpg')

# 평균 필터 적용
smoothed = cv2.blur(image, (5, 5))

# 결과 이미지 저장
cv2.imwrite('output.jpg', smoothed)

위의 코드에서, cv2.blur 함수를 사용하여 이미지에 평균 필터를 적용했습니다. 필터 크기는 (5, 5)로 설정되었습니다.

이미지 블러링과 스모딩은 이미지 처리에서 매우 유용한 기술이며, 이미지의 선명도를 줄이거나 잡음을 감소시키는 데 사용됩니다. Python과 OpenCV를 사용하면 간단하게 이러한 작업을 수행할 수 있습니다.

참고 자료