语音信号处理实验指导书

合集下载

语音信号处理实验指导书

语音信号处理实验指导书

《语音信号处理》实验指导书姚丽娜电子信息学院目录实验一语音信号的特征提取 (3)实验二语音信号的基音周期提取 (11)实验一语音信号的特征提取一、实验目的1、熟练运用MATLAB软件进行语音信号实验。

2、熟悉短时分析原理、MFCC、LPC的原理。

3、学习运用MATLAB编程进行MFCC、LPC的提取。

4、学会利用短时分析原理提取MFCC、LPC特征序列。

二、实验仪器设备及软件PC机、MATLAB三、实验原理1、MFCC语音识别和说话人识别中,常用的语音特征是基于Mel频率的倒谱系数(即MFCC)。

MFCC参数是将人耳的听觉感知特性和语音的产生机制相结合。

Mel频率可以用如下公式表示:f=⨯+2595log(11/700)mel在实际应用中,MFCC倒谱系数计算过程如下;①将信号进行分帧,预加重和加汉明窗处理,然后进行短时傅里叶变换并得到其频谱。

② 求出频谱平方,即能量谱,并用M 个Mel 带通滤波器进行滤波;由于每一个频带中分量的作用在人耳中是叠加的。

因此将每个滤波器频带内的能量进行叠加,这时第k 个滤波器输出功率谱x'(k)。

③ 将每个滤波器的输出取对数,得到相应频带的对数功率谱;并进行反离散余弦变换,得到L 个MFCC 系数,一般L 取12~16个左右。

MFCC 系数为'1log ()cos[(0.5)/],1,2,,M k Cn x k k n M n L π==-=∑④ 将这种直接得到的MFCC 特征作为静态特征,再将这种静态特征做一阶和二阶差分,得到相应的动态特征。

2、 LPC由于频率响应H (e jw )反映声道的频率响应和被分析信号的谱包络,因此用 log │H (e jw )│反傅里叶变换求出的LPC 倒谱系数。

通过线性预测分析得到的合成滤波器的系统函数1()1/(1)p i i i H z a z -==-∑,其冲击响应为()h n 。

()h n 的倒谱为()h n ∧,_^1()()n n H z h n z+∞∧-==∑就是说^()H z 的逆变换()h n ∧是存在的。

语音信号处理实验大纲

语音信号处理实验大纲

语音信号处理
一、实验课程名称:语音信号处理
二、实验课程英文名称: Speech signal processing
三、实验课程编号: 0451714
四、实验课程性质:非独立设课
五、学时安排:理论课程学时42 实验课程学时12
六、实验课程学分:0学分
七、实验课程类型:专业课
八、实验课程要求:必修课
九、课程适用专业:电子信息科学与技术
十、教学目的:
使学生掌握语音信号各种处理方法的原理、算法、用matlab的编程方法和仿真。

通过实际应用和亲身体验,加深对所学知识的理解,增强动手能力。

十一、实验教学项目表
实验课教学内容项目表(必做)
十一、实验报告要求:
1.编写程序;
2.验证调试实验并写出调试结果,需指导教师确认。

十二、实验成绩评定:
分数分配:
预习:10%,操作:60%,实验报告:60%,创新能力:10%;
实验总计6个,满分20分,第一和第二个实验每个4分,第三、四、五、六个实验每个3分。

十三、教材及参考书:
1.《语音信号处理》.胡航编著.哈尔滨工业大学出版社
2.《语音信号处理实验指导书》自编
学院签署意见表。

语音信号处理

语音信号处理

实验四 减谱法语音增强技术研究一、实验目的本实验要求掌握减谱法语音增强的原理,会利用已学的相关语音特征,构建语音特征矢量,然后自己设计减谱法语音增强程序(也可参考相关文献),能显示干净语音和加噪语音信号及处理后的结果语音信号波形,分析实验结果,写出报告。

二、实验原理谱减法的基本原理谱相减方法是基于人的感觉特性,即语音信号的短时幅度比短时相位更容易对人的听觉系统产生影响,从而对语音短时幅度谱进行估计,适用于受加性噪声污染的语音。

