base64转图片脚本
时间: 2023-10-10 08:06:24 浏览: 111
base64转图片的脚本可以根据不同的需求选择不同的实现方式。下面是两种常见的实现方式:
方式一,将图片先通过cv2.imdecode解码,再通过cv2.cvtColor进行颜色空间的转换:
```python
import cv2
import base64
import numpy as np
def base64_to_img(base64_str):
byte_data = base64.b64decode(base64_str) # 将base64转换为二进制
encode_image = np.asarray(bytearray(byte_data), dtype="uint8") # 二进制转换为一维数组
img_array = cv2.imdecode(encode_image, cv2.IMREAD_COLOR) # 用cv2解码为三通道矩阵
img_array = cv2.cvtColor(img_array, cv2.COLOR_BGR2RGB) # BGR2RGB
return img_array
```
方式二,先将图片经过cv2.imencode(".jpg", img_array)进行jpg格式编码,再进行base64编码:
```python
import cv2
import base64
import numpy as np
def base64_to_img(base64_str):
byte_data = base64.b64decode(base64_str) # 将base64转换为二进制
encode_image = np.asarray(bytearray(byte_data), dtype="uint8") # 二进制转换为一维数组
img_array = cv2.imdecode(encode_image, cv2.IMREAD_COLOR) # 用cv2解码为三通道矩阵
img_array = cv2.cvtColor(img_array, cv2.COLOR_BGR2RGB) # BGR2RGB
return img_array
```
以上两种方式都可以将base64编码的图片转换为RGB格式的numpy矩阵。
阅读全文