概述¶

语音识别作为最自然的交互方式,越来越多的被用户所接受,但是语音方案与传统的逻辑开发不同,需要多方配合才能打造好的产品。本文档主要介绍启英泰伦的语音识别方案的方案设计和项目开发,适用于新接触语音的成品需求方,IDH方案商及方案开发者。

如果您新接触语音方案,建议先查看 ☞新手指南,如果您已经初步了解,可以参考开发案例进行具体的软件开发,本文档主要描述一个实际的产品的标准开发流程。如果针对某一具体产品,可以参考具体的领域产品方案。

方案开发中,一般可以按下面的流程进行开发:

  1. demo测试及需求分析:获取demo开发版,将demo在实际的产品运行环境进行测试,根据实际应用场景进行需求分析;
  2. 方案选型:选择合适的方案,芯片和硬件模组;
  3. 研发测试:明确产品的需求,进行方案的设计,从硬件,结构,VUI(语音对话),产品逻辑,进行研发,搭建成品整机,测试整机的电气性能和识别情况,同时进行硬件相关的测试;
  4. 固件确认及生产下单:测试完后,确定固件确认书,同时根据情况进行相关的硬件可靠性测试,进行小批量试制及生产下单,下单后来料可以通过治具进行抽检;
  5. 品质售后:如果出现品质问题,可以与我司售后沟通。

我司也提供对应的软硬件检查checklist,供您在设计阶段进行check结构、原理图,pcb和软件部分。该checklist请到 ☞启英泰伦语音AI平台 中下载。

我司也可以提供语音识别自动化测试方案和模块的自动化烧录测试方案,具体信息请参考 ☞产品测试。

以下将对具体的流程进行描述:


1 demo测试及需求分析¶

1.1 demo测试¶

您可以购买demo后 ☞样品购买 ,参考demo的资料,进行初步体验测试。在实际的应用场景,测试安静和噪音情况下的识别率,唤醒率和误唤醒,了解语音识别的实际体验情况,详细的测试标准参考 ☞识别效果测试,测试中请特别注意:

  • 使用相似的词的诱导测试并不作为误识别的优化依据,目前采用的大数据深度学习算法,本身有一定的识别模糊性,这样具备更普遍的实用性,并且客户对最终用户的普通话要求没有那么严格;
  • 我司提供的测试及demo板子,仅供测试,不用于生产,需要批量时请与我司联系沟通确定型号。

1.2 分析语音需求¶

测试及体验完demo后,可以根据产品的类型考虑是否增加语音,主要考虑如下:

  • 产品是什么,本身的噪音情况如何?
  • 产品的使用距离要求多远?
  • 需要使用语音实现怎么样的功能?
  • 产品的应用场景在何处,是否适合用语音识别技术?
  • 产品对语音识别的准确率要求如何?误识别会不会带来严重风险?

2 方案选型¶

经过初步的demo评测和体验测试,如产品需求最终考虑增加语音,接下来考虑选择具体的语音方案。

启英泰伦提供离线单麦克风,离线双麦克风,离线语音+蓝牙播放,离线语音+IOT,离在线识别等多种识别方案,芯片本身也支持二次开发,可以使用串口对接各种模块,部分产品的开发也可以参考 ☞产品方案开发概述。

下面以标准的离线单麦克风产品方案为例进行描述:

​离线单麦克风方案,对结构要求低,方案成熟稳定,方案简单易用,识别效果好,适用范围广。当前广泛用在家电、照明、红外插座、中控、风扇、智能马桶、油烟机、浴霸、取暖桌等领域,并且均已量产并在市面销售。

具体的方案选型请参考 ☞硬件选型指南 中的芯片选型和模块选型说明,我们优先建议适用 ☞CI-B02GS04S(主芯片CI1102) (贴片模组)和 ☞CI-B02GS06J(主芯片CI1102) (带座子模组)。


3 研发测试¶

3.1 明确方案¶

根据产品的需求明确产品用何种方案,举例如下:

