启英泰伦 离线语音识别 模块使用教程

2024-01-10 04:50

本文主要是介绍启英泰伦 离线语音识别 模块使用教程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

欢迎加我Q一起讨论:3806899279 

入门篇¶

1、初识语音¶

语音识别的本质就是将语音序列转换为文本序列,其常用的系统框架如下:

得更多的资料以及进行产品的开发,目前启英泰伦平台对用户免费开放,您可以获推荐您申请注册平台账号并使用。

2、获取开发板套件¶

对于电子创客来说,直接使用开发模组直接体验。提供了配套的使用说明,软件SDK,固件及各类工具

语音模组购买链接

3、初体验识别交互¶

准备好您的开发板,接上电源,听见欢迎播报的时候,您就可以开始您的语音交互之旅了。

如果您体验完后,意犹未尽想制作一个自己的demo固件,那么请查阅下述进阶篇的内容。


进阶篇¶

1、开发环境准备¶

开发套件一个

1.1 搭建可编程开发环境¶

进入语音AI平台后,点击【☞开发资料】,分类选择“开发工具及手册”;“查询”后根据文件描述,下载对应芯片型号的开发工具及手册(可以通过选择标签来进一步筛选),解压并根据【☞编译软件安装与使用】指引安装可编程开发环境。

也可以关注微信公众号获取资料

回复 7166

1.2 开发板套件确认¶

收到购买的开发板套件后,需要参照以下步骤对开发板套件进行组装和功能确认:

CI1306芯片CI-D06GT01D开发板套件确认步骤:

  1. 将麦克风按图中所示插入插座;(注意麦克风是有极性区分的,红线对应板极MIC+,黑线对应板极的MIC-)

  2. 喇叭插入对应插槽;

  3. 将数据线type-c端如图连接到模块,另一端连接到电脑的USB接口;

  4. 拨动电源开关,接通电源指示灯点亮后,会听到喇叭播报“欢迎使用智能管家,您可以使用智能管家唤醒我。语音处于关闭状态,如需语音请说打开语音”;

  5. 用户以正常语速呼叫“智能管家”,会听到喇叭播报“你好”,这样就可以确认模块能正常工作。

CI112/CI110系列CI-B02-MB开发板套件确认步骤:

  1. 将麦克风按图中所示插入插座;(注意麦克风是有极性区分的,红线对应板极MIC+,黑线对应板极的MIC-)

  2. 喇叭插入对应排针;

  3. 将数据线type-c端如图连接到模块,另一端连接到电脑的USB接口;

  4. 按下电源开关,接通电源指示灯点亮后,会听到喇叭播报“欢迎使用智能管家,您可以使用智能管家唤醒我。语音处于关闭状态,如需语音请说打开语音”;

  5. 用户以正常语速呼叫“智能管家”,会听到喇叭播报“你好”,这样就可以确认模块能正常工作。

如您购买的是其它开发板套件,也可以按照上述步骤进行组装和功能确认。

2、在线开发产品固件¶

用户的“开发板套件”和“开发环境”准备完毕并确认基础功能正常之后,本章将接着带您详细了解语音固件的在线开发、烧录及测试,现在正式开始感受语音开发给您带来的乐趣吧。

2.1 演示固件快速开发¶

