728x90
Pillow 모듈
인공지능으로 이미지를 훈련시키기 위해서는 이미지를 처리해야 할 일이 많다.
가령, 이미지 사이즈를 모두 동일하게 바꾼다거나, 해상도를 바꾼다거나, 컬러를 흑백으로 만드는 등의 처리가 필요하다.
대량의 이미지를 손수 편집할 수는 없다.
파이썬에서 이미지를 처리할 때 사용하는 모듈이 PIL (Pillow) 이다.
설치는 pip3 install pillow 명령을 사용한다.
모듈을 불러오기 위해 다음 코드를 작성한다.
from PIL import Image, ImageEnhancer
모듈에서 사용할 대표적인 모듈은 이미지 파일을 저장할 Image와 처리를 위해 필요한 ImageEnhancer 모듈이다.
여기서 한 가지 예제를 가지고 실험해보자.
Image 모듈로 이미지를 가져온다.
test_img = Image.open('test_img.jpg')
이렇게 불러온 이미지를 ImageEnhancer로 처리하는데, 채도, 대비, 밝기, 선명도를 조절할 수 있다.
이번 글에서는 채도를 수정하는 함수만 살펴보자.
채도 조절 :: Color 함수
색상 처리를 위한 Color 함수는 채도를 조정하는 함수다.
채도 설정의 팩터가 0이면 흑백, 1은 기본 채도다.
A. 채도를 0으로 설정
# 색상 처리를 위한 Enhancer 지정
change_color = ImageEnhance.Color(test_img)
# 색상 처리를 위한 값을 넣어준다. 숫자 0이 들어간 자리에 0부터 1사이의 값을 넣을 수 있다.
color_output = change_color.enhance(0)
# 처리 후 파일을 저장한다.
color_output.save('color_0.jpg')
B. 채도를 0.5로 설정
# 색상 처리를 위한 Enhancer 지정
change_color = ImageEnhance.Color(test_img)
# 색상 처리를 위한 값을 넣어준다.
color_output = change_color.enhance(0.5)
# 처리 후 파일을 저장한다.
color_output.save('color_50.jpg')
C. 채도를 2로 설정 (채도를 두 배로 올리면?)
# 색상 처리를 위한 Enhancer 지정
change_color = ImageEnhance.Color(test_img)
# 색상 처리를 위한 값을 넣어준다.
color_output = change_color.enhance(2)
# 처리 후 파일을 저장한다.
color_output.save('color_200.jpg')
전체 결과를 확인해보면 다음과 같다.
'프로그래밍 > Python' 카테고리의 다른 글
pygame 창 배경색 설정 surface fill (0) | 2022.12.04 |
---|---|
Pygame 기본 화면 띄우기 (0) | 2022.12.01 |
SciPy 설치 (0) | 2017.08.31 |
Python 파일읽기 (0) | 2017.08.09 |
Python 파일쓰기 (0) | 2017.08.09 |