반응형
파이썬은 그 강력함과 유연성 덕분에 다양한 영역에서 활용됩니다. 이미지 처리도 이러한 영역 중 하나이며, 파이썬의 여러 라이브러리를 활용하면 손쉽게 이미지 확장자 변환 프로그램을 만들 수 있습니다. 이번 글에서는 PIL(Python Imaging Library)의 후속 라이브러리인 Pillow를 사용하여 이미지 확장자를 변환하는 간단한 프로그램을 만드는 방법을 안내드리겠습니다.
필요 도구: Pillow 라이브러리
Pillow는 파이썬에서 이미지 파일을 처리하기 위한 가장 인기 있는 라이브러리 중 하나입니다. 설치는 아래와 같이 pip를 사용하여 쉽게 할 수 있습니다.
pip install Pillow
기본적인 이미지 확장자 변환 코드
아래는 PNG 이미지를 JPG 이미지로 변환하는 파이썬 코드의 예시입니다.
from PIL import Image
# 이미지 파일 불러오기
original_image = Image.open("original_image.png")
# RGB 모드로 변환 (PNG to JPG 변환 시 필요)
rgb_image = original_image.convert('RGB')
# 새로운 확장자로 이미지 저장
rgb_image.save("converted_image.jpg")
확장자 변환 프로그램 만들기
이제 사용자로부터 파일 경로와 변환하고자 하는 확장자를 입력받아 이미지 확장자를 변환하는 프로그램을 만들어보겠습니다.
from PIL import Image
import os
def convert_image(file_path, target_format):
# 파일 확장자 확인
if not os.path.isfile(file_path):
print("입력한 경로에 파일이 존재하지 않습니다.")
return
try:
# 이미지 파일 불러오기
original_image = Image.open(file_path)
except IOError:
print("이미지 파일을 불러올 수 없습니다.")
return
# 파일 이름과 확장자 분리
file_name, _ = os.path.splitext(file_path)
# 변환하고자 하는 확장자로 이미지 저장
converted_file_path = f"{file_name}.{target_format}"
original_image.save(converted_file_path)
print(f"변환된 파일이 저장되었습니다: {converted_file_path}")
if __name__ == "__main__":
file_path = input("변환할 이미지 파일의 경로를 입력하세요: ")
target_format = input("변환하고자 하는 이미지 확장자를 입력하세요(ex. jpg, png): ")
convert_image(file_path, target_format)
이 프로그램은 사용자로부터 이미지 파일의 경로와 변환하고자 하는 확장자를 입력받습니다. 입력받은 정보를 바탕으로 이미지 파일을 불러오고, 지정된 확장자로 이미지를 저장합니다. 이 과정에서 파일이 존재하지 않거나, 이미지 파일이 아닌 경우에 대한 예외 처리도 포함되어 있습니다.
반응형