首页 > 解决方案 > 将图像转换为 JSON 文件时出现形状错误

问题描述

我正在尝试将图像转换为 JSON 文件并使用 MLFLow 使用 REST API 将其发布。下面你可以看到我的代码。我收到一个错误,例如“无法将大小为 535500 的数组重新整形为形状 (1,4096)”。你能帮我么。先感谢您。

import json
import cv2
import requests
import base64
import numpy as np
from PIL import Image


data = np.asarray(Image.open('Dataset/test2/dog_PNG50348.png').convert('LA'))
data = data.reshape((1, 64*64))
columns = [f"col_{c}" for c in range(0, data[0].shape[0])]
dct = {"columns": columns, "data": [data[0].tolist()]}
print(json.dumps(dct, indent=2) + "\n")

#print(data)
headers = {'Content-Type': 'application/json'}
request_uri = 'http://127.0.0.1:5000/invocations'

if __name__ == '__main__':
    try:
        response = requests.post(request_uri, data=json.dumps(dct,indent=2)+"\n", headers=headers)
        print(response.content)
        print('done!!!')
    except Exception as ex:
        raise (ex)

标签: pythonjsonnumpyrestmlflow

解决方案


推荐阅读