语音信号实验讲义.docx

上传人:b****6 文档编号:4812156 上传时间:2022-12-09 格式:DOCX 页数:18 大小:379.79KB
下载 相关 举报
语音信号实验讲义.docx_第1页
第1页 / 共18页
语音信号实验讲义.docx_第2页
第2页 / 共18页
语音信号实验讲义.docx_第3页
第3页 / 共18页
语音信号实验讲义.docx_第4页
第4页 / 共18页
语音信号实验讲义.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

语音信号实验讲义.docx

《语音信号实验讲义.docx》由会员分享,可在线阅读,更多相关《语音信号实验讲义.docx(18页珍藏版)》请在冰豆网上搜索。

语音信号实验讲义.docx

语音信号实验讲义

实验一语音信号的采集

实验目的

1、掌握语音信号录音;WAV和DAT文件的转换;数据的剪切、复制;

2、初步了解元音、浊辅音、清辅音的特性。

实验原理

1、音素的种类

一次发出的,具有一个响亮的中心,并被明显感觉到的语音片段叫音节。

一个音节可以由一个音素(Phoneme)或几个音素构成。

音素是语音发音的最小单位。

音素有元音(Vowel)和辅音(Consonant)两种。

(1)元音是当声带振动发出的声音气流从喉腔、咽腔进入口腔从唇腔出去时,这些声腔完全开放,气流顺利通过。

(2)辅音是呼出的声流,由于通路的某一部分封闭起来或受到阻碍,气流被阻不能畅通,而克服发音器官的这种阻碍而产生的音素。

发辅音时声带振动的是浊音,声带不振动的是清音。

(3)半元音的声道基本畅通,但某处声道比较狭窄,引起轻微的摩擦声。

元音构成一个音节的主干,从长度还是从能量看,元音在音节中都占主要部分。

辅音则只出现在音节的前端或后端或前后两端,它们的时长和能量与元音相比都很小。

2、元音的共振峰(Formant)

声道看成是一根具有非均匀截面的声管,在发音时起共鸣器的作用。

当元音激励进入声道时会引起共振特性,产生一组共振频率,称为共振峰频率(简称共振峰)。

共振峰参数包括共振峰频率的位置和频带宽度。

在实际应用中,只用前三个共振峰,分别为

3、发音器官产生元音的条件:

①声道受到声带振动的激励引起共振;

②在语音流的持续过程中,声道不发生极端的狭窄,并维持较稳定的形状;

③和鼻腔不发生耦合,声音只从口腔辐射出去。

4、发音器官产生辅音的条件

产生元音的三个条件中,只要缺少其中之一,则该语音就是辅音。

辅音没有明确的共振峰结构。

5、基音频率

浊音的声带振动基本频率又称基音频率,用

表示。

各个音节的元音段的

都是随时间变化的,

的变化产生了声调,

的变化轨迹称为声调轨迹。

6、汉语的声调

汉语声调只有阴平、阳平、上声、去声以及“轻声”等五种声调。

声调的变化就是浊音基音周期(或基音频率)的变化,各个韵母段中基音周期随时间的变化产生了声调,变化的轨迹称为声调曲线。

实验要求

1、利用XP中的录音机程序(程序-附件-娱乐-录音机),以属性11025kHz,16位,单声道,21KB/秒,录制下面语音(以“.wav”文件格式存于\lab_1\data目录下)。

“电子信息科学与技术”jījíjǐjìshǖshǘshǚshǜgāgōǖǘǚǜ

2、利用实验提供的“语音信号处理实验一程序”将语音分段,并以“.dat”文件格式存于MATLAB\speech\lab_1\data目录下。

3、估测ǖǘǚǜ基音周期随时间的变化,并画出声调曲线。

4、找出浊音和清音波形区别。

操作流程

1、运行MATLAB

2、更改MATLAB的当前路径到MATLAB\speech\lab_1

3、在MATLAB的命令窗口输入main,进入“语音信号处理实验一”程序

 

4、单击“读取wav文件”或“读取dat文件”按钮,出现

5、单击“放大(缩小)”按钮,鼠标箭头变成“+”

(1)放大时

将鼠标分别移到要放大的语音段左端单击鼠标左键、右端单击鼠标左键;

(2)缩小时

