我已經使用Keras庫在Python中訓練了手寫圖像分類器。最初,我使用標準的MNIST數據集來進行培訓和測試。但現在我想用我自己的數據集進行測試,其中所有圖像的尺寸爲900*1200*3
而不是28*28*1
無法重塑包含PNG圖像的numpy數組
所以我需要在測試之前重新塑造所有圖像。我正在使用下面的代碼來重塑,但它會給出錯誤。
代碼:
bb = lol.reshape(lol.shape[0], 28, 28, 1).astype('float32')
其中lol
是我含形狀(900,1200,3)
和錯誤日誌的55個圖像numpy的數組如下:
ValueError Traceback (most recent call last)
<ipython-input-46-87da95da73e9> in <module>()
24 # # you can show every image
25 # img.show()
---> 26 bb = lol.reshape(lol.shape[0], 28, 28, 1).astype('float32')
27 # model = loaded_model
28 # classes = model.predict(bb)
ValueError: cannot reshape array of size 178200000 into shape (55,28,28,1)
所以我是什麼做錯了?即使在將大圖像調整爲28 * 28的非常小的圖像之後,我是否可以獲得準確的預測結果?感謝幫助。
你不應該改變:'lol.reshape(lol.shape [0],28,28,1).astype('FLOAT32 ')'使用新的圖像形狀,即'900 x 1200x 3'? – Divakar
'900 x 1200x 3'是我目前的形狀。我想在'28,28,1'中重塑形狀 – Kaushal28
你知道'reshape'的功能嗎? – Divakar