본문 바로가기
IT 관련 Tip/Python

파이썬으로 간단하게 이미지 확장자 변환 프로그램 만들기, 기초, 입문, 코딩, 코드, 강좌, 강의, 배우기, 공부, 개발, Python

by How Money 2024. 3. 31.

파이썬은 그 강력함과 유연성 덕분에 다양한 영역에서 활용됩니다. 이미지 처리도 이러한 영역 중 하나이며, 파이썬의 여러 라이브러리를 활용하면 손쉽게 이미지 확장자 변환 프로그램을 만들 수 있습니다. 이번 글에서는 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)

이 프로그램은 사용자로부터 이미지 파일의 경로와 변환하고자 하는 확장자를 입력받습니다. 입력받은 정보를 바탕으로 이미지 파일을 불러오고, 지정된 확장자로 이미지를 저장합니다. 이 과정에서 파일이 존재하지 않거나, 이미지 파일이 아닌 경우에 대한 예외 처리도 포함되어 있습니다.