用户可以使用该功能在十分钟内自动生成语音固件,让产品落地更快速。

  1. 进入语音AI平台“功能开发”页面;

  2. 点击“功能开发”页面下的“演示固件快速开发”板块,进入固件快速制作流程页面;

  3. 用户需要点击“新建项目”进入项目产品固件的快速开发流程。示例如下图:

  4. 根据页面提示,用户按照要开发的具体产品分别填写“项目名称、产品类型、语言类型、芯片选择、优化选项、选择板极配置、灵敏度、音色”等信息后,点击“继续”(如对某一项填写内容有疑问可点击旁边圆圈中的问号“?”查看注释)。其中“优化选项”为语言模型自动优化,目的是为了提升产品识别体验效果,对命令词和唤醒词的置信度等参数进行调优(目前仅支持单个唤醒词调优,如果你提交了多个唤醒词,则系统仅对第一个唤醒词进行优化,其他的唤醒词系统将视为命令词进行优化处理),因自动优化相对耗时,若你提交时选择了自动优化功能,请耐心等待模型优化完成。示例如下图:

  5. 选择“协议类型”即为选择串口通讯协议,目前有默认的有“串口协议V1”和用户“自定义”十六进制协议两种可选,新用户体验推荐选择默认的“☞串口协议V1”。示例如下图:

  6. 根据提示编辑命令词等信息,编辑命令词有两种方式。

  7. 方式一:平台会根据产品类型推荐命令词模板可供下载编辑,编辑完成之后点击网页上的“点击这里上传”即可在数据区域显示命令词等信息,具体操作步骤如下:
    ①点击“附件样例下载”,将下载一个Excel文件;
     


    ②打开下载好的Excel表;
     


    ③根据表中“填写说明”填写“命令词预处理”内容;
     


    ④填写好的“命令词预处理”内容如下示例(以空调产品为例);
     


    ⑤再到网页中上传该表格文件;
     


    ⑥上传成功后会显示表格名字,并在下方显示表格内容的预览并且支持修改调整;

  8. 方式二:网页“新增行”实时编辑添加命令词和唤醒词等信息;具体操作步骤如下:
    ①点击“新增行”;
     


    ②在下方编辑框新增的行中进行唤醒词、命令词和播报音的编辑填入,如下图:

  9. 当页面所有信息填写或上传完毕后,点击“立即提交”;

  10. 稍等片刻后,当看到“当前流程”显示为“已完成”,即可点击“下载文件”;

  11. 将下载下来的压缩包文件进行解压;

  12. 解压得到的文件包含“XXX.bin”产品固件、串口协议列表和《固件烧录步骤》文档,如下图中内容,请打开《固件烧录步骤》文档;根据其步骤将固件烧录到开发板即可开始体验测试语音识别效果。

3、开发固件组件¶

用户在完成了第一章“开发环境准备”和第二章“在线开发产品固件”之后,本章将接着带您进行固件组件的开发。我司芯片所对应的固件,主要由“语言模型、声学模型、播报音、用户代码”四大组件组成;接下来,我们来一步一步制作各个组件去合成我们想要的固件。

3.1 语言模型与声学模型获取¶

制作固件的语言模型与声学模型是一并生成获取的,详细步骤如下:

  1. 进入语音AI平台“功能开发”板块;

  2. 点击“语言模型开发”进入语言模型的制作流程;

  3. 点击“新建项目”按钮;

  4. 根据页面提示信息填入相关数据后,点击“继续”按钮前往下一步;(注:“操作类型”还可以选择”G.fst.txt“分词文本进行上传,并支持”语音模型自动优化“,但仅限企业用户)

  5. 声学模型是固件的重要组件,根据页面提示选择声学模型后请点击“声学模型下载”,解压后放入PC本地的SDK软件开发包中的.\firmware\dnn\目录下:

  6. 点击“附件样例下载”,将下载一个Excel文件;

  7. 打开下载好的Excel表;

  8. 根据表中“填写说明”填写“命令词预处理”内容;

  9. 填写好的“命令词预处理”内容如下示例(以空调产品为例):

  10. 再到网页中上传该表格文件;

  11. 上传成功后会显示表格名字,并在下方显示表格内容的预览并且支持修改调整;

  12. 点击“提交”,平台会自动跳转到【任务管理】界面,实时查看本次语言模型制作的进度,图中“当前流程”显示“已提交”,需要用户等待片刻;

  13. 稍等片刻后,当看到“当前流程”则显示为“已完成”,即可点击“下载文件”;

  14. 将下载下来的压缩包文件进行解压;

  15. 解压得到的文件包含语言模型和声学模型,如下图中内容,请打开“使用说明.txt”文档;根据“使用说明”的步骤将各个文件内容拷贝到SDK相应路径即可。

