ml.apps — ML-sovellukset¶
ml.apps-moduuli sisältää korkean tason ML-sovellusluokat, jotka on rakennettu ml.Model-luokan päälle.
class MicroSpeech – Puheentunnistus¶
MicroSpeech-objekti tunnistaa yksinkertaisia puhuttuja sanoja käyttäen TensorFlow Lite for Microcontrollers -kirjaston MicroSpeech-mallia. Oletusmalli tunnistaa sanat "Yes" ja "No".
- class ml.apps.MicroSpeech(preprocessor: ml.Model = None, micro_speech: ml.Model = None, labels: list[str] = None, **kwargs)¶
Luo MicroSpeech-objektin.
preprocessoron äänen esikäsittelijäml.Model. JosNone, ladataan/rom/audio_preprocessor.tflite.micro_speechon puheentunnistuksenml.Model. JosNone, ladataan/rom/micro_speech.tflite.labelson lista luokkanimimerkkijonoja, jotka vastaavat mallin tulostekategorioita. JosNone, luokkanimet otetaan kohteestamicro_speech.labels.Kaikki ylimääräiset avainsana-argumentit välitetään edelleen
audio.init()-funktiolle (ääni-oheislaite alustetaan asetuksillachannels=1,frequency=16000jasamples=320).- audio_callback(buf: bytes) None¶
Sisäinen äänivirran takaisinkutsu. Lisää uudet näytteet
buf-puskurista vierivään äänipuskuriin, päivittää spektrogrammin ajamallapreprocessor-mallin uusimmalle ikkunalle ja päivittää ennustehistorian ajamallamicro_speech-mallin spektrogrammille. Ei normaalisti kutsuta suoraan.
- start_audio_streaming() None¶
Tyhjentää spektrogrammin ja ennustehistorian ja käynnistää sitten äänivirran takaisinkutsulla
MicroSpeech.audio_callback. Ei tee mitään, jos virtaus on jo käynnistetty.
- listen(timeout: int = 0, callback: callable = None, threshold: float = 0.65, filter: list[str] = ['Yes', 'No']) tuple[str, numpy.ndarray]¶
Kuuntelee puhuttua sanaa ja palauttaa monikon
(label, average_scores)heti, kun havaitaan luokkanimi, jonka keskiarvotettu pistemäärä on ylithreshold-arvon ja joka sisältyyfilter-joukkoon. KutsuuMicroSpeech.start_audio_streaming-metodia, jos virtaus ei ole jo käynnissä.timeouton enimmäisaika millisekunteina kuunteluun. Jos0, kuuntelee loputtomiin, kunnes sana tunnistetaan. Jos-1, toimii ei-estävässä tilassa ja palaa välittömästi arvolla(None, average_scores), jos sanaa ei tunnistettu; äänivirta jätetään käyntiin. Minkä tahansa positiivisen arvon kohdalla kuuntelee kyseisen määrän millisekunteja ja palauttaa sitten aikakatkaisun yhteydessä(None, average_scores).callbackon valinnainen kutsuttava, joka kutsutaan muodossacallback(label, average_scores), kun sana tunnistetaan, palauttamisen sijaan. Yhdistettynätimeout=0-asetukseen tämä mahdollistaa jatkuvan tunnistuksen.thresholdon vähimmäiskeskiarvotettu luottamus, joka vaaditaan tunnistuksen hyväksymiseen.filteron lista hyväksyttäviä luokkanimimerkkijonoja. Tämän listan ulkopuoliset tunnistukset jätetään huomiotta.