Skip to content

Latest commit

 

History

History
93 lines (56 loc) · 7.07 KB

File metadata and controls

93 lines (56 loc) · 7.07 KB

ESP-Skainet [English]

ESP-Skainet 是乐鑫推出的智能语音助手,目前支持唤醒词识别和语音命令词识别。

推荐使用 ESP32-S3 运行语音命令词识别,因其支持 AI 指令和高速八线 SPI PSRAM。最新模型将优先在 ESP32-S3 上部署。

概述

ESP-Skainet 以最便捷的方式支持基于乐鑫 ESP32 系列芯片的唤醒词识别和语音命令词识别应用程序开发。使用 ESP-Skainet,您可以轻松构建唤醒词和命令词识别应用。

ESP-Skainet 主要功能如下:

overview

输入音频

输入音频流可以来自麦克风,或 flash/SD 卡中的 wav/pcm 等音频文件。

唤醒词识别

唤醒词模型 WakeNet 专为用户提供高性能、低资源消耗的唤醒词检测算法,使设备能够持续待命,等待如“Alexa”、“天猫精灵”、“小爱同学”等唤醒词。

目前乐鑫免费开放“Hi,乐鑫”、“你好小智”、“你好小鑫”、“Hi,ESP”唤醒词。如果用户需要其他唤醒词,乐鑫也提供定制服务,详见 乐鑫语音唤醒词定制流程

语音命令词识别

命令词识别模型 MultiNet 专为提供灵活的离线语音命令词识别而设计。用户可根据需求自定义语音命令,无需重新训练模型。

目前 MultiNet 支持最多 200 个中英文命令词,如“打开空调”、“打开卧室灯”或 "Turn on the light" 等。

声学前端算法

声学前端 AFE 集成了回声消除(AEC)、语音活动检测(VAD)、盲源分离(BSS)和噪声抑制(NS)等算法。

我们的双麦克风声学前端(AFE)已通过 Amazon Alexa Built-in 设备的软件音频前端解决方案认证。 afe

快速开始

硬件准备

要运行 ESP-Skainet,您需要一块集成了音频输入模块的 ESP32 或 ESP32-S3 开发板。

Example Name Latest Models Supported Board
cn_speech_commands_recognition MultiNet7 ESP32-Korvo, ESP32-S3-Korvo-1, ESP-BOX, ESP-S3-Korvo-2, ESP32-S3-EYE, ESP32-P4-Function-EV
en_speech_commands_recognition MultiNet7 ESP32-S3-Korvo-1, ESP-BOX, ESP-S3-Korvo-2, ESP32-S3-EYE, ESP32-P4-Function-EV
wake_word_detection WakeNet9 ESP32-Korvo, ESP32-S3-Korvo-1, ESP-BOX, ESP-S3-Korvo-2, ESP32-S3-EYE, ESP32-P4-Function-EV
chinese_tts esp-tts-v1.7 ESP32-Korvo, ESP32-S3-Korvo-1, ESP-BOX, ESP-S3-Korvo-2, ESP32-P4-Function-EV
usb_mic_recorder ESP-BOX, ESP-S3-Korvo-2

关于应用的具体配置,请参考每个示例中的 README.md。

软件准备

ESP-Skainet

请使用以下命令克隆本项目:

git clone https://github.com/espressif/esp-skainet.git

ESP-IDF

本工程支持 ESP-IDF v4.4ESP-IDF v5.0 版本。如果您已搭建 ESP-IDF 环境且不想更改现有配置,可将 IDF_PATH 环境变量指向新的 ESP-IDF 路径。

注意:如需使用 ESP-IDF v3.2 及更早版本,请参考 esp-skainet v0.2.0。

更多搭建 ESP-IDF 环境的细节请参考 ESP-IDF v4.4 快速入门指南

示例

examples 文件夹包含了 ESP-Skainet API 的应用示例。

建议从 wake_word_detection 示例开始:

  1. 进入示例文件夹:
cd esp-skainet/examples/wake_word_detection
  1. 编译和烧录:
idf.py flash monitor
  1. 高级用户可通过 idf.py menuconfig 命令添加或修改语音命令。

更多细节请阅读每个示例中的 README 文件。

资源