嵌入式实时英语语音识别系统的设计和实现

发布者:LIGANG888最新更新时间:2015-04-10 来源: eechina关键字:实时英语语音  识别系统 手机看文章 扫描二维码
随时随地手机看文章
随着移动设备的快速发展,迫切需要一种更友好、更便捷的用户操作系统。自动语音识别系统能够提供便利的人机交互,将成为一种主要方法。目前,实验室环境中自动语音识别系统已经取得了很好的效果,但需要很大的存储空间和运算资源。当自动语音识别应用于移动设备时,必须对模型和识别策略进行相应改进,才能满足其对运算速度、内存资源和功耗的要求。为了解决这个问题,本文将结合英语语音的特点,设计并实现嵌入式英语语音识别系统,完成中等词汇量的孤立词实时识别任务。

1 硬件平台

嵌入式系统的软硬件高度结合,针对系统的特定任务,要量体裁衣、去除冗余,使得系统能够在高性能、高效率、高稳定性的同时,保证低成本和低功耗。因此,系统硬件平台的选用是影响系统整体性能的关键因素。系统采用Infineon公司Unispeech 80D51语音处理专用芯片作为核心的硬件平台,该芯片集成了一个16位定点DSP核(OAK)、一个8位MCU核(M8051 E-Warp)、两路ADC、两路DAC、104KB的SRAM以及高灵活性的MMU等器件。其中DSP最高工作频率可达100MHz,MCU最高工作频率为50MHz。

由于系统的语音处理专用芯片UniSpeech集成了大部分的功能单元,片外所需元件很少,因此系统硬件平台的板级结构非常简单。图1为硬件平台的板级结构图。



专用芯片只需外接:

(1)EPROM:存放系统程序;

(2)Flash Memory:存放语音识别系统需要的声学模型参数和系统中的语音提示、语音回放数据;

(3)语音输入器件:可直接外接麦克风,接收语音信号;

(4)语音输出器件:可直接外接扬声器或耳机,输出系统的提示音;

(5)电源:通过电压变换芯片,为电路板上各芯片提供需要的电压;

(6)USB接口:该板级语音识别模块提供了USB接口,以提高该嵌入式系统和通用计算机系统之间数据交换的速度;

(7)键盘:提供外接键盘接口,方便系统控制;

(8)液晶:可外接一块液晶显示屏,以输出识别结果;

(9)其他设备接口:为了增强该语音信号处理模块的功能扩展性,UniSpeech提供了丰富的I/O资源,共有100条通用I/O,系统也预留了这些I/O接口,以方便与其他设备连接。

2 算法研究

2.1 两阶段识别算法

在英语语音识别系统中,常用的声学模型基本单元是单词(Word)、上下文无关音素(Monophone)、上下文相关音素(Triphone,Biphone)和音节(Syllable)。单词模型由于其灵活性太差及计算时间和占用内存随待识别单词数的增加而线性增长,所以在嵌入式语音识别系统中很少应用。Monophone模型具有模型简单、状态数较少、识别速度快、内存占用少且与识别词汇量无关等优点,但其对发音的相关性描述不够精确,一选识别率不高。Triphone和Syllable模型对发音相关性能准确建模,但模型数量巨大、状态数较多、识别速度慢、内存占用多。为了解决内存占用量与识别速度之间的矛盾,本文采用了两阶段搜索算法,其基本流程如图2所示。


在第一阶段识别中,采用monophone模型和静态识别网络,得到多候选词条;在第二阶段识别中,根据第一阶段输出的多候选词条,构建新的识别网络,采用triphone模型,进行精确识别,得到最终的识别结果。由于第二阶段识别的词条数较少,与只采用triphone模型的一阶段识别相比,识别速度大大提高;同时,第二阶段识别可重用第一阶段的内存资源,也减少了识别系统的内存占用量。

2.2 特征提取与选择

在连续语音识别系统中,通常采用39维的MFCC(Mel Frequency Cepstral Coefficient)特征,甚至再加入一些特征。但是,考虑到嵌入式系统有限的硬件资源,在不降低识别率的基础上,应尽量减少特征的维数。本文采用最小互信息改变准则MMIC(Minimum Mutual Information Change)进行特征选择。一阶段采用22维MFCC特征(9 MFCC,6 ΔMFCC,4 Δ2MFCC,E,ΔE,Δ2E),二阶段采用26维MFCC特征(10 MFCC,7 ΔMFCC,6 Δ2MFCC,E,ΔE,Δ2E)。[page]

