dual_core_regression.py
# Ce travail est publié sous licence MIT.
# Copyright (c) 2013-2026 OpenMV LLC. Tous droits réservés.
# https://github.com/openmv/openmv/blob/master/LICENSE
#
# Exemple de régression ML double cœur
#
# Cet exemple exécute un modèle de régression TensorFlow Lite sur le cœur HE et
# envoie la prédiction au cœur HP une fois par seconde. Cela libère le cœur HP
# pour effectuer d'autres tâches (par exemple le traitement de la caméra) pendant que les inférences se déroulent en
# arrière-plan sur le cœur basse consommation.
import time
import openamp
def task_callback(src_addr, data):
print("Prediction:", data.decode())
@openamp.async_remote(task_callback)
async def task1(ept):
import ml
import asyncio
from ulab import numpy as np
model = ml.Model("/rom/force_int_quant.tflite")
i = np.array([-3, -1, -2, 5, -2, 10, -1, 9, 0, 2, 0, 9, # noqa
1, 10, 2, -1, 3, 5, 3, 9, 3, 9, 6, 2, # noqa
6, 7, 5, 10, 6, -1, 7, 4, 7, 8, 5, 7], # noqa
dtype=np.int8).reshape(model.input_shape[0]) # noqa
while True:
ept.send(str(model.predict([i])[0]))
await asyncio.sleep(1)
rproc = openamp.RemoteProc(0x80320000)
rproc.start()
while True:
time.sleep(1)