3.2 播报音合成¶

合成播报音是为了让设备识别到命令词之后能拥有播报反馈响应,增强交互体验;现在我们来制作播报音,并且来让我们的播报音与命令词一一对应起来。

  1. 进入语音AI平台“功能开发”页面;

  2. 合成播报音点击“播报音合成”板块;

  3. 首先点击“新建项目”按钮,选择播报音的发音语种,拥有中文、英文、日文三种语言可以选择;

  4. 然后,选择对应语种下的音色,有多种女声、男声、女童、男童等音色可供试听选择;(试听功能待开放)

  5. 再选择播报音的语速和播报音初始音量;

  6. 再点击“附件样例下载”,下载一个名为“播报词列表_中文模板.xlsx”的Excel格式附件;

  7. 打开该附件样例,根据表中的“填写说明”,将播报音等文本信息填写到“语言合成”sheet中保存备用;

  8. 回到网页,将相应的Excel附件点击上传;

  9. 上传成功后,下方表格会将Excel中的内容显示出来,用户可在其中进行预览和修改调整,确认无误即可点击“提交”;

  10. 提交成功后,页面会自动跳转到任务管理页,可以看到播报音合成的当前状态为“进行中”;

  11. 播报音根据制作音频数量请等待几分钟,“当前状态”便会显示为完成,即可点击“下载文件”按钮保存该压缩文件;

  12. 解压下载好的压缩文件,得到如下多个文件;

  13. 根据《使用说明.txt》描述步骤将解压出来的音频文件放入PC本地的SDK中的.\firmware\voice\src目录下备用。

3.3 用户代码¶

用户要开发自定义功能的代码,需要先根据芯片型号安装与之匹配的开发环境。还未安装开发环境的用户可以进行如下操作:

  1. 进入☞语音AI平台,点击【☞开发资料】板块;

  2. 分类选择“开发工具及手册”;

  3. 点击“查询”后,可以看到不同芯片所对应的IDE开发工具下载链接;

  4. 用户找到与自己手上芯片型号所对应的开发工具及手册,点击“下载文件”(这里以下载CI13系列芯片所对应的开发工具为例);

  5. 解压下载好的压缩文件;

  6. 打开解压出的IDE安装包,打开文档中心【编译软件安装与使用】,根据其中指引进行IDE开发环境的安装。

  7. 安装完毕后,用IDE工具打开放入了语言模型、声学模型、播报音及[60000]{cmd_info}.xlsx表的SDK包。用户可以根据产品需求参照文档中心《软件开发》进行应用代码的开发;

  8. 代码编写完成后,可以在3代芯片的IDE工具内点下图所示AI图标,左上角选项框中可以看到该工程名,先点击清理按钮,再点击生成按钮进行代码编译;

  9. 代码编译完成后,鼠标右键点击工程名,鼠标左键点击“合成分区bin文件”;

  10. 合成所有分区bin文件后,点击启动打包升级工具;

  11. 第一次打开“打包升级工具”需要选择与用户开发板对应的芯片型号;

  12. 然后点击“固件升级”按钮,跳转到固件升级工具界面会看到我们开发板的串口号、下载进度、下载速率及选中框等信息。另外请注意开发时使用的是USB转串口方式和电脑通信,请提前在电脑中安装好USB转串口芯片的驱动,以方便固件升级工具获取到串口号;

  13. 点击“选择固件”选择已经准备好的固件;

  14. 再在串口号后面勾选我们的开发板;

  15. 开发板重新上电或复位,软件会自动开始烧录选好的固件。
    ① CI1306芯片CI-D06GT01D开发板套件烧录时可以使用下图中的复位按键:
     


    ② CI112/CI110系列CI-B02-MB开发板套件烧录时需按下图中的电源开关断电后,再按电源开关上电:

  16. 固件升级工具烧录时会实时显示下载进度:

  17. 待固件升级工具显示“device:update success....”,这表示固件下载更新成功;去掉勾选再重新上电即可开始体验测试。