2.3 数据的输入输出

对于硬件系统,如果数据的读入速度较慢,则对运算速度影响就很大。在保证系统高识别率的前提下,系统的内存消耗量和识别时间常常是一对矛盾体,很难保证两者同时达到理想状态。如果仅仅考虑节省内存,将每个词条识别网络和相应的状态逐个读入,计算匹配分数,这样虽然可以最大限度地节省内存的使用量,但是数据的多次读入占用了大量时间,并且反复计算同一个转移概率,也对识别时间影响很大。另一方面,如果仅仅考虑运算速度,一次性将所有词条的识别网络和所有状态模型读入内存,虽然仅需一次数据读入,运算速度大大提高,但却对内存提出了更高要求。为了更好地利用系统的硬件资源,本系统首先逐个读入状态模型,计算所有观察矢量在各状态模型下的输出概率,存放在内存中;然后逐条读入识别网络,选取路径似然度最高的词条作为最终的识别结果。这样综合了前面两种方案的优点,适应了硬件系统的要求。

2.4 两阶段端点检测

端点检测是嵌入式语音识别中最基本的模块。端点检测是否准确直接影响系统的运算复杂度和系统的识别性能。因此在不增加复杂运算量的前提下,希望端点检测能尽量准确,而且能适应嵌入式系统多变的应用环境。本文使用了一种有效的两阶段端点检测方法。在第一阶段使用图像分割中经常使用的边缘检测滤波器方法,得到一个能包含语音段同时又比较宽松的端点结果;在第二阶段,对第一阶段的结果进行再判决,使用直方图统计方法得到静音段的能量聚类中心,并用这个中心能量值对整句能量序列进行中心削波,对削波后的能量序列进行最终判决。通常最终的结果会在第二阶段端点检测的基础上作适当的放松,前后放松4~5帧(大约64~80ms),这些放松在求取特征的差分分量时是很有必要的。

在实验室环境下(信噪比大于25dB),以8kHz采样频率录制了20人(其中男、女各10人)的语音数据。对于12 000句原始录制语音或带噪语音,对传统的固定能量阈值方法和两阶段检测方法进行了比较测试。测试的性能如表1所示。


传统的固定阈值方法就是针对环境噪声设定一个固定的能量阈值进行端点检测。实验表明,两阶段检测方法无论在安静环境中还是在包含一定噪声的环境中,都比固定能量阈值的端点检测方法有更好的性能。此方法能够进一步改善嵌入式语音识别系统的识别性能。

2.5 束搜索

英语语音发音快、单词长、状态数多,因而搜索时间长。要实现实时识别,就不能在所有的语音数据都得到后再进行解码识别。在两级识别网络中,第一阶段要在大量的词条中搜索,而第二阶段只在N_BEST词条中搜索,相对时间占用量很少。为了满足实时要求,本系统在获取语音信号的同时进行提取特征和第一阶段识别。根据硬件的内存容量,考虑到匹配分数所占用的内存,选取每20帧(320ms)的语音完成一次搜索。由于所搜索的词条并没有结束,不能求出最终对应于词条的分数。因此,必须保留每次搜索中每个词条的每个节点的匹配分数,这带来了新的内存开销。

解决方法是在第一阶段识别网络中加入束搜索(Beam Search)快速算法。该算法假设:Viterbi解码过程中的最佳路径在任何时刻都能保证较高的似然度,在搜索过程中对网络进行剪枝,只保留匹配分数最大的有限个路径,以减少运算量和内存消耗。但是,要获得匹配分数最大的几个状态,在每次搜索过程中都要对匹配分数进行排序,这使运算负担加重,在实际中不可取。为了解决这一问题,结合本系统识别网络的特点,采用了一种滑动窗束搜索算法。对于每一个词条网络,在Viterbi解码过程中,近似地认为真实路径总是当前匹配分数最优的路径的近邻路径。因此,设置了一个固定宽度的窗,在所有时刻,窗中的路径总包含了该时刻似然度最高的路径及其相邻路径,而那些落在窗外的路径则将被剪枝。由于模型状态不可跨越,因此,下一个活跃路径的位置,只可能是上一个活跃路径的原有位置或者滑动一格。由于中间的匹配分数相同,比较滑动窗两端的匹配分数即可决定下一个滑动窗的位置。这样可大大减小比较的运算量,提高运算速度。

由于语音信号随机性较强,束搜索的这种假设并不总符合真实情况,因此,过窄的束宽很容易导致最后识别结果的错误。以三对角高斯模型为例,语音库为10个男生的命令词。窗宽与识别率的关系如表2所示。


