为什么神经网络输入形状与图像形状不匹配?

问题描述 投票:0回答:1

我已经使用 TensorFlow 开发了一个神经网络,并尝试用它来预测新图像。我已加载 JPEG 图像作为测试示例,并使用 OpenCV 重新格式化它:

formatted_image = cv.resize(image, dsize = (128,128))

使用

image.shape
返回 (128, 128, 3),这是我的目标。

但是,将此图像通过

model.predict()
会出现以下错误:

ValueError: Input 0 of layer "model_1" is incompatible with the layer: expected shape=(None, 128, 128, 3), found shape=(32, 128, 3)

我不确定这个值从哪里来;我尝试了几种将其转换为张量的方法,例如

tf_formatted_image = tf.convert_to_tensor(formatted_image, dtype=tf.int8)
,但这并不成功。

python tensorflow neural-network
1个回答
0
投票

也许在将图像传递给 model.pedit() 之前对其进行预处理会有所帮助。

尝试使用此代码-

tf_formatted_image = tf.convert_to_tensor(formatted_image, dtype=tf.float32)   # converting to TensorFlow tensor
tf_formatted_image = tf.expand_dims(tf_formatted_image, axis=0)
tf_formatted_image = tf_formatted_image / 255.0   #normalizing
model = tf.keras.models.load_model('path_to_model')   #loading the model
predictions = model.predict(tf_formatted_image)
© www.soinside.com 2019 - 2024. All rights reserved.