欢迎来到天天文库
浏览记录
ID:15075489
大小:50.00 KB
页数:4页
时间:2018-08-01
《基于定点dsp的实时语音命令识别模块》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、基于定点DSP的实时语音命令识别模块 本系统的目的是在廉价定点数字信号处理器(DSP)芯片上实现语音识别。在微机平台,一般采用隐含Markov模型(HMM)进行语音识别,该算法在识别阶段计算量较少,适应性强,但是需要大量的前期训练工作。由于DSP系统存储资源有限,计算速度也比较慢,大运算量的前期训练是无法在有限的DSP资源上独立完成的,因此系统采用了动态时间弯折算法(DTW),以解决模板匹配中时间不定长的问题,实现了一个特定人小词表语音识别系统。下面分别介绍该系统的硬件和软件结构。 1系统硬件 系统的电路原理如图1所示。该系统采用AnalogDecive公司(AD
2、I)的定点数字信号处理器ADSP2181为核心部件。2181指令字长24位,数据字长16位,在16.67MHz下工作,指令周期可达30ns。用AD73311编码译码器(COEDC)作语音输入输出模拟前端。AD73311是ADI公司的低成本、低功耗通用模拟前端。它具有诸多优良性能:如16位75dB的模数转换信噪比和70dB的数模转换信噪比、输入输出采样频率和增益可编程、小的转换群延时、允许8个芯片级连、工作电压范围宽(2.7~5.5V)、自身带参考电压等,在语音信号处理和有源控制方面得到了广泛的应用。AD73311通过串行口与2181相连。采用一片27C512作为程序存储器,系统复位
3、后,程序自动由EPROM中加载进入DSP的片内程序存储区运行。还有一片AT29C020作为模板和语音存储器,通过BDMA接口与2181相连。以上四个芯片组成了语音识别的核心电路。系统的译码电路由一片GAL16V8实现,复位和电源监视电路由MAX705实现,还有一片74HC574用来输出识别结果,这就构成了基本的语音识别模块。加上可选的键盘、LCD显示接口和相应的译码电路,即可构成完整的控制器。该控制器具有体积小、成本低的优点。 2系统软件 2.1语音信号的端点检测 所谓端点检测,就是从含噪声的环境中检测出说话人的语音命令。我们采用语音信号的短时能量和过零率来进行端点检测
4、。语音信号的采样频率为8kHz,每帧数据为30ms,共240个采样点,帧交迭10ms,共80个采样点。每隔10ms计算一次短时能量和过零率。短时能量用下面公式计算: 其中N为一帧语音的采样点数(240)。过零率为一帧语音信号穿越零电平的次数。短时能量描述了信号的幅度,而过零率对能量低的清音比较敏感,两者配合起来就可以准确地判断语音信号的开始和结束。 2.2语音参数的选择和计算 输入的模拟语音信号首先要通过截止频率为4kHz的抗混迭滤波器,然后由AD73311采样和量化。接下来很重要的一环就是特征参数的提取。对特征参数的要求是:(1)能有效地代表语音特征,包括声道特征和听
5、觉特征,具有很好的区分性;(2)各阶参数之间有良好的独立性;(3)特征参数要计算方便,最好有高效的计算方法,以保证语音识别的实时实现。一般选择线性预测倒谱系数(LPCC)和Mel频率倒谱系数(MFCC)作为语音识别的参数,两种参数的计算请参考文献[1]和[2]。该系统为每帧信号计算出12阶LPCC系数,加上短时能量和过零率,作为以后的识别参数。以上算法是用ADSP2181的汇编语言实现的定点算法,比纯浮点算法快得多,可以在720μs内完成,从而可以达到实时计算。 大量文献的研究表明,MFCC系数对提高识别率有一定的作用。我们也在ADSP2181上实现了MFCC系数的定点算法,但
6、是与LPCC系数相比,MFCC系数计算有两个缺点:一是计算时间长,一帧参数的计算至少需要1.25ms;二是精度难以保证。由于MFCC系数的计算需要FFT变换和对数操作,影响了计算的动态范围,要保证其在定点DSP上的运算速度,就只有牺牲参数精度。而LPCC参数的计算有递推公式,速度和精度都可以保证。在微机和DSP平台上分别进行的大量试验表明,LPCC参数已经足以满足我们的识别要求,同时采用LPCC参数,可以减少计算时间,从而降低系统功耗。 2.3语音的编码与回放 本系统采用8kHz采样频率,精度为16位,数据传输率为128kbps。采用ADPCM算法实现对语音的编码,将采集到
7、的语音样本压缩到32kbps,可以保持清晰的音质,同时大大降低存储需求。为了进一步降低码率,系统还可以采用GSM编码算法,不但合成语音质量好,而且算法比较简单,可以在ADSP2181定点DSP芯片上实时实现。它的码率为13.6kbps。GSM编码实际上是规则脉冲激励长时线性预测编码(RPE-LTP),它包括预处理、LPC分析、短时分析滤波、长时预测和规则脉冲激励序列编码等五部分。GSM算法比ADPCM相对复杂,占用DSP计算时间也长,因而功耗也相对高。 2.4参数
此文档下载收益归作者所有