Deutsches Wake Word auf ESP32-S3 mit TFLite Micro
Die Open-Source-Komponente verarbeitet 16-kHz-PCM, berechnet Mel-Merkmale und führt ein kleines INT8-TFLite-Modell direkt auf dem ESP32-S3 aus. Während der Erkennung muss kein Mikrofonstream an einen Cloud-Dienst gesendet werden.
Gemessene Leistung
Auf diesem Board benötigt die Mel-Berechnung etwa 28,5–33 ms und TFLite Invoke() etwa 154,9–155,7 ms. Alle 160 ms wird das neueste Fenster aus 98 Frames verarbeitet.
Öffentliches Beispiel
Die enthaltene Demo erkennt aktuell das englische Wake Word Hey Robot. Danach ändern Sprachbefehle die Farbe einer LED. TFLite-Modell und head.h gehören zusammen und müssen gemeinsam ersetzt werden.
git clone https://github.com/voicute/onnx-wakeword.git
cd onnx-wakeword/esp32/examples/esp32s3_hmi_devkit
idf.py set-target esp32s3
python patch_led_strip.py
idf.py build
idf.py -p COM6 flash monitor
Eigenes deutsches Wake Word verwenden
Die Trainingspipeline kann ein passendes INT8-TFLite-Modell samt Head für ein deutsches Wort oder eine kurze Phrase exportieren. Bewerte zuerst das Basic-Modell und teste es anschließend erneut mit dem endgültigen Mikrofon, Abstand und Umgebungsgeräusch. Wortabhängige Fehlaktivierungen können zusätzliche spezifische Negativbeispiele erfordern.
Open-Source-Komponente und getestetes Beispiel: onnx-wakeword/esp32.