当前位置:首页 > 模拟 > 模拟
[导读]摘要:论文给出一种基于嵌入式系统的语音口令识别系统的设计方案,该系统的硬件电路由嵌入式微处理器和音频处理等主要芯片组成,采用Windows CE操作系统,语音口令识别算法为连续隐马尔可夫模型。实验结果表明,随着

摘要:论文给出一种基于嵌入式系统的语音口令识别系统的设计方案,该系统的硬件电路由嵌入式微处理器和音频处理等主要芯片组成,采用Windows CE操作系统,语音口令识别算法为连续隐马尔可夫模型。实验结果表明,随着嵌入式微处理器性能的不断提高和价格的不断下降,对运算量要求比较高的语音口令识别技术就可以通过嵌入式系统来实现,并且应用到许多需要使用口令控制的便携式设备中。
关键词:语音口令识别;嵌入式系统;隐马尔可夫模型;Windows CE

0 引言
    随着微电子技术的迅速发展,嵌入式系统在一些特定的专用设备上得到了广泛应用,通常这些设备的硬件资源(如处理器的运行速度、存储器的容量等)非常有限,并且对成本也有苛刻的要求,有时对实时响应要求也比较高,在数字信号处理芯片上已经实现了语音口令识别系统或语音口令识别系统的部分功能。语音口令识别技术与嵌入式系统的有效结合能够显示出其优势作用,但是也有很多有待进一步提高和改进之处,语音识别技术对运算速度和内存容量的要求都比较高,需要采用一些快速算法提高实时处理的性能。嵌入式微处理器的价格在不断下降,但是其性能却在不断上升,嵌入式系统目前已经广泛地应用于运算量比较大的系统和设备中,而其体积小和低功耗的特点使其能够发挥出更大的优势。
    论文给出一种基于嵌入式系统的语音口令识别系统的设计方案,硬件系统的核心芯片是嵌入式微处理器,语音口令识别算法采用连续隐马尔可夫模型,现有的非特定人语音口令识别系统中,多采用状态输出具有连续概率分布的连续隐马尔可夫模型CDHMM(Continuous Density
Hidden Markov Model)。操作系统则是采用的目前广泛使用的WindowsCE 5.O。
    硬件电路的核心芯片是三星公司的嵌入式微处理器S3C2440AL,主频为400MHz。该微处理器具有低功耗、高性能等特点,广泛应用于便携式设备中。基于嵌入式系统的语音口令识别系统需要有接收语音信号的输入芯片配合麦克风实现将模拟语音信号转换成数字信号的功能,然
后由嵌入式微处理器对输入的语音口令信号进行处理。完成语音口令信号输入功能的芯片采用的是PHILIPS公司的低功耗芯片UDA1341TS。操作系统采用的是Windows CE5.0。Windows CE 5.0是一个32位操作系统,具有模块化、结构化,能够支持超过1000个公共Microsoft Win32应用程序接口,并且与处理器无关等特点,为各种嵌入式系统和产品设计提供了一种可裁剪的、高效的、可升级的操作系统。

1 系统设计
1.1 硬件电路的设计
    论文给出的语音口令识别系统的硬件电路主要由嵌入式微处理器、存储器和语音口令输入芯片组成。核心芯片是嵌入式微处理器Samsung 32位S3C2440AL,其主频为400MHz,最高频率533MHz。64MB SDRAM,64MB的NAND FLASH存储器,用来存储操作系统文件等,2MB的NOR FLASH存储,为安装BIOS使用。S3C2440AL控制PHILIPS公司的UDA 1341TS完成输入语音口令信号的功能。该音频处理芯片由AD/DA转换、控制逻辑电路、可编程增益放大器(PGA)和数字自动增益控制器(AGC)以及数字信号处理器等部分组成,能进行数字语音处理。
    对于一个基于嵌入式系统的语音口令识别系统,主要有以下几个要求:
    (1)完成语音口令识别功能时,需要系统对人所发出的语音口令做出快速的响应,然后给出相应的判断结果。
    (2)自动获得语音信号。语音口令识别系统一直处于随时接受语音口令的工作状态,无需人工操作就能将人的语音命令与环境噪声分离出来,舍弃静音信号和环境噪声信号部分,仅仅对有效的语音口令信号做处理和识别。
    (3)需要有足够的存储器容量存储操作系统文件和训练好的语音口令模型库以及存储大量数据的数据缓冲区。
    论文给出的语音口令识别系统选择高性价比的嵌入式微处理器S3C2440AL和64MB随机存储器和64MB的闪存来满足计算速度和数据缓存的要求。
