[英]CNN not predicting class of image
我使用CNN制作了一個腦腫瘤檢測模型,當我嘗試通過預測它的類別來測試樣本圖像時,會發生錯誤。
根據錯誤,模型的輸入應該有 1 個額外的維度。 我如何預測圖像的類別。 給出錯誤的代碼片段是:
best_model.predict(image)
錯誤如下
ValueError: 層 zero_padding2d 的輸入 0 與層不兼容:預期 ndim=4,發現 ndim=3。 收到完整形狀:[無, 240, 3]
可以在警告中看到預期的形狀:
WARNING:tensorflow:Model was constructed with shape (None, 240, 240, 3) for input Tensor("input_1_1:0", shape=(None, 240, 240, 3), dtype=float32), but it was called on an input with incompatible shape (None, 240, 3).
我嘗試了解決方案,但它仍然給出相同的錯誤:這是圖像
所以問題是模型假設第一個維度是批次數。 在您的情況下,它“認為”您有 240 個批次,其中每個圖像的大小為(240,3)
。
您需要做的是在傳遞給模型之前擴展圖像的尺寸。 你可以使用expand_dims
一個例子:
image = tf.zeros([240, 240, 3])
tf.expand_dims(image, axis=0)
這將為圖像添加批處理維度,並且模型可以正確操作它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.