当前位置:首页 > 工业控制 > 电路设计项目集锦
[导读]语音接口已经成为与电子产品交互的最直观的方式之一。然而,大多数语音识别系统依赖于云服务、互联网接入和外部api。这会带来延迟、隐私问题和持续的服务限制。如果你能建立一个完全离线的语音助手,直接在微控制器上运行呢?

语音接口已经成为与电子产品交互的最直观的方式之一。然而,大多数语音识别系统依赖于云服务、互联网接入和外部api。这会带来延迟、隐私问题和持续的服务限制。如果你能建立一个完全离线的语音助手,直接在微控制器上运行呢?

在这个项目中,我们将ESP32变成一个完全由Edge Impulse驱动的独立离线语音识别模块。与基于互联网的平台不同,这种方法允许在ESP32的双核240 MHz处理器上进行本地推理。结果是一个完全独立的语音激活系统,能够在不向云发送音频的情况下识别唤醒词和命令分类。

您将使用ESP32、INMP441 I²S麦克风、用于数据集训练的Edge Impulse和直接通过Arduino IDE部署的轻量级神经网络来构建嵌入式语音识别管道。到最后,您将拥有一个完整的语音助手,通过“开”,“关”等命令控制led,以及“马文”等唤醒词。

这是一个完整的工程级指南,适用于制造商,嵌入式开发人员和ML工程师,他们希望实际介绍基于边缘的语音识别。

项目的特性

基于原始文档,这个ESP32语音转文本系统提供:

•完全离线语音识别

•自定义唤醒词和命令检测

•实时ML推理

•没有云,没有API调用,没有网络依赖

•低延迟(总计200-500 ms)

•低功率运行

•可扩展架构,支持更多命令

嵌入式机器学习、数字音频捕获和ESP32处理的结合使这成为一个紧凑但功能强大的边缘计算演示。

INMP441由于其低噪声,MEMS结构和数字I²S接口而被使用,使其成为音频推理的理想选择。

系统架构概述

•ESP32语音助理系统遵循这个工作流程

•音频采集(INMP441→ESP32 I²S)

•预处理(MFCC或光谱特征)

•神经网络推理(边缘脉冲模型)

•唤醒词决策逻辑

•命令的分类

•LED输出执行

这种混合管道允许ESP32连续侦听唤醒字,然后解释后续命令。

步骤1:数据集收集

本项目使用谷歌Speech Commands V2数据集:本项目使用谷歌Speech Commands V2数据集

•噪音

•马文(唤醒词)

•开

•关

您还可以记录自定义剪辑或扩展多语言数据。如文中所述,现实世界的准确性可以通过以下方式提高:

•多个扬声器

•不同的口音

•各种背景条件

•与麦克风的距离不同

Edge Impulse接受批量上传,基于文件夹的导入,以及每个声音类别的标签。

步骤2:训练边缘脉冲下的语音识别模型

本节源自源文档中的分步接口说明

•创建你的Edge冲动项目

•登录

创建一个新项目

将其命名为ESP32_STT_Recognition之类的东西

上传音频数据集

使用数据采集→添加数据→上传数据,为每个标记的类选择文件夹。正确的标签对于准确的关键词分类是必不可少的。

设计冲动

冲动设计下:

•添加音频(MFCC)处理块

•添加分类学习块

•选择1秒的窗口大小

•训练模型

设置:

•训练周期:50-100次

•学习率:默认

•验证分割:自动

点击“保存并训练”。

您将收到训练输出图表,准确性指标和混淆矩阵。

验证模型

使用所有分类对保留的数据集进行测试。目的:

•85%以上用于原型设计

•90%以上用于生产

步骤3:将模型部署到ESP32

从源文件中的部署说明中获取

•打开部署

•选择arduino Library并单击Build

•下载ZIP文件

•通过Sketch→Include Library→Add.ZIP Library安装

这将完整的神经网络推理引擎添加到Arduino IDE中。

步骤4:硬件布线

布线信息取自文件中的布线表和引脚图以及麦克风引脚部分。布线信息取自文件中的布线表和引脚图

麦克风接线(INMP441)

INMP441引脚

•L / R

•WS

•SCK

•SD

•VDD

•GND

LED布线

•指示灯LED→GPIO23→220 Ω→GND

•命令LED→GPIO22→220 Ω→GND

步骤5:基本代码和完全修改的代码

原始文件包括测试示例和扩展的生产就绪代码。

I²S音频配置

从文件的代码块中

核心数据缓冲结构

从原始代码部分

信心的阈值

步骤6:实时测试

上传代码后打开串口监视器。

您将看到类似如下的输出:

这为每个检测到的单词提供了实时分类置信度。

结论

你现在有一个完整的离线ESP32语音识别使用边缘脉冲,能够检测唤醒词和执行语音命令完全在设备上。该项目展示了嵌入式机器学习的功能,并可作为语音控制物联网系统、家庭自动化、机器人和可访问设备的理想起点。

该系统是完全可扩展的:收集更多的语音样本,重新训练,并重新部署新的模型到您的ESP32。

本文编译自hackster.io

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