将鼠标放在图形区,先单击鼠标左(右)键、再单击鼠标右(左)键;

(3)退出“放大(缩小)”状态

慢速击鼠标右键2次,鼠标恢复成原来的箭头。

6、单击“播放”按钮

播放图形区显示的语音段的声音。

7、单击“存语音片断”按钮

将图形区显示的语音段以“.dat”文件格式保存,要求存于MATLAB\speech\lab_1\data目录下。

8、移动语音片断

(1)单击“<<”或“>>”按钮,分别向左或右移动语音片断;

(2)编辑“卷轴步长”改变每次移动语音片断的步长。

9、单击“最大峰值时刻”按钮,

显示该语音片断的最大峰值时刻,对应变量time_feng。

思考题

1、男女的基音周期有什么不同?

实验二端点检测

实验目的

1、掌握语音信号端点检测的短时能量分析效果与窗长的关系;

2、掌握语音信号端点检测的短时过零分析效果与窗长、零阈比率的关系。

实验原理

1、短时能量分析

短时平均能量的定义:

窗序列是沿着平方值的序列逐段移动。

窗口的长度对短时平均能量的影响:

(1)N很大,等效于带宽很窄的低通滤波器,En随时间的变化很小,不能反映语音信号的幅度变化,波形的变化细节就看不出来;

(2)N太小时,滤波器的通带变宽,短时能量随时间有急剧的变化,不能得到平滑的能量函数。

窗口的长与短,是相对于语音信号的基音周期的。

在一个语音帧内,应含有l~7个基音周期。

基音周期变化范围很大,从女性儿童的2ms到老年男子的14ms(基音频率为500Hz~70Hz)。

在10kHz取样频率下,N折衷选择为100~200(10~20ms持续时间)。

2、短时过零分析:

过零就是信号通过零值,过零数是样本改变符号的次数。

单位时间内的过零数称为平均过零数。

语音信号

的短时平均过零数定义:

浊音和清音语音的典型短时平均过零数:

(1)发浊音时,声道有若干个共振峰,语音能量约集中于3kHz以下,浊音时具有较低的短时平均过零数。

(2)发清音时,多数能量出现在较高频率上,清音时具有较高的平均过零数。

短时平均过零数的高低没有精确的数值关系。

(3)过零分布

浊音和清音的过零分布与高斯分布均很吻合。

浊音短时平均过零数的均值为14过零/10ms;清音短时平均过零数的均值为49过零/10ms。

这两种分布有交叠区域,很难区分是清音还是浊音。

这种方法在区分特征时仍然是十分有用的。

如图3-13所示,平均窗选持续时间是15ms。

短时平均过零数的用途:

(1)短时平均过零数可用于清音和浊音的大分类上;

高平均过零数对应于清音,低平均过零数对应于浊音;清音和浊音的变化非常明显。

(2)短时平均过零数用于判断寂静无语音和有语音的起点和终点位置。

在背景噪声较小时用平均能量识别较为有效,

在背景噪声较大时用平均过零数识别较为有效。

在以某些音为开头或结尾时,必须同时使用这两个参数。

 

实验要求

1、利用XP中的录音机程序,以属性11025kHz,16位,单声道,21KB/秒,录制下面语音(以“.wav”文件格式存于\lab_1\data目录下)

“信息科学”

2、利用实验提供的“语音信号处理实验一程序”将语音分段,并以“.dat”文件格式存于MATLAB\speech\lab_1\data目录下。

3、利用实验提供的“语音信号处理实验二程序”,对该段语音(.dat格式)进行短时能量分析、短时过零分析。

4、观察窗长、重叠对短时能量分析结果的影响,并粗略绘出窗长分别为57、112、222、450,重叠比率为15%的短时能量分析结果图。

5、观察窗长、重叠、零阈比率对短时过零分析结果的影响。

 

操作流程

1、运行MATLAB

2、更改MATLAB的当前路径到MATLAB\speech\lab_2

3、在MATLAB的命令窗口输入main进入“语音信号处理实验二程序”

4、单击“读取dat文件”按钮

5、单击“能量和过零率分析”按钮

按“空格键”分析下一窗数据。

第二个图说明:

蓝色线---语音信号波形;

红色线---窗选语音信号部分;

