基于DSP的语音识别的设计与实现

  • 格式:pdf
  • 大小:235.13 KB
  • 文档页数:2

ComputerKnowledgeandTechnology电脑知识与技术第5卷第23期(2009年8月)

本栏目责任编辑:唐一东人工智能及识别技术基于DSP的语音识别的设计与实现

张文婷

(宁波大红鹰学院,浙江宁波315175)

摘要:该系统选用了TI公司的TMS320VC5402作为处理器芯片,选择对小词汇量语音识别系统进行研究。实现小词汇量的语音识

别主要包括以下三个方面的工作:端点检测、特征提取和模式匹配。在端点检测中,通过对过零率和短时能量参数的检测来判断起

始点和结束点,去掉噪声,从而提取出语音信号数据。在特征提取中,首先对语音信号进行分帧、然后计算每帧语音信号的特征参

数,该文采用线性预测倒谱参数作为特征参数,这些特征参数组成特征矢量,从而构成语音模板。在模式匹配中,采用了动态时间归

整方法,将测试模板与参考模板进行匹配,比较两者之间的失真,得出识别判决的依据。

关键词:DSP;语音识别;DTW;LPCC;端点检测

中图分类号:TN912.34文献标识码:A文章编号:1009-3044(2009)23-6512-02

TheApplicationoftheSpeechRecognitionSystemBasedonDSP

ZHANGWen-ting

(NingboDaHong-yinginstitution,Ningbo315175,China)

Abstract:Forthis,thesystemselectedTI'sTMS320VC5402DSPtorealizethespeechrecognitionsystemofsmall-vocabulary.The

small-vocabularyphoneticrecognitionincludesthreefollowingrespects:starting&endingpointmeasuring,eigenvalueextractingandmode

matching.Starting&endingpointcanbedetectedthroughzerorateandenergyparameter.Bydetectingstartingandendingpointof

speechwaveform,wecanremovethenoisefromtheprocessofextractingthepronunciationsignaldata.Ineigenvalueextracting,thepro-

nunciationsignalisdivideintosomeframedsignals,then,calculateeveryframecharacteristicparameter,thesecharacteristicsmadeupthe

characteristicvectorandformedthepronunciationtemplate.Inmodematching,adoptingDTW(DynamicTimeWarping)method,made

testingtemplatematcheswithreferencetemplateinaperticularmode,andthen,bycampareddistortionbetweenthemtoobtainadjudge-

mentresult.

Keywords:DSP;Phoneticrecognition;DTW;LPCC;theextremepointmeasuring

1DSP语音信号处理板的硬件设计

本文选择了小词汇量、非特定人、孤立词识别方案,采用TMS320C5402DSP芯片及外围接口与存储芯片,设计了一个语音识别

系统。本系统主要由语音采集与输出模块、语音处理DSP模块、程序存储器FLASH模块、数据存储器SRAM模块、系统时序逻辑控

制CPLD模块、DSPJTAG接口模块、CPLDJTAG接口模块以及电源模块组成。

语音采集与输出模块主要由TLV320AIC23B来完成。其电路连接如图1所示,其中MIC和SPEAK分别用来接话筒和音箱,芯

片中集成了放大增益电路,工作时钟MCLK由DSP的来提供,AIC与DSP的连接部分如图

1、图2。该芯片通过与DSP的McBsp0来进行语音信号的传输。DSP的McBsp1的部分信号

(BCLKX1、BDX1、BFSX1)用来实现对AIC的初始化,这些引脚被配制成通用IO引脚,用来

对AIC进行初始化并提供所需的时钟脉冲信号。DSP的晶振选用18.432MHz的晶振,DSP

通过两个多通道带缓冲串口McBSP来对AIC进行控制。DSP的PS、DS、IS、R/W、MSTRB、

IOSTRB控制引脚用来实现程序存储器、数据存储器和IO空间的扩展。

程序存储器FLASH模块选用了SST39VF400B,工作电压为2.7V~3.6V,存储容量

256KM。FLASH和DSP连接时,只需将对应的地址线A0~A17相连、对应的数据线D0~D15

相连,控制线只有三条,即片选控制引脚CE、输出控制引脚、写入控制引脚。这些控制信号

是由CPLD对DSP的存储器控制信号进行译码来控制的。

数据存储器SRAM选SRAM。由于5402DSP片内ram仅有16K,需要扩展。SRAM的扩

展时,将数据线和地址线分别与DSP连接,三条控制信号由CDLD来统一控制。

这里采用CPLD来实现DSP对FLASH与SRAM进行正常读写的逻辑时序控制。CPLD

的供电电压为3.3V。CPLD的与DSP的连接图以及CPLD的JTAG电路如图3和图4。

DSP的一些控制信号经过CPLD后输出了RAM和FLASH的片选、读信号和写信号。

电源部分设计如图5所示,芯片输入电压为+5V,输出两路电压是3.3V和1.8V。

2DSP语音信号处理板的软件设计

信号采集应选用优质电容MIC作为输入音源,以避免信号失真。声音通过麦克风输入

到语音信号处理板,通过TLV320AIC23B的AD转换后变成数字信号,经过DSP处理后通

过DA转换输出声音,其后对每次输出的声音进行监测,并对采集的波形进行反复对比、分

收稿日期:2009-04-20