如果您想实现快速开发,推荐采用语音模块与电控的串口通信方案,这样语音模块可以只开发语音部分,和成熟的电控采用串口进行通信,可以减少开发和调试的时间。该方案可以将语音模块和电控各自使用电脑串口工具模拟对接开发,待开发测试完成后,再进行实际模组的对接。

该方案通讯流程:

  1. 声音通过麦克风传输给语音模块,语音模块识别到词条;
  2. 将识别到的词条信息串口告知电控;
  3. 电控执行相关动作;
  4. 电控根据动作的执行情况,告知语音模块需要播放的内容;
  5. 语音模块根据电控反馈进行播放。

优点:

  1. 语音模块根据电控的状态进行播放对应内容,可以进行最合适的反馈,体验感好;
  2. 如果电控通过按键或者遥控进行控制,语音模块也可以进行状态播放。

如果您想采用一体板方案或其他的通讯方式如IIC,也可以自行开发,如有问题请与我司技术支持联系。

3.2 VUI设计:¶

3.2.1 命令词和唤醒词:¶

期望用户对设备说出,可以被设备识别的操作指令即为命令词。命令词中,被用于唤醒设备,相当于设备“名字”的词,定义为唤醒词。

关于两种词的设计方法,请查看:☞语音UI设计参考

3.2.2 播放反馈音¶

当用户说了命令词后,设备需要播报对应词条的反馈音,关于该播报反馈音的设计,有如下建议:

  • 上电开机的欢迎播放音,开机音中尽量包含唤醒词,以便用户拿到产品上电的第一时间,知道如何唤醒本设备;
  • 回复音尽量简洁,随着使用的频繁,简洁的播放音不会打扰到客户;
  • 增加退出唤醒播报语:以便用户知道什么时候需要重新说唤醒词(如果有指示灯,也可以用指示灯指示唤醒状态);
  • 命令词的反馈声音中,尽量包含“命令词条”,以便用户加深对命令词的记忆;
  • 增加命令词“静音模式”,静音模式下,可以使用“滴滴”替代产品的反馈播放因,这样给客户的打扰更少;
  • 增加命令词“语音导航”,语音导航中,为用户提供本产品有哪些词条,防止客户丢掉说明书不知道有哪些词条;
  • 增加“音量增加,音量减小”,根据客户的习惯调整反馈音大小。

3.2.3 说明书描述¶

产品的说明书建议包含以下内容:

  • 语音模块的交互流程,需要先唤醒,再说其他命令词进行控制;
  • 说明书中的唤醒词必须显著标明,便于客户对唤醒词的记忆,同时也需要标明可以用语音导航获取其他指令;
  • 用表格的形式罗列唤醒词和关键命令词,命令词环节有对关键词说明,尽量选用识别效果好的词作为关键词;
  • 语音说明书尽量采用单页,便于用户容易查看;
  • 为了提升产品形象,说明书应该尽量设计得美观;
  • 提醒用户支持普通话及少量口音的普通话,语速不要太快。

3.2.4 其他建议事项¶

  • 可以制作命令词贴纸,粘在设备上或者设备附近,防止用户忘掉相关词条;
  • 设备上增加二维码,可以进行扫码查看说明书和命令词条。

3.3 产品结构设计及关键物料选型¶

麦克风和喇叭的结构设计直接影响产品的识别效果,需要特别注意。麦克风要防噪音进入,喇叭需要注意出音孔的设计,防止声音播听感不好,详情请参考 ☞产品结构设计,如果您是第一次做语音产品,强烈建议与我司技术支持人员详细沟通。

您在设计产品时请尽量选用我司推荐的关键物料,相关信息如下:

  • 麦克风选择:选择模拟麦克风,灵敏度选用-32±3dB;信噪比>70dB麦克风我司建议使用-32±3db,具体可参考 ☞麦克风兼容列表
  • 喇叭选择:选择标称功率与功放芯片一致,如果产品有AEC的需求,则扬声器失真度尽量小一些,具体可参考 ☞喇叭兼容列表
  • NorFlash选择:如果使用110X的芯片,需要选择8Mbyte的Flash或者4Mbyte的Flash,具体可参考 ☞NorFlash兼容列表

3.4 硬件设计¶