由于语音是短时平稳的,所以在短时谱幅度估计中认为它是平稳随机信号,假设)(m s 、)(m n 和)(m y 分别代表语音、噪声和带噪语音,)(ωs S 、)(ωn S 和)(ωy S 分别表示其短时谱。

假设噪声)(m n 是与语音)(m s 不相关的加性噪声。

于是得到信号的加性模型:)()()(m n m s m y += (4-1)对功率谱有 )()()()(|)(||)(||)(|**222ωωωωωωωw w w w w w w N S N S N S Y +++= (4-4)原始语音的估值为 ]|)([||)(||)(|222ωωωw w w N E Y S -=∧(4-5)只要在频域用(4-5)式得到纯净语音的谱估计,就可以根据(4-6)式得到增强后的语音。

[])()(ˆ)(ˆωϕωj w e s IFFT m s=(4-6)根据前面分析,我们可以给出谱相减算法的整个算法流程,如图4-1所示:图4-1 谱减法的算法流程三、实验程序1、噪声叠加到信号上的比较%在噪声环境下语音信号的增强 %语音信号为读入的声音文件 %噪声为正态随机噪声 clear;input=wavread('C:\Users\Administrator\Desktop\yuyinxinhao\b1.wav');带噪count=length(input);noise1=0.1*randn(1,count);signal=input;for i=1:countvoice1(i)=signal(i)+noise1(i);endnoise2=0.01*randn(1,count);for i=1:countvoice2(i)=signal(i)+noise2(i);endnoise3=randn(1,count);signal=input;for i=1:countvoice3(i)=signal(i)+noise3(i);endn=1:count;figure %对比纯净语音信号,噪音信号和带噪语音信号subplot(3,1,1);plot(n,signal);title('纯净信号')subplot(3,1,2);plot(n,noise1);title('噪音信号')subplot(3,1,3);plot(n,voice1);title('带噪信号')figure %对比纯净语音信号频谱,噪音信号和带噪信号频谱Fss=fft(signal);subplot(3,1,1);plot(n,abs(Fss));title('纯净信号频谱')Fss1=fft(noise1);subplot(3,1,2);plot(n,abs(Fss1));title('噪音信号频谱')Fv1=fft(voice1);subplot(3,1,3)plot(n,abs(Fv1));title('带噪信号的频谱')figure %对比纯净语音信号,噪音信号和带噪语音信号subplot(3,1,1);plot(n,signal);title('纯净信号')subplot(3,1,2);plot(n,noise2);title('噪音信号')subplot(3,1,3);plot(n,voice2);title('带噪信号')figure %对比纯净语音信号频谱,噪音信号和带噪信号频谱Fss=fft(signal);subplot(3,1,1);plot(n,abs(Fss));title('纯净信号频谱')Fss2=fft(noise2);subplot(3,1,2);plot(n,abs(Fss2));title('噪音信号频谱')Fv2=fft(voice2);subplot(3,1,3)plot(n,abs(Fv2));title('带噪信号的频谱')figure %对比纯净语音信号,噪音信号和带噪语音信号subplot(3,1,1);plot(n,signal);title('纯净信号')subplot(3,1,2);plot(n,noise3);title('噪音信号')subplot(3,1,3);plot(n,voice3);title('带噪信号')figure %对比纯净语音信号频谱,噪音信号和带噪信号频谱Fss=fft(signal);subplot(3,1,1);plot(n,abs(Fss));title('纯净信号频谱')Fss3=fft(noise3);subplot(3,1,2);plot(n,abs(Fss3));title('噪音信号频谱')Fv3=fft(voice3);subplot(3,1,3)plot(n,abs(Fv3));title('带噪信号的频谱')2、利用减谱法的基本原理给语音信号降噪噪声为0.1*randn(1,coun) 纯净信号为输入信号%在噪声环境下语音信号的增强%语音信号为读入的声音文件%噪声为正态随机噪声clear;input=wavread('C:\Users\Administrator\Desktop\yuyinxinhao\b1.wav'); count=length(input);noise=1*randn(1,count);signal=input';for i=1:countvoice(i)=signal(i)+noise(i);endFv=fft(voice);anglev=angle(Fv);Fn=fft(noise);power1=(abs(Fv)).^2;power2=(abs(Fn)).^2;power3=power1-power2;power4=sqrt(power3);Fs=power4.*exp(j*anglev);sound=ifft(Fs);n=1:count;%纯净语音信号频谱Fss=fft(signal);figure %对比纯净语音信号和输出信号subplot(2,1,1)plot(n,signal);title('纯净信号')subplot(2,1,2)plot(n,sound);title('输出信号')figure %对比纯净语音信号频谱和输出语音信号频谱subplot(2,1,1)plot(n,abs(Fss));title('纯净信号频谱')subplot(2,1,2)plot(n,abs(Fs));title('输出信号频谱')max_v=max(voice); %对带噪信号抽样值点进行归一化处理re_voice=voice/max_v;%对输出信号抽样点值进行归一化处理max_s=max(sound);re_sound=sound/max_s;%读出带噪语音信号,存为'1001.wav'wavwrite(re_voice,5500,16,'1001');%读出处理后语音信号,存为'1002.wav'wavwrite(re_sound,5500,16,'1002')3、利用改进的减谱法给语音信号降噪噪声为0.1*randn(1,coun) 纯净信号为输入信号%在噪声环境下语音信号的增强%语音信号为读入的声音文件%噪声为正态随机噪声clear;input=wavread('C:\Users\Administrator\Desktop\yuyinxinhao\b1.wav'); count=length(input);noise=0.1*randn(1,count);signal=input';for i=1:countvoice(i)=signal(i)+noise(i);endFv=fft(voice);anglev=angle(Fv);Fn=fft(noise);power1=(abs(Fv)).^2;power2=(abs(Fn)).^2;for i=1:countif(power1(i)>=3*power2(i))power3(i)=power1(i)-3*power2(i);elsepower3(i)=0.01*power2(i);endendpower4=sqrt(power3);Fs=power4.*exp(j*anglev);sound=ifft(Fs);n=1:count;%纯净语音信号频谱Fss=fft(signal);figure %对比纯净语音信号和输出信号subplot(2,1,1)plot(n,signal);title('纯净信号')subplot(2,1,2)plot(n,sound);title('输出信号')figure %对比纯净语音信号频谱和输出语音信号频谱subplot(2,1,1)plot(n,abs(Fss));title('纯净信号频谱')subplot(2,1,2) plot(n,abs(Fs)); title('输出信号频谱')四、实验结果1、噪声叠加到信号上的比较 (1)噪声为0.1*randn(1,count)020004000600080001000012000140001600018000-0.200.2纯净信号-0.500.5噪音信号020004000600080001000012000140001600018000-0.500.5带噪信号050100纯净信号频谱020004000600080001000012000140001600018000050噪音信号频谱02000400060008000100001200014000160001800050100带噪信号的频谱(2)噪声为0.01*randn(1,count)020004000600080001000012000140001600018000-0.200.2020004000600080001000012000140001600018000-0.0500.05噪音信号020004000600080001000012000140001600018000-0.20.2带噪信号020004000600080001000012000140001600018000050100纯净信号频谱0200040006000800010000120001400016000180005噪音信号频谱02000400060008000100001200014000160001800050100带噪信号的频谱(3)噪声为randn(1,count)-0.200.2020004000600080001000012000140001600018000-505噪音信号20004000600080001000012000140001600018000-505带噪信号2、利用减谱法的基本原理给语音信号降噪噪声为0.1*randn(1,coun) 纯净信号为输入信号20004000600080001000012000140001600018000-0.2-0.100.10.2纯净信号20004000600080001000012000140001600018000-0.50.5输出信号020406080纯净信号频谱50100输出信号频谱3、利用改进的减谱法给语音信号降噪噪声为0.1*randn(1,coun) 纯净信号为输入信号 (1)参数取a=3,b=0.01-0.2-0.100.10.2纯净信号20004000600080001000012000140001600018000-0.1-0.0500.050.1输出信号020406080纯净信号频谱204060输出信号频谱(2)参数取a=10,b=0.0120004000600080001000012000140001600018000-0.2-0.100.10.2纯净信号20004000600080001000012000140001600018000-0.1-0.0500.050.1输出信号020406020004000600080001000012000140001600018000020406080输出信号频谱(3)参数取a=0.8,b=0.01-0.2-0.10.10.2纯净信号-0.4-0.20.20.4输出信号0200040006000800010000120001400016000180000204060020406080输出信号频谱(4)参数取a=3,b=0.0001-0.2-0.10.10.2纯净信号020004000600080001000012000140001600018000-0.1-0.050.050.1输出信号0204060020406080输出信号频谱(5)参数取a=3,b=0.1-0.2-0.10.10.2纯净信号-0.2-0.10.10.2输出信号0200040006000800010000120001400016000180000204060020406080输出信号频谱五、实验分析1、噪声叠加到信号上时,噪声会对信号产生较大影响,噪声加强会使信号被噪声淹没;噪声减弱,对信号的影响减小;2、用减谱法的基本原理対带噪信号进行处理后,信号质量明显提升,从而得到较纯净的语音信号;3、用改进的减谱法対带噪信号进行处理后,信号质量更好,语音信号更纯净。

语音信号处理(电气与电子工程学院)

语音信号处理(电气与电子工程学院)

四、实验条件
计算机、高分辨麦克、matlab 及相关软件。 五、实验步骤
可以使用已有工作空间文件也可以自己录制一段语音(录制方法见附加内容)
1、听一下 we_be10k(可用 sound) 2、使用函数 specgram_ex3p19.显示语谱图和语音波形。对比调用参数窗长 20ms (200 点)、帧间隔 1ms(10 点)和参数窗长 5ms(50 点)、帧间隔 1ms(10 点); 再对比窗长>20ms 或小于 5ms,以及帧间隔>1ms 时的语谱图说明宽带语谱图、窄 带语谱图与时频分辨率的关系及如何得到时频折中。
1-3
在自相关法中
1-1,1-3 变为
P
∑αk rn [i − k ] = rn [i − 0],i = 1, 2,3,...p
k =1
1-4
P
En = Rn [0] − ∑αk Rn [k ]
k =1
1-5
由 1-4 可列出方程组 1-6
⎛ ⎜ ⎜
Rn Rn
[0] [1]
Rn [1] Rn [0]
图2
图3
7
采用 MATLAB 中的录音函数 wavrecord()进行语音信号的录制。同样,选 择三种频率不同的采样率对同一语音信号进行采样,试听回放效果,进行比较。
二、实验涉及的 MATLAB 子函数 Wavrecord 功能:录制语音 调用格式: filename=wavrecord(N, fs, ‘dtype’);录制一段 N/fs 秒长度的语音信号,采样率为 fs Hz,缺省值为 11025Hz,dtype 是录制声音的数据类型。具体可通过 help wavrecord 命令查阅。 y=wavrecord(N, fs, ch);与上面语句不同的是最后一个参数,ch 是指录音的声 道,ch 为 1 是单声道,ch 为 2 是双声道。 Wavread 功能:把数据文件的声音数据赋给变量 x。 【x,fs,bits】=wavread(’filename’);把数据文件的声音数据赋给变量 x,同 时把 x 的采样频率 fs 和数据的位数 bits 放进 MATLAB 的工作空间。 Sound 功能:将变量 x 的数据转换成 MATLAB 的数据文件保存。 调用格式: Sound(x,fs,bits); Save 功能:将变量 x 的数据转换成 MATLAB 的数据文件保存。 调用格式: Save‘filename’x;将数据转换成文件名与‘filename’相同,扩展名为.mat 的数据并保存,以便用 MATLAB 的各种工具进行处理。

语音信号处理试验教程

语音信号处理试验教程

语音信号处理试验实验一:语音信号时域分析实验目的:(1)录制两段语音信号,内容是“语音信号处理”,分男女声。

(2)对语音信号进行采样,观察采样后语音信号的时域波形。

实验步骤:1、使用window自带录音工具录制声音片段使用windows自带录音机录制语音文件,进行数字信号的采集。

启动录音机。

录制一段录音,录音停止后,文件存储器的后缀默认为.Wav。

将录制好文件保存,记录保存路径。

男生女生各录一段保存为test1.wav和test2.wav。

图1基于PC机语音信号采集过程。

2、读取语音信号在MATLAB软件平台下,利用wavread函数对语音信号进行采样,记住采样频率和采样点数。

通过使用wavread函数,理解采样、采样频率、采样位数等概念!Wavread函数调用格式:y=wavread(file),读取file所规定的wav文件,返回采样值放在向量y中。

[y,fs,nbits]=wavread(file),采样值放在向量y中,fs表示采样频率(hz),nbits表示采样位数。

y=wavread(file,N),读取前N点的采样值放在向量y中。

y=wavread(file,[N1,N2]),读取从N1到N2点的采样值放在向量y中。

3、编程获取语音信号的抽样频率和采样位数。

语音信号为test1.wav和test2.wav,内容为“语音信号处理”,两端语音保存到工作空间work文件夹下。

在M文件中分别输入以下程序,可以分两次输入便于观察。

[y1,fs1,nbits1]=wavread('test1.wav')[y2,fs2,nbits2]=wavread('test2.wav')结果如下图所示根据结果可知:两端语音信号的采样频率为44100HZ,采样位数为16。

4、语音信号的时域分析语音信号的时域分析就是分析和提取语音信号的时域参数。

进行语音分析时,最先接触到并且夜市最直观的是它的时域波形。

语音信号处理实验指导书汇编

语音信号处理实验指导书汇编

数字语音信号处理实验指导书编写曹建荣山东建筑大学信息与电气工程学院2011年10月前言语音信号处理是研究用数字信号处理技术和语音学知识对语音信号进行处理的新兴的学科,是目前发展最为迅速的信息科学研究领域的核心技术之一。

通过语音传递信息是人类最重要、最有效、最常用和最方便的交换信息形式。

同时,语言也是人与机器之间进行通信的重要工具,它是一种理想的人机通信方式,因而可为信息处理系统建立良好的人机交互环境,进一步推动计算机和其他智能机器的应用,提高社会的信息化程度。

语音信号处理是一门新兴的学科,同时又是综合性的多学科领域和涉及面很广的交叉学科。

虽然从事这一领域研究的人员主要来自信号与信息处理及计算机应用等学科,但是它与语音学、语言学、声学、认知科学、生理学、心理学等许多学科也有非常密切的联系。

20世纪60年代中期形成的一系列数字信号处理的理论和算法,如数字滤波器、快速傅立叶变换(FFT)等是语音信号数字处理的理论和技术基础。

随着信息科学技术的飞速发展,语音信号处理取得了重大的进展:进入70年代之后,提出了用于语音信号的信息压缩和特征提取的线性预测技术(LPC),并已成为语音信号处理最强有力的工具,广泛应用于语音信号的分析、合成及各个应用领域,以及用于输入语音与参考样本之间时间匹配的动态规划方法;80年代初一种新的基于聚类分析的高效数据压缩技术—矢量量化(VQ)应用于语音信号处理中;而用隐马尔可夫模型(HMM)描述语音信号过程的产生是80年代语音信号处理技术的重大发展,目前HMM已构成了现代语音识别研究的重要基石。

近年来人工神经网络(ANN)的研究取得了迅速发展,语音信号处理的各项课题是促进其发展的重要动力之一,同时,它的许多成果也体现在有关语音信号处理的各项技术之中。

为了深入理解语音信号数字处理的基础理论、算法原理、研究方法和难点,根据数字语音信号处理教学大纲,结合课程建设的需求,我们编写了本实验参考书。

语音信号处理综合实验

语音信号处理综合实验

语音信号处理综合实验电子信息科学与技术09380049 陈俊浩一:实验目的通过利用matlab设计仿真实验,理解如下知识点:1.信号的采样及混迭2.信号的频谱分析3.信号的幅度调制解调的方法4.理想滤波器的时频域特性5.数字滤波器的设计二:实验要求1.录制一段个人自己的语音信号2.采用合适的频率,对录制的信号进行采样,画出采样后语音信号的时域波形和频谱图3.给原始语音信号加噪声,画出加噪声后的语音信号和频谱图4.设计一个频域的理想带通信道5.对这语音信号进行幅度调制,画出调制后的语音信号和频谱图6.利用理想带通信道对信号进行传输7.对接受到的信号进行解调,画出解调后的语音信号和频谱图8.设计性能良好的滤波器对信号进行滤波9.对语音进行回放,并与滤波后的语音信号进行对比三:实验过程1.首先利用windows操作系统自带的录音机录取一段声音,保存为‘cjh.wav’;再利用wavread函数将这个语音文件读进matlab中,然后对这段语音进行采样,采样频率为fs=22050Hz,语音持续时间为2.5s,用sound函数听这段语音信号;2.用plot函数画出这段语音信号的时域波形,用fftshift函数对信号进行快速傅里叶变换,并调整y轴的幅度,画出原始信号的频谱图;3.为了给原始信号加噪声,用randn函数产生一段随机噪声,然后加到原始信号中,然后用sound函数听加了噪音以后的信号,和原始信号相对比,可听到有一些“沙沙”的噪声;用plot函数画出加了噪音以后的时域波形,然后再将其进行快速傅里叶变换,然后画出其频域波形4.直接用matlab的逻辑语句,设计一个理想的带通信号,其截至频率为fl=4000Hz,fh=8000Hz;5.设定载波频率,用matlab的modulate函数对其进行幅度调制,画出调制以后的信号的时域波形,然后再将其通过傅里叶变换,然后画出其频谱图;6.用matlab中的demod函数将已经调制以后的信号进行解调,在用和上述一致的方法画出解调以后的时域和频域波形;7.由于人的声音频率一般比较低,而且由画出来的原始信号的频域波形可知,信号的能量都集中在低频的范围,我们可以考虑设计一个低通滤波器对其进行滤波,然后将滤波以后的信号就行回放,与原始信号进行对比。

语音信号处理实验指导书

语音信号处理实验指导书

语音信号处理实验指导书实验一:语音信号的采集与播放实验目的:了解语音信号的采集与播放过程,掌握采集设备的使用方法。

实验器材:1. 电脑2. 麦克风3. 扬声器或者耳机实验步骤:1. 将麦克风插入电脑的麦克风插孔。

2. 打开电脑的录音软件(如Windows自带的录音机)。

3. 在录音软件中选择麦克风作为录音设备。

4. 点击录音按钮开始录音,讲话或者唱歌几秒钟。

5. 点击住手按钮住手录音。

6. 播放刚刚录制的语音,检查录音效果。

7. 将扬声器或者耳机插入电脑的音频输出插孔。

8. 打开电脑的音频播放软件(如Windows自带的媒体播放器)。

9. 选择要播放的语音文件,点击播放按钮。

10. 检查语音播放效果。

实验二:语音信号的分帧与加窗实验目的:了解语音信号的分帧和加窗过程,掌握分帧和加窗算法的实现方法。

实验器材:1. 电脑2. 麦克风3. 扬声器或者耳机实验步骤:1. 使用实验一中的步骤1-5录制一段语音。

2. 将录制的语音信号进行分帧处理。

选择合适的帧长和帧移参数。

3. 对每一帧的语音信号应用汉明窗。

4. 将处理后的语音帧进行播放,检查分帧和加窗效果。

实验三:语音信号的频谱分析实验目的:了解语音信号的频谱分析过程,掌握频谱分析算法的实现方法。

实验器材:1. 电脑2. 麦克风3. 扬声器或者耳机实验步骤:1. 使用实验一中的步骤1-5录制一段语音。

2. 将录制的语音信号进行分帧处理。

选择合适的帧长和帧移参数。

3. 对每一帧的语音信号应用汉明窗。

4. 对每一帧的语音信号进行快速傅里叶变换(FFT)得到频谱。

5. 将频谱绘制成图象,观察频谱的特征。

6. 对频谱进行谱减法处理,去除噪声。

7. 将处理后的语音帧进行播放,检查频谱分析效果。

实验四:语音信号的降噪处理实验目的:了解语音信号的降噪处理过程,掌握降噪算法的实现方法。

实验器材:1. 电脑2. 麦克风3. 扬声器或者耳机实验步骤:1. 使用实验一中的步骤1-5录制一段带噪声的语音。

语音信号处理课程实验教学大纲

语音信号处理课程实验教学大纲

《语音信号处理》课程实验教学大纲课程编号: 13006430 一、实验教学的目的通过实验,加深对语音信号处理基本概念的理解,学习语音信号处理的编程和处理方法。

二、实验教学任务1、掌握VC编程方法处理语音信号。

2、掌握改变参数对语音信号处理的差别。

三、具体实验项目名称、学时分配、适用专业及实验性质四、单项实验的内容、要求实验内容:实验一:语音信号的低通滤波和短时分析综合实验。

1.给出语音信号,要求设计一个低通滤波器,带宽为采样频率的四分之一,求输出信号;2.辨别原始语音信号与滤波器输出信号有何区别,说明原因;3.改变滤波器带宽,重复滤波实验,辨别语音信号的变化,说明原因;4.利用矩形窗和汉明窗对语音信号进行短时傅立叶分析,绘制语谱图并估计基音周期,分析两种窗函数对基音估计的影响;5.改变窗口长度,重复上一步,说明窗口长度对基音估计的影响。

实验二:语音信号的同态滤波综合实验。

1.给出语音信号,要求设计一个卷积同态系统,对声源和声道冲激响应进行有效分离;2.绘制语音信号的复倒谱,并利用复倒谱对语音信号进行基音估计;3.利用短时自相关函数进行基音估计,并与前者相比较,说明两种方法的优缺点。

实验三:语音信号的线性预测。

1. 声道传输函数建模:根据给出语音信号设计线性预测滤波器,求最佳预测系数;2 .利用自相关法对语音信号进行线性预测分析,求声道传输函数共振峰。

实验要求:1.正确使编程软件。

2.学会改变参数对语音信号处理的影响。

五、实验教材或讲义名称理论课程教材六、实验考核标准1、课程实验(占用课程总学时)6学时,考核成绩占总课程成绩的30%。

2、考核标准1)每次实验前应提交预习报告,明确实验目的,了解实验内容。

2)实验中遵守实验纪律,听从老师指导,爱护仪器设备,遵守操作规程。

