语音信号处理实验报告(11页)
时间:2020-11-16 09:08:29 来源:工作范文网 本文已影响 人
精品文档
精品文档
PAGE
PAGE #欢迎下载
实验一基于MATLAB的语音信号时域特征分析
操作:报告:
操作:
报告:
.实验目的
语音信号是一种非平稳的时变信号,它携带着各种信息。在语音编码、语音合成、语音识别和语音增强
等语音处理中无一例外需要提取语音中包含的各种信息。语音信号分析的目的就在与方便有效的提取并表示 语音信号所携带的信息。语音信号分析可以分为时域和变换域等处理方法,其中时域分析是最简单的方法, 直接对语音信号的时域波形进行分析,提取的特征参数主要有语音的短时能量,短时平均过零率,短时自相 关函数等。
本实验要求掌握时域特征分析原理, 并利用已学知识,编写程序求解语音信号的短时过零率、 短时能量、
短时自相关特征,分析实验结果,并能掌握借助时域分析方法所求得的参数分析语音信号的基音周期及共振 峰。
二.实验内容
1.窗口的选择
通过对发声机理的认识,语音信号可以认为是短时平稳的。在 5~50ms的范围内,语音频
谱特性和一些物理特性参数基本保持不变。我们将每个短时的语音称为一个分析帧。一般帧长 取10~30ms。我们采用一个长度有限的窗函数来截取语音信号形成分析帧。通常会采用矩形窗 和汉明窗。1.1给出了这两种窗函数在帧长 N=50图时的时域波形。
U*.丿1绥硬1 -431 q0.6如匚开
U*.丿1绥硬
1 -43
1 q
0.6
如匚开MF灯疋辽=
IMl.l
/?(如图
/?
(如图1.2): -13.3dB),会导致泄
,旁瓣峰值低(-42.7dB),可以有效的克服泄漏现象,具有
俨 Z 士丄「I勺h 0玛 贅攵JSC J/y立【I卜
f4 4 2 —— "兰 r M Z
Z — L
n # jt
这两种窗函数都有低通特性,通过分析这两种窗的频率响应幅度特性可以发现 矩形窗的主瓣宽度小(4*pi/N ),具有较高的频率分辨率,旁瓣峰值大( 漏现象;汉明窗的主瓣宽 8*pi/N
更平滑的低通特性。因此在语音频谱分析时常使用汉明窗,在计算短时能量和平均幅度时通常 用矩形窗。
2.短时能量
由于语音信号的能量随时间变化,清音和浊音之间的能量差别相当显著。因此对语音的短 时能量进行分析,可以描述语音的这种特征变化情况。定义短时能量为:
E” = 22 [xQ科)佃("—切)1,= X —Z7?)]2
特殊;I也.当采用矩形窗时?町冏化为u
E*, = 士川3】> Ett ■乞丘(切
在用短时能量反映语音信号的幅度变化时,不同的窗函数以及相应窗的长短均有影响。
hamming窗的效果比矩形窗略好。但是,窗的长短影响起决定性作用。窗过大( N很大),等
效于很窄的低通滤波器,不能反映幅度 En的变化;窗过小(N很小),短时能量随时间急剧变 化,不能得到平滑的能量函数。在 11.025kHz左右的采样频率下,N选为100~200比较合适。
短时能量函数的应用:1 )可用于区分清音段与浊音段。En值大对应于浊音段,En值小对 应于清音段。2)可用于区分浊音变为清音或清音变为浊音的时间 (根据En值的变化趋势)。3) 对高信噪比的语音信号,也可以用来区分有无语音(语音信号的开始点或终止点) 。无信号(或 仅有噪声能量)时,En值很小,有语音信号时,能量显著增大。
3 .短时平均过零率
过零率可以反映信号的频谱特性。当离散时间信号相邻两个样点的正负号相异时,我们称 之为“过零”,即此时信号的时间波形穿过了零电平的横轴。统计单位时间内样点值改变符 号的次数具可以得到平均过零率。定义短时平均过零率:
Zn =乞 sgn[jr|in] — sgn[jc(w; - 1)] -/)
其中sgn[ 符号函数.㈣M耐二{;:;:豔 在矩形窗条fl下.可以简化为
] *
Zft =— 工 |sgnf.r(^) - sgn[x(m -1)]|
短时过零率可以粗略估计语音的频谱特性。由语音的产生模型可知,发浊音时,声带振动, 尽管声道有多个共振峰,但由于声门波引起了频谱的高频衰落,因此浊音能量集中于3KZ以下 而清音由于声带不振动,声道的某些部位阻塞气流产生类白噪声,多数能量集中在较高频率上。
高频率对应着高过零率,低频率对应着低过零率,那么过零率与语音的清浊音就存在着对应关 系。
短时平均过零率的应用:1 )区别清音和浊音。例如,清音的过零率高,浊音的过零率低。
此外,清音和浊音的两种过零分布都与高斯分布曲线比较吻合。 2 )从背景噪声中找出语音信
号。语音处理领域中的一个基本问题是,如何将一串连续的语音信号进行适当的分割,以确定 每个单词语音的信号,亦即找出每个单词的开始和终止位置。 3)在孤立词的语音识别中,可利
用能量和过零作为有话无话的鉴别。
4、短时自相关函数
自相关函数用于衡量信号自身时间波形的相似性。清音和浊音的发声机理不同,因而在波形 上也存在着较大的差异。浊音的时间波形呈现出一定的周期性,波形之间相似性较好;清音的 时间波形呈现出随机噪声的特性,样点间的相似性较差。因此,我们用短时自相关函数来测定
语音的相似特性。短时自相关函数定义为:
R( i k )= 乞 x(m )w(n - m i) w(n — m — k)
m = 一8
令wi^u+JM ,井= TU?a
X a ’
兄(Jt)= + JW)W +x 4-Jt)M? (m +^)J — 工[j?(4 + Bt)w(Nf)][x(lt+ W+ t)W(JW + 4)]
in——?3t or—D
5、时域分析方法的应用
1 )基音频率的估计
首先可利用时域分析(短时能量、短时过零率、短时自相关)方法的某一个特征或某几个特 征的结合,判定某一语音有效的清音和浊音段;其次,针对浊音段,可直接利用短时自相关函 数估计基音频率,其方法是:估算浊音段第一最大峰的位置,再利用抽样率计算基音频率,举 例来说,若某一语音浊音段的第一最大峰值约为 35个抽样点,设抽样频率为11.025KHZ,则
基音频率为11025/35=315 H乙 但是,实际上第一最大峰值位置有时并不一定与基音周期吻合。
一方面与窗长有关,另一方面还与声道特性有关。鉴于此,可采用三电平削波法先进行预处理。
2 )语音端点的检测与估计
可利用时域分析(短时能量、短时过零率、短时自相关)方法的某一个特征或某几个特征的 结合,判定某一语音信号的端点,尤其在有噪声干扰时,如何准确检测语音信号的端点,这在 语音处理中是富有挑战性的一个课题。
二.实验程序及结果
1、程序及结果
1 )短时能量
(1 )加矩形窗
a=wavread( 'H:\dahai.wav' );
subplot(6,2,1),plot(a);
N=32;
for i=2:6
h=li nspace(1,1,2.A(i-2)*N); % 形成一个矩形窗,长度为 2.A(i-2)*N
En=con v(h,a.*a);% 求短时能量函数 En
subplot(6,2,i),plot(E n);
if (i==2) legend( 'N=32');
elseif(i==3) legend( 'N=64');
elseif(i==4) lege nd( 'N=128');
elseif(i==5) lege nd( 'N=256');
elseif(i==6) lege nd( 'N=512');
end
end
(2 )加汉明窗
a=wavread( 'H:\dahai.wav' );
subplot(6,2,7),plot(a);
N=32;
for i=8:12
h=hammi ng(2.A(i-2)*N); % 形成一个汉明窗,长度为 2.A(i-2)*N
En=con v(h,a.*a);% 求短时能量函数 En
subplot(6,2,i),plot(E n); if (i==2) legend( 'N=32'); elseif(i==3) legend( 'N=64'); elseif(i==4) legend( 'N=128'); elseif(i==5) lege nd( 'N=256'); elseif(i==6) lege nd( 'N=512'); end end
x 10x 10
x 10
x 10
分析这两种窗的频率响应幅度特性可以发现: 这两种窗函数都有低通特性, 矩形窗的主瓣度小(4*pi/N ),
具有较高的频率分辨率,旁瓣峰值大( -13.3dB),会导致泄漏现象;汉明窗的主瓣宽 8*pi/N ,瓣峰值低
(-42.7dB),可以有效的克服泄漏现象,具有更平滑的低通特性。
2 )短时平均过零率
a=wavread( 'H:\dahai.wav' );
n=len gth(a);
N=320;
subplot(3,1,1),plot (a);
h=li nspace(1,1,N);
En=co nv(h,a.*a); % 求卷积得其短时能量函数 En subplot(3,1,2),plot(E n); for i=1: n-1
if a(i)>=0 b(i)= 1;
else
b(i) = -1;
end
if a(i+1)>=0 b(i+1)=1;
else
b(i+1)= -1;
end
w(i)=abs(b(i+1)-b(i)); %
end
k=1;
j=0;
while (k+N-1)< n
Zm(k)=O;
for i=0:N-1;
Zm(k)=Zm(k)+w(k+i);
end
j=j+1;
k=k+N/2; % 每次移动半个窗
end
for w=1:j
Q(w)=Zm(160*(w-1)+1)/(2*N); %
end
求出每相邻两点符号的差值的绝对值短时平均过零率40.5100200300400500600分析可知:清音的短时能量较低,过零率高,浊音的短时能量较高,过零率低。清音的过零率为 0.5右,浊音的过零率为 0.1左右,但两者分布之间有相互交叠的区域,所以单纯依赖于平均过零率来准确判断清浊音是不可能的。3)自相关函数
求出每相邻两点符号的差值的绝对值
短时平均过零率
4
0.5
100
200
300
400
500
600
分析可知:清音的短时能量较低,过零率高,浊音的短时能量较高,过零率低。清音的过零率为 0.5
右,浊音的过零率为 0.1左右,但两者分布之间有相互交叠的区域,所以单纯依赖于平均过零率来准确判断
清浊音是不可能的。
3)自相关函数
clear;
N=240;
Y= wavread ( 'H:\dahai.wav' );
x=Y(13271:13510); x=x.*rectwi n(240);
R=zeros(1,240);
for k=1:240
for n=1:240-k
i
L/
k In a
/Vi
0丿\ r
x 10
R(k)=R(k)+x( n)*x( n+k); end end j=1:240; plot(j,R);
grid;
结果分析:通过短时自相关函数波形分析可知:清音接近于随机噪声,清音的短时自相关函数不具有周 期性,也没有明显突起的峰值,且随着延时 k的增大迅速减小;浊音是周期信号,浊音的短时自相关函数呈
现明显的周期性,自相关函数的周期就是浊音信号的周期,根据这个性质可以判断一个语音信号是清音还是 浊音,还可以判断浊音的基音周期。浊音语音的周期可用自相关函数中第一个峰值的位置来估算。
实验二基于MATLAB^析语音信号频域特征
操作: 报告:
一.实验目的
信号的傅立叶表示在信号的分析与处理中起着重要的作用。 因为对于线性系统来说,可以很方便地确定
其对正弦或复指数和的响应,所以傅立叶分析方法能完善地解决许多信号分析和处理问题。另外,傅立叶表 示使信号的某些特性变得更明显,因此,它能更深入地说明信号的各项红物理现象。由于语音信号是随着时 间变化的,通常认为,语音是一个受准周期脉冲或随机噪声源激励的线性系统的输出。输出频谱是声道系统 频率响应与激励源频谱的乘积。声道系统的频率响应及激励源都是随时间变化的,因此一般标准的傅立叶表 示虽然适用于周期及平稳随机信号的表示,但不能直接用于语音信号。由于语音信号可以认为在短时间内, 近似不变,因而可以采用短时分析法。
本实验要求掌握傅里叶分析原理,会利用已学的知识,编写程序估计短时谱、倒谱,画出语谱图,并分 析实验结果,在此基础上,借助频域分析方法所求得的参数分析语音信号的基音周期或共振峰。
实验内容
1 、短时傅立叶变换
由于语音信号是短时平稳的随机信号,某一语音信号帧的短时傅立叶变换的定义为:
X,、(£户)= 工 耳(也)吵(打一耐)£ m
TOC \o "1-5" \h \z —” (2.1)
其中w(n-m)是实窗口函数序列,n表示某一语音信号帧。令 n-m=k',则得到
时― (2.2)
于是可以得到
n (e^) = e~J^ £ ^k)x(n-k)e^
ey (2 乜)
假定
Xif(e^ )=工 — k)epik
心 (4)
则可以得到
忆(宀十吒(严) ⑸
同样,不同的窗口函数,将得到不同的傅立叶变换式的结果。由上式可见,短时傅立叶变换有两个变量: n和3 ,所以它既是时序 n的离散函数,又是角频率 3的连续函数。与离散傅立叶变换逼近傅立叶变换
一样,如令3 =2 n k/N,则得离散的短时傅立叶吧如下:
尤”"小)二兀(★治
?■
Z 川也)皿“ 一山0克血t (0 <*<^-1)
帀“ (6)
2、 语谱图
水平方向是时间轴,垂直方向是频率轴,图上的灰度条纹代表各个时刻的语音短时谱。语谱图反映了语 音信号的动态频率特性,在语音分析中具有重要的实用价值。被成为可视语言。
语谱图的时间分辨率和频率分辨率是由窗函数的特性决定的。时间分辨率高,可以看出时间波形的每个 周期及共振峰随时间的变化,但频率分辨率低,不足以分辨由于激励所形成的细微结构,称为宽带语谱图; 而窄带语谱图正好与之相反。
宽带语谱图可以获得较高的时间分辨率,反映频谱的快速时变过程;窄带语谱图可以获得较高的频率分 辨率,反映频谱的精细结构。两者相结合,可以提供带两与语音特性相关的信息。语谱图上因其不同的灰度, 形成不同的纹路,称之为“ 声纹”。声纹因人而异,因此可以在司法、安全等场合得到应用。
3、 复倒谱和倒谱
复倒谱 是x(n)的Z变换取对数后的逆 Z变换,其表达式如下:
A
X = Z *[111 Z[x(H)]] (7)
倒谱c(n)定义为x(n)取Z变换后的幅度对数的逆 Z变换,即
附)’ '[ln|y(z)|] ⑻
在时域上,语音产生模型实际上是一个激励信号与声道冲激响应的卷积。对于浊音,激励信号可以由周
期脉冲序列表示;对于清音,激励信号可以由随机噪声序列表示。声道系统相当于参数缓慢变化的零极点线 性滤波器。这样经过同态处理后,语音信号的复倒谱,激励信号的复倒谱,声道系统的复倒谱之间满足下面 的关系:
A a A
5(/1) = + V0I) 竹)
由于倒谱对应于复倒谱的偶部,因此倒谱与复倒谱具有同样的特点,很容易知道语音信号的倒谱,激励 信号的倒谱以及声道系统的倒谱之间满足下面关系:
(10)
浊音信号的倒谱中存在着峰值, 它的出现位置等于该语音段的基音周期, 而清音的倒谱中则不存在峰值。
利用这个特点我们可以进行清浊音的判断,并且可以估计浊音的基音周期。
4、 基因周期估计
浊音信号的倒谱中存在峰值,它的出现位置等于该语音段的基音周期,而清音的倒谱中则不存在峰值。
利用倒谱的这个特点,我们可以进行语音的清浊音判决,并且可以估计浊音的基音周期。首先计算语音的倒 谱,然后在可能出现的基因周期附近寻找峰值。如果倒谱峰值超过了预先设置的门限,则输入语音判断为浊 音,其峰值位置就是基因周期的估计值;反之,如果没有超出门限的峰值的话,则输入语音为清音。
5、 共振峰估计
对倒谱进行滤波,取出低时间部分进行进行逆特征系统处理,可以得到一个平滑的对数谱函数,这个对 数谱函数显示了输入语音段的共振峰结构,同时谱的峰值对应于共振峰频率。通过此对数谱进行峰值检测, 就可以估计出前几个共振峰的频率和强度。对于浊音的声道特性,可以采用前三个共振峰来描述;清音不具 备共振峰特点。
三?实验程序及结果
1、 短时谱
clear
a=wavread('H:\dahai.wav ,);
subplot(2,1,1),
plot(a);title( 'orig inal
sig nal');
grid
N=256;
h=ham min g(N);
for m=1:N
b(m)=a(m)*h(m)
end
y=20*log(abs(fft(b))) subplot(2,1,2) plot(y);title(' 短时谱'); grid
2、 语谱图
orig inal sig nal短时谱[x,fs, nbits]=wavread( 'H:\dahai1.wav' ) specgram(x,512,fs,100);
orig inal sig nal
短时谱
xlabel(' 时间(s)');
ylabel('频率(Hz)');
语谱图
4000
3500
3000
2500
2000
1000
500
时间⑸
1500
图中横轴的单位是 Hz,
图中横轴的单位是 Hz,纵轴的单位是dB。
分析:语谱图的时间分辨率和频率分辨率是由窗函数的特性决定的。时间分辨率高,可以看出时间波形的每 个周期及共振峰随时间的变化,但频率分辨率低,不足以分辨由于激励所形成的细微结构,称为宽带语谱图 3、倒谱和复倒谱
加矩形窗和汉明窗的倒谱图和复倒谱图
(1)加矩形窗时的倒谱和复倒谱 clear
a=wavread( 'H:\dahai1.wav' ,[4000,4350 ]);
N=300;
h=li nspace(1,1,N);
for m=1:N
b(m)=a(m)*h(m);
end
c=cceps(b);
c=fftshift(c);
d=rceps(b);
d=fftshift(d);
subplot(2,1,1)
plot(d);title(' 加矩形窗时的倒谱')
subplot(2,1,2)
plot(c);title(' 加矩形窗时的复倒谱')
(2)加汉明窗时的倒谱和复倒谱
clear
a=wavread( 'H:\dahai1.wav' ,[4000,4350]);
N=300; h=hammi ng(N);
for m=1:N
b(m)=a(m)*h(m);
end c=cceps(b);
c=fftshift(c);
d=rceps(b);
d=fftshift(d);
subplot(2,1,1)
plot(d);title(' 加汉明窗时的倒谱')
subplot(2,1,2)
plot(c);title(' 加汉明窗时的复倒谱')