Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Keras模型的输入数组的形状有什么问题?_Keras_Python_Tensorflow - Fatal编程技术网

Keras模型的输入数组的形状有什么问题?

Keras模型的输入数组的形状有什么问题?,keras,python,tensorflow,Keras,Python,Tensorflow,我有一个经过训练的图像分类模型。该模型基于Keras附带的异常模型,它期望输入图像的大小为299x299像素。因此,在将图像输入模型之前,我会将图像调整为该格式 但是,当调用model.predict(img)时,我确实会得到以下错误: ValueError: Input 0 is incompatible with layer model:expected shape=(None, 299, 299, 3), found shape=(None, 299, 3) 但是,当我在调试器中调用pr

我有一个经过训练的图像分类模型。该模型基于Keras附带的异常模型,它期望输入图像的大小为
299x299
像素。因此,在将图像输入模型之前,我会将图像调整为该格式

但是,当调用
model.predict(img)
时,我确实会得到以下错误:

ValueError: Input 0 is incompatible with layer model:expected shape=(None, 299, 299, 3), found shape=(None, 299, 3)
但是,当我在调试器中调用
predict()
时检查
img
时,我可以看到以下内容:

shape:(299, 299, 3)

有人能解释一下我在这里遗漏了什么吗?

这是因为您的Keras模型需要这种格式的数据
(n_示例,299299,3)

预测单个图像时,只需进行简单的重塑即可

model.predict(X.reshape(1, 299, 299, 3))

作为注释,您可能不应该在一张图像上使用
model.predict
。此函数用于预测大量数据,单个样本的性能通常很差。相反,只要给你的模特打电话:
model(img)
@Lescurel哇,谢谢,我不知道!