Numpy 如何保存由Keras模型可视化/生成的图像?

Numpy 如何保存由Keras模型可视化/生成的图像?,numpy,machine-learning,keras,object-detection,Numpy,Machine Learning,Keras,Object Detection,我正在使用模型来可视化图像。因此,基本上我将一个图像传递给这个模型,它将画一条穿过对象的边界线,并显示可视化的图像 from keras.preprocessing.image import load_img from keras.preprocessing.image import save_img from keras.preprocessing.image import img_to_array from detecto import core, utils, visualize ima

我正在使用模型来可视化图像。因此,基本上我将一个图像传递给这个模型,它将画一条穿过对象的边界线,并显示可视化的图像

from keras.preprocessing.image import load_img
from keras.preprocessing.image import save_img
from keras.preprocessing.image import img_to_array
from detecto import core, utils, visualize

image = utils.read_image('retina_model/4.jpg')
model = core.Model()

labels, boxes, scores = model.predict_top(image)
img=visualize.show_labeled_image(image, boxes,)

现在,我正在尝试将这个可视化图像转换为Numpy数组。我使用下一行将图像转换为numpy数组:

img_array = img_to_array(img)
它给出了错误:

Unsupported Image Shape
我只想显示这个模型输出到我的网站的可视化图像。计划是将图像转换为numpy数组,然后使用以下代码行保存图像:

save_img('image1.jpg', img_array)

所以我计划下载这个可视化的图像(这个模型的输出),这样我就可以将下载的图像显示到我的网站上。如果有其他方法可以做到这一点,请告诉我。

Detecto的文档说utils.read\u image()已经返回了一个NumPy数组

但是您正在传递返回的visualize.show_label_image()到Keras'img_到_数组(img)

查看visualize.show_labeled_image()的Detecto源代码,它没有返回类型,因此默认情况下不返回任何类型。所以我认为您的问题是您没有将有效的映像传递给img_to_数组(img),但是没有


我认为不需要调用img\u to\u array(img),因为您已经拥有了NumPy数组的映像。但请注意,根据Detecto的文档,utils.read_image()相当于“使用OpenCV的cv2.imread函数并从BGR转换为RGB格式”。确保这是您想要的。

Detecto的文档中说utils.read\u image()已经返回了一个NumPy数组

但是您正在传递返回的visualize.show_label_image()到Keras'img_到_数组(img)

查看visualize.show_labeled_image()的Detecto源代码,它没有返回类型,因此默认情况下不返回任何类型。所以我认为您的问题是您没有将有效的映像传递给img_to_数组(img),但是没有

我认为不需要调用img\u to\u array(img),因为您已经拥有了NumPy数组的映像。但请注意,根据Detecto的文档,utils.read_image()相当于“使用OpenCV的cv2.imread函数并从BGR转换为RGB格式”。确保这就是你想要的