tf_regression.py
# Ce travail est publié sous licence MIT.
# Copyright (c) 2013-2024 OpenMV LLC. Tous droits réservés.
# https://github.com/openmv/openmv/blob/master/LICENSE
#
# Exemple de régression TensorFlow Lite
#
# Cet exemple présente l'exécution d'un modèle de régression sur la caméra OpenMV.
# Un modèle de régression prend une liste de nombres en entrée et produit une
# liste de nombres en sortie. Vous pouvez passer des tableaux ndarray à predict()
# et vous obtiendrez en retour une liste de résultats.
#
# Remarque : la liste de nombres en entrée doit avoir la même taille que le
# tenseur d'entrée du modèle.
import ml
from ulab import numpy as np
# Le modèle est intégré sur le RT1062. Sur les autres caméras OpenMV disposant d'un espace flash limité, veuillez récupérer
# le modèle ici : https://github.com/openmv/openmv/tree/master/src/lib/tflm/models et
# copiez-le sur le système de fichiers de la caméra OpenMV. Par exemple, model = ml.Model("force_int_quant.tflite")
model = ml.Model("/rom/force_int_quant.tflite")
print(model)
i = np.array([-3, -1, -2, 5, -2, 10, -1, 9, 0, # noqa
2, 0, 9, 1, 10, 2, -1, 3, 5, # noqa
3, 9, 3, 9, 6, 2, 6, 7, 5, # noqa
10, 6, -1, 7, 4, 7, 8, 5, 7], # noqa
dtype=np.int8).reshape(model.input_shape[0]) # noqa
print(model.predict([i])[0])
# Devrait afficher 53.78332