可以看出,当窗宽为15时,识别率基本没有下降。这个结果与候选词条的长度有关,词条的状态数越多,最优结果在搜索过程中“露出”窗外的可能性也就越大。综合束搜索对系统率和识别时间两方面的影响,选定了束宽为10的滑动窗算法作为系统的束搜索算法。

3 实验结果

实验训练集采用LDC WSJ1训练库(SI_TR_S),包括200人的连续语音,共61个小时,降采样为8kHz,16位量化。测试集为由WSJ1测试集(CDTest和HSDTest)得到的525个短句(每句包含2个单词),候选词条为535个,包括637个不同的单词发音,同样降采样为8kHz,16位量化。

表3为一阶段识别和两阶段识别的识别率、识别时间和内存占用量比较。从表3可以看出,与直接进行的一阶段识别相比,两阶段识别通过采用两阶段端点检测方法、MMIC特征选择算法、特征提取和解码同步的束搜索算法,极大地提高了识别率,减少了内存占用量和识别时间。


本文提出了一种基于定点DSP的嵌入式英语孤立词识别系统,采用两阶段识别的连续HMM模型。其中第一阶段为实时识别,第二阶段为非实时识别。通过采用新颖的两阶段端点检测方法、最小互信息改变准则特征选择算法、特征提取和解码同步的束搜索算法,进一步提高了识别性能、减少了内存占用量和计算复杂度。
关键字:实时英语语音  识别系统 引用地址:嵌入式实时英语语音识别系统的设计和实现

上一篇:基于单片机设计康复仪的方法及其应用
下一篇:USB接口的数字摄像系统设计

推荐阅读最新更新时间:2024-03-16 13:58

运用单片机指纹识别系统电路设计
   指纹识别系统电路    工作原理: 当指纹传感器收到指纹信息,将通过串口给单片机发送命令,单片机同意并接收相应的信息,指纹传感器采集的指纹转换成RGB格式,并且数据传输到单片机,单片机通过存储在EEPROM中的固化程序执行大量的模式识别和图像处理相关计算,当用户的指纹被确认,单片机将命令执行机构动作,开关开。    硬件特性: 80C51单片机是在8051的基础上发展起来的,8051单片机与80C51单片机从外形看是完全一样的,其指令系统、引脚信号、总线等完全一致(完全兼容),主要差别就在于芯片的制造工艺上。80C51的制造工艺是在8051基础上进行了改进。 8051系列单片机采用的是HMOS工艺:高速度、高密度; 80
[单片机]
运用单片机指纹<font color='red'>识别系统</font>电路设计
基于DSP语音识别系统的硬件设计
摘要:语音识别是当前研究热点之一,应用十分广泛。系统浮点运算量很大,所以采用浮点型DSP。文章主要研究以DSP处理器为核心的硬件系统,包括电源电路,复位电路,时钟电路,JTAG接口电路,外部存储电路和语音处理电路等,并对每个电路模块进行详细的阐述。该方案已经可以作为模板电路实现。 关键词:DSP;TMS320C6713;硬件设计;语音识别 0 引言 随着超大规模集成电路和数字信号处理(DSP)的快速发展,DSP应用越来越广泛,涉及到各个领域如语音处理,图像处理等方面。现在语音识别中许多复杂算法已经能够在硬件上实现。最近十多年来,己研发出不少应用于不同领域的便携式语音识别系统。DSP处理速度快、灵活、精确,满足了对信号快速、
[嵌入式]
基于DSP<font color='red'>语音</font><font color='red'>识别系统</font>的硬件设计
Genetec推出新车牌识别系统 读取准确性提升/获取车辆额外特征
据外媒报道,加拿大Genetec公司宣布,其下一代移动车牌识别系统AutoVu SharpZ3即将上市。Genetec是一家基于云计算统一安全、公共安全、交通运营和商业智能软件系统开发商,总部位于蒙特利尔。 (图片来源:traffictechnologytoday.com) 新型AutoVu SharpZ3自动车牌识别(ALPR/ANPR)系统的性能超越了传统车牌识别系统,在车辆分析、态势感知和准确性方面达到了新水平。该系统特别适合用于满足停车管理人员的需求,此类人员在执行任务时,会采用移动ALPR系统,而新型SharpZ3系统可帮助此类人员在停车场或城市内追踪车辆类型(汽车、货车、卡车、公交车、自行车),并分析随着时间
[汽车电子]
Genetec推出新车牌<font color='red'>识别系统</font> 读取准确性提升/获取车辆额外特征
基于声表面波的某无线远距识别系统的实现
摘要:介绍了一种基于声表面波器件的无线远距识别系统的实现。对声表面波技术及声表面波传感器作了简要的介绍,针对某无线远距识别系统作了详细的分析,并给出了测试结果。 关键词:声表面波 扩展器 压缩器 线性调频 1 SAW技术简介 声表面波SAW(Surface Acoustic Wave)是英国物理学家瑞利在19世纪80年代研究地震波的过程中偶尔发现的一种能量集中于地表面传播的声波。1965年,美国的怀特和沃尔特默在应用物理杂志上发表题为“一种新型声表面波声——电转化器”的论文,取得了声表面波技术的关键性突破,能在压电材料表面激励声表面波的金属叉指换能器IDT(Inter-digital Transducer)的发明,大大加速
[应用]
NEC展示单眼摄像头立体识别系统
    NEC在“第20届ITS全球会议东京2013”(东京有明国际会展中心,2013年10月14~18日)上,参考展出了使用单眼摄像头的立体物识别系统。这是一项尚在研究所进行开发的技术,可以识别6类物体,并推测距离及其体态。解说员介绍说,“可以获得与复眼摄像头同等的距离精度”。     单眼摄像头之所以能测量距离和体态,是因为自己的车或对方车是在开动着的。因而可以由拍摄帧间的差分推断出距离等。物体识别方面,可以识别卡车等大型车、单厢车等中型车和普通乘用车三种,加上步行者、自行车和摩托车。解说员称,“识别是通过物体的机械学习而实现的”。从正在进行影像识别的视频来看,该系统相当准确地识别出了物体。    
