[파이썬] Pillow 이미지의 레벨 및 감마 조절

Pillow

이미지 처리는 컴퓨터 비전 분야에서 중요한 주제입니다. 이미지의 품질을 개선하고 세부 사항을 강조하기 위해 이미지의 레벨 및 감마를 조절할 수 있습니다. 이를 위해 Python의 Pillow 라이브러리를 사용하여 이미지를 조작할 수 있습니다.

Pillow (이전에는 PIL이라고 알려진)은 Python에서 이미지 처리 작업을 수행하는 데 사용되는 강력한 라이브러리입니다. 이 라이브러리를 사용하면 이미지를 읽고 저장하며, 크기를 조절하고, 회전시킬 수 있으며, 필터를 적용하고, 픽셀 수준에서 작업할 수 있습니다.

이미지 레벨 조절

이미지 레벨 조절은 이미지의 어두운 부분과 밝은 부분을 조절하여 이미지의 대비를 향상시키는 기술입니다. 이를 통해 이미지의 세부 사항을 더 잘 볼 수 있으며, 이미지의 흑백 처리나 색조 변환에도 사용할 수 있습니다.

from PIL import Image
from PIL import ImageOps

def adjust_levels(image):
    return ImageOps.autocontrast(image)

# 이미지 파일 로드
image = Image.open("image.jpg")

# 이미지 레벨 조절
adjusted_image = adjust_levels(image)

# 조절된 이미지 저장
adjusted_image.save("adjusted_image.jpg")

위의 예제 코드에서 adjust_levels 함수는 이미지의 레벨을 자동으로 조절하여 개선된 이미지를 반환합니다. 이때 ImageOps 모듈을 사용하며, autocontrast 함수를 호출하여 자동으로 레벨을 조절합니다.

이미지 감마 조절

이미지 감마 조절은 이미지의 밝기와 색상을 조절하는 기술입니다. 이미지 감마 조절을 통해 이미지의 밝기를 조절하거나, 이미지의 색감을 변경하여 더 생동감있는 이미지를 만들 수 있습니다.

from PIL import Image
from PIL import ImageOps

def adjust_gamma(image, gamma):
    return ImageOps.adjust_gamma(image, gamma)

# 이미지 파일 로드
image = Image.open("image.jpg")

# 이미지 감마 조절
adjusted_image = adjust_gamma(image, 1.5)

# 조절된 이미지 저장
adjusted_image.save("adjusted_image.jpg")

위의 예제 코드에서 adjust_gamma 함수는 이미지의 감마를 조절하여 개선된 이미지를 반환합니다. 이때 ImageOps 모듈을 사용하며, adjust_gamma 함수를 호출하여 이미지의 감마를 조절합니다.

마무리

Python의 Pillow 라이브러리를 사용하면 이미지의 레벨 및 감마를 조절하여 이미지의 품질을 개선할 수 있습니다. 이를 통해 이미지의 세부 사항을 강조하고, 흑백 처리를 할 수 있으며, 감마를 조절하여 색감을 변경할 수도 있습니다. 이미지 처리에 대한 더 자세한 내용은 Pillow의 공식 문서를 참조하시기 바랍니다. Happy coding!