python在內存中讀取base64圖片-skimage.io格式

import base64
import skimage.io
import matplotlib.pyplot as plt


def base64_to_rgb(base64_str):
    """
    默認base64中的圖像爲rgb,直接轉換成即可
    :param base64:
    :return:
    """
    if isinstance(base64_str, bytes):
        base64_str = base64_str.decode("utf-8")

    imgdata = base64.b64decode(base64_str)
    img = skimage.io.imread(imgdata, plugin='imageio')
    return img

base = 'R0lGODlhdQAmAKIAAOYyL+rU4llg6Jmd8e92dCky4eEGAv///yH5BAAAAAAALAAAAAB1ACYAAAP/eLrc/jC2IEoZMATJu/9gyFVWIUyksIls677LUJbrEcxWDe98f+CWk4I0w/iOSNANKJQBC8mo9LEEDp8F3XR7rOIU2Cx3jHwKsUKyWqRhEEvGN3xN91BoCq8l9tTW/244Rk4mOkBGgIl8VjF+d4V5A5KKf3IWiCCEOZRraGxP`在這裏插入代碼片`nGqeIZpzoVyjDBptDpYmp1yumI9BWq5QUQS6fn+lm3lYmLdSBsW8xcjJBgAABLwfAMhXRQt6ODWuJ8rb3AYK0d3h4OHIBC7jC0TCYb/ZB+Th3/Dc4/PmLOgSvkwK+xjMAAEmCwhQnrc8rFSxGkiwnoFnEnTp0mdqlJw0DgIggwgu/08xABM+KkhGJdm9JJqMhGkyQIAATA3HxVwATuO8jyQfECiXJyYzZwzyOSilcqWEmzkP1ES6LGmDcStshjspNJAgMOwwNmBajGZXGyJVhU22quxOaR7hrahqQ52DC1jh/nj1AG0Eux3BLgu59x3SkxHO9mVLhJfcirUc2IWA96vUbvf+QkNbldCgIGCKHi6h1e/Bu1+VOiYHYAVTwBHyCfWyocoZzZovbf3ok1njzx/IltUg+GG13twMfta0gdDruLH3MOD6uaPDcI8hCAZp4/k24elmtOacGXlcPAuYe/VmnVt0ncioTyeYU+ibQRWOHyCRXEz40BDyivYWYBzQAIbTbeBUNTIZRF1QlNlVimGdfffLSPg9oJ9+vVV4H23smWSgFqrZZc0AWiTWACMXcjAhfgAqgxpXKwDXDXbZsSPjVcth6NNtZj3nzCpM1dDfPDACM+OQ9l2I1HiPlfNceentMoGLygQp5Eq3aKfYaUgOdBIB9RyYSEsmvASiFgG0RMRLEK2RAAA7'

img = base64_to_rgb(base)
plt.imshow(img)
plt.show()

opencv格式

# coding: utf-8
import base64
import numpy as np
import cv2
 
img_file = open(r'00.JPG','rb')   # 二進制打開圖片文件
img_b64encode = base64.b64encode(img_file.read())  # base64編碼
img_file.close()  # 文件關閉
img_b64decode = base64.b64decode(img_b64encode)  # base64解碼
 
img_array = np.fromstring(img_b64decode,np.uint8) # 轉換np序列
img=cv2.imdecode(img_array,cv2.COLOR_BGR2RGB)  # 轉換Opencv格式
 
cv2.imshow("img",img)
cv2.waitKey()

pIL格式

# coding: utf-8
# python base64 編解碼,轉換成Opencv,PIL.Image圖片格式
import base64
import io
from PIL import Image
 
img_file = open(r'/home/dcrmg/work/medi_ocr_v1.2/img/00.JPG','rb')   # 二進制打開圖片文件
img_b64encode = base64.b64encode(img_file.read())  # base64編碼
img_file.close()  # 文件關閉
img_b64decode = base64.b64decode(img_b64encode)  # base64解碼
 
image = io.BytesIO(img_b64decode)
img = Image.open(image)
img.show()

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章