[파이썬] imageio 데이터 URI로 이미지 쓰기
이미지 파일을 데이터 URI 형식으로 변환하여 웹 상에서 바로 이미지를 사용할 수 있습니다. Python의 imageio
라이브러리를 사용하면 간단하게 데이터 URI를 생성할 수 있습니다.
imageio 라이브러리 설치
먼저, imageio
라이브러리를 설치해야 합니다. 아래의 명령어를 사용하여 설치할 수 있습니다.
pip install imageio
이미지를 데이터 URI로 변환하기
imageio
를 사용하여 이미지를 데이터 URI로 변환하기 위해서는 다음의 단계를 따릅니다.
imageio
를 임포트합니다.- 이미지 파일을 읽어옵니다.
imageio.imwrite()
함수를 사용하여 이미지를 원하는 형식으로 저장합니다.- 데이터 URI로 변환합니다.
아래는 예시 코드입니다.
import imageio
import base64
# 이미지 파일 읽어오기
image = imageio.imread('example.png')
# 이미지를 원하는 형식으로 저장하기
temp_file = 'temp.jpg' # 임시로 저장할 파일
imageio.imwrite(temp_file, image, format='JPEG')
# 데이터 URI로 변환
with open(temp_file, "rb") as file:
data = file.read()
base64_encoded_data = base64.b64encode(data).decode("utf-8")
data_uri = f"data:image/jpeg;base64,{base64_encoded_data}"
위 코드에서 example.png
는 변환하고자 하는 이미지 파일의 경로에 맞게 수정해야 합니다. 임시 파일명인 temp.jpg
도 원하는 파일명으로 변경할 수 있습니다.
이제 data_uri
변수에 변환된 데이터 URI가 저장되었습니다.
데이터 URI로 이미지 사용하기
변환된 데이터 URI를 사용하면 HTML이나 CSS에 바로 이미지를 삽입할 수 있습니다. 예를 들어, HTML에서는 다음과 같이 이미지를 표시할 수 있습니다.
<img src="data:image/jpeg;base64,{{ data_uri }}" alt="Image">
위 코드에서 {{ data_uri }}
는 서버 사이드 템플릿 엔진 등에서 실제 데이터 URI 값을 동적으로 삽입해야 합니다. 경우에 따라서는 이 값을 직접 입력해야 할 수도 있습니다.
이제 Python에서 imageio
를 사용하여 이미지 파일을 데이터 URI로 변환하는 방법을 알게 되었습니다. 이를 활용하여 웹 애플리케이션 등에서 바로 이미지를 사용할 수 있도록 할 수 있습니다.