dual_core_micro_speech.py
# Questo lavoro è concesso in licenza MIT.
# Copyright (c) 2013-2026 OpenMV LLC. Tutti i diritti riservati.
# https://github.com/openmv/openmv/blob/master/LICENSE
#
# Esempio MicroSpeech Dual-Core
#
# Questo esempio esegue il rilevatore di parole chiave MicroSpeech sul core HE e inoltra
# le parole chiave rilevate al core HP. Il core HP rimane libero per altri compiti
# (ad es. elaborazione delle immagini) mentre il rilevamento delle parole chiave viene eseguito continuamente in
# background sul core a basso consumo.
#
# Il modello MicroSpeech integrato riconosce solo le parole chiave "Yes" e "No".
import time
import openamp
def task_callback(src_addr, data):
print("Heard:", data.decode())
@openamp.async_remote(task_callback)
async def task1(ept):
from ml.apps import MicroSpeech
speech = MicroSpeech(gain_db=24)
while True:
label, scores = speech.listen(timeout=0, threshold=0.70)
if label:
ept.send(label)
# Avviare il core HE.
rproc = openamp.RemoteProc(0x80320000)
rproc.start()
while True:
time.sleep(1)