作者简介:张文婷(1981-),女(回族),助教,硕士学位,主要研究方向为计算机网络技术。图1AIC连接图

图2DSP连接图ISSN1009-3044ComputerKnowledgeandTechnology电脑知识与技术Vol.5,No.23,August2009,pp.6512-6513E-mail:*************.cn

http://www.dnzs.net.cn

Tel:+86-551-56909635690964

6512人工智能及识别技术第5卷第23期(2009年8月)

本栏目责任编辑:唐一东析,以提取最佳的波形样本。程序设计部分系统初始化流程如图6所示。

系统初始化程序主要是对堆栈和状态寄存器进行设定,然后通过配置CLKMD来设定PLL,使

DSP工作在较高的系统时钟上。通过设置等待状态寄存器SWWSR和分区转换控制寄存器BSCR,使

得在对外部总线进行控制时自动插入设定好的等待周期。通过设置处理器工作模式状态寄存器

PMST来设定DSP的工作模式,最后设定中断屏蔽寄存器来屏蔽所有中断。在AIC的初始化中,通过

对串行接口接收控制寄存器SPCR1、SPCR2和引脚控制器PCR进行设置,来设定TLV320AIC23B工

作时的电源状态、AD转换的采样速率、输入输出信号增益、输出声音的高低等。然后要对串口

McBsp0进行初始化,通过配置SPCR1、SPCR2、PCR、RCR1、RCR2、XCR1、XCR2寄存器的值来设定

串口接收数据的字长、串口运行的模式、以及帧同步信号的电平高低设置等。当允许串口中断后,

AIC就可以进入了正常的工作状态。为了保证信号采集的实时性,对语音信号的采集采取了中断的

方式。

中断服务程序如图7所示,中断程序的主要功能是对经过A/D采样后的信号进行存储,然后经

过D/A转换后输出。

3语音技术信号的端点检测

输入到硬件平台的语音信号前后经常含有大量静音或噪声。出于节省硬件资源的考虑,需要引

人端点检测算法。

这里系统的端点检测采用短时平均幅度和短时过零率相结合的办法,但起始点和终止点判决方

法不同。在判断语音的起始点时,只要有短时过零率或短时平均幅度有一个超出判决门限时,便开始

保存信号,然后确定随后的几帧数据是否仍满足判决门限,这时才可以确定刚采集进来的数据的确

是有效的,否则认为是噪声引起的,将重新进行起点的判定。当确定了语音的起始点后,一边保存数

据,一边对语音信号结束点进行判定。

语音信号的结束点采取过零率和幅度相结合的办法,当连续三帧的语音信号短时平均幅度小于

等于7倍的平均噪声幅度、且短时平均过零率小于等于19时,就认为语音信号结束。此时语音信号

的结束点要把最后用于判决的三帧信号去掉。

以上方法对孤立词的起止点判定达到了很好的效果,经多次反复试验,其准确率在98%以上。如

果要对中间有停顿的词语进行判定时,需要考虑词语中间可能出现的较长时间静音状态,通过判定

一个较长的静音时间后是否仍然有语音信号,就可确定语音信号中间是否有静音,若仍然有语音信

号,则继续对语音信号采集;若没有,则只需保留静音之前的语音信号即可,这样就可实现对较复杂

的带有停顿的单词的端点检测。

4语音参数的选择和计算

本文采用线性预测倒谱系数(LPCC)作为语音的特征参数。线性预测倒谱参数(LPCC)是线性预

测系数(LPC)在倒谱域中的表示。本文确定采用自相关法来计算线性预测系数LPC,根据线性预测

系数求出LPCC。

图8中AD转换后的语音信号是指经过端点检测后所保存下来的有效的数字语音信号序列。由于语音信号的高频部分的能量

比较小,其幅度较小,容易受到干扰的影响。所以需要对高频部分进行加强。这里采用软件来实现,其预加重数字滤波器的传递函数

为H(Z)=1-0.94Z-1。由于语音信号的频率主要集中在4k以下,所以这里采用了截止频率为4khz的数字滤波器,选用汉明窗滤波器

进行滤波。之后对每帧语音信号进行自相关的计算,LPC的阶数确定为12,最后确定LPCC参数。每帧语音信号都要计算出其LPCC

参数,这些LPCC参数就构成了一个模板。

5语音识别算法的实现

本设计采用了DTW算法。将语音信号的每一帧信号的特征参数提取出来,就转化成了一组特征向量。语音识别就是要将这个

特征向量同模式库中已存的语音特征向量(参考模式)进行模式匹配,寻找距离最短的模式。由于读入的语音信号和参考模式语音

长短不同,因此需要动态地计算两个长度不同的模之间的相似程度,或者叫做失真距离。通过计算测试模板和参考模板之间的欧氏

距离空间的大小,找出距离最小的参考模板,这样就找到了与测试语音相对应的模型,从而达到语音识别的目的。然后根据实际情

况,给出相应的响应。

参考文献:

[1]潘松,黄继业.EDA技术实用教程[M].科学出版社,2002:160-192.

[2]易克初.语音信号处理[M].北京:国防工业出版社,2000:133-135.

[3]胡航.语音参数分析和提取的研究[R].华为科技基金项目研究报告,哈尔滨工业大学,2000.3.