gpt4 book ai didi

python - Keras/Tensorflow 预测 : error in array shape

转载 作者:太空狗 更新时间:2023-10-29 23:57:53 25 4
gpt4 key购买 nike

我正在关注 Keras CIFAR10 tutorial here .我所做的唯一更改是:

[a] 添加到教程文件的末尾

model.save_weights('./weights.h5', overwrite=True)

[b] 将 ~./keras/keras.json 更改为

{"floatx": "float32", "backend": "tensorflow", "epsilon": 1e-07}

我可以成功运行模型。

然后我想针对经过训练的模型测试单个图像。我的代码:

[... similar to tutorial file with model being created and compiled...]
...
model = Sequential()
...
model.compile()

model.load_weights('./ddx_weights.h5')

img = cv2.imread('car.jpeg', -1) # this is is a 32x32 RGB image
img = np.array(img)
y_pred = model.predict_classes(img, 1)
print(y_pred)

我收到这个错误:

ValueError: Cannot feed value of shape (1, 32, 3) for Tensor 'convolution2d_input_1:0', which has shape '(?, 3, 32, 32)'

为要测试的单个图像 reshape 输入数据的正确方法是什么?

没有./keras/keras.json中添加了"image_dim_ordering": "tf"

最佳答案

您必须将输入图像 reshape 为 [?, 3, 32, 32] 的形状,其中 ? 是批量大小。在您的情况下,由于您有 1 张图像,因此批量大小为 1,因此您可以:

img = np.array(img)
img = img.reshape((1, 3, 32, 32))

关于python - Keras/Tensorflow 预测 : error in array shape,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37666887/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com