我正在使用 Microsoft 的人脸认知服务,我的工作流程将图像作为一个 numpy 数组
MS 允许图像作为 url 或作为标题中的数据传入
如果数据在标头中传递,则可以使用二进制读取创建它,如下所示:
# cropped is the image as a numpy array
# the three attempts below do not work
# as microsoft does not recognise the result
# as an image
image_data = cropped.tobytes()
image_data = cropped.tobytes("F")
image_data = cropped.tobytes("C")
# the following method does work but seems
# a bit ridiculous
cv2.imwrite("temp.png", cropped)
with open(path_to_image, 'rb') as f:
image_data = f.read()
我可以通过使用 opencv imwrite 保存到磁盘,然后像上面一样读取它来以正确的格式获取我的 numpy 数组,但这似乎不是一件明智的事情。
我尝试使用 numpy 函数 tobytes("F") 和 tobytes("C") 但 MS 无法将结果识别为有效图像
如何使用 numpy 将图像数组转换为与从磁盘读取图像相同的格式?
慕后森
相关分类