品红色线---窗选语音信号放大;

注意:

不要用点击窗体右上角的╳的方式关闭窗体。

思考题

1、浊音、清音部分的短时能量分析有什么特点?

2、浊音、清音部分的短时过零分析有什么特点?

实验三语谱图

实验目的

1、掌握语音信号端点检测的短时傅里叶分析效果与窗长、窗形状的关系;

2、掌握语音信号端点检测的语谱图效果与窗长、窗形状的关系。

实验原理

1、短时傅里叶变换的定义:

不同的窗口函数序列,将得到不同的傅里叶变换的结果。

当n取不同值时窗w(n-m)沿着x(m)序列滑动,w(n-m)是一个“滑动的”窗口。

2、窗口序列的作用

(1)波形乘窗函数,在窗口边缘两端不引起急剧变化,使波形缓慢降为零,短时谱是信号谱与窗函数的傅里叶变换进行卷积,所以窗函数的特性:

①频率分辨率高,即主瓣狭窄、尖锐;

通过卷积,在其他频率成分产生的频谱泄漏少,即旁瓣衰减大。

这两个要求相互矛盾,不能同时满足。

(2)主瓣宽度与窗口宽度成反比:

直角窗:

第一个零点位置为

,显然它与窗口宽度成反比。

第一旁瓣的衰减只有13.2dB,不适合用于频谱成分动态范围很宽的语音分析中。

海明窗:

第一个零点位置为

,显然它与窗口宽度成反比。

旁瓣的衰减大于42dB,具有频谱泄漏少的优点,频谱中高频分量弱、波动小,因而得到较平滑的谱。

对语音波形乘以海明窗,压缩了接近窗两端的部分波形,等效于用作分析的区间缩短40%左右,频率分辨率下降40%左右。

乘以合适的窗函数,能抑制基音周期与分析区间的相对相位关系的变动影响,得到稳定的频谱。

乘以窗函数将导致分帧区间缩短,所以为跟踪随时间变化的频谱,要求一部分区间重复移动。

3、窗口宽度的影响

N值太大时,信号的分帧已失去了意义,应折衷选择窗定N。

频率分辨率随窗口宽度的增加而提高,同时时间分辨率降低;窗口取短,频率分辨率下降,时间分辨率提高,因而二者是矛盾的。

(1)N=500时(取样率10kHz,窗持续时间50ms)时直角窗及海明窗下浊音语音的频谱。

基频及其谐波在频谱中表现为等频率间隔的窄峰;

共振峰

由于声门脉冲频谱的高频衰减特性,频谱在高频部分表现出下降的趋势。

图(d)中基音谐波尖锐度增加,矩形窗频率分辨率较高。

矩形窗较高的旁瓣产生了一个类似于噪声的频谱。

相邻谐波间不希望有的“泄漏”存在。

(2)N=50的比较结果,(取样率10kHz,窗持续时间为5ms)直角窗及海明窗下浊音语音的频谱。

均不能反映信号的周期性。

共振峰

用窄窗可得到好的时间分辨率,宽窗可以得到好的频率分辨率。

由于采用窗的目的是要限制分析的时间以使其中波形的特性没有显著变化,因而要折衷考虑。

4、语谱图

语谱图纵轴为频率,横轴为时间。

任意给定频率成分在给定时刻的强弱用相应点的黑白度即色调的浓淡来表示,频谱值大则记录得浓黑一些,反之则浅淡一些。

窄带语谱图有良好的频率分辨率及较差的时间分辨率;宽带语谱图具有良好的时间分辨率及较差的频率分辨率。

窄带语谱图中的横线(即时间坐标方向)表示的是基音及其各次谐波;

宽带语谱图给出语音的共振峰频率及清辅音的能量汇集区,共振峰(声道谐振)呈现为黑色的条纹。

可用测量语谱图的方法来确定语音参数,例如共振峰频率及基频。

实验要求

1、利用XP中的录音机程序,以属性11025kHz,16位,单声道,21KB/秒,录制下面语音(以“.wav”文件格式存于\lab_1\data目录下)

“信息科学”

2、利用实验提供的“语音信号处理实验一程序”将语音分段,并以“.dat”文件格式存于MATLAB\speech\lab_1\data目录下。

