ESP32 음성 인식 자료 (ESP32 Voice recognition)

ESPRESSIF|2025. 1. 21. 16:22

 

ESP32의 음성인식 관련 기능 및 자료에 대한 내용입니다. 

 

Wake word engine: Wakenet

 

Wakenet : 메뉴얼 

https://docs.espressif.com/projects/esp-sr/en/latest/esp32s3/wake_word_engine/README.html
 

WakeNet Wake Word Model - ESP32-S3 - — ESP-SR latest documentation

WakeNet is currently included in the AFE, which is enabled by default, and returns the detection results through the AFE fetch interface. If users do not need WakeNet, please use: afe_config.wakeNet_init = False. If users want to enable/disable WakeNet tem

docs.espressif.com

 

The WakeNet engine 은 offline에서 특정 Wakeup 단어를 인식하여 "기기 제어 가능상태"로 진입을 하게 합니다. 예로, "Alexa" 또는 "Hi, Lexin" 과 같은 Wakeup을 demo로 지원합니다. 

Wakeup word은 음성 DB(Model)를 이용합니다. 즉, 이 DB(Model)를 먼저 만들어야 하는데, 2만개 정도의 corpus(음성자료, 성별, 나이별 녹음된 음성 자료 DB)이용하여 Training을 하는 방식입니다. DB(Model)을 만드는데 생각보다 많은 비용이 발생할 수 있습니다.  

 

off-line command 음성 인식 : Multinet

 

Multinet 메뉴얼

https://docs.espressif.com/projects/esp-sr/en/latest/esp32s3/speech_command_recognition/README.html
 

Command Word - ESP32-S3 - — ESP-SR latest documentation

Navigate to idf.py menuconfig > ESP Speech Recognition > Add Chinese speech commands/Add English speech commands to add speech commands. For details, please refer to the example in ESP-Skainet. menuconfig_add_speech_commands Please note that a single Comma

docs.espressif.com

 

Off-line command 음성인식은 Multinet을 통하여 지원됩니다. 스피치 command를 인식하며, 음성학 기호를 통한 방식입니다. 이 방식은 DB(Model)을 이용하지 않으므로, DB(Model)을 만드는 비용이 들지 않습니다. 

현재 영어, 중국어 음성만 인식 가능하며, 고객이 직접 명령어를 정의 할 수 있습니다.  (*영어는 ESP32-S3이상에서만 지원). 다만, 음성기호(phoneme, 음소)방식이기 때문에, DB(Model)로 인식하는 것 보다 인식률이 떨어집니다. 

예로, 아래와 같은 phoneme(음소)로 command를 정의 할 수 있습니다. 

 

# command_id,command_grapheme,command_phoneme
1,tell me a joke,TfL Mm c qbK
2,sing a song,Sgl c Sel

 

# 아래는 Multinet 모델에서 사전 정의된 command 예제 입니다.

https://github.com/espressif/esp-sr/blob/master/model/multinet_model/fst/commands_en.txt

 

Audio Front end

 

https://docs.espressif.com/projects/esp-sr/en/latest/esp32s3/audio_front_end/index.html

 

AFE Audio Front-end - ESP32-S3 - — ESP-SR latest documentation

© Copyright 2016 - 2022, Espressif Systems (Shanghai) Co., Ltd.

docs.espressif.com

 

AFE (Audio front end)는 음성 인식을 보다 정확하게 하기 위한 알고리즘입니다. AEC, NS, BSS와 같은 알고리즘을 지원합니다. 

 

Hardware 사양

 

음성 인식을 위한 하드웨어는 최소한 ESP32-P4 또는 ESP32-S3와 Octal PSRAM이 내장된 제품을 추천합니다. 

ESP32-S3-WROOM-1-N4R8 이상급으로 추천합니다. 

 

개발보드 및 예제

 

위에 말씀드린 Framework를 이용한 예제는 Skainet에 통합되어 있습니다.

 

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

GitHub - espressif/esp-skainet: Espressif intelligent voice assistant

Espressif intelligent voice assistant. Contribute to espressif/esp-skainet development by creating an account on GitHub.

github.com

 

추천드릴 개발보드는 ESP32-S3-KORVO-1 혹은 ESP32-S3-KORVO-2입니다. 

 

https://github.com/espressif/esp-skainet/blob/master/docs/en/hw-reference/esp32s3/user-guide-korvo-1.md
 

esp-skainet/docs/en/hw-reference/esp32s3/user-guide-korvo-1.md at master · espressif/esp-skainet

Espressif intelligent voice assistant. Contribute to espressif/esp-skainet development by creating an account on GitHub.

github.com

 

https://docs.espressif.com/projects/esp-adf/en/latest/design-guide/dev-boards/user-guide-esp32-s3-korvo-2.html
 

ESP32-S3-Korvo-2 V3.0 - - — Audio Development Framework latest documentation

This section provides a brief introduction of ESP32-S3-Korvo-2 V3.0, instructions on how to do the initial hardware setup and how to flash firmware onto it. Contents and Packaging The main board and its accessories can be ordered separately. The accessorie

docs.espressif.com

 

-끝-