본문 바로가기
data science/python

image byte 데이터 <-> numpy string

by 꼰대코더 2024. 4. 29.

인터넷 스트림으로 이미지를 전송할 경우 이미지 데이터는 string 형식으로 변환해야 한다.

import numpy as np
import base64
import sys

def base64_encode_image(a):
    # base64 encode the input NumPy array
    return base64.b64encode(a).decode("utf-8")

def base64_decode_image(a, dtype, shape):
    # if this is Python 3, we need the extra step of encoding the
    # serialized NumPy string as a byte object
    if sys.version_info.major == 3:
       a = bytes(a, encoding="utf-8")

    # convert the string to a NumPy array using the supplied data
    # type and target shape
    a = np.frombuffer(base64.decodestring(a), dtype=dtype)
    a = a.reshape(shape)

    # return the decoded image
    return a

 

'data science > python' 카테고리의 다른 글

Thread vs ThreadPool vs ThreadPoolExecutor  (0) 2024.05.11
threading / multiprocessing / asyncio  (0) 2024.05.02
two list -> dict  (0) 2024.02.27
문자열 리스트 조작  (0) 2024.02.02
오버랩핑된 문자열 잇기  (0) 2024.02.02