语音信号处理实验
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验二 语音信号的时域分析
一、 实验目的
在理论学习的基础上,进一步理解和掌握语音信号短时能量、短时过零了分析的意义及基于matlab 的实现方法。
二、 实验原理
语音是一时变的、非平稳的随机过程,但由于一段时间内(10-30ms)人的声带和声道形状的相对稳定性,可认为其特征是不变的,因而语音的短时谱具有相对稳定性。
在语音分析中可以利用短时谱的这种平稳性,将语音信号分帧。
10~30ms 相对平稳,分析帧长一般为20ms 。
语音信号的分帧是通过可移动的有限长度窗口进行加权的方法来实现的。
几种典型的窗函数有:矩形窗、汉明窗、哈宁窗、布莱克曼窗。
语音信号的能量分析是基于语音信号能量随时间有相当大的变化,特别是清音段的能量一般比浊音段的小得多。
定义短时平均能量
[][]∑∑+-=∞-∞=-=-=
n
N n m m n m n w m x m n w m x E 122)()()()( 下图说明了短时能量序列的计算方法,其中窗口采用的是直角窗。
过零就是信号通过零值。
对于连续语音信号,可以考察其时域波形通过时间轴的情况。
而对于离散时间信号,如果相邻的取样值改变符号则称为过零。
由此可以计算过零数,过零数就是样本改变符号的次数。
单位时间内的过零数称为平均过零数。
语音信号x (n )的短时平均过零数定义为
()[]()[]()()[]()[]()
n w n x n x m n w m x m x Z m n *--=---=
∑∞
-∞=1sgn sgn 1sgn sgn 式中,[]∙sgn 是符号函数,即
()[]()()()()⎩⎨⎧<-≥=01
01sgn n x n x n x
短时平均过零数可应用于语音信号分析中。
发浊音时,尽管声道有若干个共振峰,但由于声门波引起了谱的高频跌落,所以其语音能量约集中干3kHz 以下。
而发清音时.多数能量出现在较高频率上。
既然高频率意味着高的平均过零数,低频率意味着低的平均过零数,那么可以认为浊音时具有较低的平均过零数,而清音时具有较高的平均过零数。
然而这种高低仅是相对而言,没有精确的数值关系。
三、 实验步骤
1. 语音信号的录音、读入、放音等:利用函数wavread 对语音信号进行采样,
记住采样频率和采样点数,给出以下语音的波形图(2.wav )。
[Y,FS,NBITS]= wavread('2.wav')
X= wavread('2.wav')
plot(x)
2.短时能量分析:(1)首先对语音信号预加重;(2)对预加重后的语音信号进行分
帧,帧长取N=256各样值点,帧移取128个样值点;(3)求短时能量。
org=wavread('2.wav')
wgt=filter([1 -0.9375],1,org)
w1=enframe(wgt,256,128)
amp=sum(abs(w1),2)
plot(amp)
3.短时过零率分析:求语音信号的短时过零率。
4.编写程序:参考Matlab有关资料,设计并编写出上述程序。
利用subplot,
将语音信号的波形、短时能量、短时过零率放在一张图里进行比较,给出结论,注明语音段和所用窗函数及其宽度。
org=wavread('2.wav');
wgt=filter([1 -0.9375],1,org);
w1=enframe(wgt,256,128);
amp=sum(abs(w1),2);
zcr=zeros(size(w1,1),1);
delta=0.02;
for i=1:size(w1,1)
x=w1(i,:);
for j=1:length(x)-1
if x(j)*x(j+1)<0 && abs(x(j)-x(j+1))>delta
zcr(i)=zcr(i)+1;
end
end
end
subplot(3,1,1),plot(wgt)
subplot(3,1,2),plot(amp)
subplot(3,1,3),plot(zcr)
5.换一段语音重复上述步骤。
6.变换帧长观察结果有什么不同。
7.(选作)学习语音信号处理工具软件praat(参见教程),它可以分析、合成、
变换语音并为论文著述创建优质图表的计算机程序,Praat程序由阿姆斯特丹大学语音科学研究所(the Institute of Phonetics Sciences of the University of Amsterdam)的Paul Boersma与David Weenink共同开发。
利用它画出波形图,与上述结果比较。
四、实验报告要求
报告中要有实验目的、实验原理及步骤、实验程序、实验中得出的图形结果及结论等(清浊音的短时平均能量、短时过零率有什么特点),注明语音段和所用窗函数及其宽度。
总结本次上机实验的收获。
五、思考题
1.短时平均能量、短时过零率的主要用途是什么?
答:短时能量的用途:
第一,可以区分清音段和浊音段,因为浊音时比清音能量大的多。
第二,可以用来区分声母和韵母的分界,有声和无声的分界,连字的分界等。
第三,作为一种超音段信息,用于语音识别。
短时过零率用途:
第一,初步判断清音和浊音。
第二,与短时能量结合进行端检测。
第三,作为语音频域分析的中间步骤。
2. 窗的宽度(帧长)的改变,对短时能量分析产生怎样的影响?
答:语音信号采用短时能量分析时,信号流的处理用分段或分帧来实现,分帧可以用可移动的有限长度窗口进行加权的方法来实现。
窗每次移动的距离如果恰好与窗的宽度相等,相应于各帧语音信号是相互衔接的;如果窗的移动距离比窗宽度要小,那么相邻帧之间将有一部分重叠。