base64图片数据类型转numpy的ndarray矩阵类型数据
1、两种方法如下链接
https://www.cnblogs.com/mtcnn/p/9411683.html
2、第一种方法:
# coding: utf-8 # python base64 编解码,转换成Opencv,PIL.Image图片格式 import base64 import io from PIL import Image import numpy as np import matplotlib.pyplot as plt img_file = open(r'images/mingong.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) print(image) img = np.array(Image.open(image)) # imgs = plt.imread(image) # img.show() print(img.shape) plt.imshow(img) plt.show()
3、第二种方法:
import base64
import numpy as np
import matplotlib.pyplot as plt
import cv2
with open(r'images/flim.png','rb') as img_file: # 二进制打开图片文件
img_b64encode = base64.b64encode(img_file.read()) # base64编码
#img_file.close() # 文件关闭
# print(img_b64encode)
img_b64decode = base64.b64decode(img_b64encode) # base64解码
# with open('./f.png','wb') as f:
# f.write(img_b64decode)
# img_array = np.fromstring(img_b64decode,np.uint8) # 转换np序列
# img=cv2.imdecode(img_array,cv2.COLOR_BGR2RGB) # 转换Opencv格式
# cv2.imshow("img",img)
# cv2.waitKey()
img_array = np.fromstring(img_b64decode,np.uint8)
print(len(img_array))
img=cv2.imdecode(img_array,cv2.COLOR_BGR2RGB)
print(np.array(img).shape)
plt.imshow(img)
plt.show()
自动化学习。

浙公网安备 33010602011771号