[汽车电子]
基于TMS320C6713的语音识别系统设计
0 引言     语音识别是一种最为理想的人机通信方式。随着计算机技术的进步,语音识别技术已经逐渐应用于控制、通信、消费等行业。但是,语音识别系统在商品化的进程中还存在着诸如识别速度、系统鲁棒性以及更高的识别率等具体问题。如何提高语音识别系统的这些性能,使系统更快、更稳定地工作是目前研究的重点。本文正是基于这种思想,通过选用德州仪器公司带浮点功能的DSP芯片TMS320C6713(主频为200 MHz)作为语音信号处理的核心处理器,同时结合MSP430单片机作为外围控制器共同构建硬件系统,以美尔频率倒谱系数作为语音信号特征参数,结合动态时间规整孤立词识别算法进行模式匹配,设计了一种具有良好实时性和高识别率及鲁棒性的语音识别系统。 1
[嵌入式]
驾驶员培训IC卡指纹识别系统
公司在原有的智能卡优势的基础上,针对目前汽车消费市场的热点,推出了一套可大规模推广应用 的系统产品——“驾驶员培训IC卡指纹识别系统”。 系统概述 通过指纹IC卡系统建立驾校和考员信息库,考员经过指纹IC卡识别身份,才能进行学车、桩考、路考等,同时可扩展为电子驾照功能。 系统特点 1.采用先进的指纹识别核心技术,功能先进而强大,可实现严格教学管理、杜绝考生作弊行为; 2.建立指纹库和考生信息库,为每个学员建立学习档案,提供在交通肇事案件中确认身份的依据,为打击犯罪发挥作用; 3.全市驾校联网管理,综合数据库, 实行统一记录学时。使每个学员可在一处报名
[网络通信]
基于ARM9处理器的嵌入式指纹识别系统设计
0 引言 指纹鉴定是人身识别最重要的手段之一, 指纹自动识别系统给指纹鉴定工作提供了一个新的平台, 并使指纹自动识别系统在身份认证方面具有更广阔的前景。目前, 自动指纹识别系统一般都是联机的, 大多数系统都选用指纹传感器来采集, 并以计算机(PC) 作为主机来处理, 从而对指纹进行匹配。而本文提出的基于ARM9的嵌入式指纹识别系统则是把采集和处理集于一身的独立系统, 因而可以做得很小, 比较适合用于高档汽车门、防盗门以及公*勤系统等场合。嵌入式系统是指以应用为中心, 以计算机技术为基础, 软硬件可裁剪, 其应用系统对功能、可靠性、成本、体积和功耗等要求都比较严格的专用计算机系统。本文选用SAMSUNG的S3C2440A作为嵌入式指
[单片机]
基于ARM9处理器的嵌入式指纹<font color='red'>识别系统</font>设计
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved