ESP32 自定义唤醒词:训练与离线部署
为产品训练专属唤醒词,用目标麦克风测试,再将紧凑的 INT8 模型部署到 ESP32-S3 本地运行。
ESP32 能运行什么模型?
桌面端 ONNX 模型不能直接等同于 ESP32 模型。微控制器常用 INT8 TFLite Micro、16 kHz 单声道 PCM 和本地特征提取。ESP32-S3 加 PSRAM 更适合开始验证,其他开发板需要单独测试。
在线训练和自行训练
在线训练适合小团队快速验证硬件;自行训练可以控制数据和难负样本,但训练、导出和评测管线都需要自己维护。
推荐流程
- 选择区分度高的短语,用最终麦克风录音。
- 在线训练或搭建自有训练管线。
- 在噪声、音乐和相似语音下测量召回与误触发。
- 导出匹配的 INT8 TFLite 模型和 output head,一起接入 ESP-IDF。
ESP-IDF 示例
git clone https://github.com/voicute/onnx-wakeword.git
cd onnx-wakeword/esp32/examples/esp32s3_hmi_devkit
idf.py set-target esp32s3
idf.py build重要:浏览器效果不代表硬件效果,上线前要用最终开发板、麦克风、外壳、距离和背景声音测试。
训练并测试自定义唤醒词View the open-source inference engine and demo models →
ONNX / TFLite · Android · ESP32 · Web · Python · Home Assistant