| 小词表实时语音识别系统的定点DSP实现 |
|
| 7di.com.cn 7di.com.cn 2006-9-15 10:34:32 |
|
小词表实时语音识别系统的定点DSP实现 曾日波 (华中科技大学控制科学与工程系 湖北 武汉 430074)
摘 要:主要介绍一种基于定点数字信号处理器DSP芯片(TMS320VC5402)的小词表实时语音识别系统。该系统体积小,成本低,可扩展性好,方便应用于许多特定场合,如:门禁控制系统等,对于100词以内的特定人语音,识别的准确率超过95%。 关键词:语音识别;(DSP)定点运算;线性预测编码(LPC);ADPCM算法;动态时间归整(DTW)Fixed Point DSP Application of A Small Glossary Real Time Speech Recognition System ZENG Ri-bo (Department of Control Science and Engineering,Huazhong University of Science&Technology,Wuhan,430074,China)
Abstract:This article introduces a small glossary real time speech recognition system which is based on the fixed point digital signal processor (DSP) chip.This system has small scale,low cost and high capability of expanding.It is very convenient for some special situations.Such as the gating system,with in 100 glossaries of the specific person′s pronunciation,the recognition accuracy of this system is over 95%.
Keywords:speech recognize;fixed point arithmetic(DSP);linear predictive coding (LPC);adaptive differential pulse code modulation(ADPCM);dynamic time warping (DTW)
1 引言 语音识别技术的研究与应用已有相当长的时间了,语音识别技术关系到多学科的研究领域,不同领域上的研究成果都对语音识别的发展做出了贡献。由于不同的说话人、不同的说话速度、不同的说话内容以及不同的环境条件等都使机器识别语音产生某种程度不同的困难。这是由语音信号本身的特点所造成的。这些特点包括多变性、,动态性、瞬时性和连续性等。一个完整的语音识别系统可大致分为4个部分: (1)语音特征提取 其目的是从语音波形中提取出随时间变化的语音特征序列。 (2)建立声学模型 通常将获取的语音特征通过学习算法产生。 (3)模板匹配(识别算法) 在识别时将输入的语音特征同声学模型进行比较,得到最佳的识别结果。 (4)语言模型与语言处理 由识别语音命令构成的语法网络,可以进行语法、语义分析。对小词表语音识别系统,往往不需要语言处理部分。 通常在以计算机为语音识别处理平台的系统中,一般采用隐含马可夫(Markov)模型(HMM)进行语音识别,该算法由于允许模板匹配中时间不定长,所以系统的适应性强,且识别阶段计算量也不大,但是需要进行大量的前期训练工作,需要系统具有较高的运算速度和庞大的系统存储资源。这对于那些需要识别的语音命令不多的特定应用场合,无疑是很不经济的,使用起来也不方便。利用廉价的定点数字信号处理器(DSP)芯片构成的小词表实时语音识别模块便能很好地解决这一矛盾。下面分别介绍该系统的硬件和软件结构。 2 系统的硬件构成 系统核心硬件构成框图如图1所示。 2.1 DSP芯片的选择 合理选择DSP芯片对于本应用系统的设计是非常重要的。只有选定了DSP芯片才能进一步设计外围电路和系统的其他电路。DSP芯片的选择应根据实际的应用系统需要而确定。 TMS320VC5402[1]是TI公司生产的从属于TMS320C54x系列的一个工作灵活、高速、具有较高性价比、低功耗的16b定点通用DSP芯片。其主要特点包括:采用改进的哈佛结构,1条程序总线(PB),3条数据总线(CB,DB,EB)和4条地址总线(PAB,CAB,DAB,EAB),带有专用硬件逻辑CPU(40b算术逻辑单元(ALU),包括一个40b桶形移位器和2个40b累加器;一个17×17乘法器和一个40b专用加法器,允许16b带或不带符号的乘法),片内存储器(8个辅助寄存器及一个软件栈),片内外专用的指令集,允许使用业界最先进的定点DSPC语言编译器。TMS320VC5402含4 kB的片内ROM和16kB的双存取 RAM,1个HPI(HostPortInterface)接口,2个多通道缓冲单口MCBSP(Multi-Channel Buffered Serial Port),单周期指令执行时间10ns,带有符合IEEE1149.1标准的JTAG边界扫描仿真逻辑。定义线性预测模型为: 为输入信号的Z变换)则其中a1~am即为系统所求的特征矢量。该系统为每样本区间信号计算出12阶LPCC系数,加上短时能量和作为以后的识别参数。以上算法是用TMS320VC5402的汇编语言实现的定点算法,可以在560μs内完成,满足系统实时性的需求。 3.4 语音的压缩编码与解码 本系统对语音信号采用8 kHz采样频率,精度为16b,数据传输率为128 kb/s的方式处理。因而采用ADPCM算法[4]实现对语音的编码和解码非常方便,IMA-ADPCM(ADPCM,Adaptive DifferentialPulse Code Modulation),是一种针对16b声音波形数据的一种有损压缩算法,他将声音流中每次采样的16b数据以4b存储,所以压缩比为1∶4。而压缩/解压缩算法非常的简单,所以是一种低空间消耗,高质量声音获得的好途径。将采集到的语音样本压缩到32 kb/s,可以保持清晰的音质,同时大大降低存储需求。 3.5 参数模板的管理 经上述处理后的语音参数和ADPCM编码保存在芯片AT29C020当中,芯片AT29C020为ATM公司生产的一款2-megabit 256k×8b的Flash Memory,是非易失存储器。这样做的目的是为了使系统能脱离PC机独立工作。为了合理利用这有限的存储资源,同时实现快速的模板搜索,采用以扇区为单位的管理系统,每扇区的格式固定,采用了顺序表的方法进行管理。 3.6 模式识别动态时间归整(DTW)[5] 本系统采用动态时间归整(DTW)算法完成模板的匹配。动态时间归整(DTW)算法和隐含马可夫模型(HMM)是目前应用的比较广泛的两种模式识别算法。DTW算法是一种模板匹配的算法,在孤立词语音识别中,他是最为简单有效的算法。考虑了个人说话时间上的差别,即对于同一个词,不同人在不同时刻说的时间长度上的不同做了考虑,解决了发音长短不一的匹配问题,是语音识别中出现较早,较为经典的一种算法。 设参考模板特征矢量序列为A={a1,a2,…,aj},输入语音特征矢量序列为B={b1,b2,…,bk},j≠k。DTW算法就是要寻找一个最佳的时间规整函数,使得语音输入B的时间轴k映射到参考模板A的时间轴j上总的累计失真最小。本系统的DTW算法也是用定点汇编程序实现,所以运算速度较快。 3.7 语音模板的训练 能否获得精确可靠的模板是运用DTW算法进行正确语音识别的关键。模板的好坏,直接影响系统的识别能力。系统为每个语音命令设置3个模板的预留空间,每个命令可以有3个模板参与识别。识别结果取其中的最接近者或平均值,这样可以尽量适应说话人语气语调的变化,大大提高了一次识别率。 4 结语 以本系统为基础,成功地开发了一种智能声控门禁实验系统。经过大量试验表明,该系统稳定可靠,正确识别率超过95%,系统平均响应时间小于0.5s。系统成本低,是一种实用的语音识别装置。 参考文献 [1]彭启琮.TMS320C54x实用教程[M].成都:电子科技大学出版社,2002. [2]易克初,田斌,付强.语音信号处理[M].北京:国防工业出版社,2000. [3]姚天任.数字语音处理[M].武汉:华中科技大学出版社,2002. [4]赵力.语音信号处理[M].北京:机械工业出版社, 2003. [5]Lawrence Rabiner,Biing -Hwang juang.语音识别基本原理(Fundamentals of Speech Recognition)[M].北京:清华大学出版社&Prentice Hall,1999. 现代电子技术
|
|
|
|
|