3、利用实验提供的“语音信号处理实验三程序”,对该段语音(.dat格式)进行短时傅里叶分析、语谱图分析。

4、观察窗长、重叠、窗形状对短时傅里叶分析结果的影响,并粗略绘出窗长分别为57、555,重叠比率为50%的海明窗和直角窗的短时傅里叶分析结果图;粗略估计出前三个共振峰的频率。

5、观察窗长、重叠、窗形状对语谱图结果的影响。

操作流程

1、运行MATLAB

2、更改MATLAB的当前路径到MATLAB\speech\lab_3

3、在MATLAB的命令窗口输入main,进入“语音信号处理实验三程序”

4、单击“读取dat文件”按钮

5、单击“语谱图”按钮。

得到语谱图结果。

6、单击“FFT分析”按钮。

得到FFT分析结果。

按“空格键”分析下一窗数据。

第一个图说明:

蓝色线---语音信号波形;

红色线---窗选语音信号部分;

品红色线---窗选语音信号放大;

注意:

不要用点击窗体右上角的╳的方式关闭窗体。

思考题

1、浊音窗长、重叠、窗形状对短时傅里叶分析结果有什么影响?

2、浊音窗长、重叠、窗形状对语谱图结果有什么影响?

实验四同态滤波器和倒谱

实验目的

1、掌握同态滤波器的结构;

2、掌握语音信号的倒谱域中低倒谱、高倒谱域声道特性、声门激励的关系;

3、掌握利用倒谱估测基音周期。

实验原理

1、卷积同态系统模型

任何同态系统都能表示为三个同态系统的级联:

两个特征系统(它们只取决于信号的组合规则)和一个线性系统(它仅取决于处理的要求)。

(1)第一个系统以若干信号的卷积组合作为其输入,并将它变换成对应输出的相加性组合。

(2)第二个系统是一个普通线性系统,它服从叠加原理。

(3)第三个系统是第一个系统的逆变换,它将信号的相加性组合反变换为卷积组合。

对于语音信号,其特征系统和逆特征系统的构成分别如图:

2、复倒谱

特征系统D*[]将离散时域中的卷积运算转换为复倒谱域中的加性运算。

的“复倒频谱”,简称为“复倒谱”(对数复倒谱)。

若时域中有

,则复倒谱域中便有

3、倒谱

的“倒频谱”,简称为“倒谱”,也称“对数倒频谱”。

复倒谱涉及到复对数运算,倒谱只进行实数的对数运算。

中的偶对称分量。

在计算倒谱的过程中将序列的相位信息丢失了。

4、一段浊音语音进行同态分析的实例。

窗长为15ms,

=10kHz,共包括150个语音样点。

这段语音用海明窗加权,基音周期为

=45。

由周期声门激励所产生的复倒谱部分可以由高复倒谱域成分分离出来。

实验要求

1、利用XP中的录音机程序,以属性11025kHz,16位,单声道,21KB/秒,录制下面语音(以“.wav”文件格式存于\lab_1\data目录下)

“信息科学”、ā、á、ǎ、à

2、利用实验提供的“语音信号处理实验一程序”将语音分段,并以“.dat”文件格式存于

MATLAB\speech\lab_1\data目录下。

3、利用实验提供的“语音信号处理实验四程序”,对段语音(.dat格式)进行倒谱分析。

4、观察窗长、重叠、窗形状对短时傅里叶分析结果的影响;

选择适当的窗长,重叠比率为90%的海明窗,粗略绘出ā、á、ǎ、à中的四个音的基音周期时间变化轨迹图。

操作流程

1、运行MATLAB

2、更改MATLAB的当前路径到MATLAB\speech\lab_4

3、在MATLAB的命令窗口输入main进入“语音信号处理实验四程序”

4、单击“读取dat文件”按钮

5、点击相应的按钮,进行分析

注意:

不要用点击窗体右上角的╳的方式关闭窗体。

思考题:

1、浊音、清音的倒谱有什么区别?

2、怎样提高利用倒谱估测浊音周期的效果?

实验五线性预测的格型实现

实验目的

1、掌握线性预测分析方法;

2、掌握直接型滤波器和格型滤波器的转换。

实验原理

1、线性预测

将辐射、声道以及声门激励的全部谱效应简化为一个时变的数字滤波器来等效,其系统函数为

 

