Здравствуйте. Появилась следующая проблема:
ValueError: Input 0 of layer "sequential" is incompatible with the layer: expected shape=(None, 244, 244, 3), found shape=(None, 244, 3)
Возникает при использовании нейросети (при запуске следующего кода):
take_photo("photo.jpg", 0.3)
image = Image.open("./photo.jpg").convert("RGB")
size = (244, 244)
image = ImageOps.fit(image, size)
image_array = np.asarray(image)
normalized_image_array = (image_array.astype(np.float32) / 127.5) - 1
print(normalized_image_array.shape)
res = model.predict(normalized_image_array)
diagnose = labels[np.argmax(res)]
print("Результат: {}".format(diagnose))
Но, при обучении всё было нормально, хотя код преобразования картинки в массив один и тот же.
Когда я вывожу шейп входных данных, всё, вроде бы, должно быть верно, ведь там он равен (244, 244, 3), но как только подаю данные на вход, получаю, что нужный шейп - (None, 244, 244, 3), найденный - (None, 244, 3). Я не понимаю, куда исчезает ещё одна размерность. Помогите, пожалуйста.