语音识别实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
语音识别实验报告
篇一:语音识别报告
“启动”的时域波形
1、语音预加重:
由于语音信号在高频部分衰减,在进行频谱分析时,频率越高,所占的成分越小,进行语音预加重,可以提升语音高频部分,使频谱变得平坦,以方便进行频谱的分析和处理。
通常的措施是采用数字滤波器进行预加重,传递函数是:
H(z)?1??z?1,其中?一般去0.92-0.98之间,所以在计算的时候取0.9375。
预加重后的波形
2、分帧加窗
语音信号具有较强的时变特性,其特性是随时间变化的,但是语音的形成过程与发音器官的运动有关,这种物理运动比起声音振动的速度十分缓慢,在较短的时间内,语音信号的特征可以被认为是保持不变的,通常对语音处理是通过截取语音中的一段进行处理的,并且短段之间彼此经常有一些叠加,这一段语音成为一帧语音,语音段的长度称为帧长,对每一帧处理的结果可用一组数来表示。
一般取帧长为10—30ms。
采样频率是8000Hz,所以取的帧长是256,帧移是178。
分帧之后加汉明窗。
3、端点检测
端点检测从背景噪声中找出语音的开始和终止点。
短时能量就是每帧语音信号振幅的平方和。
En??[s(m)];
m?0N?1
短时能量曲线
短时过零率是每帧内信号通过零点的次数,是信号采样点符号的变化次数。
1N?1
Zn??sgn[x(m)]?sgn[x(m?1)];
2m?0
“启动”的过零率曲线
在实验室的安静的环境下,依靠短时能量和短时过零率就可进行语音信号的起止点判断。
当背景噪声较小时,没有语音信号的噪声能量很小,而语音信号的短时能量增大到了一定数值,可以区分语音信号的开始点和终止点。
当背景噪声较大时,可以用短时平均过零率和短时能量结合来判断。
基于能量一过零率的端点检测一般使用两级判决法,在开始进行端点检测之前,首先为短时能量和过零率分别确定两个门限。
整个语音信号的端点检测可以分为四段:静音、过渡音、语音段、结束时的静音段,
(1)如果能量或过零率超越了低门限,就应该开始标记起点,进入过渡段。
在过渡段中,由于参数的数值比较小,
不能确信是否处于真正的语音段,因此只要两个参数的数值都回落到低门限以下,就将当前状态恢复到静音状态。
而如果在过渡段中两个参数中的任一个超过了高门限,就可以确信进入语音段了,并标记起始点。
(2)如果当前状态之前处于语音段,而此时两个参数的数值降低到底门限以下,并且持续时间大于设定的最长时间门限,那么就认为语音结束了,返回到参数值降低到底门限以下的时刻,标记结束点。
端点检测波形
4、特征提取
检测到语音的起点后就可以开始对检测出来的语音信号段中抽取语音识别所需的信号特征,语音特征参数是分帧提取的,每帧特征参数一般构成一个矢量,因此语音特征量是一个矢量序列。
语音信号中提取出来的矢量序列经过数据压缩后便成为语音的模板。
目前,有效的特征参数有线形预测编码(LPC)系数,线形预测编码倒谱(LPCC)系数和Mel频率倒谱系数(MFCC),其中比较常用的是MFCC。
MFCC参数:
人耳对不同频率的声波有不同的听觉灵敏度,因此从低频到高频这一段频带内按临界带宽的大小由密到稀安排一组带通滤波器。
对输入信号进行滤波,将每个带通滤波器输
出的信号的量作为信号的基本特征,对此特征进行进一步处理后就可以作为语音识别系统的输入特征。
MFCC参数也是按帧计算的,计算通常采用如下的流程:
(1)首先初始化Mel三角滤波器组,取滤波器的个数是24个,其中心频率依次为28Hz、89Hz、154Hz、224Hz、300Hz、383Hz、472Hz、569Hz、674Hz、787Hz、910Hz、1043Hz、1187Hz、1343Hz、1512Hz、1694Hz、1892Hz、2106Hz、2338Hz、2589Hz、3154Hz、3472Hz、3817Hz。
(2)首先对每一帧序列进行离散FFT变换,取模的平方得到离散功率谱。
(3)计算功率谱通过24个滤波器后所得的功率值,得到24个参数Pm,对Pm去取对数得到Lm。
(4)对Lm进行离散余弦变换, Cn??L
m?124mcos(?(m?0.5)n/24)
得到MFCC参数,通常取前13个系数作为该语音的特征参数。
对每一帧进行MFCC的计算,就得到了一个行数是语音的帧数,列数是13的表征语音特征的矩阵。
5、矢量量化
在特征提取之后,对矢量序列要进行矢量量化,就是用若干离散的数字值(或称为标号)来表示各帧的13维参数矢量。
矢量量化过程:将语音信号的
(1)首先对矢量序列进行聚类,根据语音信号的特征矢量聚类得到另一组量化矢量作为
码书,每个矢量成为码字,这组量化矢量长度选择32。
(2)计算特征矢量与每个码字的失真度,用失真度最小的特征矢量的标号代替该特征矢
量,这样将一个矩阵转换为一个矢量。
6、训练和识别
语音识别过程是根据模式匹配原则,计算未知语音模式与语音模板库中的每一个模板的距离测度,从而得到最佳的匹配模式。
语音识别所应用的模型匹配方法主要有动态时间弯折、隐式马尔可夫模型和人工神经网络。
隐马尔科夫模型是用于描述随机过程统计特性的概率模型,在实际问题中,观察者只能看到观察值,而观察值并不与状态一一对应,因此,不能直接看到状态,而只能是通过一个随机过程去感知状态的存在及其特征。
因此称之为隐马尔科夫模型(HMM)。
在HMM中有5个参数。
(1)N:模型中状态数目。
记N个状态为?1,?,?N,记t 时刻所处状态为qt。
(2)M:每个状态对应的可能的观察值数目。
记M个观察值为?1,?,?M,记t时刻观察到的观察值为ot。
(3)?:初始状态概率矢量,??(?1,?,?N),其
中?i?P(q1??i),1?i?N。
(4)A:状态转移概率矩阵,A?(aij)N?N,其中aij?P(qt?1??j|qt??t)。
(5)B:观察值概率矩阵,B?(bij)N?M,其中bij?P(ot?vj|qt??j)。
这样,可以记一个HMM为??(N,M,?,A,B)。
语音信号本身是一个可观察序列,但它是由大脑中的(不可察序列)、根据言语需要和语法知识(状态选择)所发出的音素(词、句)参数流,所以,可以用HMM模型来描述语音信号。
语音识别中的孤立词识别,对每个孤立词建立一个HMM 模型,当输入一个孤立词时,先对它进行特征值的提取,利用矢量量化将矢量序列转换为一组符号,然后计算这组符号和每个HMM上的输出概率,概率最值所对应的孤立词就是识别结果。
孤立词的语音识别中主要解决三个问题:
(1)给定观察值序列O?o1,o2,?,oT,(T是语音信号帧的长度)和模型?的情况下,计算给定模型参数时观察值序列的概率P(O|?)。
(2)给定观察值序列O?o1,o2,?,oT和模型?,选择对应的最优状态序列q?q1,q2,?,qT。
该问题将揭示模型的隐含部分,即估计出模型产生观察值序列时可能经历的路径,并选择出概率最大得一条路经。
(3)如何调整模型参数?元(AB),使P最大,这是一个训练过程来训练HMM,它可以使模型参数最为理想地适应所观察到的训练数据。
所以在模板训练中主要解决第三个问题,对每个词分别进行训练,得到模型参数,然后对要识别的词在每个模板下进行问题一的计算,得到最大的概率,将其对应的模板作为结果。
篇二:语音识别系统的开题报告
天津理工大学本科毕业设计开题报告
届:XX届学院:自动化学院专业:测控技术与仪器 XX 年3月11日
篇三:DSP课程设计语音识别报告
DSP课程设计
语音识别课题报告
姓名高鹏于是阳
学号 1221XX
学院电子信息工程学院
班级自动化1202
指导教师钱满义
一、设计任务书
1.1实验目的
掌握利用DSP 进行语音信号采集的方法,利用DSP 对
语音信号进行特征提取,从而实现语音信号的识别。
学会A/D、D/A 的工作原理和使用,学会A/D、D/A 转换器的编程方法。
以语音信号处理为依托,深入理解信号的抽样和重建的基本方法,提高学生系统地思考问题和解决实际问题的能力。
通过调用DSP CSL 库对McBSP 接口的编程,学会DSP 片上外设的使用方法。
1.2技术指标及设计要求
(1)对DMA进行初始化;
(2)对A/D、D/A进行初始化;
(3)编写DMA中断服务程序,实现语音信号的实时识别;
(4)根据识别系统的类型选择一种识别方法,采用语音分析方法分析出这种识别方法所要求的语音特征参数,作为标准模式由机器存储起来,形成标准模式库。
(5)对语音进行特征参数的分析,语音信号经过相同的通道得到语音参数,生成测试模板;
(6)将测试模板与参考模板进行匹配,将匹配分数最高的参考模板作为识别结果,从而实现语音的识别。
1.3设计思路
首先利用DSP对语音信号进行分析,提取语音的特征参数,形成“模板”。
语音识别系统对特征参量的提取可采用FFT算法。
语音识别和说话人识别中的LPC倒谱和MEL倒谱,
都与语音的频谱包络密切相关,不同的参数表示不同的频谱包络。
识别时,对其进行特征参数的分析,识别参数可以选择平均能量、过零数或平均过零数、频谱、倒谱、线性预测系数,音长,音调,声调等超音段信息函数。
最后将语音参数和模板进行比较,从而实现语音的识别。
1
二、实验原理
2.1语音识别概述
语音技术,包括语音识别、语音合成、关键词检出、说话人识别与确认、口语对话系统等,是现代人机交互的重要方式之一,具有广泛的应用前景。
其中语音识别技术,尤其是连续语音识别技术,是最基础、最重要的部分,而且已经逐步走向成熟与实用。
语音识别(Speech Recognition)是指让机器听懂人说的话,即在各种情况下,准确的识别语音的内容,从而根据其信息,执行人的各种意图或执行特定的任务,其最终目标是实现人与机器进行自然语言通信。
利用DSP可以对语音信号进行实时采集、提取语音特征向量、进行语音识别。
语音识别系统对语音特征参量的提取可以采用FFT等算法,不同的参数表示不同的频谱包络。
利用DSP技术来实现语音识别其实就是要利用DSP处理器强大的数据处理功能对表征语音的各种形式的信息进行
处理和分析,以对语音进行描述、辨认、分类和解释。
无论是早期的孤立词识别系统还是当代的连续语音和非特定人识别系统,它们的系统基本结构框图都可以用下图来进行简单描述。
其主要过程包括语音信号的预处理(端点检测等)、特征提取、建立参考模板库、相似性度量和识别决策等几个功能模块。
从图中可以看出语音识别系统的本质就是一种模式识别系统,它也包括特征提取、模式匹配、参考模式库等基本单元。
由于语音信号是一种典型的非平稳信号,加之呼吸气流、外部噪音、电流干扰等使得语音信号不能直接用于提取特征,而要进行前期的预处理。
预处理过程包括预滤波、采样和量化、分帧、加窗、预加重、端点检测等。
经过预处理的语音数据就可以进行特征参数提取。
在训练阶段,将特征参数进行一定的处理之后,为每个词条得到一个模型,保存为模板库。
在识别阶段,语音信号经过相同的通道得到语音参数,生成测试模板,与参考模板进行匹配,将匹配分数最高的参考模板作为识别结果。
后续的处理过程还
1
可能包括更高层次的词法、句法和文法处理等,从而最终将输入的语音信号转变成文本或命令。
语音信号的预处理模块一般包括预滤波、采样和量化、分帧、加窗、预加重、端点检测等。
在不同的系统中对各子
模块会有不同的要求,如在嵌入式语音识别系统中一般要求有防混叠滤波电路、A/D转换电路和采样滤波电路等,而在计算机上实验时则可由音频采集卡完成,无需实验者亲自动手。
2.2硬件构成
在本次实验中,我们用到的是BJTU-DSP5502实验系统,实验箱内包括BJTU-DSP5502实验板和SEED-XDS510PLUS仿真器以及相关配件。
它采用的语音处理模块是TI公司的TMS320VC5502,其主要特点包括:采用改进的哈佛结构,内部独立总线:12组;程序地址总线(PAB):1组,24位;程序数据总线(PB):1组,32位;数据读地址总线(BAB、CAB、DAB):3组,24位;数据读总线(BB、CB、DB):3组,16位;数据写地址总线(EAB、FAB):2组,24位;数据写总线(EB、FB):2组,16位。
BJTU-DSP5502实验板主要包括:
DSP芯片1枚(U1):TMS320VC5502@300MHz
SDRAM 1枚(U5):2M×32bit(8Mbytes) HY57V643220CT FLASH 1枚(U4):256K×16bit(512Kbytes) SST39VF400A-70
CPLD 1枚(U2):CY37064VP100
通信接口3个:仿真器JTAG接口(J1)、连接到PC机USB 接口(J4)和UART接口(J2) 信号采集和输出端口:立体音输
入接口line-in(J5,直接接电脑的语音输出端口)/麦克风输入接口(J7)/耳机音频输出接口(J6)
扩展板接口(J9,J10)通信接口3个:仿真器JTAG接口(J1)、连接到PC机USB接口(J4)和UART接口(J2) 信号采集和输出端口:立体音输入接口line-in(J5,直接接电脑的语音输出端口)/麦克风输入接口(J7)/耳机音频输出接口(J6)
扩展板接口(J9,J10)
信号采集和输出端口:
立体音输入接口line-in(J5,直接接电脑的语音输出端口)/麦克风输入接口(J7)/耳机音频输出接口(J6)。
2
通过AIC23B(A/D、D/A转换器)来提供立体音输入/麦克风输入/耳机音频输出。
AIC23B与DSP的McBSP1相连接。
(McBSP0:经电平转换后直接给外设扩展总线的XMcBSP0,保留给用户作外部扩展用。
McBSP2:在BJTU-5502 DSP板上有3种用途。
即接口DSP板的COM1(缺省)、ESAM(嵌入式加密模块)和接口外设扩展总线的XMcBSP1。
)
存储空间的具体配置:
flash存储器:最大512K×16bit,需占VC5502的半个CEx空间(本板x=1)
SDRAM最大2M×32bit,需占VC5502的2个连续的CEx
空间(本板x=2).状态/控制寄存器 5×8bit,需占VC5502某一CEx的5个存储单元,这些寄存器BJTU-5502DSP板的CPLD中实现,通过EMIF的异步接口进行读写操作(本板x=1)。
UARTB 8×8bit,需占VC5502 某一CEx的8个存储单元(本板x=1)。
USB 8×16bit,
______________________________需占VC5502 某一CEx的8个存储单元(本板x=1)。
扩展总线:最大4×1M×32bit,分配为
扩展总线的4 个XCE3-XCE0。
扩展存储空间需占VC5502的多个CEx空间。
2.3语音识别算法软件实现
系统首先进行端点检测,检测的方(转载自:小草范文网:语音识别实验报告)法是采用短时能量和短时过零率相结合的方法,如果检测到语音,则对有效的语音信息进行特征参数的提取,然后读取参考模板数据到片内存储器,对每一个参考模板进行模式匹配,寻找距离最短的模式作为识别结果。
端点检测是语音识别系统中至关重要的一步,其算法的优劣在某种程度上也直接决定了整个语音识别系统的成败.作为一个完整的语音识别系统,其最终实现及使用的效
果不仅仅取决于识别的算法,许多相关因素都直接影响着应用系统的成功与否。
端点检测的目的就是在复杂的应用环境下的信号流中分辨出语音信号和非语音信号,并确定语音信号的开始及结束。
好的端点检测方法能改变语音识别软件存在的检测效果不理想、识别率低等问题。
用短时能量,短时过零率结合的方法,此方法实现简单,在噪声干扰不大的环境中可以取得较好的识别效果,但在实时性上还有提高的空间,采用动态窗长短时
3
______________________。