首页
|
新闻
|
新品
|
文库
|
方案
|
视频
|
下载
|
商城
|
开发板
|
数据中心
|
座谈新版
|
培训
|
工具
|
博客
|
论坛
|
百科
|
GEC
|
活动
|
主题月
|
电子展
注册
登录
论坛
博客
搜索
帮助
导航
默认风格
uchome
discuz6
GreenM
»
MCU 单片机技术
» LD3320嵌入式语音识别系统应用(1)
返回列表
回复
发帖
发新话题
发布投票
发布悬赏
发布辩论
发布活动
发布视频
发布商品
LD3320嵌入式语音识别系统应用(1)
发短消息
加为好友
我是MT
当前离线
UID
1023166
帖子
6651
精华
0
积分
3328
阅读权限
90
来自
燕山大学
在线时间
230 小时
注册时间
2013-12-19
最后登录
2016-1-5
论坛元老
UID
1023166
性别
男
来自
燕山大学
1
#
打印
字体大小:
t
T
我是MT
发表于 2015-9-25 09:22
|
只看该作者
LD3320嵌入式语音识别系统应用(1)
语音识别
,
嵌入式
1 概述
语音交互系统是比较人性化的人机操作界面,它需要语音识别系统的支持。LD3320就是这样一款语音识别芯片。介绍了该芯片的工作原理及应用,给出了LD3320与微处理器的硬件接口电路及软件程序。随着高档MCU的不断出现,以MCU为核心的
嵌入式
语音交互系统会有非常好的应用前景。
2 特定人语音识别技术及原理
特定人语音识别(ASR,Auto Speech RecognitiON)技术是基于"关键词语列表"的识别技术,它是对大量的语音数据(相当于对数千人采集的数万小时的有效声音数据)经语言学家语音模型分析,建立数学模型,并经过反复训练提取基元语音的细节特征,以及提取各基元间的特征差异,得到在统计概率最优化意义上的各个基元语音特征,最后才由资深工程师将算法以及语音模型转换成硬件芯片并应用在
嵌入式
系统中。
ASR技术每次识别的过程就是把用户说出的语音内容,通过频谱转换为语音特征,再将这个转换后的语音特征和"关键词语列表"中的条目一一进行匹配,最优匹配的一条即作为识别结果。比如ASR技术在语音控制的手机应用中,这个"关键词语列表"的内容就是电话本中的人名、手机的菜单命令或手机存储卡中的歌曲名字。不论这个列表的条目内容是什么,只需要用户设置相关的寄存器,就可以把相应的待识别条目内容以字符形式传递给识别引擎。
由此可见,语音识别芯片完成的工作就是:把MIC(麦克风)输入的声音进行频谱分析后提取语音特征,再和关键词语列表中的关键词语进行对比匹配,最后找出得分最高的关键词语作为识别结果输出。
通常基于ASR技术的语音识别芯片能在两种情况下给出识别结果:
①外部送入预定时间的语音数据(比如5 s的语音数据),芯片对这些语音数据运算分析后,给出识别结果。
②外部送入语音数据流,语音识别芯片通过端点检测(VAD,Voice Activity Detection)技术检测出用户停止说话,把用户开始说话到停止说话之间的语音数据进行运算分析后,给出识别结果。
对于第一种情况,可以理解为设定了一个定时录音(如5 s的语音数据),芯片在5 s后会停止把声音送入识别引擎,并且根据已送入引擎的语音数据计算出识别结果。
对于第二种情况,需要了解VAD的工作原理:VAD技术是在一段语音数据流中,判断出哪个时间点是人声音的开始,哪个时间点是人声音的结束。判断的依据是,在背景声音的基础上有了语音发音,则视为声音的开始。而后,检测到一段持续时间的背景音(比如600 ms),则视为人声说话结束。通过VAD判断出人声说话的区域后,语音识别芯片会把这期间的声音数据进行识别处理,计算出识别结果。
除了以上两种情况外,语音识别算法无法"主动"地判断出是否识别出了一个结果。这是因为,在计算过程中的任何时刻,语音识别器都会对已送人识别芯片的声音数据进行分析,并根据匹配程度为识别列表中的关键词语进行打分,最匹配的打分最高。但是,由于识别算法不知道用户后面是否还继续说话,所以无法主动地判断已经识别出的结果。
3 语音识别芯片LD3320的工作原理
3.1 语音识别系统原理结构
LD3320语音识别芯片采用的就是ASR技术,图1就是由LD3320和单片机(或
嵌入式
系统)组成的语音识别系统原理框图。图中给出了LD3320的内部原理结构,本文中选用的MCU是STC10L08XE单片机。
图1 语音识别系统原理框图
语音识别芯片LD3320是ICRoute公司的产品,它采用ASR技术,提供了一种脱离按键、键盘、鼠标、触摸屏等GUI操作方式且基于语音的用户界面VUI(Voice User Interface),使得用户对该系统的操作更简单、快速和自然。
用户只需要把识别的关键词语以字符串的形式传送进芯片,即可以在下次识别中立即生效。比如,用户在51等主控MCU的编程中,简单地通过设置芯片的寄存器,把诸如"你好"这样的识别关键词语的内容动态地传入芯片中,芯片就可以识别所设定的关键词语了。每个关键词语可以是单字、词组、短句或者任何的中文发音的组合。基于LD3320的语音识别系统可以随着使用流程,在运行时动态地更改关键词语列表的内容,这样可以用一个系统支持多种不同的场景,同时也不需要用户作任何的录音训练。
3.2 LD3320的用户使用模式
LD3320有两种用户使用模式,即"触发识别模式"和"循环识别模式".用户可以通过编程,设置两种不同的用户使用模式。
触发识别模式:系统的主控MCU在接收到外界一个触发后(比如用户按动某个按键),启动LD3320芯片的一个定时识别过程(比如5 s),要求用户在这个定时过程中说出要识别的语音关键词语。这个过程结束后,需要用户再次触发才能再次启动一个识别过程。
循环识别模式:系统的主控MCU反复启动识别过程。如果没有人说话就没有识别结果,则每次识别过程的定时到时后再启动一个识别过程;如果有识别结果,则根据识别作相应处理后(比如播放某个声音作为回答)再启动一个识别过程。
4 语音识别系统软硬件设计
4.1 硬件系统设计
由图l可知,由LD3320组成的语音识别系统硬件有单片机(或
嵌入式
系统)及LD33202.图2和图3分别是由单片机STC10L08XE构成的主控芯片和由LD3320A构成的语音识别主系统。
图2 STC10L08XE构成的主控芯片
图3 LD3320A构成的语音识别主系统
4.2 软件系统设计
语音识别的操作顺序是:先进行语音识别的初始化,然后写入识别列表,系统即开始进行语音识别,并准备好中断响应函数,打开中断允许位。这里如果不用中断方式,也可以通过查询方式工作。在"开始识别"后,读取寄存器B2H的值,如果为21H就表示有识别结果产生。
收藏
分享
评分
回复
引用
订阅
TOP
返回列表
通信技术
电商论坛
Pine A64
资料下载
方案分享
FAQ
行业应用
消费电子
便携式设备
医疗电子
汽车电子
工业控制
热门技术
智能可穿戴
3D打印
智能家居
综合设计
示波器技术
存储器
电子制造
计算机和外设
软件开发
分立器件
传感器技术
无源元件
资料共享
PCB综合技术
综合技术交流
EDA
MCU 单片机技术
ST MCU
Freescale MCU
NXP MCU
新唐 MCU
MIPS
X86
ARM
PowerPC
DSP技术
嵌入式技术
FPGA/CPLD可编程逻辑
模拟电路
数字电路
富士通半导体FRAM 铁电存储器“免费样片”使用心得
电源与功率管理
LED技术
测试测量
通信技术
3G
无线技术
微波在线
综合交流区
职场驿站
活动专区
在线座谈交流区
紧缺人才培训课程交流区
意见和建议