ml.apps — ML-appar¶
Modulen ml.apps innehåller högnivå-ML-applikationsklasser byggda ovanpå ml.Model.
class MicroSpeech – Taligenkänning¶
MicroSpeech-objektet känner igen enkla talade ord med hjälp av MicroSpeech-modellen från TensorFlow Lite for Microcontrollers. Standardmodellen känner igen "Yes" och "No".
- class ml.apps.MicroSpeech(preprocessor: ml.Model = None, micro_speech: ml.Model = None, labels: list[str] = None, **kwargs)¶
Skapar ett MicroSpeech-objekt.
preprocessorär ljudförbehandlarenml.Model. OmNoneladdas/rom/audio_preprocessor.tflite.micro_speechär taligenkännings-ml.Model. OmNoneladdas/rom/micro_speech.tflite.labelsär en lista med etikettsträngar som matchar modellens utdatakategorier. OmNonehämtas etiketterna frånmicro_speech.labels.Eventuella ytterligare nyckelordsargument vidarebefordras till
audio.init()(ljudkringutrustningen initieras medchannels=1,frequency=16000ochsamples=320).- audio_callback(buf: bytes) None¶
Internt återanrop för ljudströmning. Lägger till nya sampel från
bufi den rullande ljudbufferten, uppdaterar spektrogrammet genom att körapreprocessor-modellen på det senaste fönstret, och uppdaterar prediktionshistoriken genom att köramicro_speech-modellen på spektrogrammet. Anropas normalt inte direkt.
- start_audio_streaming() None¶
Rensar spektrogrammet och prediktionshistoriken, och startar sedan ljudströmning med
MicroSpeech.audio_callbacksom återanrop. Gör ingenting om strömning redan har startats.
- listen(timeout: int = 0, callback: callable = None, threshold: float = 0.65, filter: list[str] = ['Yes', 'No']) tuple[str, numpy.ndarray]¶
Lyssnar efter ett talat ord och returnerar en tupel
(label, average_scores)när en etikett vars medelvärdesberäknade poäng är överthresholdoch som ingår ifilterdetekteras. AnroparMicroSpeech.start_audio_streamingom strömning inte redan pågår.timeoutär den maximala tiden i millisekunder att lyssna. Om0lyssnar den på obestämd tid tills ett ord känns igen. Om-1körs den i icke-blockerande läge och returnerar omedelbart med(None, average_scores)om inget ord känns igen; ljudströmningen lämnas igång. För alla positiva värden lyssnar den i så många millisekunder och returnerar sedan(None, average_scores)vid tidsgräns.callbackär ett valfritt anropsbart objekt som anropas somcallback(label, average_scores)när ett ord känns igen i stället för att returnera. Kombinerat medtimeout=0möjliggör detta kontinuerlig igenkänning.thresholdär den minsta medelvärdesberäknade konfidens som krävs för att acceptera en igenkänning.filterär listan med etikettsträngar att acceptera. Igenkänningar utanför denna lista ignoreras.