硬件设计有以下要点:

  • 预留升级口:语音识别产品比传统的产品来说,修改固件的可能性更高,强烈建议预留升级接口,CI110X和CI112X都需要预留UART0;
  • GIPIO使用注意:有些产品对IO的默认电平敏感,例如作为电机驱动的IO,这时需要关注IO 默认电平数值;
  • GPIO输入模式注意:CI110X和CI112X的GPIO作为输入时,必须增加上下拉电阻;
  • 接口电平匹配:例如很多电控使用的为5V电平,这时需要增加电平匹配线路。

特别强调:语音识别产品比传统的产品来说,修改固件的可能性更高,强烈建议预留升级接口。

更多信息也可以查看 ☞硬件设计参考。

3.5 软件开发¶

​如果您是初次使用启英方案,可以参考 ☞软件开发 进行软件开发的学习,也可以登录 ☞启英泰伦语音AI平台 播放语音开发介绍视频观看。

一些软件开发的基本介绍如下:

  • SDK目前分为多个,您可以直接使用标准SDK,也可以通过 ☞启英泰伦语音AI平台 中的定制SDK功能产生定制SDK。当前的标准SDK有如下版本:
sdk包 版本名称 下载地址
CI10X纯离线SDK CI110X_SDK_ASR_Offline_V1.3.5 ☞启英泰伦语音AI平台
CI110X算法SDK CI110x_SDK_ALG_Application_V1.4.6 ☞启英泰伦语音AI平台
CI110X红外插座SDK CI110X_IR_SDK_ASR_Offline_V1.3.5 ☞启英泰伦语音AI平台
CI110X离在线SDK CI110X_Combine_Cloud_V1.7.0 ☞启英泰伦语音AI平台
CI112X纯离线SDK CI112X_SDK_V1.1.3 ☞启英泰伦语音AI平台
CI112X红外插座SDK CI112X_IR_SDK_V1.1.3 ☞启英泰伦语音AI平台

注:上述SDK后面的版本号可能会升级,请以平台下载的SDK版本号为准。

  • 软件开发时,请尽量将您的代码写在\sample\internal\sample_xxx中,这样当SDK更新时,您基本不需要改动代码;

  • 主要函数说明,用户的代码:sample\internal\sample_1102\src\user_msg_deal.c

  //根据语义ID进行处理uint32_t deal_asr_msg_by_semantic_id(sys_msg_asr_data_t *asr_msg, cmd_handle_t cmd_handle, uint32_t semantic_id)//根据命令词ID进行处理uint32_t deal_asr_msg_by_cmd_id(sys_msg_asr_data_t *asr_msg, cmd_handle_t cmd_handle, uint16_t cmd_id)//应用消息处理uint32_t deal_userdef_msg(sys_msg_t *msg){uint32_t ret = 1;switch(msg->msg_type){/* 按键消息 */case SYS_MSG_TYPE_KEY:{sys_msg_key_data_t *key_rev_data;key_rev_data = &msg->msg_data.key_data;userapp_deal_key_msg(key_rev_data);break;}#if MSG_COM_USE_UART_EN/* CI串口协议消息 */case SYS_MSG_TYPE_COM:{sys_msg_com_data_t *com_rev_data;com_rev_data = &msg->msg_data.com_data;userapp_deal_com_msg(com_rev_data);break;}#endif/* CI IIC 协议消息 */#if MSG_USE_I2C_ENcase SYS_MSG_TYPE_I2C:{sys_msg_i2c_data_t *i2c_rev_data;i2c_rev_data = &msg->msg_data.i2c_data;userapp_deal_i2c_msg(i2c_rev_data);break;}#endifdefault:break;}return ret;}

3.6 整机样品测试注意事项¶