模型化为一个p阶的AR模型。

H(z)称作合成滤波器。

预测误差滤波器:

2、线性预测分析用的格型滤波器结构

实验要求

1、利用XP中的录音机程序,以属性11025kHz,16位,单声道,21KB/秒,录制下面语音(以“.wav”文件格式存于\lab_1\data目录下)

ā

2、利用实验提供的“语音信号处理实验一程序”将语音分段,并以“.dat”文件格式存于MATLAB\speech\lab_1\data目录下。

3、利用实验提供的“语音信号处理实验五程序”模板,编程实现对一段语音(.dat格式),取长度为256,极点数为10,用伯格法进行线性预测分析,并将直接型滤波器系数转化为格型滤波器的系数。

4、对语音取五段进行分析。

5、相关命令和函数

(1)将向量矩阵A从num_start开始,取长度num_len赋值给向量矩阵B

B=A(num_start:

num_start+num_len-1);

(2)从图形窗选定起始位置num_start

[xx,yy,button]=ginput

(1);

num_start=round(xx);

(3)利用伯格法对向量矩阵B进行LP分析,长度为num_len,极点数为num_pole,得到直接型滤波器系数a1,a2,….,存于向量矩阵A中。

[A,sig2]=burg(B,num_len,num_pole);

(4)将直接型滤波器系数(向量矩阵A)转化为格型滤波器的系数(向量矩阵K)。

K=tf2latc([1A]);

操作流程

1、运行MATLAB

2、更改MATLAB的当前路径到MATLAB\speech\lab_5

3、在MATLAB中分析main.m及相关m文件。

实验六共振峰合成

实验目的

1、掌握线性预测;

2、掌握共振峰合成。

实验原理

1、线性预测

将口鼻辐射、声道以及声门激励的全部谱效应简化为一个时变的数字滤波器来等效,其系统函数为:

 

把s(n)模型化为一个p阶的AR模型。

H(z)称作合成滤波器。

预测误差滤波器:

2、线性预测分析用的格型滤波器结构:

3、LPC谱估计共振峰:

特点是在信号的峰值处和信号谱匹配得很好,能够准确地求得共振峰参数。

求出语音谱包络后,搜索包络上的局部极大值,用峰值检测器确定共振峰。

假设预先选定线性预测器的阶数为P(偶数),则可得到P/2对共轭复根:

的组合对应于一个二阶谐振器,其中心频率

和带宽

与根的近似关系为:

共振峰频率为:

 

实验要求

1、利用XP中的录音机程序,以属性11025kHz,16位,单声道,21KB/秒,录制下面语音(以“.wav”文件格式存于\lab_1\data目录下)

ā

2、利用实验提供的“语音信号处理实验一程序”将语音分段,并以“.dat”文件格式存于

MATLAB\speech\lab_1\data目录下。

3、利用实验提供的“语音信号处理实验五程序”模板,编程实现对一段语音(.dat格式),取长度为256,极点数为8,用伯格法进行线性预测分析,并求出前三个共振峰。

4、对语音取五段进行分析。

5、相关命令和函数

(1)将向量矩阵A中从num_start开始,取长度num_len赋值给向量矩阵B

B=A(num_start:

num_start+num_len-1);

(2)从图形窗选定起始位置num_start

[xx,yy,button]=ginput

(1);

num_start=round(xx);

(3)利用伯格法对将向量矩阵B进行线性预测分析,长度为num_len,极点数为num_pole,得到直接型滤波器系数a1,a2,….存于向量矩阵A中。

[A,sig2]=burg(B,num_len,num_pole);

(4)将直接型滤波器系数(向量矩阵A)转化为格型滤波器的系数(向量矩阵K)。

K=tf2latc([1A]);

(5)计算变量ZZ的辐角存于变量Fi中

Fi=angle(ZZ);

(6)系数a1,a2,….,存于向量矩阵A中,求A(z)的根,存于变量zzi中。

zzi=roots([1A]);

(7)常量pi=3.1416

 

操作流程

1、运行MATLAB

2、更改MATLAB的当前路径到MATLAB\speech\lab_5

3、在MATLAB中分析main.m及相关m文件,并且根据实验要求编写新程序。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 高考

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1