tf_regression.py
# Эта работа лицензирована по лицензии MIT.
# Copyright (c) 2013-2024 OpenMV LLC. All rights reserved.
# https://github.com/openmv/openmv/blob/master/LICENSE
#
# Пример регрессии TensorFlow Lite
#
# Этот пример показывает запуск модели регрессии на камере OpenMV Cam.
# Модель регрессии принимает на вход список чисел и выдаёт
# выходной список чисел. В predict() можно передавать массивы ndarray,
# и вы получите обратно список результатов.
#
# Примечание: входной список чисел должен быть того же размера, что и входной
# тензор модели.
import ml
from ulab import numpy as np
# Модель встроена в RT1062. На других камерах OpenMV с ограниченным объёмом флеш-памяти скачайте
# модель отсюда: https://github.com/openmv/openmv/tree/master/src/lib/tflm/models и
# скопируйте её в файловую систему камеры OpenMV Cam. Например: 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])
# Должно вывести 53.78332