语音识别效果受环境噪声、设备摆放、环境是否有混响、测试人员发音是否清晰准确等因素影响,进行整机样品测试时需要明确各方面的影响因素。特别注意下:

  • 测试时信噪比尽量满足10dB以上,测试效果比较好;
  • 设备尽量摆放在平行于声源高度的地方,麦克风尽量朝向声源,避免中间有遮挡,保证声源在麦克风拾音范围内;
  • 测试环境避免光滑的墙面,比如玻璃墙。光滑墙面会导致混响严重,对识别影响较大;
  • 测试房间混响不宜过大,较大房间并且墙面光滑的房间混响比较严重;
  • 测试人员发音尽量清晰准确,避免使用不支持的方言来进行测试;
  • 如果采用录音进行测试,应该采用高保真设备进行录音和播放录音,尽量还原真人发音的特性,避免录音、播放设备改变声音频率特性影响识别效果;
  • 测试时麦克风摆放的位置应该避免震动和噪声源,以及避免风吹。

如果测试发现识别效果不好,请参考 ☞启英泰伦语音AI平台https://platform.chipintelli.com/ 中的 在线支持->问题定位功能 进行解决,如果仍然无法解决,请采集板子的底噪信息发给我司分析,我司会针对的进行优化。采集底噪会用到录音板,具体的使用说明可参考 ☞录音板使用说明。


4 固件确认¶

通过前面的开发及优化,产品达到量产状态后,如您是由我司或我司方案商开发的固件,为确保生产固件的正确性,避免在生产中或者生产后发现固件存在问题而导致需要返工,我司建议您执行以下的固件确认制定流程。

  • 用户对我司或我司方案商提供的固件进行测试确认,如果固件没问题,通知我司或我司方案商可以冻结固件;
  • 我司或我司方案商对固件进行识别测试,确认固件识别效果;
  • 我司或我司方案商发固件确认书给用户进行确认签字,表示用户确认当前固件满足要求;
  • 我司或我司方案商收到用户签字的固件确认书后,进行内部固件入库,提供给生产部门。

综上,请您在有订单需求时,尽量计划好时间提前进行固件确认。如果麦克风和喇叭有定制修改,也请务必提前同步,以保障订单的按时交货。


5 生产测试¶

我司提供完整的产品生产自动化测试方案,具体可参考 ☞自动化识别测试。

对于使用我司标准模块的客户:

  • 如果只做入库抽检,则只需要购买一台测试治具;
  • 如果需要固件烧录,需要购买测试工装。

对于使用我司芯片,进行模块研发的客户:

  • 可以从我司获取自动化测试工装的资料;
  • 可以从我司购买自动化测试工装的从测试板部分,根据贵司的模块,进行测试治具的定制。

我司自研的自动化测试工装,如果采用一拖24的拼版,则每天可以生产加测试约1万台左右;如需采购请联系我司相关负责人,联系电话15107119906,联系邮箱:support@chipintelli.com。


6 联系方式¶

建议您多留意我司的最新信息以及多和我司进行互动沟通,以保障您产品的开发进程和效果。关于公司的最新信息,您可以登录 ☞启英泰伦官网 或微信公众号“启英泰伦(微信号:Chipintelli)”了解。

关于更多的开发资料和信息请登录 ☞启英泰伦语音AI平台 获取。

如果您在使用中有任何问题,也欢迎通过以下方式和我司联系。 联系电话:028-61375925 联系邮箱:support@chipintelli.com

启英泰伦产品方案开发流程相关推荐

  1. 启英泰伦-腾讯云小微产品方案

    1 离在线整体方案概述¶ 1.1 方案概述¶ 随着人们生活水平的提高,对产品的功能要求也越来越高,追求产品的多功能性.传统的离线语音产品仅本地功能控制,无法满足人们的对在线内容的需求. 传统家电,功能 ...

  2. 启英泰伦CI-C22GS02(ci1122)单麦离线智能语音模块制作声控小台灯

    启英泰伦CI-C22GS02(ci1122)单麦离线智能语音模块开发教程 官方资料 进入AI语音平台 官方资料 补充 整体开发思维导图 下载程序 自定义语音替换 资料打包 启英泰伦版eclipe开发软 ...

  3. 启英泰伦推出基于三代AIoT芯片的离在线语音识别方案

    2022年7月,启英泰伦推出了为离在线方案专业定制的AIoT语音芯片CI2306,该语音芯片集成了离线语音识别+WIFI+蓝牙BLE功能,用户可以利用该语音芯片快速开发离在线语音识别方案:结合离线语音 ...

  4. 成都启英泰伦科技有限公司

    公司简介: 启英泰伦成立于2015年,是一家专注于人工智能语音芯片研发及提供配套应用解决方案的国家高新技术企业,是行业首家同时掌握人工智能语音算法.芯片.AI语音开发平台.及软硬件产品应用方案开发的全 ...

  5. 启英泰伦cl1122模块学习笔记

    笔记目录 前言 一.CI1122芯片与其它型号对比 二.资料获取 1.启英泰伦语音AI平台 文档中心: 软硬件开发资料以及平台的使用方法 开发资料: SDK和固件下载,相关开发工具的下载,开发板的硬件 ...

  6. 启英泰伦推出离在线语音方案,断网、联网都能实现语音交互

    随着智能语音技术的进一步普及,对语音的需求也更多元化. 目前,针对语音识别主要有离线和在线两种方式.离线:采用离线NN加速运算,响应快,不受网络约束.在线:不限制命令词数,能获取丰富云端内容,但需要联 ...

  7. 启英泰伦推出多种智能语音识别照明解决方案,改装简单,成本低

    随着人工智能技术的普及,智能家居设备开始走进千家万户.而智能照明系统成为其不可或缺的一部分,占据着举足轻重的地位. 但是照明系统和其他家居设备不一样的是,开发商交房时已布好电路,或用户直接购买精装房, ...

  8. 启英泰伦三代离线语音AI芯片及AIoT芯片介绍

    2022年,启英泰伦发布了三代离线语音AI芯片及AIoT芯片.此系列芯片算力更强.集成度更高.成本更低.功耗更低,将会使语音识别应用推向一个新高点. 下面简单介绍一下. 语音AI芯片CI130X系列 ...

  9. 启英泰伦离线语音+蓝牙+小程序控制方案介绍

    近期,启英泰伦推出了一款可兼容离线语音识别+蓝牙控制+小程序控制的语音模块,模块型号为D02GS07J-BT. 模块简介 D02GS07J-BT模块体积小巧,长宽为37mm×40mm,工作电压为 5. ...

最新文章

  1. heroku能用mysql吗_heroku连接到mysql数据库
  2. 《ACM国际大学生程序设计竞赛题解Ⅰ》——模拟题
  3. 太原理工大学计算机宿舍,2019太原理工大学宿舍怎么样 环境好不好
  4. “约见”面试官系列之常见面试题第四十篇之双向绑定以及实现原理(建议收藏)
  5. 论文学习16-Going out on a limb: without Dependency Trees(联合实体关系抽取2017)
  6. 识别访问端的操作系统
  7. python的ubuntu环境怎么配置_python中在ubuntu中安装虚拟环境及环境配置
  8. 爷青结?诺基亚贝尔实验室官宣转让Plan 9版权!
  9. Telnet 服务器软件的安装
  10. NLTK加载自定义词典
  11. 微信公众号开发(一)
  12. 爬虫抓包问题全面分析
  13. 【Cocos游戏】《天天炫斗》:在手机上感受街机狂潮
  14. 忽略validateRequest设置
  15. Java中的类与对象之间的关系
  16. android 桥接,路由器一键桥接Android实现
  17. Mendeley从标签找到pdf后,文件打不开怎么办
  18. 【张小平工作日志】DBCP、c3p0、Druid、Proxool数据库连接池比较
  19. ffmpeg 设定码率
  20. java内省的意思_java内省和反射的区别

热门文章

  1. win10浏览器加载很慢_win10加载网页很慢_win10打开浏览器加载网页很慢处理技巧...
  2. android 斑马进度条,bootstrap彩色斑马进度条
  3. 数学建模常见算法说明以及建模过程中的问题
  4. 海康威视工业相机SDK二次开发环境配置—Windows10+VS2017
  5. 如何使用canvas进行画图
  6. Verilog语法_1(reg、wire、always语法)
  7. 前端面试----深信服面试题全概
  8. 红米note4x开启root权限
  9. Linux都应用在哪些领域?发展如何?
  10. 计算机硬盘sata,sata硬盘是什么