[python] PySimpleGUI를 사용하여 이미지 처리하기

이번 블로그 포스트에서는 Python의 PySimpleGUI 라이브러리를 사용하여 이미지 처리를 해보겠습니다. PySimpleGUI는 사용하기 쉬운 GUI 개발 도구로, 간단한 인터페이스를 통해 다양한 기능을 구현할 수 있습니다.

필요한 라이브러리 설치하기

먼저, PySimpleGUI를 설치해야 합니다. 아래 명령어를 사용하여 PySimpleGUI를 설치합니다.

pip install PySimpleGUI

이미지 처리를 위해 PIL 라이브러리도 설치해야 합니다. 아래 명령어를 사용하여 PIL 라이브러리를 설치합니다.

pip install Pillow

이미지 불러오기

import PySimpleGUI as sg

# 윈도우 레이아웃 정의
layout = [[sg.Text('이미지 파일을 선택하세요')],
          [sg.Input(key='-FILE-', enable_events=True)],
          [sg.Image(key='-IMAGE-')],
          [sg.Button('확인'), sg.Button('종료')]]

# 윈도우 생성
window = sg.Window('이미지 처리', layout)

while True:
    event, values = window.read()

    # 윈도우가 닫히면 종료
    if event == sg.WINDOW_CLOSED or event == '종료':
        break

    # 이미지 파일 선택
    elif event == '-FILE-':
        filename = values['-FILE-']
        window['-IMAGE-'].update(filename)

window.close()

위의 코드는 PySimpleGUI를 사용하여 이미지 파일을 선택하고, 선택한 이미지를 화면에 표시하는 예제입니다. 윈도우 레이아웃을 정의하고, 이미지 파일 경로를 입력받는 Input 객체와 이미지를 표시하는 Image 객체, 확인 버튼, 종료 버튼을 추가합니다.

이미지 처리하기

이미지 처리 함수를 작성하여 이미지에 원하는 작업을 수행할 수 있습니다. 예를 들어, 이미지를 회전시키는 함수를 작성해보겠습니다.

from PIL import Image

def rotate_image(image_path, angle):
    image = Image.open(image_path)
    rotated_image = image.rotate(angle)
    rotated_image.show()

# 이미지 파일 경로
image_path = 'image.jpg'

# 이미지 회전 각도
angle = 90

# 이미지 회전 함수 호출
rotate_image(image_path, angle)

위의 코드는 PIL 라이브러리를 사용하여 이미지를 회전시키는 함수를 정의하고, 해당 함수를 호출하는 예제입니다. 이미지 파일 경로와 회전 각도를 지정하여 이미지를 회전시킵니다.

결론

PySimpleGUI를 사용하여 이미지 처리를 수행하는 방법을 알아보았습니다. PySimpleGUI는 간편한 GUI 개발을 위한 훌륭한 도구이며, 이미지 처리와 같은 다양한 작업에 유용하게 사용할 수 있습니다. PIL 라이브러리를 함께 사용하여 이미지를 처리하는 기능을 구현할 수 있습니다.