孤立词语音识别系统的DSP实现
引 言
在孤立词语音识别中,最为简单有效的方法是采用动态时间规整(Dynamic Time Warping,DTW)算法,该算法解决了发音长短不一的模板匹配问题,是语音识别中出现最早、较为经典的一种算法。用于孤立词识别,该算法较现在比较流行的HMM算法在相同的环境条件下,识别效果相差不大,但HMM算法要复杂的多,这主要体现在HMM算法在训练阶段需要提供大量的语音数据,通过反复计算才能得到模型参数,而DTW算法的训练中几乎不需要额外的计算。所以在孤立词语音识别中,DTW算法仍得到广泛的应用。本系统就采用了该算法。
系统概述
语音识别系统的典型实现方案如图1所示。输入的模拟语音信号首先要进行预处理,包括预滤波、采样和量化、加窗、断点检测、预加重等。语音信号经过预处理后,接下来重要的一环就是特征参数提取,其目的是从语音波形中提取出随时间变化的语音特征序列。然后建立声学模型,在识别的时候将输入的语音特征同声学模型进行比较,得到最佳的识别结果。
硬件构成
系统构成
这里采用DSP芯片为核心(图2),系统包括直接双访问快速SRAM、一路AlDC/一路DAC及相应的模拟信号放大器和抗混叠滤波器。外部只需扩展FLASH存储器、电源模块等少量电路即可构成完整系统应用。
系统主要功能模块构成
语音处理模块采用TI TMS320VC5402,其主要特点包括:采用改进的哈佛结构,一条程序总线(PB),三条数据总线(CB,DB,EB)和四条地址总线(PAB,CAB,DAB,EAB),带有专用硬件逻辑CPU(40位算术逻辑单元(ALU),包括1个40位桶形移位器和二个40位累加器;一个17×17乘法器和一个40位专用加法器,允许16位带或不带符号的乘法),片内存储器(八个辅助寄存器及一个软件栈),片内外专用的指令集,允许使用业界最先进的定点DSP C语言编译器。TMS320VC5402含4 KB的片内ROM和16 KB的双存取RAM,一个HPI(HostPortInterface)接口,二个多通道缓冲单口MCBSP(Multi-Channel Buffered SerialPort),单周期指令执行时间10 ns,带有符合IEEE1149.1标准的JTAG边界扫描仿真逻辑。
语音输入、输出的模拟前端采用TI公司的TLC320AD50C,它是一款集成ADC和DAC于一体的模拟接口电路,并且与DSP接口简单,性能高、功耗低,已成为当前语音处理的主流产品。16位数据结构,音频采样频率为2~22.05 kHz,内含抗混叠滤波器和重构滤波器的模拟接口芯片,还有一个能与许多DSP芯片相连的同步串行通信接口。
片内还包括一个定时器(调整采样率和帧同步延时)和控制器(调整编程放大增益、锁相环PLL、主从模式)。TLCC320AD50C与TMS320VC5402的硬件连接,如图3所示。
语音识别算法实现
语音信号的端点检测
语音的端点检测是语音识别中最基本的模块,在嵌入式语音识别系统中更是占有非常重要的地位:一方面端点检测的结果不准确,系统的识别性能就得不到保证;另一方面如果端点检测的结果过于放松,虽然语音部分被很好地包含在处理的信号中,但是增加过多的静音则会增加系统的运算量,同时对识别性能也有负面影响。因此为能量和过零率两个参数分别设定两个门限,一个是比较低的门限,数值比较小,对信号的变化比较敏感,很容易就被超过。另一个是比较高的门限,数值比较大,信号必须达到一定的强度,该门限才可能被超过:低门限被超过未必就是语音的开始,有可能是时间很短的噪声引起的。高门限被超过,则基本确信是由于语音信号引起的。
整个语音信号的端点检测可以分为四段:静音、过渡段、语音段、结束。程序中使用一个变量status来表示当前所处的状态。在静音段,如果能量或过零率超越了低门限,就应该开始标记起始点,进入过渡段。在过渡段中,由于参数的数值比较小,不能确信是否处于真正的语音段,因此只要两个参数的数值都回落到低门限以下,就将当前状态恢复到静音状态。而如果在过渡段中两个参数中任意一个超过了高门限,就可以确信进入语音段了。一些突发性的噪声可以引发短时能量或过零率的数值很高,但是往往不能维持足够长的时间,这些可以通过设定最短时间门限来判别。当前状态处于语音段时,如果两个参数的数值降低到低门限以下,而且总的计时长度小于最短时间门限,则认为这是一段噪音,继续扫描以后的语音数据。否则就标记好结束端点,并返回。
语音特征参数的提取
近年来,一种能够比较充分利用人耳这种特殊的感知特新的参数得到了广泛的应用,这就是Mel尺度倒谱参数(Mel-scaled Cepstrum Coefficients,MFCC)。
参数是按帧计算的。首先要通过FFT得到该帧信号的功率谱,转换为Mel频率下的功率谱。这需要
- 孤立词语音识别系统的实现(12-20)
- 基于TMS320VC5509A的语音识别与控制系统(06-17)
- 基于DSP的声控电子记事本的设计与实现(09-22)
- 语音识别及其定点DSP实现(06-14)
- 说话人识别算法的定点DSP实现(03-18)
- 基于ATK的实时语音识别系统在家庭监护机器人中的应用实现(04-28)