注:烧录串口默认为芯片的UART0,波特率为115200(CI110系列芯片)或921600(CI13系列芯片)

这篇关于启英泰伦 离线语音识别 模块使用教程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/589610

相关文章

SpringBoot集成redisson实现延时队列教程

《SpringBoot集成redisson实现延时队列教程》文章介绍了使用Redisson实现延迟队列的完整步骤,包括依赖导入、Redis配置、工具类封装、业务枚举定义、执行器实现、Bean创建、消费... 目录1、先给项目导入Redisson依赖2、配置redis3、创建 RedissonConfig 配

Python使用FastAPI实现大文件分片上传与断点续传功能

《Python使用FastAPI实现大文件分片上传与断点续传功能》大文件直传常遇到超时、网络抖动失败、失败后只能重传的问题,分片上传+断点续传可以把大文件拆成若干小块逐个上传,并在中断后从已完成分片继... 目录一、接口设计二、服务端实现(FastAPI)2.1 运行环境2.2 目录结构建议2.3 serv

Spring Security简介、使用与最佳实践

《SpringSecurity简介、使用与最佳实践》SpringSecurity是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架,本文给大家介绍SpringSec... 目录一、如何理解 Spring Security?—— 核心思想二、如何在 Java 项目中使用?——

springboot中使用okhttp3的小结

《springboot中使用okhttp3的小结》OkHttp3是一个JavaHTTP客户端,可以处理各种请求类型,比如GET、POST、PUT等,并且支持高效的HTTP连接池、请求和响应缓存、以及异... 在 Spring Boot 项目中使用 OkHttp3 进行 HTTP 请求是一个高效且流行的方式。

Java使用Javassist动态生成HelloWorld类

《Java使用Javassist动态生成HelloWorld类》Javassist是一个非常强大的字节码操作和定义库,它允许开发者在运行时创建新的类或者修改现有的类,本文将简单介绍如何使用Javass... 目录1. Javassist简介2. 环境准备3. 动态生成HelloWorld类3.1 创建CtC

使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解

《使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解》本文详细介绍了如何使用Python通过ncmdump工具批量将.ncm音频转换为.mp3的步骤,包括安装、配置ffmpeg环... 目录1. 前言2. 安装 ncmdump3. 实现 .ncm 转 .mp34. 执行过程5. 执行结

Java使用jar命令配置服务器端口的完整指南

《Java使用jar命令配置服务器端口的完整指南》本文将详细介绍如何使用java-jar命令启动应用,并重点讲解如何配置服务器端口,同时提供一个实用的Web工具来简化这一过程,希望对大家有所帮助... 目录1. Java Jar文件简介1.1 什么是Jar文件1.2 创建可执行Jar文件2. 使用java

C#使用Spire.Doc for .NET实现HTML转Word的高效方案

《C#使用Spire.Docfor.NET实现HTML转Word的高效方案》在Web开发中,HTML内容的生成与处理是高频需求,然而,当用户需要将HTML页面或动态生成的HTML字符串转换为Wor... 目录引言一、html转Word的典型场景与挑战二、用 Spire.Doc 实现 HTML 转 Word1

Python中logging模块用法示例总结

《Python中logging模块用法示例总结》在Python中logging模块是一个强大的日志记录工具,它允许用户将程序运行期间产生的日志信息输出到控制台或者写入到文件中,:本文主要介绍Pyt... 目录前言一. 基本使用1. 五种日志等级2.  设置报告等级3. 自定义格式4. C语言风格的格式化方法

Java中的抽象类与abstract 关键字使用详解

《Java中的抽象类与abstract关键字使用详解》:本文主要介绍Java中的抽象类与abstract关键字使用详解,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧... 目录一、抽象类的概念二、使用 abstract2.1 修饰类 => 抽象类2.2 修饰方法 => 抽象方法,没有