3)课程实验完成时,应对学生实验技能进行检查,提出问题能说明清楚。

4)实验报告应及时完成,字要整洁、图表要规范,记录和处理的数据应准确。

语音信号处理实验指导书.

语音信号处理实验指导书.

数字语音信号处理实验指导书编写曹建荣山东建筑大学信息与电气工程学院2011年10月前言语音信号处理是研究用数字信号处理技术和语音学知识对语音信号进行处理的新兴的学科,是目前发展最为迅速的信息科学研究领域的核心技术之一。

通过语音传递信息是人类最重要、最有效、最常用和最方便的交换信息形式。

同时,语言也是人与机器之间进行通信的重要工具,它是一种理想的人机通信方式,因而可为信息处理系统建立良好的人机交互环境,进一步推动计算机和其他智能机器的应用,提高社会的信息化程度。

语音信号处理是一门新兴的学科,同时又是综合性的多学科领域和涉及面很广的交叉学科。

虽然从事这一领域研究的人员主要来自信号与信息处理及计算机应用等学科,但是它与语音学、语言学、声学、认知科学、生理学、心理学等许多学科也有非常密切的联系。

20世纪60年代中期形成的一系列数字信号处理的理论和算法,如数字滤波器、快速傅立叶变换(FFT)等是语音信号数字处理的理论和技术基础。

随着信息科学技术的飞速发展,语音信号处理取得了重大的进展:进入70年代之后,提出了用于语音信号的信息压缩和特征提取的线性预测技术(LPC),并已成为语音信号处理最强有力的工具,广泛应用于语音信号的分析、合成及各个应用领域,以及用于输入语音与参考样本之间时间匹配的动态规划方法;80年代初一种新的基于聚类分析的高效数据压缩技术—矢量量化(VQ)应用于语音信号处理中;而用隐马尔可夫模型(HMM)描述语音信号过程的产生是80年代语音信号处理技术的重大发展,目前HMM已构成了现代语音识别研究的重要基石。

近年来人工神经网络(ANN)的研究取得了迅速发展,语音信号处理的各项课题是促进其发展的重要动力之一,同时,它的许多成果也体现在有关语音信号处理的各项技术之中。

为了深入理解语音信号数字处理的基础理论、算法原理、研究方法和难点,根据数字语音信号处理教学大纲,结合课程建设的需求,我们编写了本实验参考书。

语音信号处理实验

语音信号处理实验
人发音时存在口唇的辐射效应,口唇的辐射模型相当于一阶高通滤波器,所 以在对实际信号进行分析处理时,常用“预加重技术”,目的提升信号的高频部 分,使信号的频谱更加平坦,方便信号的分析。
3 实验过程
1)读语音数 wavread 2)听语音 sound 3)写语音 wavwrite 4)对语音信号进行分帧处理 5)对语音信号进行预加重
down=1+(i-1)*M; up=down+N-1; temp=x(down:up); y=[y;temp]; end % K=100; for i=1:Fn for j=0:K F(i,j+1)=sum(abs(y(i,1:N-j)-y(i,j+1:N)),2); end end plot(F(111,:));
l =1
2 24
=
1,2,...,P,P 为 MFCC 参数的阶数,取 P=16。
3 实验过程
4 实验结果
实验三程序
[x,fs,bits]=wavread('c:\WINDOWS\Media\chimes.wav');
x=x(:,1);
x=x';
len=length(x);
N=256;
M=128;
|
X
n
(k)
|
h(l )
+
k =c(l )
h(l) − k h(l) − c(l)
|
X
n
(k)
|
l
=
1,2,....,40
(2)对所有滤波器输出作对数运算
ln(Y (l)) l = 1,2,....,40
(3)作离散余弦变换(DCT)得到 Mel 频率倒谱参数(MFCC)。

语音信号处理实验指导

语音信号处理实验指导

语音信号处理实验讲义王艳芬李剑编中国矿业大学信电学院学生实验守则一、学生进入实验室必须遵守实验室的规章制度,遵守课堂纪律,保持实验室的安静和整洁,爱护实验室的一切设施。

二、实验课前要认真预习实验指导书,写出实验预习报告,并经教师批阅后方可进行实验。

三、实验课中要遵守操作规程,不要带电连接、更改或拆除线路。

线路接好后,经指导老师检查后,方可接通电源进行实验。

对于软件上机实验,不得随意删改计算机中原有的文件。

四、学生实验前对实验所用仪器设备要了解其操作规程和使用方法,凡因不预习或不按使用方法进行操作而造成仪器设备损坏者,除书面检查外,按学校规定进行赔偿。

五、实验中主意安全,遇到事故应立即关断电源并报告教师检查处理。

六、实验完毕后要做好整理工作,实验数据必须经指导教师签阅后,才能拆除线路,并将仪器、设备、凳子等按规定放好,经同意后方可离开实验室。

七、因故缺课的学生可向实验室申请一次补做机会。

无故缺课或无故迟到(15分钟以上)的不予补做,该次实验无成绩;累计三次者,该实验课以不及格论,并不得参加该门理论课程的考试。

八、实验室仪器设备不能擅自搬动调换,更不能擅自带出实验室。

信电学院专业实验中心二零一一年九月目录实验一语音信号得基音参数提取 (1)实验二语音信号的谱分析 (7)实验三基于DTW算法的孤立字识别 (11)《语音信号处理实验讲义》是为了配合“语音信号处理”课程教学而编写的,适用于信息工程、电子科学与技术等专业。

前修课程为“数字信号处理”。

该课程总学时数为40学时,其中实验学时为8学时。

实验内容及参考学时安排如下:实验一语音信号的基音参数提取(3个学时)实验二语音信号的谱分析(3个学时)实验三基于DTW算法的孤立字识别(2个学时)实验一 语音信号的基音参数提取一、实验目的1.了解基音的基本概念以及清音与浊音的区别。

2.掌握几种基本的基音提取方法,熟悉自相关法、倒谱法和简化逆滤波法进行基音提取的matlab 编程。

1第一章语音信号处理实验

1第一章语音信号处理实验

采集: wavrecord 转换: wavread 播放:soundview 滤波:filter 自相关: xcorr 语谱图: specgram;specgramdemo 同态滤波:cceps,rceps 线性预测: lpc
17
第一篇 语音信号处理基础
第一章 语音及其产生和感知过程
18
语音信号处理概述

语音是人类最重要、最有效、最方便的交换信息
其它信息 20% 图像信息 语音信息 其它信息
语音信息 20%
图像信息 60%
人类从大自然获取信息的分布图
19
语音信号处理基本概念



语音信号处理是以语音、语言学和数字信号处理为基 础而形成的一门涉及面很广的综合性学科,与生理学、 心理学、计算机科学、人工智能、数学等学科有密切 的关系。 语音信号处理是研究用数字信号处理技术对语音信号 进行处理的一门学科。其目的是要得到一些反应语音 信号重要特征的语音参数,或者通过某种运算的处理 达到某种用途的要求。 例如:
35
不同语音的产生过程

浊音:声道打开,声带在先打开后关闭,气流经过使声 带要发生张驰振动,变为准周期振动气流。浊音的激励 源被等效为准周期的脉冲信号。 清音:声带完全舒展开来,声道的某个部位发生收缩形 成了一个狭窄的通道,当空气流到达此处时被迫以高速 冲过收缩区,并在附近产生空气的湍流,类似于白噪声。 爆破音:声带完全舒展开来,声道的某个部位完全闭合 在一起,当空气流到达时便在此处建立起空气压力,一 旦闭合点突然开启便会让气压快速释放,实际上也是一 种空气的湍流。

按发音时声带有无振动


基音频率:浊音的声带振动基本频率,F0随时 间变化的。

语音信号处理

语音信号处理

《语音信号处理》实验一报告一,观察语音信号的时域波形特点,总结其规律。

答:总体上,无论是清音还是浊音,它们的时域波形都具有“短时性”。

在短时间内,语音信号保持平稳,浊音表现出周期信号特征,能量高、过零率低;轻音表现出随机噪声特征,且能量低、过零率高。

二,总结清音/b/p/m/f/d/t/n/l/g/k/h/j/q/x/z/c/s/zh/ch/sh/r/共21个的短时幅值、短时过零率和自相关函数的规律,估算这21个清音的平均短时幅值和平均短时过零率答:加矩形窗时,以上清音的平均短时幅值与平均短时过零率如下:清音平均短时幅值(mV) 平均短时过零率b 0.225 10.534p 1.044 9.630m 51.511 5.210f 0.525 10.377d 4.912 10.767t 1.466 10.332n 71.650 4.638l 1.124 6.410g 0.170 6.520k 1.019 17.833h 0.559 20.635j 0.143 13.441q 0.188 37.332x 0.176 22.050z 0.147 5.970c 1.805 7.442s 0.161 18.221zh 2.305 33.219ch 1.244 29.100sh 2.175 27.779r 78.055 5.611三,总结浊音/a/o/e/i/u/ü/ao/ai/ei/ou/ie /an/en/in/ang/eng/ong/ing/共18个的短时幅值、短时过零率和自相关函数的规律,估算这18个浊音的平均短时幅值和平均短时过零率,从自相关函数上估算这17个浊音的基音周期答:加矩形窗时,以上清音的平均短时幅值与平均短时过零率如下:浊音平均短时幅值(mV) 平均短时过零率基音周期(Hz)a 150.381 2.523 183.65o 120.563 2.235 196.77e 148.614 2.744 189.65i 128.748 1.478 183.60u 135.522 1.229 181.38ü122.324 1.064 180.76ie 140.358 1.135 183.66ao 150.275 1.218 180.55ai 155.465 1.097 186.87ei 143.692 1.178 197.92ou 145.084 1.013 191.89an 152.878 2.044 192.72en 144.761 1.789 198.44in 139.220 1.628 197.73ang 160.425 2.025 185.74eng 157.853 2.049 197.99ong 154.551 2.251 190.36ing 156.680 2.053 184.70四,/r/、/m/、/n/ 从这几个音素的自相关函数图形判断为“清音”还是“浊音”,若为浊音估算其基音周期1)/r/自相关函数具有周期性,相关函数波形如下(浊音,基音频率约为199.55Hz):2)/m/自相关函数具有周期性,相关函数波形如下(浊音,基音频率约为194.27Hz):3)/n/自相关函数具有周期性,相关函数波形如下(浊音,基音频率约为180.73Hz):五,在两个程序中对语音加的是方窗,若加Hamming窗,程序编写有何不同?试分析Hamming窗与方窗对短时幅值、短时过零率和短时自相关的影响答:1)加hamming窗程序代码:win_h=hamming(Ny1); %win_y=y_sound.*win_h;for i=1:frame_all;y5(:,i)=y4(:,i).*win_h;End六,利用短时幅值和短时过零率对语音信号进行端点检测,如何处理?试编程实现。

语音信号处理基础实验

语音信号处理基础实验

语音信号处理基础实验(一)实验目的:掌握MATLAB采集语音信号、创建语音文件、读写等的原理及常用命令。

掌握语音信号线性叠加的方法,熟悉语音信号卷积原理,熟悉语音信号升采样/降采样方法。

实验原理:指导书摘选。

仪器与材料:微机,Matlab软件,U盘,记录用的笔和纸。

实验步骤:1打开MATLAB软件,File→New→script2读取录制好的语音文件,并使用plot函数显示出来。

要求:横轴和纵轴带有标注。

横轴的单位为秒(S), 纵轴显示归一化后的数值。

3读取一段语音并归一化。

然后生成一段随机信号(长度与语音信号相同),归一化后幅度乘以0.01。

最后线性叠加两端语音,用plot函数显示三种信号。

要求:横轴和纵轴带有标注。

横轴单位为秒(s),纵轴显示的为归一化后的数值。

4将读取的语音信号与随机信号进行卷积,并用plot函数显示该信号,并对比线性叠加信号的区别。

然后使用wavplay函数播放两种信号,并比较区别。

5改变读取的语音信号的采样频率,使用plot函数进行显示。

然后采用wavplay函数播放,比较采样频率对改变语音信号的影响。

注:实验报告字写小一点,手写程序在实验报告上,打印实验波形图粘贴在实验报告上,程序和波形图要一一对应。

实验程序:1.读取语音信号fs=1600;[x,fs]=audioread('C2_1_y.wav');sound(x,fs);N=length(x);time=(0:N-1)/fs;plot(time,x);axis([0 2 -1 1]);xlabel('time/s');ylabel('amplitude');结果:2.语音信号叠加clcclear all[x,fs]=audioread('C2_2_y.wav'); s=1:length(x);t=s/fs;xmax=max(abs(x));x=x/xmax;y=randn(size(x));ymax=max(abs(y));y=y/ymax;z=x+y;zmax=max(abs(z));z=z/zmax;figure(1)subplot(311)plot(t,x);xlabel('时间/s');ylabel('归一化幅值')title('(a)原始信号')subplot(312)plot(t,y);xlabel('时间/s');ylabel('归一化幅值')title('(b)随机序列')subplot(313)plot(t,z);xlabel('时间/s');ylabel('归一化幅值')title('(c)线性叠加')3.语音信号卷积clcclear all[x,fs]=audioread('C2_2_y.wav'); %读取s=1:length(x);t=s/fs;xmax=max(abs(x));x=x/xmax; %归一化y=randn(size(x)); %产生同x相同长度的随机序列ymax=max(abs(y));y=y/ymax; %随机序列归一化z=conv(x,y); %卷积计算zmax=max(abs(z));z=z/zmax;t2=(1:length(z))/fs;figure(1)subplot(311)plot(t,x);xlabel('时间/s');ylabel('归一化幅值');title('(a)原始信号');subplot(312)plot(t,y);xlabel('时间/s');ylabel('归一化幅值');title('(b)随机序列');subplot(313)plot(t2,z);xlabel('时间/s');ylabel('归一化幅值');title('(c)信号卷积');4.语音信号采样频率变换clcclear all[x,fs1]=audioread('C2_2_y.wav'); s1=1:length(x);t1=s1/fs1;xmax=max(abs(x));x=x/xmax;figure(1)subplot(311)plot(t1,x);xlabel('时间/s');ylabel('归一化幅值');title('(a)原始信号');p=2;q=1;x1=resample(x,p,q);x1max=max(abs(x1));x1=x1/x1max;fa=fs1*p/q;ta=(1:length(x1))/fa;subplot(312)plot(ta,x1);xlabel('时间/s'); ylabel('归一化幅值'); title('(b)2倍采样率'); p=1;q=2;x2=resample(x,p,q);x2max=max(abs(x2)); x2=x2/x2max;fb=fs1*p/q;tb=(1:length(x2))/fb; subplot(313)plot(tb,x2);xlabel('时间/s'); ylabel('归一化幅值'); title('(c)1/2倍采样率');运行结果:。

语音信号处理实验指导书

语音信号处理实验指导书

语音信号处理实验指导书实验一 语音信号采集与简单处理一、 实验目的、要求 (1)掌握语音信号采集的方法(2)掌握一种语音信号基音周期提取方法 (3)掌握短时过零率计算方法 (4)了解Matlab 的编程方法 二、 实验原理 基本概念: (a )短时过零率:短时内,信号跨越横轴的情况,对于连续信号,观察语音时域波形通过横轴的情况;对于离散信号,相邻的采样值具有不同的代数符号,也就是样点改变符号的次数。

对于语音信号,是宽带非平稳信号,应考察其短时平均过零率。

其中sgn[.]为符号函数⎪⎩⎪⎨⎧<=>=0 x(n)-1sgn(x(n))0 x(n)1sgn(x(n))短时平均过零的作用 1.区分清/浊音:浊音平均过零率低,集中在低频端; 清音平均过零率高,集中在高频端。

2.从背景噪声中找出是否有语音,以及语音的起点。

(b )基音周期基音是发浊音时声带震动所引起的周期性,而基音周期是指声带震动频率的倒数。

基音周期是语音信号的重要的参数之一,它描述语音激励源的一个重要特征,基音周期信息在多个领域有着广泛的应用,如语音识别、说话人识别、语音分析与综合以及低码率语音编码,发音系统疾病诊断、听觉残障者的语音指导等。

因为汉语是一种有调语言,基音的变化模式称为声调,它携带着非常重要的具有辨意作用的信息,有区别意义的功能,所以,基音的提取和估计对汉语更是一个十分重要的问题。

∑--=-=1)]1(sgn[)](sgn[21N m n n n m x m x Z由于人的声道的易变性及其声道持征的因人而异,而基音周期的范围又很宽,而同—个人在不同情态下发音的基音周期也不同,加之基音周期还受到单词发音音调的影响,因而基音周期的精确检测实际上是一件比较困难的事情。

基音提取的主要困难反映在:①声门激励信号并不是一个完全周期的序列,在语音的头、尾部并不具有声带振动那样的周期性,有些清音和浊音的过渡帧是很难准确地判断是周期性还是非周期性的。

语音信号处理实验一

语音信号处理实验一

语⾳信号处理实验⼀实验⼀语⾳信号的采集及预处理⼀、实验⽬的在理论学习的基础上,进⼀步地理解和掌握语⾳信号预处理及短时加窗的意义及基于matlab的实现⽅法。

⼆、撰写实验报告要求要求随本次上机撰写完成实验报告,报告中要有实验⽬的、实验步骤、实验程序、实验中得出的图形结果及结论等。

另外,总结本次上机实验的收获。

三、实验内容及步骤1.语⾳信号的录⾳、读⼊、放⾳等:练习matlab中⼏个⾳频处理函数,利⽤函数wavread对语⾳信号进⾏采样,记住采样频率和采样点数,给出以下语⾳的波形图(2.wav),wavread的⽤法参见mablab帮助⽂件。

利⽤wavplay或soundview放⾳。

也可以利⽤wavrecord⾃⼰录制⼀段语⾳,并进⾏以上操作(需要话筒)。

[Y,FS,NBITS,OPTS]=wavread('9.wav')FS =10000NBITS =16OPTS =fmt: [1x1 struct]2.语⾳信号的分帧:选择20ms左右为⼀帧,帧移取1/2帧长,对语⾳信号进⾏分帧,可以利⽤voicebox⼯具箱中的函数enframe。

voicebox⼯具箱是基于GNU协议的⾃由软件,其中包含了很多语⾳信号相关的函数。

voicebox⼯具箱安装⽅法:把⼯具箱拷贝⼊.\MatLab\toolbox⽬录下;菜单file-set path-"Add folder" 导⼊voicebox;菜单file-Preference-General-"Updata Toolbox Path Cache分帧函数的调⽤:y=enframe(x,len,inc)x为输⼊语⾳信号,len指定了帧长,inc指定帧移,函数返回为n×len的⼀个矩阵,每⼀⾏都是⼀帧数据。

帧长=10000X0.02=200sx=wavread('9.wav')y=enframe(x,200,100)subplot(2,1,1),plot(x)subplot(2,1,2),plot(y)3 窗函数及其时频特性:本步要求利⽤window函数设计窗⼝长度为200(N=200)的矩形窗(rectwin)、汉明窗(hamming)及汉宁窗(hann)),利⽤wvtool函数观察其时域波形图及频谱特性,⽐较得出结论。

语音信号处理实验

语音信号处理实验

实验二 语音信号的时域分析一、 实验目的在理论学习的基础上,进一步理解和掌握语音信号短时能量、短时过零了分析的意义及基于matlab 的实现方法。

二、 实验原理语音是一时变的、非平稳的随机过程,但由于一段时间内(10-30ms)人的声带和声道形状的相对稳定性,可认为其特征是不变的,因而语音的短时谱具有相对稳定性。

在语音分析中可以利用短时谱的这种平稳性,将语音信号分帧。

10~30ms 相对平稳,分析帧长一般为20ms 。

语音信号的分帧是通过可移动的有限长度窗口进行加权的方法来实现的。

几种典型的窗函数有:矩形窗、汉明窗、哈宁窗、布莱克曼窗。

语音信号的能量分析是基于语音信号能量随时间有相当大的变化,特别是清音段的能量一般比浊音段的小得多。

定义短时平均能量[][]∑∑+-=∞-∞=-=-=nN 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 是符号函数,即()[]()()()()⎩⎨⎧<-≥=0101sgn n x n x n x短时平均过零数可应用于语音信号分析中。

发浊音时,尽管声道有若干个共振峰,但由于声门波引起了谱的高频跌落,所以其语音能量约集中干3kHz 以下。

而发清音时.多数能量出现在较高频率上。

既然高频率意味着高的平均过零数,低频率意味着低的平均过零数,那么可以认为浊音时具有较低的平均过零数,而清音时具有较高的平均过零数。

《数字语音处理》实验指导书

《数字语音处理》实验指导书

《数字语音处理》实验指导书学校:中国地质大学院系:机械与电子工程学院专业:电子信息工程编制:电信教研室版本:2005目录前言单元1 MATLAB练习单元2 综合分析实验附录1 MATLAB软件简介附录2 MATLAB基本使用方法附录3 wavread函数附录4 specgram函数参考文献单元1 MATLAB练习实验目的了解信号谱分析特点,掌握各种窗函数功率谱的异同及其对短时信号谱分析的作用。

明确短时傅立叶变换与声谱图的关系,理解其对语音信号的时频分析作用。

学习音频文件的基本操作方法。

学习用MA TLAB实现基本的语音信号处理,提高自学和动手能力,培养学习兴趣。

实验原理1、离散频谱、幅度谱和功率谱离散频谱是信号序列的离散傅立叶变换,常用快速傅立叶变换(FFT)计算。

离散频谱描述的是信号在频率采样点上的幅度和相位值,包括幅度-频率关系和相位—频率关系,幅度谱就是前者。

功率谱是幅度平方—频率关系。

由于语音的对数听觉效应,幅度谱和功率谱常用对数形式表达,单位为分贝。

对数幅度谱=10lg幅度谱,对数功率谱=10lg幅度谱2=20 lg幅度谱。

由此可见,对数幅度谱与对数功率谱在谱形上是相似的,只不过谱的幅度方向相差一倍。

对于窗序列的离散频谱、幅度谱和功率谱,结论也是类似的。

2、短时傅立叶变换和声谱图短时傅立叶变换的实质,是在时间和频率上同时对信号序列进行分解,使得信号被分解成若干个时段和频段上的分量(即分信号)。

根据微分原理,若每个时段和频段都很小,对具体某个时段和频段上的分信号进行抽样,无论具体的抽样时点和频点如何选取,抽样值都不会有大的差异,因而一个分信号可以仅用一个该分信号的抽样值来表示。

短时傅立叶变换的值X(n, k)实际上就是n时段和k频段上信号分量的幅度和相位抽样,这个抽样值大体代表了n时段和k频段上信号分量的幅度范围和相位范围。

n和k的含义见下表。

表1 数字参数与模拟参数的对应关系数字时间模拟时间(s)数字频率模拟频率(HZ)n t = n/fs K f=k·fs/L注:L—窗序列长度fs—信号采样频率应用在语音处理方面,声谱图就是语音信号的短时傅立叶变换,其图形化显示往往只表示各个时段和频段上的分信号幅度抽样值。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

语音信号处理实验指导书实验一 语音信号采集与简单处理一、 实验目的、要求 (1)掌握语音信号采集的方法(2)掌握一种语音信号基音周期提取方法 (3)掌握短时过零率计算方法 (4)了解Matlab 的编程方法 二、 实验原理 基本概念: (a )短时过零率:短时内,信号跨越横轴的情况,对于连续信号,观察语音时域波形通过横轴的情况;对于离散信号,相邻的采样值具有不同的代数符号,也就是样点改变符号的次数。

对于语音信号,是宽带非平稳信号,应考察其短时平均过零率。

其中sgn[.]为符号函数⎪⎩⎪⎨⎧<=>=0 x(n)-1sgn(x(n))0 x(n)1sgn(x(n))短时平均过零的作用 1.区分清/浊音:浊音平均过零率低,集中在低频端; 清音平均过零率高,集中在高频端。

2.从背景噪声中找出是否有语音,以及语音的起点。

(b )基音周期基音是发浊音时声带震动所引起的周期性,而基音周期是指声带震动频率的倒数。

基音周期是语音信号的重要的参数之一,它描述语音激励源的一个重要特征,基音周期信息在多个领域有着广泛的应用,如语音识别、说话人识别、语音分析与综合以及低码率语音编码,发音系统疾病诊断、听觉残障者的语音指导等。

因为汉语是一种有调语言,基音的变化模式称为声调,它携带着非常重要的具有辨意作用的信息,有区别意义的功能,所以,基音的提取和估计对汉语更是一个十分重要的问题。

∑--=-=1)]1(sgn[)](sgn[21N m n n n m x m x Z由于人的声道的易变性及其声道持征的因人而异,而基音周期的范围又很宽,而同—个人在不同情态下发音的基音周期也不同,加之基音周期还受到单词发音音调的影响,因而基音周期的精确检测实际上是一件比较困难的事情。

基音提取的主要困难反映在:①声门激励信号并不是一个完全周期的序列,在语音的头、尾部并不具有声带振动那样的周期性,有些清音和浊音的过渡帧是很难准确地判断是周期性还是非周期性的。

②声道共振峰有时会严重影响激励信号的谐波结构,所以,从语音信号中直接取出仅和声带振动有关的激励信号的信息并不容 易。

③语音信号本身是准周期性的(即音调是有变化的),而且其波形的峰值点或过零点受共振峰的结构、噪声等的影响。

④基音周期变化范围大,从老年男性的50Hz 到儿童和女性的450Hz ,接近三个倍频程,给基音检测带来了一定的困难。

由于这些困难,所以迄今为止尚未找到一个完善的方法可以对于各类人群(包括男、女、儿童及不向语种)、各类应用领域和各种环境条件情况下都能获得满意的检测结果。

尽管基音检测有许多困难,但因为它的重要性,基音的检测提取一直是一个研究的课题,为此提出了各种各样的基音检测算法,如自相关函数(ACF)法、峰值提取算法(PPA)、平均幅度差函数(AMDF)法、并行处理技术、倒谱法、SIFT 、谱图法、小波法等等。

三、使用仪器、材料微机(带声卡)、耳机,话筒。

四、 实验步骤 (1)语音信号的采集利用Windows 语音采集工具采集语音信号,将数据保存wav 格式。

采集一组浊音信号和一组清音信号,信号的长度大于3s 。

(2)采用短时相关函数计算语音信号浊音基音周期,考虑窗长度对基音周期计算的影响。

采用倒谱法求语音信号基音周期。

(3)计算短时过零率,清音和浊音的短时过零率有何区别。

五、实验过程原始记录(数据,图表,计算) 短时过零率短时相关函数P j j n s n s j R N jn n n n ,,1)()()(1=-=∑-=∑--=-=10)]1(sgn[)](sgn[21Nm n n nm x m x Z六、实验结果,及分析图一清浊音图二浊音自相关函数图三清音自相关函数实验结果分析:清音短时过零率高,浊音过零率低。

浊音、清音自相关函数可以看出,浊音存在基音周期,清音不存在基音周期。

浊音的基音周期是自相关函数峰值之间的时间差。

七、实验参考程序1.段时能量a1=zeros(1,620);K=450;R=zeros(1,250);duanshnl=0;maxx=0;speech=zeros(1,1000);sp1=wavread('D:\语音信号处理试验\a.wav');%8000采样频率maxx=max(sp1);speech(1:1000)=sp1(1:1000);duanshnl=speech(1:1000)*speech(1:1000)';duanshnl=duanshnl/(maxx^2)plot(sp1(1:400));hold onsp=wavread('D:\语音信号处理试验\s.wav');%8000采样频率speech(1:1000)=sp(1:1000);qduanshnl=speech(1:1000)*speech(1:1000)';qduanshnl=qduanshnl/(maxx^2)plot(sp(1:400),'r')2 短时过零率close alla1=zeros(1,620);K=450;R=zeros(1,250);duanshnl=0;maxx=0;speech=zeros(1,1000);sp1=wavread('D:\语音信号处理试验\a.wav');%11000采样频率sp=wavread('D:\语音信号处理试验\f.wav');%11000采样频率L=mean(sp);sp=sp-L;L2=mean(sp1);sp1=sp1-L2;%以下程序计算短时过零率m1=0;m2=0;for i=1:2000if sp1(i)>0spp1(i)=1;elsespp1(i)=-1;endendfor i=1:2000if sp(i)>0spp(i)=1;elsespp(i)=-1;endendfor i=2:2000m1=m1+0.5*abs(spp1(i)-spp1(i-1));m2=m2+0.5*abs(spp(i)-spp(i-1)); % m2 >> m1endplot(sp1(1:2000),'r');hold onplot(sp(1:2000));3 相关函数法计算基音周期a1=zeros(1,620);K=450;R=zeros(1,250);sp=wavread('e:\E\letter\a1.wav');%11000采样频率for i=1:250for j=1:601-1-iR(i)=R(i)+sp(j)*sp(j+i);endendplot(R/14)hold onR=zeros(1,250);sp=wavread('e:\E\letter\f1.wav');%11000采样频率f1=sp(3300:4000);%11000采样频率for i=1:250for j=1:601-1-iR(i)=R(i)+f1(j)*f1(j+i);endendplot(R/14,'r')4 倒谱法计算基音周期close alla1=zeros(1,620);K=500;sp=wavread('D:\a1.wav');%11000采样频率sound=zeros(1,K);speech=zeros(1,K);tt=zeros(1,K);hanning=zeros(1,K); for number=1:Khanning(number)=(1/2)*(1-cos((2*pi)*(number-1)/(K-1)));endsound=sp(K:2*K-1);tt=abs(fft(sound(1:K)));for i=1:Kspeech(i)=logm(tt(i));endspeech=real(ifft(speech));plot(speech,'g')hold onsound=sound.*hanning';tt=abs(fft(sound(1:K)));for i=1:Kspeech(i)=logm(tt(i));endspeech=real(ifft(speech));plot(speech,'r');sp=wavread('D:\f1.wav');%11000采样频率f1=sp(3000:4000);%11000采样频率%f1=sp(K:4000);sound=f1(K:2*K-1);tt=abs(fft(sound(1:K)));for i=1:Kspeech(i)=logm(tt(i));endspeech=real(ifft(speech));figureplot(speech,'g')hold onsound=sound.*hanning';tt=abs(fft(sound(1:K)));for i=1:Kspeech(i)=logm(tt(i));endspeech=real(ifft(speech));plot(speech,'r');实验二语音信号的频域处理一、实验目的、要求(1)掌握语音信号频域分析方法(2)了解语音信号频域的特点(3)了解谱减法作为频域语音增强的原理与编程实现(3)了解谱减法的缺点,并分析产生该缺点的原因二、实验原理语音虽然是一个时变、非平稳的随机过程。

但在短时间内可近似看作是平稳的。

因此如果能从带噪语音的短时谱中估计出“纯净”语音的短时谱,即可达到语音增强的目的。

由于噪声也是随机过程,因此这种估计只能建立在统计模型基础上。

利用人耳感知对语音频谱分量的相位不敏感的特性,这类语音增强算法主要针对短时谱的幅度估计。

短时话幅度估计概述 设一帧加窗后的带噪语音为()()()01y n s n d n n N =+≤≤- (2.1)其中()s n 为纯净语音,()d n 假设为平稳加性高斯噪声。

将()y n 在一组基{()}k n φ上展开,使展对系数为各不相关的随机变量。

设()y n 的相关函数为(,)y R n m ,由K -L 展开得知{()}k n φ满足1()()(,)()N k y k m K n R n m m λφφ-==∑ (2.2)则()y n 的展开式为110()()()()N k k K N k k n y n Y nY y n n φφ-=-=⎧=⎪⎪⎨⎪=⎪⎩∑∑ (2.3) 如果()y n 的相关长度小于帧长N ,则()k n φ的近似函数为2()k nk n j N πϕ⎛⎫=⎪⎝⎭(2.4)可见()y n 的展开过程实际上相当于离散博里叶交换,其展开系数(为傅里叶变换系数。

相关文档
最新文档