课件:语音信号处理解析.ppt_第1页
课件:语音信号处理解析.ppt_第2页
课件:语音信号处理解析.ppt_第3页
课件:语音信号处理解析.ppt_第4页
课件:语音信号处理解析.ppt_第5页
已阅读5页,还剩78页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数字信号处理,2/81,8 语音信号处理,3/81,引言,人类从大自然获取信息的分布图,4/81,引言,阿里巴巴利用“芝麻开门”的咒语防止不相干的人进入宝库,而现代“芝麻开门”系统比童话更好地防止假冒 。 这一进口通道控制的自动化系统是一个声音、图象和动作的综合认知系统。 它的信息输入部分由一个话筒和一个装在半透明的镜子后面的摄像机组成,训练时系统把人的声音和和嘴唇动作存入一个处理器。,5/81,引言,虚拟主持人 英国报纸联合新闻社设计出世界首位虚拟播音员安娜诺娃(安娜诺娃网络公司)(ANANOVA.COM) 中国“混血儿”虚拟主持人比尔 中国首个虚拟主持人言东方上班,比尔-邓 言东方,6/81,引言,英国电脑专家的杰作,科学家把她的性格和外貌塑造得尽善尽美安娜芳龄28岁,未婚,样貌糅合了辣妹乐队成员维多利亚、名模米诺格及新闻主播福德曼的五官特征,衣着入时,有品位,据说很有观众缘。报道新闻的时候,她表现冷静,声调令人愉快。亲切愉快的性情使她表面看起来文静而很有智慧。,7/81,引言,其实安娜背后是一套运行速度极高的电脑系统,能够全日不断地更新新闻资讯,把文字资讯迅速转变成声音,从她“口”中读出来,并配合脸部表情。电脑又即时制作动画配合有关新闻,然后利用最新的立体影像科技,在网上播出。技术人员指出,虽然现时人们大多利用电话线上网,影像效果不太理想,但随着宽频科技的急速发展,这个局限很快会被突破,在手提电话及视讯手表等数码媒体上播放新闻,也将指日可待。,8/81,引言,语音学科: 是研究语音过程的科学,包括发音语音学、声学语音学和听觉语音学三大分支。 发音语音学研究发音器官在发音过程中的运动和语音的音位特征; 声学语音学研究语音的物理属性,如语音声波的频率、振幅以及频谱特性等; 听觉语音学研究听觉和语音感知。,9/81,引言,研究的基本内容,说的是什么内容?,是谁在说话?,计算机去说话?,怎么把话说好?,语音识别,如电话订票系统,声纹识别,如“芝麻开门”系统,语音合成,如公交车报站台名,说话水平评估,如普通话测试系统,说的是什么语言?,语种识别,如国际电话翻译,10/81,引言,语音信号处理: 以语音学和数字信号处理为基础,目的是要得到一些语音参数以便高效的传输或存储,或者通过处理的某种运算以达到某种用途的要求,例如人工合成出语音,辨识出说话者,识别讲话的内容等。 语音编码 语音合成 语音识别 说话人识别,11/81,8.1 基本概念什么是语音,一、所谓语音: 语音是说话人和听者之间相互传递的信号,传递的媒介是声波,说话人的发音器官做出发声动作,接着空气振动形成声波,声波传到听者的耳朵里,立刻引起听者的听觉反应。,12/81,8.1 基本概念什么是语音,人类的发音器官,13/81,8.1 基本概念什么是语音,人类的语言器官,(a)闭合状态 浊音 (b)张开状态清音,甲状腺软骨,浊音:声带绷紧,气流通过时会使得开口变成一开一闭的周期性动作,这时候就造成周期性的激发气流,如a,o; 清音:声带完全舒展,声道某部位收缩形成一个狭窄的通道,产生空气湍流,如t,d; 爆破音:声带完全舒展,声道的某部位完全闭合,一旦闭合点突然开启,空气压力快速释放 ,如b,p。,14/81,8.1 基本概念什么是语音,语音四要素: (1)音高 指声音的高低,取决于发音体振动的快慢。发音体振动越快,发出的声音越高,反之声音则低。 物体每秒钟振动的次数叫频率,声学把频率作为测定物体振动快慢与声音高低的标准。 说声音的频率高就是说发音体在单位时间里振动次数多,它振动得快,发出的声音高,而频率低也就表示声音低。 频率的高低是由物体自身的质量、松紧度、长短等项因素决定的,大而沉、粗而厚、长而松的物体振动慢,音低;小而轻、细而薄、短而紧的物体振动快,音高。 语音的高低则与声带的长短、厚薄、松紧有关。通常,儿童和一般妇女的声带比成年男子的声带短而薄,所以声音高;而声音低的人声带相对说长而厚,如成年男子,女中、低音声乐演员,老人等。同一个人发出的声音有高低变化,则是靠控制声带的松紧来调节的。,15/81,8.1 基本概念什么是语音,典型声门脉冲波形,Tp为基音周期,倒数为基音频率,用fp表示,取决于声带的尺寸和特性 男性说话者的fp大致分布在60-200Hz范围内 女性说话者和小孩的fp值在200-450Hz范围内 同一个人所发出的声音有高低变化,是靠控制声带的松紧来调节的。,16/81,8.1 基本概念什么是语音,(2)音强 是指声音的强弱,它取决于发音体振动幅度的大小。 物体振动的幅度叫振幅,振幅大,发出的声音强度就大,振幅小,声音就弱。 振幅的大小是由引起物体振动的外力的大小决定的。 语音的强弱同发音时呼出气流量的大小和说话人用力的大小有关。发音时用力大,冲击声带或其他发音部位的气流强,语音就强。,17/81,8.1 基本概念什么是语音,(3)音长 指声音的长短,也就是声波延续的长度,它取决于发音体振动持续的时间。在语音中,再长的音实际上也很短,音长一般决定于发音动作持续的时间。 在四要素中,音高音强音色总是随着音波在时间上的延续表现出来的,音长的变化往往会影响到音质音高和音强,语音中就常会出现这种情况。如普通话的轻声,读轻声的字,声韵母的音质、声调的音高、音节的强度都可能与读它的本调时不同,但造成轻的决定性因素是音长缩短,轻声字音节的长度只有重读音节长度的一半左右,这使得声韵调原有的音高音强音质来不及完全表现,因而出现变化。,18/81,8.1 基本概念什么是语音,(4)音质 又叫音色,是一个声音能区别于其他声音的本质特点。声波的振动方式与共鸣器的共振作用,都决定着音质的差别。 世界上的声音很少是只有一种单纯频率的纯音,绝大多数声音都是由许多个频率和振幅不同的音波组成的复合音。复合音的各成分波之间频率和振幅相互影响,形成了特定的波形,产生出特定的音质。 从波形上看,音质可分为两类噪音与乐音。噪音是由许多无规则的音波合成的,它们的音高和强度随时在变化,相互之间没有一定的关系,合成的波形杂乱而无规律。这种声音听起来刺耳、嘈杂,如刹车声,电锯锯木声,马路上车驰笛鸣的喧闹声等等。语音中也有不少噪音成分,如辅声中的塞音、擦音、塞擦音等等。 乐音则由若干规则的纯音组成,形成的复合音波有周期性,很有规律,这样的声音听起来和谐、悦耳,歌声、乐声和语音中的元音,都是这样的声音。,19/81,8.1 基本概念什么是语音,从音波的产生上看,造成不同音质的发音条件有三种: 发音体不一样,口琴和笛子的音质不同,因为口琴的发音体是金属簧片,笛子的发音体是竹膜。 发音方法不一样,拍手掌发出的是“啪啪”声,两手掌来回搓发出的是“擦擦”声。在语音中,用阻碍气流的方法发出的是辅音,用不阻碍气流的方法发出是就是元音。 共鸣器形状不同。共鸣器有自己的振动频率,它会同跟自己频率相同或相近的音波产生共振,把它加强,其它频率的音波就会被抑制或消耗。不同形状的共鸣器频率不一样,即使是对同一束复合音波,产生的共振结果也不一样。对于语音来说,口鼻腔就是共鸣器,一个人不断改变口形就会发出不同的音。,20/81,8.1 基本概念什么是语音,1. 浊音的基音频率(F0): 由声带的尺寸、特性和声带所受张力决定,其值等于声带张开和闭合一次的时间的倒数。人类基音频率的范围在60Hz至450Hz左右。 2. 共振峰: 声道是一个谐振腔,当激励的频率达到至声道的固有频率,则声道会以最大的振幅振荡,此时的频率称之为共振峰或共振峰频率。 声道具有的一组共振峰,声道的频谱特性主要反映出这些共振峰的不同位置以及各个峰的频带宽度 。共振峰及其带宽取决于声道某一瞬间的形状和尺寸,因而不同的语音对应于一组不同的共振峰参数。 实际应用中,头三个共振峰最重要。,二、两个特性,21/81,8.1 基本概念什么是语音,如何计算共振峰? 理想状态下共振峰的计算:假设声道截面是均匀的(此时可把声道看作一个粗细均匀的圆筒),从喉到唇的距离L=17 cm,音速c=340 m/s,则共振峰将发生在:,22/81,8.2 语音基本操作,y, Fs, nbits = wavread(filename) filename:为指定载入的WAV格式的文件名称; y:为所读取的音频数据样本; Fs:为采样频率; nbits:为文件中每个样本的字节数。 例如: y,fs,bits=wavread(爸爸去哪儿.wav);,一、读文件,23/81,8.2 语音基本操作,sound(y,Fs) wavplay(y,Fs) audioplayer(y,Fs) y:音频信号; Fs:采样频率。,二、播放语音,MATLAB自带的声音: load chirp sound(y,Fs) %鸟声 load gong sound(y,Fs) %锣声 load handel sound(y,Fs) %哈里路亚 load laughter sound(y,Fs) %笑声 load splat sound(y,Fs) %啪哒声 load train sound(y,Fs) %火车,24/81,8.2 语音基本操作,改变采样频率的效果: Fs=8192; pause on sound(sin(pi*(1:4000)/2),2*Fs); pause(1) sound(sin(pi*(1:4000)/2),1.5*Fs); pause(1) sound(sin(2*pi*25*(1:4000)/100); pause(1) sound(sin(pi*(1:4000)/2),0.75*Fs); pause(1) sound(sin(pi*(1:4000)/2),0.5*Fs); pause(1) sound(sin(pi*(1:4000)/2),0.25*Fs); pause(1) sound(sin(pi*(1:2000)/2),0.1*Fs); pause off,25/81,8.2 语音基本操作,自制儿童乐曲: A4=440; pt=44100;p0=pt/2; scale12=A4/2(9/12)*2.(0:11)/12); map=1 3 5 6 8 10 12; % 七音符 score=1 1 5 5 6 6 5,. % 乐谱 4 4 3 3 2 2 1,. 5 5 4 4 3 3 2,. 5 5 4 4 3 3 2,. 1 1 5 5 6 6 5,. 4 4 3 3 2 2 1; rhythm=repmat(1 1 1 1 1 1 2,1,6); % 节拍 for i=1:length(score) % 播放 wavplay(sin(1:rhythm(i)*p0)/pt*2*pi*scale12(map(score(i),pt); end,26/81,例 1: 播放音乐,播放歌曲: y,fs,bits=wavread(爸爸去哪儿.wav); sound(y,fs);,27/81,例 1: 停止播放,clear all; y,Fs,nbits=wavread(爸爸去哪儿.wav); player=audioplayer(y,Fs); play(player); % 播放 pause(20); stop(player); % 停止,28/81,8.2 语音基本操作,y = wavrecord(n,Fs) 使用基于PC的音频输入设备 录音 n:记录音频信号采样; Fs:采样率。默认为11025Hz。 注:在高版本中用audiorecorder代替。 例如: Fs = 11025; y = wavrecord(5*Fs,Fs,int16); % 录音 pause(10); % 暂停10秒 wavplay(y,Fs); % 播放,三、录音,29/81,8.2 语音基本操作,wavwrite(y,filename) :将y存储到一个名为filename的WAVE文件数据。 wavwrite(y,Fs,filename):将y存储到一个名为filename的WAVE文件数据。该数据具有的FS赫兹采样率,假定为16位。 wavwrite(y,Fs,N,filename):将y存储到一个名为filename的WAVE文件数据。该数据具有的FS赫兹采样率和为N位,其中N为8,16,24或32。,四、保存音频文件,30/81,例 2 模拟录音,fs = 11025; x = wavrecord(3*fs, fs, int16); % 声音录入 wavwrite(x,fs,Mysound.wav); % 保存,31/81,8.3 语音的时域分析,我们说: 信号处理的宗旨:将信号中蕴藏的信息显露出来。 信号处理的全部: 映射 变换,32/81,8.3 语音的时域分析,语音可以直接用它的时间波形来表示,根据时间波形可以看出语音信号的一些主要特性。,Chirp信号波形,一、时域表示,33/81,8.3 语音的时域分析,由于语音信号通常是准稳态信号,所以我们在处理语音信号时,一般是一小段一小段地观察语音信号的变化,也就是以音窗也可称作语音帧为单位,对每一语音帧内的信号,抽取出代表语音的特征参数,这就是短时语音处理 分帧。 对于一段语音的离散时间信号x(m),用一个固定长度的窗口(window)套上去,只看窗口内的信号,对这些信号做计算,用以求出在这窗口内的语音特征(speech features)。这样的处理方式,就叫加窗(windowing),而套上去的这一段语音即称为语音帧(frame)。 通常窗口的长度是取1040 毫秒 (ms),这样一段语音信号,足以计算出语音的特征参数(feature parameters)。,二、短时处理思想,34/81,8.3 语音的时域分析,窗口的移动距离,大约会取520 ms,让前后的语音帧有部分重叠(也称帧移M),帧移与帧长的比例一般设为1:2,这样能观察到语音特征改变的延续性以保证分析的准确性。,35/81,8.3 语音的时域分析,n是加窗位置标示,可以看出只有当m在n-N+1mn之间, 才不会是0,也就是x(m)在n-N+1mn这一时段中被取出,作为一个语音帧。,36/81,8.3 语音的时域分析,语音处理中最常用的窗函数是矩形窗、汉宁窗和哈明窗。,37/81,8.3 语音的时域分析,短时平均能量函数:,三、短时平均能量,该函数能反映出语音的能量或语音振幅随时间缓慢变化的规律。 主要用途: 区分清音段和浊音段 区分声母和韵母 区分无声和有声的分界(信噪比较高的信号) 区分连字的边界 用于语音识别,或,38/81,分帧函数:,function xn=enframe1(x,N,M) % N:窗的长度,即帧长;M:重叠长度,即帧移 T=N-M; wn=hamming(N); x_num=length(x); % 确定数据的长度 frame_num=ceil(x_num-N)/T)+1; % 确定帧的数目 if size(x,1)=1, x=x; end for i=1:frame_num-1 xn(:,i)=wn.*x(T*(i-1)+1:T*(i-1)+N); end % 对最后一帧进行处理 if x_num=N+(frame_num-1)*T % 数据正好可以分为整数帧的情况 xn(:,frame_num)=wn.*x(T*(frame_num-1)+1:T*(frame_num-1)+N); else % 如果不为整数帧,需要补0操作 zero_num=N+(frame_num-1)*T-x_num; % 确定补0的数目 xn(:,frame_num)=(x(T*(frame_num-1)+1):x_num), zeros(1,zero_num); xn(:,frame_num)=wn.*xn(:,frame_num); end,39/81,分帧函数:,测试代码: x=1,2,-1,1,1,-1,-1,0,1,1,1,1,3,1,1,1,1,1,6,-1,1,1,1,-1,1,1,1,1,-1,1,2,3; xn=enframe1(x,10,5); 结果如下: xn = 0.0800 -0.0800 0.0800 0.0800 0.0800 0.0800 0.3752 -0.1876 0.1876 0.1876 0.1876 0.1876 -0.4601 0 1.3804 0.4601 0.4601 0.4601 0.7700 0.7700 0.7700 4.6200 -0.7700 -0.7700 0.9723 0.9723 0.9723 -0.9723 0.9723 0.9723 -0.9723 0.9723 0.9723 0.9723 0.9723 1.9445 -0.7700 0.7700 0.7700 0.7700 0.7700 2.3100 0 1.3804 0.4601 0.4601 0.4601 0 0.1876 0.1876 1.1257 -0.1876 -0.1876 0 0.0800 0.0800 -0.0800 0.0800 0.0800 0,40/81,例 3: 短时平均能量,load chirp; % 加载鸟鸣信号 subplot(3,1,1),plot(y); h1=linspace(1,1,64); %形成一个矩形窗,长度为N En1=conv(h1,y.*y); % 求y平方与h的卷积,从而短时能量函数En subplot(3,1,2),plot(En1); legend(N= 64); h2=linspace(1,1,512); %形成一个矩形窗,长度为N En2=conv(h2,y.*y); % 求y平方与h的卷积,从而短时能量函数En subplot(3,1,3),plot(En2); legend(N=512);,41/81,8.3 语音的时域分析,短时平均幅度函数定义如下:,四、短时平均幅度,2019/8/25,42,可编辑,43/81,例 4: 短时平均幅度,load chirp; % 加载鸟鸣信号 subplot(3,1,1),plot(y); title(原信号); h1=linspace(1,1,64); %形成一个矩形窗,长度为N M1=conv(h1,abs(y); %求y绝对值与h的卷积,从而得短时平均幅度 subplot(3,1,2),plot(M1); title(N=64的短时平均幅度); legend(N= 64); h2=linspace(1,1,512); M2=conv(h2,abs(y); subplot(3,1,3),plot(M2); title(N=512的短时平均幅度); legend(N=512);,44/81,8.3 语音的时域分析,所谓过零,是指信号波形穿越时间轴或零值线。 对于离散时间信号而言,过零就是相邻的取样值符号改变。 平均过零率:单位时间(或单位样本)内过零的次数。 计算一个语音帧内单位时间越过零线的平均次数,可以得出其短时平均过零率或短时平均过零数。 声带振动时,是在发浊音,所以过零率低,声带不振动时,是在发清音,所以过零率就高,没有声音时若有噪音存在,也会有较高的过零率。,五、过零,45/81,8.3 语音的时域分析,短时平均过零率的计算方法:,46/81,例 5:过零率,load chirp; % 加载鸟鸣信号 n=length(y); N=320; subplot(3,1,1),plot(y); h=linspace(1,1,N); %形成一个矩形窗,长度为N En=conv(h,y.*y); %求卷积得其短时能量函数En subplot(3,1,2),plot(En); for i=1:n-1 if y(i)=0 b(i)= 1; else b(i) = -1; end if y(i+1)=0 b(i+1)=1; else b(i+1)=-1; end w(i)=abs(b(i+1)-b(i); %求出每相邻两点符号的差值的绝对值 end,47/81,例 5:过零率,k=1; j=0; while (k+N-1)n Zm(k)=0; for i=0:N-1; Zm(k)=Zm(k)+w(k+i); end j=j+1; k=k+160; %每次移动半个窗 end for w=1:j Q(w)=Zm(160*(w-1)+1)/640; %短时平均过零率 end subplot(3,1,3),plot(Q);,48/81,8.3 语音的时域分析,过零率的实际应用: 区分清、浊音。 在背景噪声较大的情况下,从噪声信号中找出语音信号,判断出语音的起点和终点。 注意: 对于弱摩擦音f、h,弱爆破音p、t、k,鼻音ng、n、m,只用En(Mn)或Zn中一个参量判断语音的起点和终点是有困难的,必须同时用En和Zn或Mn和Zn。,49/81,8.3 语音的时域分析,语音端点检测: 利用短时平均能量函数曲线与短时平均过零率曲线,我们可以做语音的端点检测(end-point detection)。 在语音未开始之前,会取到一段背景噪音的信号,在语音结束之后也会取到一段背景噪音。语音端点检测就是要找出语音从第几个语音帧开始,到第几个语音帧结束。,50/81,8.3 语音的时域分析,六、短时自相关,基本应用: 语音段起止端点判断 基音周期的估计,51/81,8.3 语音的时域分析,时域分析的致命缺陷: 难以区分振动源的数目,即不知道是由多少个基准信号的叠加。 【例】下面的信号由三个信号合成而得到。 其波形参见下页图形。,52/81,8.3 语音的时域分析,无法区分到底是由哪些信号合成?,53/81,8.4 频域表示,语音的频谱特性由声道的形状和尺寸决定。,Chirp信号谱,54/81,8.4 频域表示,y,fs,nbits=wavread(从头再来.wav); sampleNumber=length(y); fftValue=fft(y); subplot(311), plot(y); title(时域); mag=abs(fftValue); phase=angle(fftValue); phase=phase*180/pi; subplot(312),plot(mag); title(幅频响应); subplot(313),plot(phase); title(相频响应);,例子,55/81,8.4 频域表示,Fourier变换(FT)将信号表示成无限多个正弦函数的加权和。由于这些正弦函数的频率不变,且其波形无始无终,因此, Fourier变换: 只适合于信号组成分量的频率不随时间变化的平稳信号; 其分析结果也仅能给出该信号是由多少个正弦信号的叠加而成; 而不能给出这些信号何时出现、何时消逝等信息。,缺陷:,56/81,例 6: FT的缺陷,y, Fs, nbits = wavread(鸟鸣.wav) ; sound(y,Fs); subplot(2,2,1); plot(y); title(原信号时域波形); Yk=abs(fft(y,8192); subplot(2,2,2); plot(Yk(1:8192/2); title(原信号幅度谱); x=flipud(y); % 将y倒置 subplot(2,2,3);plot(x); title(倒置信号时域波形); Xk=abs(fft(x,8192); subplot(2,2,4); plot(Xk(1:8192/2); title(倒置信号幅度谱);,57/81,8.5 短时傅里叶变换,非均匀 非是不变 非线性 非确定 非结构化 非周期 非对称 ,“想入非非的时代”,思想: 将时域-频域联合起来,即将原本一维的时间信号表示成二维的时间-频率密度函数形式。 目标: 揭示信号中包含了多少个分量,且每个分量是如何随时间变化的。,58/81,8.5 短时傅里叶变换,短时傅里叶变换(Short-Time Fourier Transform,STFT ): 用以确定时变信号其局部区域正弦波的频率与相位。 基本思想:选择一个时频局部化的窗函数,假定分析窗函数g(t)在一个短时间间隔内是平稳(伪平稳)的,移动窗函数,使f(t)g(t)在不同的有限时间宽度内是平稳信号,从而计算出各个不同时刻的功率谱。 短时傅里叶变换使用一个固定的窗函数,窗函数一旦确定了以后,其形状就不再发生改变,短时傅里叶变换的分辨率也就确定了。如果要改变分辨率,则需要重新选择窗函数。 短时傅里叶变换用来分析分段平稳信号或者近似平稳信号犹可,但是对于非平稳信号,当信号变化剧烈时,要求窗函数有较高的时间分辨率;而波形变化比较平缓的时刻,主要是低频信号,则要求窗函数有较高的频率分辨率。 短时傅里叶变换不能兼顾频率与时间分辨率的需求,时间与频率分辨率不能同时达到最优。,59/81,8.5 短时傅里叶变换,一、定义 短时傅里叶变换的定义:,两种解释:,1)n固定 FT,2) 固定 Linear Filter,60/81,8.5 短时傅里叶变换,透过位于n处的窗口所观察到的语音短段的傅立叶变换。n取不同值时,窗w(n-m)沿时间轴滑到不同位置,取出不同的语音段,故 不仅是 的函数,还是时间n的函数。,61/81,8.5 短时傅里叶变换,频率分辨率f、取样周期T、加窗宽度N三者关系: 窗形状对短时傅立叶变换的影响 矩形窗主瓣窄,衰减慢; 汉明窗主瓣宽,衰减快; 窗宽对短时频谱的影响 窗宽长频率分辨率高,能看到频谱快变化; 窗宽短频率分辨率低,看不到频谱的快变化;,62/81,8.5 短时傅里叶变换,二、移动窗形状对 的影响,元音a的短时幅度谱(n=512),rectangular window,hamming window,63/81,8.5 短时傅里叶变换,从短时频谱图中可知: 快速变化,由激励信号引起的; 慢速变化,声道滤波器的共振峰特性引起的; 采用汉明窗得到的短时频谱较矩形窗平滑,因而在语音分析中汉明窗用得较普遍。,hamming window,64/81,三、窗宽对 的影响,窗宽为64点(10kHz)元音a的短时频谱图 短窗的频率分辨率下降,频谱图中丢失了关于语音基音周期的信息,只保留慢变化。,矩形窗,汉明窗,8.5 短时傅里叶变换,65/81,8.5 短时傅里叶变换,四、STFT的线性滤波实现,第1种:,66/81,8.5 短时傅里叶变换,第2种:,67/81,8.5 短时傅里叶变换,语音的时域分析和频域分析是语音分析的两种重要的方法,但是这两种方法均有局限性: 时域分析对语音信号的频率特性没有直观的了解; 频域特性中又没有语音信号随时间的变化关系。 因此人们致力于研究将时域分析和频域相结合,综合了频谱图和时域波形的优点,明显得展示了语音频谱随时间的变化情况。,五、语谱图,68/81,8.5 短时傅里叶变换,69/81,8.5 短时傅里叶变换,语谱图结构: 横轴为时间; 纵轴为频率; 强度用灰度来表示,指示特定频带的能量大小,即声音的强弱。 根据滤波器的带宽可将语谱图分为两类。带宽为300 Hz的宽带语谱图可以显示细致的时间结构,但谐波结构就不太清楚。对于一个有声带振动的声音来说,语谱图上有垂直的条纹,每一个条纹代表了声门的一次开放。而宽的横带则为共振峰。带宽为45 Hz的窄带语谱图使时间的结构模糊,但是频率的信息则较好。在较宽的共振峰带中可以看到各别的谐波频率。,70/81,8.5 短时傅里叶变换,时域波形与语谱图,71/81,8.5 短时傅里叶变换,共振峰与语谱图,在频域上,能量集中处就是共振峰之所在,在语谱图上就是颜色较深的位置。 在发元音时,音强较大,声带振动而呈现出基频及其谐振频率,也可以明显看到共振峰,能量集中在低频。 如果是发辅音,而且声带不振动,就看不到谐振频率。通常辅音的音强小,颜色看来就比较淡,而且能量较集中在高频。 若是在没有语音的空档,则语谱图上呈现的,就是有一段空白。,72/81,使用相关函数,1. 使用tfrstft函数实现STFT 由于一般情况下MATLAB未提供该函数,需要自行安装。 下载最新的时频分析工具箱,假设为tftb; 将tftb复制到MATLAB安装目录下的toolbox目录下面 使用下列语句将该工具箱的路径添加到搜索路径下: addpath(genpath(C:Program FilesMATLABR2009atoolboxtftb) 在命令窗口中输入下面的命令: which tfrstft 若显示路径正确,则表示安装成功。,73/81,使用相关函数,函数: TFR,T,F=TFRSTFT(X,T,N,H,TRACE) X:待分析信号. T:时间 (默认值: 1:length(X); N:频率点数 (默认值: length(X); H:选择的平滑窗函数 (默认值: Hamming(N/4); TRACE:如果不为零,跟踪计算过程 (default : 0); TFR:得到的时频谱值(复数); F:归一化频率。,74/81,使用相关函数,2. 使用specgram函数: b,f,t=specgram(data,nfft,Fs,window,numoverlap);,目前,该函数已被spectrogram函数取代。,75/81,使用相关函数,3. spectrogram函数 S = spectrogram(x) S = spectrogram(x,window) S = spectrogram(x,window,noverlap) S = spectrogram(x,window,noverlap,nfft) S = spectrogram(x,window,noverlap,nfft,fs) S,F,T = spectrogram(x,window,noverlap,F) S,F,T = spectrogram(x,window,noverlap,F,fs) x:输入信号的向量。若无后续输入参数,x将被分成8段分别做变换处理。如果x不能被平分成8段,则会做截断处理; window:默认为Hamming窗;,76/81,使用相关函数,noverlap:各段之间重叠的采样点数。默认存在50%的重叠; nfft:计算离散傅里叶变换的点数。默认为256和大于每段长度的最小2次幂之间的最大值。 fs:采样频率Hz,默认为1Hz。 S:输入信号x的短时傅

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论