南京邮电大学通达学院
实验报告
实验名称 语音时频参数的提取和应用实验
语音编码实验
课程名称信息处理技术专业综合实验
班级学号 ________________________________ 姓 名 ___________________________________
开课时间 2016/2017 学年,第 二 学期
实验一语音时频参数的提取和应用
、实验目的
熟悉基本的语音时频参数提取方法,观察并比较各类参数采用不同提取方法的 效果,了解这些时频参数在语音处理中的应用。
、实验内容
1编写并调试语音时域参数提取程序,包括短时功率、短时过零率等函数。 2、 编写并调试语音频域参数提取程序,包括频谱、语谱图、基音频率、共振峰 3、 利用提取出的时频参数对语音信号进行静
/清/浊音的划分。
三、实验原理
语音信号具有短时平稳性,需对其进行分段(帧)处理(帧长一般取 之间)。
根据激励方式的不同,语音信号可以分成浊音和清音两大类:
浊音:激励源可模拟成准周期性的脉冲串。该周期称为基音周期,其倒数就是 基音频率,基音频率一般在几百赫兹以内。
清音:激励源可模拟成随机白噪声。 简化的语音生成数学模型如图所示:
基音周期
10至30ms
对语音时 频波形进行绘制与观察,有助于了解语音的清 期等声门参数和共振峰等声道参数进行提取与分析,
对于时变语音信号
/浊音等特性。对基音周
是语音处理与应用的重要内容。
x(n),可以计算它的短时功率 p(m)和短时过零率 Zx(m)。第
m帧(帧长为N个样点)的功率计算公式为:
Px
(m)
计
' x(n)
n zm -N 1
过零率计算公式为:
1「sign{x (n )}—sign{x( n—1)}
Zx(m厂 N n :m _N 1 2
对于浊音语音,可以利用其频谱 波乘积谱,计算公式为:
R
X C.)具有丰富的谐波分量的特点,求出其谐
HPSx ()「 X (r ■)
r 二
式中,R一般取为5。在谐波乘积谱中,基频分量变得很大,更易于估计基音周 期。
四、 实验方法及程序
1. 调用 matlab中的wavread和wavplay读入并播放语音文件。 2. 调用fft命令计算语音的频谱。 3. 调用specgram命令得到语音的语谱图。 4. 调用plot命令绘制并观察语音的时
频域波形。
5. 根据短时功率、短时过零率、谐波乘积谱的计算公式,编写分别用以计算短
时功率、短时过零率、基音频率的 函数:fun ction Px=stpower、fun ction Zx = stzerocross(x, N) 禾口 function HPSx = hpspectrum(x,N,R) 。
6. 利用短时功率和短时过零率这两个参数可以对语音信号进行浊音 编写实现此分类功能的函数 voiunvoi.m 。
/清音分类。
五、 实验结果与分析
1. 清音和浊音的短时功率、短时过零率各有何特点? 清音段的能量一般比浊音段的小得多。
浊音时能量集中于较低频率段内,具有较低的过零率,而清音时能量集中于较 高频率段内,具有较高的过零率。 2. 如何利用短时功率和短时过零率这两个参数对语音信号进行浊音 类?
发浊音时,由于声门波引起了谱的高频跌落。 低的平均过零率,清音具有较高的平均过零 率。
3. 如何根据时域波形估计各帧元音的基音周期? 看图可知四帧语音的周期均为
0.01s,第一帧0~100Hz有10个峰值点,基频约为
20Hz,第三帧0~100Hz有5个峰值点,
25Hz。
10Hz,第二帧0~100Hz有5个峰值点,基频约为
所以其语音能量集中在
3kHz以下;
发清音时,多数能量出现在高频。高频率意味着高的平均过零率,低频率意味着低 的平均过零率,一般可认为浊音具有较
/清音的分
基频约为20Hz,第四帧0~100Hz有4个峰值点,基频约为
4. 如何根据基于 DFT的对数幅度谱估计某幀浊音的基音周期? 0~1172为一个基因周期。
5. 如何根据基于 DFT 的对数幅度谱,估计出共振峰频率?
有 7个峰点,因此基频约为 167 。
6. 时域对语音信号进行加窗,反映在频域,其窗谱对基于 DFT 的对数幅度谱有 何影响?如何估计出窗谱的主瓣宽度? 因 为时 间窗 幅度 的傅 立叶 变换 为脉 冲状 态 ,则频谱 偏差 很小 , 当 定常 过程 x(n) 的 平均值B为零且N很大时 E[TN( 3 )]=f( 3 )(12)所以加窗的周期图 函数的无偏估计。固有 TN(o )=[1+ E ( 3 )]f( 3)
TN( co )是频谱密度
如果原始信号的频谱成份与 FFT 中的谱线完全一致,这种情况下采样数据的长 度为信号周期的整数倍,频谱中只有
主瓣。
7. 如何根据窄带、宽带语谱图,提取出语音的基音和共振峰轨迹? 在基音提取中,广泛采用语音波形或误差信号波形的低通滤波。 提取共振峰特性最简便的手段是使用语谱仪。提取共振峰还有倒谱法、 LPC 分
析法等更为有效、准确的方法。
( 做完试验后,记住要回答这些问题 )
实验过程记录与结果分析
1、进入 matlab
1.1在Windows环境中,创建一个名为 speech的文件夹,存放语音数据和与实验 相关的 Matlab 文件。如: 用E:\\speech 。
于实验的语音数据
.mat )及相应说明( .txt )包括:
( digits.mat digits.txt
gliss.mat % 两个包含 /i/ 的滑音
gliss.txt
letters.mat % 英文字母表中 26个字母的发音
letters.txt
ma1.txt
ma1-1.mat % 一句连续语音
ma1-2.mat % 一句连续语音
ma1-3.mat % 一句连续语音
ma1-4.mat % 一句连续语音
timit.txt
timit1.mat % 一句连续语音
timit2.mat % 一句连续语音
timit3.mat % 一句连续语音
timit4.mat % 一句连续语音
vowels.mat
% 元音 /a/, /i/, /o/, /u/ 的发音
vowels.txt
words.mat
% 十个孤立字的发音
%