[python] Pillow을 사용하여 이미지의 명도와 대비를 조절하는 방법

이미지 처리는 컴퓨터 비전 및 그래픽 디자인 분야에서 중요한 작업입니다. 이미지의 명도와 대비를 조절함으로써 이미지의 시각적 효과를 개선하거나 이미지 분석을 돕는 방향으로 활용할 수 있습니다.

Python에서 이미지 처리를 위해 많이 사용되는 라이브러리 중 하나가 Pillow입니다. Pillow은 이미지 처리를 위한 사용하기 쉬운 인터페이스를 제공하여 다양한 조작을 수행할 수 있습니다.

이번 블로그에서는 Pillow을 사용하여 이미지의 명도와 대비를 조절하는 방법에 대해 알아보겠습니다.

1. Pillow 설치하기

Pillow를 사용하기 위해서는 먼저 Pillow를 설치해야 합니다. pip 명령어를 사용하여 아래와 같이 설치할 수 있습니다.

pip install pillow

2. 이미지의 명도 조절하기

이미지의 명도는 이미지의 픽셀 값들을 밝게 또는 어둡게 조절하는 것입니다. Pillow을 사용하여 이미지의 명도를 조절하는 방법은 아래와 같습니다.

from PIL import Image

# 이미지 열기
image = Image.open('image.jpg')

# 이미지의 명도 조절하기
enhancer = ImageEnhance.Brightness(image)
bright_image = enhancer.enhance(1.5)  # 명도를 1.5배 증가시킴

# 조절된 이미지 저장하기
bright_image.save('bright_image.jpg')

위의 예제에서는 ImageEnhance.Brightness 클래스를 사용하여 이미지의 명도를 조절하였습니다. enhance() 메서드를 사용하여 명도를 조절할 수 있으며, 전달된 파라미터에 따라 밝게 또는 어둡게 조절됩니다. enhance() 메서드의 파라미터가 1보다 크면 이미지가 밝아지고, 1보다 작으면 어두워집니다.

3. 이미지의 대비 조절하기

이미지의 대비는 이미지의 명암 대비를 강조하여 이미지의 선명도를 높이는 것을 의미합니다. Pillow을 사용하여 이미지의 대비를 조절하는 방법은 아래와 같습니다.

from PIL import Image

# 이미지 열기
image = Image.open('image.jpg')

# 이미지의 대비 조절하기
enhancer = ImageEnhance.Contrast(image)
contrast_image = enhancer.enhance(2.0)  # 대비를 2배 증가시킴

# 조절된 이미지 저장하기
contrast_image.save('contrast_image.jpg')

위의 예제에서는 ImageEnhance.Contrast 클래스를 사용하여 이미지의 대비를 조절하였습니다. enhance() 메서드를 사용하여 대비를 조절할 수 있으며, 전달된 파라미터에 따라 대비가 증가하거나 감소합니다. enhance() 메서드의 파라미터가 1보다 크면 대비가 강조되고, 1보다 작으면 대비가 약해집니다.

마무리

Pillow을 사용하여 이미지의 명도와 대비를 조절하는 방법에 대해 알아보았습니다. 이를 활용하여 이미지의 시각적 효과를 개선하거나 이미지 분석에 활용할 수 있습니다. Pillow은 다양한 이미지 처리 기능을 제공하므로, 더 다양한 작업을 위해 문서와 예제 코드를 참고하시기 바랍니다.

참고 자료: