第5章 语音信号的频域分析
- 格式:ppt
- 大小:2.54 MB
- 文档页数:37
实验二语音信号的频域特性一、实验目的(1)结合汉语语音信号的各类音素和复元音的特点分析其频域性质;(2)熟悉语音信号的各类音素和复元音的频域参数;(3)熟悉声音编辑软件PRAAT的简单使用和操作。
二、实验记录与思考题1. 观察语音信号的频域特点,总结其规律。
浊音段:其谱线结构是与浊音信号中的周期信号密切相关。
具有与基音及其谐波对应的谱线。
频谱包络中有几个凸起点,与声道的谐振频率相对应。
这些凸起点为共振峰。
清音段:清音的频谱无明显的规律,比较平坦。
2.总结清音/b/p/m/f/d/t/n/l/g/k/h/j/q/x/z/c/s/zh/ch/sh/r/共21个的语谱图的规律,给出辅音的能量集中区;语谱图中的花纹有横杠、乱纹和竖直条。
横杠是与时间轴平行的几条深黑色带纹,它们是共振峰。
从横杠对应的频率和宽度可以确定相应的共振峰频率和带宽。
在一个语音段的语谱图中,有没有横杠出现是判断它是否是浊音的重要标志。
竖直条是语谱图中出现于时间轴垂直的一条窄黑条。
每个竖直条相当于一个基音,条纹的起点相当于声门脉冲的起点,条纹之间的距离表示基音周期,条纹越密表示基音频率越高。
b,p……清音的语谱图为乱纹。
辅音的能量集中区为:高频区3. 总结浊音/a/o/e/i/u/ü/ao/ai/ei/ou/ie /an/en/in/ang/eng/ong/ing/共18个的语谱图的规律,提取这18个浊音的基频、前三个共振峰频率4./r/、/m/、/n/、/l/ 从这几个音素的的基频、共振峰频率5.分析宽带语谱图和窄带语谱图的不同之处,请解释原因;语谱图中的花纹有横杠、乱纹和竖直条等。
横杠是与时间轴平行的几条深黑色带纹,它们是共振峰。
从横杠对应的频率和宽度可以确定相应的共振峰频率和带宽。
在一个语音段的语谱图中,有没有横杠出现是判断它是否是浊音的重要标志。
竖直条(又叫冲直条)是语谱图中出现与时间轴垂直的一条窄黑条。
每个竖直条相当于一个基音,条纹的起点相当于声门脉冲的起点,条纹之间的距离表示基音周期。
实验二 基于MATLAB 分析语音信号频域特征一、实验目的信号的傅立叶表示在信号的分析与处理中起着重要的作用。
因为对于线性系统来说,可以很方便地确定其对正弦或复指数和的响应,所以傅立叶分析方法能完善地解决许多信号分析和处理问题。
另外,傅立叶表示使信号的某些特性变得更明显,因此,它能更深入地说明信号的各项物理现象。
由于语音信号是随着时间变化的,通常认为,语音是一个受准周期脉冲或随机噪声源激励的线性系统的输出。
输出频谱是声道系统频率响应与激励源频谱的乘积。
声道系统的频率响应及激励源都是随时间变化的,因此一般标准的傅立叶表示虽然适用于周期及平稳随机信号的表示,但不能直接用于语音信号。
由于语音信号可以认为在短时间内,近似不变,因而可以采用短时分析法。
本实验要求掌握傅里叶分析原理,会利用已学的知识,编写程序估计短时谱、倒谱,画出语谱图,并分析实验结果,在此基础上,借助频域分析方法所求得的参数分析语音信号的基音周期或共振峰。
二、实验原理1、短时傅立叶变换由于语音信号是短时平稳的随机信号,某一语音信号帧的短时傅立叶变换的定义为:()()()jwjwmn m X e x m w n m e∞-=-∞=-∑ (1.1)其中w(n-m)是实窗口函数序列,n 表示某一语音信号帧。
令n-m=k',则得到(')'()(')(')jwjw n k n k X e w k x n k e∞--=-∞=-∑ (1.2)于是可以得到()()()jw jwnjwkn k X e ew k x n k e∞-=-∞=-∑ (1.3)假定()()()jwjwkn k X e w k x n k e∞=-∞=-∑ (1.4)则可以得到()()jw jwn jw n n X e e X e -= (1.5)同样,不同的窗口函数,将得到不同的傅立叶变换式的结果。
由上式可见,短时傅立叶变换有两个变量:n 和ω,所以它既是时序n 的离散函数,又是角频率ω的连续函数。
实验二:语音信号的频域分析实验目的:以MATLAB 为工具,研究语音信号的频域特性,以及这些特性在《语音信号处理》中的应用情况。
实验要求:利用所给语音数据,分析语音的频谱、语谱图、基音频率、共振峰等频域参数。
要求会求取这些参数,并举例说明这些参数在语音信号处理中的应用。
实验内容:1、 语音信号的频谱分析1.1加载“ma1_1”语音数据。
基于DFT 变换,画出其中一帧数据(采样频率为8kHz ,帧长为37.5ms ,每帧有300个样点)的频域波形(对数幅度谱)。
load ma1_1;x = ma1_1 (4161:4460); plot (x)N = 1024; k = - N/2:N/2-1;X = fftshift (fft (x.*hann (length (x)),N));plot (k,20*log10 (abs(X))), axis ([0 fix(N/2) -inf inf ])已知该帧信号的时域波形如图(a )所示,相应的10阶LPC 谱如图(b )所示。
问题1:这帧语音是清音还是浊音?基于DFT 求出的对数幅度谱和相应的LPC 谱相比,两者有什么联系和区别?问题2:根据这帧基于DFT 的对数幅度谱,如何估计出共振峰频率和基音周期?问题3:时域对语音信号进行加窗,反映在频域,其窗谱对基于DFT 的对数幅度谱有何影响?如何估计出窗谱的主瓣宽度?1.2对于浊音语音,可以利用其频谱)(ωX 具有丰富的谐波分量的特点,求出其谐波乘积谱:∏==R r r X HPSx 1)()(ωω式中,R 一般取为5。
在谐波乘积谱中,基频分量变得很大,更易于估计基音周期。
1.3加载“vowels.mat”语音数据,分别画出一帧/i/和一帧/u/(采样频率为10kHz,帧长为30ms,每帧有300个样点)的基于DFT的对数幅度谱。
其Matlab代码如下:load vowelsx = vowels.i_1(2001:2300);N = 1024; k= -N/2:N/2-1;X = fftshift (fft (x.*hann (length(x)),N));plot (k,20*log10(abs(X))), axis([0 fix(N/2) 0 100])x = vowels.u_1(2001:2300);N= 1024; k = -N/2:N/2-1;X = fftshift (fft (x.*hann(length(x)),N));plot (k,20*log10(abs(X))), axis([0 fix(N/2) 0 100])1.4画出一帧清音语音的基于DFT的对数幅度谱。
《语音数字信号处理》课程简介课程编号:06044008课程名称:语音数字信号处理/ Speech Digital Signal Processing学分:2学时:32 (实验:0 上机:0 课外实践:0 )适用专业:电子信息工程建议修读学期:7开课单位:电气与信息工程学院电子信息与通信工程系先修课程:《数字信号处理》、《MATLAB及应用》、《随机信号处理》考核方式与成绩评定标准:作业、考试(闭卷)教材与主要参考书目:主要教材:《语音信号处理》主编:赵力机械工业出版社2011-6T参考书目:《离散时间语音信号处理》主编:夸特尔瑞电子工业出版社2004-87内容概述:《语音数字信号处理》是电子信息工程专业本科生的专业必修课程。
它系统地介绍了语音信号处理涉及的主要内容和方法,讲述语音信号的应用前景、语音信号处理流程及流程中涉及到的相关知识点,每个知识点通过案例仿真讲述其应用的结果。
主要内容分四部分:(1)基础部分:语音信号基础知识、人的发音原理、人的听觉原理、语音的数学模型;(2)语音信号分析方法:时域分析、频域分析、同态处理和线性预测分析;(3)语音信号涉及的新技术:矢量量化和隐马尔可夫模型;(4)语音的四个方面应用:语音编码、语音识别、语音合成和语音增强;通过《语音数字信号处理》学习,使学生掌握语音信号发音和听觉原理、语音信号的数字模型; 语音的时域、频域、倒谱、线性预测的分析方法;矢量量化;隐马尔可夫模型;语音波形编码、参数编码、混合编码;语音的合成;语音识别和语音增强的原理和技术,为学生毕业后从事语音处理工作和进一步研究相关课题打下一定的基础。
《嵌入式系统及应用》教学大纲课程编号:06044008课程名称:语音数字信号处理/ Speech Digital Signal Processing学分:2学时:32 (实验:0 上机:0 课外实践:0 )适用专业:电子信息工程建议修读学期:7开课单位:电气与信息工程学院电子信息与通信工程系先修课程:《数字信号处理》、《MATLAB及应用》、《随机信号处理》一、课程性质、目的与任务《语音数字信号处理》是电子信息工程专业本科生的专业必修课程。
第一章引言语音信号是一种非平稳的时变信号,它携带着各种信息。
在语音编码、语音合成、语音识别和语音增强等语音处理中无一例外需要提取语音中包含的各种信息。
语音信号分析的目的就在与方便有效的提取并表示语音信号所携带的信息。
语音信号分析可以分为时域和频域等处理方法。
语音信号可以认为在短时间内(一般认为在 10~30ms 的短时间内)近似不变,因而可以将其看作是一个准稳态过程, 即语音信号具有短时平稳性。
任何语音信号的分析和处理必须建立在“短时”的基础上, 即进行“短时分析”。
时域分析:直接对语音信号的时域波形进行分析,提取的特征参数有短时能量,短时平均过零率,短时自相关函数等。
频域分析:对语音信号采样,并进行傅里叶变换来进行频域分析。
主要分析的特征参数:短时谱、倒谱、语谱图等。
本文采集作者的声音信号为基本的原始信号。
对语音信号进行时频域分析后,进行加白噪声处理并进行了相关分析,设计滤波器并运用所设计的滤波器对加噪信号进行滤波, 绘制滤波后信号的时域波形和频谱。
整体设计框图如下图所示:图1.1时频域分析设计图图1.2加噪滤波分析流程图第二章 语音信号时域分析语音信号的时域分析可直接对语音信号进行时域波形分析,在此只只针对语音信号的短时能量、短时平均过零率、短时自相关函数进行讨论。
2.1窗口选择由人类的发生机理可知,语音信号具有短时平稳性,因此在分析讨论中需要对语音信号进行加窗处理进而保证每个短时语音长度为10~30ms 。
通常选择矩形窗和哈明窗能得到较理想的“短时分析”设计要求。
两种窗函数的时域波形如下图2.1所示:samplew (n )samplew (n )图2.1 矩形窗和Hamming 窗的时域波形矩形窗的定义:一个N 点的矩形窗函数定义为如下{1,00,()n Nw n ≤<=其他(2.1)哈明窗的定义:一个N 点的哈明窗函数定义为如下0.540.46cos(2),010,()n n NN w n π-≤<-⎧⎨⎩其他= (2.2)这两种窗函数都有低通特性,通过分析这两种窗的频率响应幅度特性可以发现(如图2.2):矩形窗的主瓣宽度小(4*pi/N ),具有较高的频率分辨率,旁瓣峰值大(-13.3dB ),会导致泄漏现象;哈明窗的主瓣宽8*pi/N ,旁瓣峰值低(-42.7dB ),可以有效的克服泄漏现象,具有更平滑的低通特性。
语音信号的短时频域分析目录一、内容简述 (2)二、基础知识 (2)2.1 语音信号处理基础 (3)2.1.1 语音信号的特点 (5)2.1.2 语音信号的数字表示 (6)2.2 频域分析介绍 (7)三、短时傅里叶变换 (8)3.1 STFT的基本原理 (9)3.2 STFT的应用场景 (10)3.3 窗函数的选择和影响 (11)四、短时傅里叶变换的变体 (12)4.1 连续小波变换 (13)4.1.1 CWT的基本概念 (14)4.1.2 CWT与STFT的比较 (15)4.2 离散小波变换 (16)4.2.1 DWT的基本概念 (18)4.2.2 DWT在语音信号处理中的应用 (19)五、短时频域特征提取 (20)5.1 梅尔频率倒谱系数 (21)5.1.1 MFCC的计算过程 (23)5.1.2 MFCC在语音识别中的作用 (24)5.2 谐波和基频估计 (26)5.2.1 基本周期分析与提取 (26)5.2.2 基频和共振峰的定位 (28)六、短时频域分析在实际中的应用 (29)6.1 语音增强 (30)6.2 语音去噪 (32)6.3 说话人识别与语音合成 (33)七、总结 (35)7.1 短时频域分析方法总结 (36)7.2 语音信号处理领域的发展趋势 (37)7.3 下一步研究方向与思考 (38)一、内容简述语音信号的短时频域分析是语音处理领域中一项重要的技术,该技术主要通过对语音信号进行短时的时间窗口划分,然后在每个时间窗口内进行频域分析,从而提取语音信号的频率特性。
这种分析方法有助于我们理解语音信号在不同时间段的频率变化,对于语音识别、语音合成、音频信号处理等领域具有广泛的应用价值。
本文将详细介绍短时频域分析的基本原理、方法、步骤以及在实际应用中的效果评估。
通过本文的阅读,读者将能够了解如何对语音信号进行短时频域分析,从而深入理解和掌握这一技术的实际应用。
二、基础知识信号是信息传递的一种形式,可以是模拟的或数字的。
实验一、语音信号的时域特性和频域特性学院:信息与通信工程学院专业:通信工程班级:104学号:2010026410姓名:黄余芳指导教师:崔艳秋1.实验名称语音信号的时域特性和频域特性2.实验类型验证性实验3.实验目的观察并验证语音信号的时域特性和频域特性,理解并掌握典型的语音信号时域分析方法和频域分析方法,为深入学习数字语音信号处理的相关理论奠定基础。
4.实验设备安装有MATLAB的计算机5.实验内容1.输入并运行MATLAB代码。
2.观察语音信号的时域特性(1)发一个清音和一个浊音,由麦克风采集语音数据,参考实验内容1中的程序将这些数据分别存成两个“.wav”文件(例如[a]的语音存为“a.wav”,要求采样率为8000),存在本人的文件夹中。
(2)读取WA V文件,显示语音波形,观察清音和浊音波形的差异。
(3)读取WA V文件,计算并显示语音的短时能量(要求分帧加窗的帧长为256,帧移为128),观察并分析清音和浊音短时能量的差异。
(4)读取WA V文件,计算并显示语音的短时过零率(要求分帧加窗是的帧长为256,帧移为128),观察并分析清音和浊音短时过零率的差异。
3. 观察语音信号的频域特性(1)读取WA V文件,计算并显示一帧语音的原始信号、加窗信号、短时频谱(要求分帧加窗的窗函数为汉明窗、帧长为256,帧移为128),观察并分析清音和浊音短时频谱的差异。
(2)读取WA V文件,计算并显示不同窗函数情况下一帧语音的加窗信号、短时频谱(要求分帧加窗的窗函数分别为矩形窗和汉明窗、帧长为256,帧移为128),观察并分析不同的窗函数对短时谱分析的影响。
6.相关函数wavread、plot、fft7.MATLAB程序代码1. 输入并运行以下MATLAB代码。
(1) 短时能量clear;close all;Fs=11025;y=wavrecord(5*Fs,Fs,'double'); wavwrite(y,'f:\\a');soundview(y,Fs);x = wavread('f:\\a.wav');x = double(x);x = filter([1 -0.9375], 1, x); % 预加重FrameLen = 256;FrameInc = 128;s = enframe(x, FrameLen, FrameInc); energy = sum(abs(s), 2);figure;subplot(2,1,1);plot(x);title('语音信号时域波形');xlabel('样点数');ylabel('幅度');subplot(2,1,2);plot(energy);title('语音信号的短时能量');xlabel('帧数');ylabel('短时能量');legend('帧长FrameLen = 240');(2) 短时过零率clear;close all;x = wavread('f:\\a.wav');x = double(x);FrameLen = 256;FrameInc =128;tmp1 = enframe(x(1:end-1), FrameLen, FrameInc);tmp2 = enframe(x(2:end) , FrameLen, FrameInc);signs = (tmp1.*tmp2)<0;diffs = (tmp1 -tmp2)>0.02;zcr = sum(signs.*diffs, 2);figure;subplot(2,1,1);plot(x);title('语音信号时域波形');xlabel('样点数');ylabel('幅度');subplot(2,1,2);plot(zcr);xlabel('帧数');ylabel('短时过零率');title('语音信号的短时过零率');(3) 短时傅里叶变换clear;close all;x = wavread('f:\\a.wav');x = double(x);FrameLen =256;FrameInc =128;s = enframe(x, FrameLen, FrameInc);ss=s(50,:); %选取一帧语音信号(可以通过观察短时能量的分布来判断哪一帧是清音段还是浊音段)f=ss'.*hamming(length(ss));r=fft(f,512);r1=abs(r);r1=r1/max(r1);yuanlai=20*log10(r1);signal(1:256)=yuanlai(1:256);pinlv=(0:1:255)*11025/512;figure;subplot(3,1,1);plot(ss);axis([0,256,-1,1])title('截取的语音段');xlabel('样点数');ylabel('幅度');subplot(3,1,2);plot(f);axis([0,256,-1,1])title('窗选语音信号');xlabel('样点数');ylabel('幅度');subplot(3,1,3);plot(pinlv,signal);xlabel('频率/Hz');ylabel('对数幅度/dB');title ('加Hamming窗时语音频谱');(4) 显示清音短时过零率clear;close all;x = wavread('f:\\k.wav');x = double(x);FrameLen = 256;FrameInc =128;tmp1 = enframe(x(1:end-1), FrameLen, FrameInc); tmp2 = enframe(x(2:end) , FrameLen, FrameInc); signs = (tmp1.*tmp2)<0;diffs = (tmp1 -tmp2)>0.02;zcr = sum(signs.*diffs, 2);figure;subplot(2,1,1);plot(x);title('语音信号时域波形');xlabel('样点数');ylabel('幅度');subplot(2,1,2);plot(zcr);xlabel('帧数');ylabel('短时过零率');title('语音信号的短时过零率');2:语音信号的频域分析1.加汉明窗的浊音clear;close all;x = wavread('f:\\a.wav');x = double(x);FrameLen =256;FrameInc =128;s = enframe(x, FrameLen, FrameInc);ss=s(125,:); %选取一帧语音信号(可以通过观察短时能量的分布来判断哪一帧是清音段还是浊音段)f=ss'.*hamming(length(ss));r=fft(f,512);r1=abs(r);r1=r1/max(r1);yuanlai=20*log10(r1);signal(1:256)=yuanlai(1:256);pinlv=(0:1:255)*11025/512;figure;subplot(3,1,1);plot(ss);axis([0,256,-1,1])title('截取的语音段');xlabel('样点数');ylabel('幅度');subplot(3,1,2);plot(f);axis([0,256,-1,1])title('窗选语音信号');xlabel('样点数');ylabel('幅度');subplot(3,1,3);plot(pinlv,signal);xlabel('频率/Hz');ylabel('对数幅度/dB');title ('加Hamming窗时语音频谱2.加汉明窗的清音clear;close all;x = wavread('f:\\k.wav');x = double(x);FrameLen =256;FrameInc =128;s = enframe(x, FrameLen, FrameInc);ss=s(90,:); %选取一帧语音信号(可以通过观察短时能量的分布来判断哪一帧是清音段还是浊音段)f=ss'.*hamming(length(ss));r=fft(f,512);r1=abs(r);r1=r1/max(r1);yuanlai=20*log10(r1);signal(1:256)=yuanlai(1:256);pinlv=(0:1:255)*11025/512;figure;subplot(3,1,1);plot(ss);axis([0,256,-1,1])title('截取的语音段');xlabel('样点数');ylabel('幅度');subplot(3,1,2);plot(f);axis([0,256,-1,1])title('窗选语音信号');xlabel('样点数');ylabel('幅度');subplot(3,1,3);plot(pinlv,signal);xlabel('频率/Hz');ylabel('对数幅度/dB');title ('加Hamming窗时语音频谱3.加矩形窗的浊音clear;close all;x = wavread('f:\\a.wav');x = double(x);FrameLen =256;FrameInc =128;s = enframe(x, FrameLen, FrameInc);ss=s(125,:); %选取一帧语音信号(可以通过观察短时能量的分布来判断哪一帧是清音段还是浊音段)f=ss'.*rectwin(length(ss));r=fft(f,512);r1=abs(r);r1=r1/max(r1);yuanlai=20*log10(r1);signal(1:256)=yuanlai(1:256);pinlv=(0:1:255)*11025/512;figure;subplot(3,1,1);plot(ss);axis([0,256,-1,1])title('截取的语音段');xlabel('样点数');ylabel('幅度');subplot(3,1,2);plot(f);axis([0,256,-1,1])title('窗选语音信号');xlabel('样点数');ylabel('幅度');subplot(3,1,3);plot(pinlv,signal);xlabel('频率/Hz');ylabel('对数幅度/dB');title ('加矩形窗时语音频谱)8.实验结果及其分析浊音(1) 短时能量0.51 1.52 2.53 3.54x 104-1012语音信号时域波形样点数幅度050100语音信号的短时能量帧数短时能量(2) 短时过零率0.511.52 2.533.54x 104-1-0.500.51语音信号时域波形样点数幅度102030帧数短时过零率语音信号的短时过零率(3) 短时傅里叶变换01截取的语音段样点数幅度5010015020025001窗选语音信号样点数幅度-1000频率/Hz对数幅度/d B加Hamming 窗时语音频谱清音(1) 短时能量x 104012语音信号时域波形样点数幅度0204060语音信号的短时能量帧数短时能量(2) 短时过零率x 104-1-0.500.51语音信号时域波形样点数幅度5010015020025030035005101520帧数短时过零率语音信号的短时过零率(3) 短时傅里叶变换01截取的语音段样点数幅度01窗选语音信号样点数幅度5001000150020002500300035004000-1000频率/Hz对数幅度/d B加Hamming 窗时语音频谱(4) 显示清音短时过零率x 10401语音信号时域波形样点数幅度05101520帧数短时过零率语音信号的短时过零率加窗(1)加汉明窗的浊音50100150200250-101截取的语音段样点数幅度50100150200250-101窗选语音信号样点数幅度100020003000400050006000-100-500频率/Hz对数幅度/d B加Hamming 窗时语音频谱(2)加汉明窗的清音-101截取的语音段样点数幅度50100150200250-101窗选语音信号样点数幅度-100-500频率/Hz对数幅度/d B加Hamming 窗时语音频谱(3)加矩形窗的浊音50100150200250-101截取的语音段样点数幅度-101窗选语音信号样点数幅度-100-500频率/Hz对数幅度/d B加矩形窗时语音频谱分析:(1)对于浊音与清音,浊音的幅值比较明显,有一个的波动,能清楚的看清楚它的周期;而清音类似于白噪声,没有明显的幅值,很平缓。