Эта проблема аналогична существующей проблеме: «Различные прогнозы при запуске модели Keras в TensorFlow Lite» ( Различные прогнозы при запуске модели Keras в TensorFlow Lite ).Не могли бы вы проанализировать этот новый вопрос?Спасибо!
В контейнере Docker с версией tf 1.12.0 или новее запустите следующий скрипт python.
import numpy as np
import tensorflow as tf
IMAGE_WIDTH = 128
IMAGE_HEIGHT = 128
IMAGE_CHANNELS = 3
import pathlib
import os
import cv2
# read an image to predict.
img = cv2.imread("daisy.jpg")
images = []
img = cv2.resize(img, (IMAGE_WIDTH, IMAGE_HEIGHT))
img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
image_data = np.array(img, dtype=np.float)
images.append(image_data)
images = np.asarray(images)
image = images.reshape(1, IMAGE_WIDTH, IMAGE_HEIGHT,
IMAGE_CHANNELS)
# input a pretrained model.
keras_file = "keras_model.h5"
model = tf.keras.models.load_model(keras_file)
# predict the image.
predictions = model.predict(image)
print("prediction: ", np.argmax(predictions[0]))
# Convert to TensorFlow Lite model.
converter=tf.contrib.lite.TocoConverter.from_keras_model_file
(keras_file)
tflite_model = converter.convert()
open("converted_model.tflite", "wb").write(tflite_model)
Результат: ('prediction: ', 0)
, что ожидается.
При одинаковом converted_model.tflite
на Raspberry Pi значение prediction
всегда не равно 0, что неверно.