[파이썬] 이미지 변환 및 크기 조정

이미지 변환이나 크기 조정은 데이터 처리 및 시각화 작업에서 중요한 부분입니다. Python은 다양한 라이브러리를 제공하여 이미지 변환과 크기 조정 작업을 수행할 수 있습니다. 이 블로그 포스트에서는 Python을 사용하여 이미지를 변환하고 크기를 조정하는 방법을 알아보겠습니다.

1. 이미지 변환

1.1 이미지 회전

이미지 회전은 이미지를 시계 방향 또는 반시계 방향으로 회전하는 작업입니다. Python의 Pillow 라이브러리를 사용하여 이미지를 회전할 수 있습니다. 다음은 Pillow를 사용하여 이미지를 90도 시계 방향으로 회전하는 예시 코드입니다.

from PIL import Image

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

# 이미지 회전
rotated_image = image.rotate(90)

# 이미지 저장
rotated_image.save("output.jpg")

1.2 이미지 필터링

이미지 필터링은 이미지에 다양한 필터를 적용하여 이미지를 수정하는 작업입니다. Python의 OpenCV 라이브러리를 사용하면 이미지 필터링 작업을 쉽게 할 수 있습니다. 다음은 OpenCV를 사용하여 이미지를 흑백으로 변환하는 예시 코드입니다.

import cv2

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

# 이미지를 흑백으로 변환
gray_image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)

# 이미지 저장
cv2.imwrite("output.jpg", gray_image)

2. 이미지 크기 조정

2.1 이미지 리사이징

이미지의 크기를 조정하는 것은 이미지 처리에서 자주 사용되는 작업입니다. Python의 Pillow 라이브러리를 사용하여 이미지의 크기를 조정할 수 있습니다. 다음은 Pillow를 사용하여 이미지의 크기를 50%로 축소하는 예시 코드입니다.

from PIL import Image

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

# 이미지 리사이징
resized_image = image.resize((int(image.width/2), int(image.height/2)))

# 이미지 저장
resized_image.save("output.jpg")

2.2 이미지 자르기

이미지 자르기는 이미지의 특정 부분만 추출하는 작업입니다. Python의 Pillow 라이브러리를 사용하여 이미지를 자를 수 있습니다. 다음은 Pillow를 사용하여 이미지의 특정 부분을 자르는 예시 코드입니다.

from PIL import Image

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

# 이미지 자르기
cropped_image = image.crop((100, 100, 300, 300))

# 이미지 저장
cropped_image.save("output.jpg")

Python을 사용하여 이미지를 변환하고 크기를 조정하는 방법에 대해 알아보았습니다. 이러한 기능들을 활용하여 다양한 이미지 처리 및 시각화 작업을 수행할 수 있습니다. Python의 다양한 라이브러리들을 적절히 활용하여 이미지 작업을 보다 효율적으로 처리할 수 있습니다.