我試圖打電話 tf.image.random_crop(image, size=INPUT_SHAPE),我得到這個錯誤:
ValueError: Dimensions must be equal, but are 4 and 3 for '{{node random_crop/GreaterEqual}} = GreaterEqual[T=DT_INT32](random_crop/Shape, random_crop/size)' with input shapes: [4], [3].
因此,當我試圖了解發生了什么時,我嘗試使用列印資料集的形狀
print(len(train_dataset), train_dataset)
我得到了這個:
23 <BatchDataset element_spec=(TensorSpec(shape=(None, 160, 160, 1), dtype=tf.float32, name=None), TensorSpec(shape=(None,), dtype=tf.int32, name=None))>
首先,我不明白數字 23,更關心的是 TensorSpec(shape=(None, 160, 160, 1)。我的 INPUT_SHAPE 是 (160, 160, 1) 所以我想知道這是否是導致問題的原因。
我看到一個執行緒說我應該將批量大小更改為 1,但這對我來說不起作用。現在,我根本沒有資料集的批量大小
uj5u.com熱心網友回復:
看起來你是random_crop批量申請。要使上述作業您需要設定INPUT_SHAPE = (batch_size, 120, 120,3),或者您可以在應用后進行批處理random_crop。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/524097.html
標籤:张量流喀拉斯数据集值错误
上一篇:使用張量流的自定義層