1.2 软件程序的设计
    选择Windows CE 5.0为语音口令识别系统的操作系统,Windows CE 5.0是一个多任务操作系统。开发工具主要有Platform Builder 5.0和EVC++4.0。Platform Builder5.0用于定制和开发内核,而EVC++4.0则用来编写基于操作系统的应用层程序,也就是算法执行程序与图形化界面,而图形化的界面使用MFC编写。
    由于语音口令识别系统算法的运算量比较大,所以为了能够加快运算速度,首先对Windows CE 5.0操作系统进行配置,需要将相应的板级支持包BSP(Board SupportPackage)导入到Platform Builder 5.O,裁剪掉一些使用不到的资源,保留一些需要的资源,驱动的配置正确后,将配置好的操作系统内核装入到嵌入式平台中,然后进行应用程序的开发。
    语音口令识别系统分为训练和识别两个过程。训练时,语音口令信号首先经过预处理,然后提取语音特征参数,采用MFCC(Mel-Frequen-cy Ceptral Coefficients)参数,然后建立此口令的连续隐马尔可夫(CDHMM)模型,把所有经过训练的语音口令的模型放在模型库中。
    在识别阶段,与训练时提取语音口令信号的特征参数一样,也要提取MFCC特征参数,然后与保存在语音口令模型库中的每一条语音口令模型相匹配,根据概率评分确定输出识别结果。语音口令识别系统的程序流程图如图1所示。


    当语音口令识别系统采集到命令语音信号后,要提取参数,做出比较判断,调用相应语音口令识别算法。对每条语音口令信号,先切除静音,进行预加重处理,然后通过Hamming窗分帧,帧长和帧移分别为20ms和10ms,对每一帧语音信号提取16阶MFCC和△MFCC一共32维参数作为特征矢量。
    语音口令识别软件系统由许多不同的语音信号预处理、识别算法和其它子程序组成,为了实现参数的传递,每个程序执行后的参数以文件的形式输出,而这些程序的调用先后顺序和参数的输入输出文件的位置等都由一个主程序管理。
    在Windows CE中,编写可执行程序,需要调用应用程序编程接口API(Application Programming Interface)函数,并且要设定程序入口点。调用过程为:
#include<windows.h>
int WINAPI_tmain(int argc,TCHAR* argv[])
{
……
}
    无论是进行语音口令训练还是语音口令识别操作,都需要对语音口令信号的采集和实时处理程序,所以对语音口令信号的采集和实时处理程序是语音口令识别系统软件中的重要部分之一。对于语音音频接口的管理是通过Windows CE 5.0里的API函数完成的,对语音口令信号的采集和实时处理程序流程图如图2所示。


    主程序在配置好初始化参数后,建立一个子线程,建立子线程有利于将静音检测的复杂运算过程和主程序的音频数据采集过程分开进行,以确保在静音检测时不会丢掉音频数据。与此同时,主程序开始采集数据,并存入到缓冲区。当预先设定好的缓冲区内的数据采集满
后,会将所采集的数据交给子线程,子线程做静音检测判断。主程序会依然继续重新采集新的音频数据。对于子线程,子线程的任务是等待主程序发出命令,然后对数据做处理。如果检测到有语音口令的开始,会继续采集数据,得到完整命令语音口令信号,提取相应的特征参数。
    具体程序中有如下几个主要过程:
    (1)初始化参数设置:
    (a).
FuncReturn=waveInOpen(&(Record_Buffer_Manager.hWaveIn),WAVE_MAPPER,&wFormat,(LONG)(RecordBufferFillProc),(DWORD)this, CALLBACK_FUNCTION);//首先要调用API函数打开音频设备接口,并且设置相应的回调(CALLBACK)函数(回调函数是操作系统在每次缓冲区存满后会自动访问的一个特殊函数)
    (b).
Thread_process=AfxBeginThread((AFX_THREADPROC)RecordThreadProc, (LPVOID)this,THREAD_PRIORITY_NORMAL,0,O,0);//要为其单独建立一个线程,为了实现静音检测,在混杂着环境噪声的前提下,找出语音口令信号。
    (c).
FuncReturn=waveInStart(Record_Buffer_Managcr.hWaveln);//打开音频数据流,开始录音。(缓冲区存满后,系统会自动访问回调函数)
    (2)主程序与子线程通信
SetEvent(pRecord->hRecordEvent);//发出信号,使得子线程函数得到命令,对采集到的音频流进行静音的检测判断。
    (3)在子线程内接收消息作出反应
WaitForSingleObject(pRecrd->hRecordEvent,INFINTTE);ResetEvent(pRecord->hRecordEvent);//与回调函数的信号发出程序对应,接受信号,并重新设定状态,等待下一次信号。
……
pRecord->ProcessData((SAMPLE TYPE *)pRecord->pLeftData,……);//将得到的数据段进行处理,也就是真正执行静音检测的部分。
    (4)得到完整语音口令信号后提取特征参数。

2 结束语
    论文建立了一种基于Windows CE的语音口令识别系统,并且对上升、下降等14条口令进行测试。实验结果表明,本语音口令识别系统达到了实时的要求,可以广泛应用于便携式设备中。
 

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

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