语音信号处理课程设计指导剖析

时间:2019-05-15 05:04:29下载本文作者:会员上传
简介:写写帮文库小编为你整理了多篇相关的《语音信号处理课程设计指导剖析》,但愿对你工作学习有帮助,当然你在写写帮文库还可以找到更多《语音信号处理课程设计指导剖析》。

第一篇:语音信号处理课程设计指导剖析

数字信号处理课程设计报告

学院:电子信息学院

班级:通信131

姓名:*** 2016年 月 日

语音信号处理

目录

一、设计目的.................................2

二、设计要求及任务...........................2 2.1 语音信号的采集........................2 2.2 语音信号的频谱分析;..................2

三、课程设计平台.............................3

四、设计原理与计算方法.......................3 4.1卷积运算..............................3 4.2 采样定理..............................3

五、设计内容.................................4 5.1利用带阻滤波器的进行滤波的具体步骤....4 5.1.1语音信号的录入与提取..............4 5.1.2加入噪声信号......................6 5.1.3 语音信号和噪声信号相加...........8 5.1.4滤波器设计........................9 5.1.5对信号进行滤波...................11 5.2利用低通滤波器进行滤波...............12 六:总结....................................14

语音信号处理

一、设计目的

1、学会MATLAB的使用,掌握MATLAB程序设计方法;

2、掌握在Windows环境下语言信号采集的方法;

3、掌握数字信号处理的基本概念、基本理论和基本方法;

4、掌握MATLAB设计IIR数字滤波器的方法;

5、学会用MATLAB对信号进行分析和处理;

二、设计要求及任务

2.1 语音信号的采集

本设计利用计算机Windows下的录音机录入一句语音信号,然后在Matlab软件平台下,利用函数waveread对语音信号进行采样,记住采样频率和采样点数。

2.2 语音信号的频谱分析;

在Matlab中,可以利用函数FFT对信号进行快速傅里叶变换,得到信号的频谱特性,然后加入一干扰信号,要求画出语音信号干扰前后的时域波形,并对其频谱进行分析。

1、设计数字滤波器,给出性能指标(参考指标);

(1)低通滤波器的性能指标:fp=1000Hz,fs=1200Hz,As=100dB,Ap=1dB(2)高通滤波器的性能指标:fs=4800Hz,fp=5000Hz,As=100dB,Ap=1dB(3)带通滤波器的性能指标:fp1=1200Hz,fp2=3000Hz,fs1=1000Hz, fps2=3200Hz,As=100dB,Ap=1dB;

采用双线性变换法设计上面一种类型的数字滤波器,要求使用切比雪夫II型滤波器。

2、用滤波器对信号进行滤波

语音信号处理

画出滤波后信号的时域波形及频谱,并对滤波前后的信号进行对比,分析信号的变化。

3、回放语音信号,分析滤波前后的语音变化。

在熟悉数字信号处理课程理论的基础上,通过MATLAB仿真实现语音信号的采集与处理,进一步加深对数字信号处理理论和技术的掌握。

三、课程设计平台

计算机、MATLAB6.5以上

四、设计原理与计算方法

4.1卷积运算

卷积和乘积运算在频域和时域是一一对应的,两个信号在时域的卷积可以转化为求两者在频域的乘积后再反变换,同理在频域的卷积等时域的乘积。而信号的频域求解有快速傅里叶FFT算法。

卷积与傅里叶变换有着密切的关系。利用这一点性质,即两函数的傅里叶变换的乘积等于它们卷积后的傅里叶变换,能使傅里叶分析中许多问题的处理得到简化。

由卷积得到的函数f*g 一般要比f 和g 都光滑。特别当g 为具有紧支集的光滑函数,f 为局部可积时,它们的卷积f * g 也是光滑函数。利用这一性质,对于任意的可积函数f,都可以简单地构造出一列逼近于f 的光滑函数列,这种方法称为函数的光滑化或正则化。

卷积的概念还可以推广到数列、测度以及广义函数上去。4.2 采样定理

采样定理,又称香农采样定理,奈奎斯特采样定理,是信息论,特别是通讯与信号处理学科中的一个重要基本结论。E.T.Whittaker(1915年发表的统计理论), 3

语音信号处理

克劳德·香农与Harry Nyquist都对它作出了重要贡献。另外,V.A.Kotelnikov也对这个定理做了重要贡献。

采样是将一个信号(即时间或空间上的连续函数)转换成一个数值序列(即时间或空间上的离散函数)。采样定理指出,如果信号是带限的,并且采样频率高于信号带宽的两倍,那么,原来的连续信号可以从采样样本中完全重建出来。带限信号变换的快慢受到它的最高频率分量的限制,也就是说它的离散时刻采样表现信号细节的能力是有限的。采样定理是指,如果信号带宽不到采样频率的一半(即奈奎斯特频率),那么此时这些离散的采样点能够完全表示原信号。高于或处于奈奎斯特频率的频率分量会导致混叠现象。大多数应用都要求避免混叠,混叠问题的严重程度与这些混叠频率分量的相对强度有关。

五、设计内容

5.1利用带阻滤波器的进行滤波的具体步骤

5.1.1语音信号的录入与提取

用电脑所带的录音工具录制一段录音,并将声音保存,因为录入的声音不是wav格式,因此用格式工厂软件将其进行转换位wav格式。

利用Matlab对语音信号进行FFT分析,并画出源语音信号的时域波形和频域波形。实验代码:

[x,fs]=wavread('c1.wav');%利用wavread函数对语音信号进行提取 figure(1)subplot(2,1,1);N=length(x);T=1/fs;

t=0:T:(N-1)*T;%时间间隔

plot(t,x)%以时间为横轴,x为纵轴画图 title('原语音信号时域分析')%图形命名 xlabel('t(s)')ylabel('x')

以上为时域分析,接下来为频域分析

语音信号处理

f=(0:N-1)*fs/N;X=fft(x);subplot(2,1,2)plot(f,abs(X))axis([0 25000 0 60]);title('原语音信号频域分析')xlabel('f(Hz)')ylabel('X')

语音信号图形:

语音信号处理

5.1.2加入噪声信号

在此选择余弦函数作为噪声信号,因为正弦和余弦函数的频域为两条竖直的线,便于滤波

实验代码:

y=0.003*sin(50000*t);

y1=[y' y'];%对噪音信号进行转换,便于信号相加(见下图有说明)Y=fft(y);figure(2)subplot(2,1,1)plot(t,y)

title('干扰信号时域波形')xlabel('t(s)')

ylabel('y=0.003*sin(50000*t)')Y=fft(y);subplot(2,1,2)plot(f,abs(Y))

axis([0 25000 0 60]);%取在语音信号范围内的噪声信号 title('干扰信号频域波形')xlabel('f(Hz)')ylabel('Y')

语音信号处理

通过图中划线的部分可以看出,通过y1=[y' y']此句可以将x和y这两个变量类型统一,以便噪声与语音信号的相加

语音信号处理

噪声信号图形:

5.1.3 语音信号和噪声信号相加

实验代码:

x1=wavread('c1.wav');x2=x1+y1;figure(3)subplot(2,1,1)plot(t,x2)

title('加入噪声信号时域波形')xlabel('t(s)')ylabel('x')X2=fft(x2);subplot(2,1,2)plot(f,abs(X2))

axis([0 25000 0 60]);title('加入噪声信号频域波形')

语音信号处理

xlabel('f(Hz)')ylabel('Y')

两信号相加图形:

5.1.4滤波器设计

fp1=0.5*10^4;fp2=4*10^4;fs1=0.6*10^4;fs2=3.7*10^4;Rp=1;As=100;Fs=80000;

wp11=2*pi*fp1/Fs;wp22=2*pi*fp2/Fs;ws11=2*pi*fs1/Fs;

语音信号处理

ws22=2*pi*fs2/Fs;

OmegaP11=2*Fs*tan(wp11/2);OmegaP22=2*Fs*tan(wp22/2);OmegaS11=2*Fs*tan(ws11/2);OmegaS22=2*Fs*tan(ws22/2);OmegaP=[OmegaP11,OmegaP22];OmegaS=[OmegaS11,OmegaS22];%预畸变化

[N,OmegaC]=cheb2ord(OmegaP,OmegaS,Rp,As,'s');[b,a]=cheby2(N,As,OmegaS,'stop','s');[bz,az]=bilinear(b,a,Fs);%AD转换 [H,w]=freqz(bz,az);db=20*log10(abs(H));figure(4)plot(w/pi,db)title('带阻滤波器')xlabel('w/pi')ylabel('Db')

滤波器图形:

语音信号处理

5.1.5对信号进行滤波

实验代码:

H=filter(bz,az,x2);figure(5)subplot(211)plot(t,H)

title('滤波后时域')xlabel('t(s)')ylabel('x')subplot(212)H1=fft(H);plot(f,abs(H1));axis([0 25000 0 60]);title('滤波后频域')xlabel('f(Hz)')

语音信号处理

ylabel('Y')

滤波后图形:

对比原图源信号已经被滤出来了 5.2利用低通滤波器进行滤波

前三步和上面带阻滤波器一样便不再重复叙述,从低通滤波器的设计开始 低通滤波器实验代码: fp1=0.25*10^4;fs1=0.5*10^4;Rp=1;As=100;Fs=30000;

wp11=2*pi*fp1/Fs;ws11=2*pi*fs1/Fs;

OmegaP=2*Fs*tan(wp11/2);OmegaS=2*Fs*tan(ws11/2);%频率预畸

语音信号处理

[N,OmegaC]=cheb2ord(OmegaP,OmegaS,Rp,As,'s');%为了得到N C [z0,p0,k0]=Cheb2ap(N,As);%归一化原型低通滤波器零极点 a0=real(poly(p0));b0=k0*real(poly(z0));

[b,a]=lp2lp(b0,a0,OmegaC);%将归一化原型低通转换成低通滤波器

[bz,az]=bilinear(b,a,Fs);%双线性变换AF到DF [H,w]=freqz(bz,az);db=20*log10(abs(H));figure(4)plot(w/pi,db)title('低通滤波器')xlabel('w/pi')ylabel('Db')

此处设计低通滤波器时与上面方法不同,此处先求出了归一化原型低通滤波器,在利用归一化原型低通滤波器转换成低通滤波器 低通滤波器图形:

语音信号处理

滤波后图形:

从图中可以看出,利用低通滤波器也还原出了源语音信号,并且比带阻的效果稍好一点

六、总结

这次课程设计虽然遇到了很多问题,很多困难,但是也学到了很多东西。不仅学到了书本上的东西,而且学到了很多课本上没有的东西,很多程序里的东西,特别是程序语法,总是有错误,但是总是不知道错在哪里,在细心的检查下,终于找出了错误和警告,排除困难后,程序编译就通过了,心里终于舒了一口气。还有各种各样问题,通过查网络和请教同学来弄明白,这个过程是痛苦的,有时候有些问题不能马上解决,感到很头痛,真想放弃这个问题,但是坚持下来,并且解决这些问题的时候,真的有种苦尽甘来的感觉。

应用MATLAB进行语音信号的处理是与我们所学课程及专业紧密相连的,有着很强的实践性。做这个课程设计的时候,并不是非常的顺利,我也有遇到很多困难。刚开始,我用自己的mp3录制的一个音频文件做语音信号处理,程序始终现实如下错误提示:

语音信号处理

??? Error using ==> wavread Error using ==> wavread Data compression format(IMA ADPCM)is not supported.我在查阅了很多资料,在网上也查阅相关信息,最后发现只有WAV格式的音频信号才能被wavread函数识别,这只是其中的一个小困难,当然后来也出现了许多错误,不过在我们的精心调试下,代码终于运行成功 通过这次设计,进一步加深了对数子信号处理的了解,让我对它有了更加浓厚的兴趣。通过这次课设使我懂得,平时的理论知识只有通过自己动手做一个课题,从做这个课题的过程中发现问题,解决问题,这个学习的过程,会比我们平时在课堂上听到的知识更加的生动立体,更能让人记忆深刻。

总的来说,通过这次的课程设计我对语音信号有了全面的认识,对数字信号处理又有了深刻的理解,让我们感受到只有在充分理解课本知识的前提下,才更更好的应用这个工具。同时我相信,matlab会对我以后的学习中起到更大的帮助

参考文献

[1] 高西全、丁玉美编著,数字信号处理。西安:西安电子科技大学出版社,2008.[2]丁玉美、高西全编著,数字信号处理学习指导。西安:西安电子科技大学出版社,2001.[3]郑君里等编,信号与系统。北京:高等教育出版社,2000.[4]刘树棠译,数字信号处理——使用MATLAB。西安:西安交通大学出版社,2002.[5]导向科技编著,MATLAB程序设计与实例应用。北京:中国铁道出版社,2001.[6]罗军辉等编著,MATLAB7.0在数字信号处理中的应用。北京:机械工程出版社,2005.[7]陈怀琛等编著,MATLAB及在电子信息课中的应用。北京:电子工业出版社,2002.[8]胡广书编组,数字信号处理——理论、算法与实现。北京:清华大学出版社,2002.[9]梁虹等编,信号与线性系统分析——机遇MATLAB的方法与实现。北京:高等教育出版社,2006.语音信号处理

[10]刘卫国主编,MATLAB程序设计与应用(第二版)。北京:高等教育出版社,2006.

第二篇:DSP语音信号处理

语音信号处理是研究数字信号处理技术和语音信号进行处理的一门学科,是一门新型的学科,是在多门学科基础上发展起来的综合性技术,它涉及到数字信号处理、模式识别、语言学。语音信号处理是研究用数字信号处理技术对语音信号处理的一门学科。处理的目的是要得到一些语音参数以便高效的传输或存储;或者是通过处理的某种运算以达到某种用途的要求。语音信号处理又是一门边缘学科。如上所诉,它是“语言语音学”与“数字信号处理”两个学科相结合的产物。

语音信号处理属于信息科学的一个重要分支,大规模集成技术的高度发展和计算机技术的飞速前进,推动了这一技术的发展。在数字音频技术和多媒体技术迅速发展的今天,传统的磁带语音录放系统因体积大、使用不便、放音不清晰而受到了巨大挑战。本次课程设计提出的体积小巧,功耗低的数字化语音存储与回放系统,可以有效的解决传统的语音录放系统在电子与信息处理的使用中受到的限制。

本文提出了语音信号处理课程建设的实验环节中的一些考虑,作为专业课程的学习,实验内容不能仅仅停留在验证性实验上,还应增加实验延伸的设计要求,是学生加深对理论分析认识的同时,强调培养学生的实际动手能力和知识综合运用能力。从而提高语音信号的教学和实验的质量。实验内容采用MATLAB编程实现,不仅易于语音信号处理的实现,更易引导学生完成实验延伸的设计。

第一章 绪论

1.1选题背景

在我们的现实生活中从磁带、录像带到CD、VCD、DVD;从黑白电视机、彩色电视机、高清晰度电视机到具有数字信号处理功能的电视机;从留声机、录音机到语音信箱;现在正出在模拟信息到数字信息的变革之中,传统的磁带语音录放系统因其体积大,使用不便,在电子与信息处理的使用中受到许多限制。

虽然,目前广播电视系统尚未实现真正的数字化,相信在不久的将来,真正的数字电视、数字收音机、数字收录机将进入家庭。所以,研究音频信号的数字化存储、处理和回放系统有着很重要的现实意义。

通过设计语音信号实验箱可以对语音信号实现各种形式的变换,因此学会对语音信号的处理,也可自行研究将此语音处理技术应用到现实生活中。

1.2课题意义

语音信号处理的一门比较实用的电子工程的专业课程,语音是人类获取信息的重要来源和利用信息的重要手段,通过语言相互传递信息是人类最重要的基本功能之一,语音是人类特有的功能,它是创造和记载几千年来人类文明史的根本手段,是人类最重要、最有效、最常用和最方便的交换信息的形式。

语音信号处理是研究用数字信号处理技术对语音信号进行处理的一门学科,它是一门新兴的学科,同时又是综合性的多学科领域刚也涉及面很广的交叉学科。

第二章 课程设计要求及系统原理

2.1 课程设计基本要求

(1)学会MATLAB的使用,掌握MATLAB的程序设计方法;

(2)掌握在windows环境下语音信号的采集方法;

(3)掌握数字信号处理的基本概念,基本理论和基本方法;

(4)掌握MATLAB设计方法;

(5)学会用MATLAB对信号进行分析和处理。

2.2 系统基本原理

语音采集原理是,人耳能听到的声音是一种范围为20Hz—20kHz,而一般语音频率最高为3.4kHz。语音的采集是指语音声波信号经麦克风和高频放大器转换成有一定幅度的模拟量电信号,然后再转换成数字量的全过程。

本次设计的基本原理是对语音的录音和放音进行数字化控制。其中,关键技术在于:为了增加语音存储时间,提高存储器的利用率,采用了非失真压缩算法对语音信号进行压缩后再存储,而在回放时再进行解压缩;同时,对输入语音信号进行数字滤波以抑制杂音和干扰,从而确保了语音回放的可靠质量。

通过设计一个GUI实验箱,并添加相应的控制控件,添加一个声音文件,通过MATLAB编程,使其通过各种按钮实现语音信号处理的各种功能,最后做成一个完整的语音信号处理实验箱。

第三章 设计方案论证

3.1 设计理论依据

3.1.1采样定理:

在进行模拟/数字信号的转换过程中,当采样频率fs.max大于信号中最高频率fmax的2倍时,则采样之后的数字信号完整的保留了原始信号中的信号,一般实际应用中保证采样频率为信号最高频率的5—10倍;采样定理又称奈奎斯特定理。

3.1.2采样频率:

采样频率是指计算机每秒钟采集多少个声音样本,是描述声音文件的音质、音调、衡量声卡、声音文件的质量标准。采样频率越高,即采样的间隔时间越短,则在单位时间内计算机得到的声音样本数据就越多,对声音波形的表示也就越精确,采样频率与声音频率之间有一定的关系,根据奈奎斯特理论,只有采样频率高于声音信号最高频率的2倍的时候,才能把数字信号表示的声音还原成为原来的声音,这就是说采样频率是衡量声卡采集、记录和还原声音文件的质量标准。

3.1.3采样位数与采样频率

采样位数即采样值或取样值,用来衡量声音波动变化的参数,是指声卡在采集和播放声音文件时候使用数字声音信号的二进制为数。采样频率是指录音设备在一秒钟内对声音信号的采样次数,采样频率越高声音的还原就越真实越自然。

采样位数和采样频率对于音频接口来说是最为重要的两个基本指标,也是选择音频接口的两个重要标准。无论采样频率如何,理论上来说采样的位数决定了音频数据最大的力度范围。每增加一个采样位数相当于力度范围增加了6dB。采样位数越多则捕捉到的信号越精确。对于采样率来说你可以想象它类似于一个照相机。显然采样率越高,计算机提取的声音越多,对于原始的还原也越加精确。

第四章 图形用户界面设计

4.1 图形用户界面概念

图形用户界面或图形用户接口是指采用图形方式显示的计算机操作环境由用户接口。与早期计算机使用的命令行界面相比,图形界面对于用户来说更为简便易用。

GUI是MATLAB提供的图形用户界面开发环境,提供了一系列用于创建图形用户界面的工具,从而简化界面布局和编程工作。

4.2用户界面设计

4.2.1 GUI设计模板

在MATLAB主窗口中,选择File菜单中的New菜单项,再选择其中的GUI命令,就会显示图形用户界面的设计模板。

MATLAB为GUI设计一共准备了四个模板,分别是Blank GUI、GUI with Uicontrols、GUI with Axes and Menu、Modal Question Dialog。

当用户选择不同的模板时,在GUI设计模板界面的右边就会显示出与该模板对应的GUI图形。

4.2.2 GUI设计窗口

在GUI设计模板中选中一个模板,然后单击OK按钮,就会显示GUI设计窗口,选择不同的GUI设计模式时,在GUI设计窗口中显示的结果是不一样的。

GUI设计窗口由菜单栏、工具栏、空间工具栏以及图形对象设计区等部分组成。GUI设计窗口的菜单栏有File、Edit、View、Layout、Tools和Help六个菜单项,使用其中的命令可以完成图形用户界面的设计操作。

4.2.3 GUI设计窗口的基本操作

(1)前面板的设计:在GUI设计窗口创建图形对象后,通过双击该对象,就会显示该对象的属性编辑器。如下图所示。例如,创建一个Push Button对象,并设计该对象的属性值。

图4-1 按钮属性编辑器

通过以上的按钮属性编辑器可以根据个人情况对按钮的名称、颜色、大小等方面的属性进行修改,使按钮在视觉上变的更加完美。

(2)按钮功能的实现:在GUI设计窗口创建按钮后,通过右键单击按钮,选择View callbacks下的callback对相应的按钮进行编程,使按钮实现相应的功能,如下图所示对按钮的响应功能进行设置。

图4-2 按钮功能编辑器

进入到按钮程序编辑窗口,通过编程即可实现按钮的相应功能,如下图:

图4-3 按钮的编程实现界面

通过对各个按钮控件的修改,和对m文件程序的添加就完成对GUI窗口的设计,最后得到的图形化操作界面如下图所示:

图4-4 图形化操作界面

4.2.4 语音的录入与打开

在MATLAB中,[y,fa,bits]=wavread(‘Blip’,[N1 N2]);用于读取语音,7

采样值放在向y中,fs表示采样频率,bits表示采样位数。[N1 N2]表示读取从N1点到N2点的值。

Suond(x,fs,bits);用于对声音的回放,向量y则就代表了一个信号也就是说可以像处理一个信号表达式一样处理这个声音信号。

第五章 课程设计的软件实现

5.1 部分函数语法格式

读wav文件: x=wavread(‘filename’)数组a及b中元素相乘: a.*b 创建图形窗口命令: figure 绘图函数: plot(x)坐标轴: axis([xmin xmax ymin ymax])坐标轴注解: xlabel(‘„’)ylabel(‘„’)图例注解: legend(‘„’)一阶高通滤波器: y=filter([1-0.09375],1,x)分帧函数: f=enframe(x,len,inc)x为输入语音信号,len指定了帧长,inc指定帧移,函数返回为nXlen的一个矩阵,每一行都是一帧数据。

5.2语音信号处理的相关函数

5.2.1语音信号的短时谱:

周期性声门波可表示为:

(5-1)其中,g[n]是声门波的单周期的波形,p[n]是间隔为P的周期采样序列。当u[n]通过线性非时变声道,且该声道的单位冲击响应为h[n]时,声道输出为:

(5-2)为了观察一段语音,需要降生到输出乘以一个一时刻τ 为中心的窗函数 w[n,τ] ,即得到:

(5-3)

这段语音信号的频域表达式为:

(5-4)

即语音信号的谱包络为

语谱图就是现实时变频谱幅度特征的图形表达式为:

(5-5)

将语音信号短时谱程序写入到MATLAB中得到单色语谱图的波形如下:

图5-1 语音信号单色语谱图

5.2.2 自相关方法估计语音信号的声道参数:

由均方预测误差最小的得到正则方程:

(5-6)

其中,(5-7)

在最佳解时的误差为

(5-8)

在自相关法中式5-6,式5-8变为

(5-9)

(5-10)由式5-9和式5-10可列出方程组式5-11

(5-11)

解方程组式5-9求出线性预测系数,通过误差式5-11可求出增益G

(5-12)

加窗后信号频谱图如下:

图5-2 加窗后信号频谱图

通过以上的方法,改变参数分别求得4极点模型频率响应和6极点模型频率响应,6极点波形如下图所示:

图5-3 六极点波形图

最后通过以上方法用一个函数分别实现以上三个功能,三个波形显示在一个界面,通过观察图形,查看它们之间的分别。三者比较所得到的波形如下:

图5-4 三者比较波形图

5.2.3 基音周期检测

数据为浊音语音信号speech1_10k(10000样点/秒)用25ms的汉明窗对语音信号speech1_10k进行加窗处理,并画出所得到的加窗信号的自相关函数,再用根据中心消波法及三电平中心消波法原理改进程序,最后对比中方法基音检测的效果并分析结果。

实验原理及方法

(1)自相关检测原理:对于离散的数字语音信号序列x(n),如果周期N,则自相关函数也是同周期的周期函数。即:x(n)=x(n+N)。清音信号没有周期性,他的自相关函数也没有周期。浊音新海具有准周期性。自相关基音检测正是利用这一性质对语音信号进行基音检测的。

(2)中心消波法检测原理:中心消波处理是使用如下图所示的中心消波函数进行处理的:

图5-5 中心消波检测图

(3)三电平消波法原理:为了减少自相关计算中的乘法运算,可以把上述中心消波以后的信号y(n)的自相关用两个信号的互相关代替,其中一个信号是y(n)另一个信号是对y(n)进行三电平量化产生的结果。且这个信号有三种可能的取值,因而这里的互相关计算只需要做加减法,而这个互相关序列的周期性与y(n)的自相关序列是近似相同的。

三电平法对语音信号处理得到的波形如下:

图5-6 三电平法波形图

中心消波法得到的波形如下图:

图5-7 中心消波法波形图

5.3 GUI实验箱操作界面设计

通过对各个控件的编程和对参数的设计,最后得到的GUI实验箱操作界

面如下图所示,通过界面上的各个按钮即可实现相应的功能。

图5-8 GUI实验箱操作界面

第六章 心得体会

通过本次课程设计完成了对语音信号的读取与打开,与课题的要求十分相符;初略的完成了界面的设计,但也存在相当的不足,达到了打开语音文件,显示已定波形。语音信号处理时语音学与数字信号处理技术相结合的交叉学科,将语音当做一种特殊的信号,即一种“复杂向量”来看待。也就是说,体现了数字信号处理技术。

本次课程设计时希望将数字信号处理技术应用与某一实际领域,这里就是指对语音的处理。作为存储与计算机中的语音信号,其本身就是离散化了的向量,我们只需要将这些离散的量提取出来美酒可以对其进行处理了。

本次课设,用到了处理数字信号的强有力工具MATLAB,通过MATLAB李的几个命令函数的调用,很轻易的在实际化语音与数字信号的理论之间搭了一座桥。

最后,还利用了MATLAB的另一强大功能——GUI界面设计。设计出了一个建议的用户应用界面,可以让人实现界面操作。

通过本次课程设计让我更加了解了语音信号处理在现实中的强大的应用空间,同时查阅了很多相关的资料,应用MTALAB软件来完成,熟练掌握了MATLAB软件,本次课程设计要求用GUI设计模块,查阅了很多资料,更加深刻的陆奥了了这方面知识。

本次课程设计,我明白了理论的学习需要在实践中才能得到巩固。在课程设计中,只有动手慢慢研究,才能真正了解MATLAB软件平台中可以直接设计数字滤波器的各个函数的调用,对设计GUI实验箱的所有函数的运用有了比较好的认识。

通过这个课程设计,我学到了很多MATLAB和语音信号的知识,提高了自己在语音信号设计方面的知识能力,动手能力和思维能力都得到了一定的提升,希望自己以后可以更多的继续学习这一门课程设计方面的知识。

附 录

1.源程序代码:

参考文献

[1] 刘庆华 陈紫强《基于MATLAB和DSP的语音信号处理课程的建设》 电气电子教学学报 2006 10(3):124-128 [2] 张力 《MATLAB在语音信号处理辅助教学中的应用》 电气电子教学学报 2005 27卷2期:96-99 [3] 邓立新 杨震《信息技术融入“语音信号处理”课程的教学实践》电气电子教学学报 2005 27卷5期:13-16 [4] 胡航,《语音信号处理》 哈尔滨工业大学出版社 2005年2月,第二版:135-137 [5] 张平,《MATLAB基础与应用》 北京航空航天大学出版社 2007,第二版:85-92 [6] 谢德芳 《数字信号处理》 北京科学出版社 2005,第一版

[7] 张雄伟 《现代语音处理技术及应用》 机械工业出版社 2006,第二版 [8] 吴家安 《语音编码技术及应用》 机械工业出版社 2006 第一版 [9] 刘幺和 宋庭新 《语音识别与控制应用技术》 科学出版社 2008 第二版

[10] 李昌立 吴善培 《数字语音编码实用教程》 人民邮电出版社 2004 第一版

[11] 姚天仁 《数字语音处理》 华中科技大学出版社 1992 第二版 [12] 朱敏雄 《计算机语音技术(修订版)》 北京航空航天大学出版社 2002 第一版

[13] 王炳锡 《语音编码》 西安电子科技大学出版社 2002 第一版

第三篇:数字信号处理教语音信号处理课程设计心得

这次课程设计虽然遇到了很多问题,很多困难,但是也学到了很多东西。不仅学到了书本上的东西,而且学到了很多课本上没有的东西,很多程序里的东西,特别是程序语法,总是有错误,但是总是不知道错在哪里,在细心的检查下,终于找出了错误和警告,排除困难后,程序编译就通过了,心里终于舒了一口气。还有各种各样问题,通过查网络和请教同学来弄明白,这个过程是痛苦的,有时候有些问题不能马上解决,感到很头痛,真想放弃这个问题,但是坚持下来,并且解决这些问题的时候,真的有种苦尽甘来的感觉。

应用MATLAB进行语音信号的处理是与我们所学课程及专业紧密相连的,有着很强的实践性。做这个课程设计的时候,并不是非常的顺利,我也有遇到很多困难。刚开始,我用自己的mp3录制的一个wav文件做语音信号处理,程序始终现实如下错误提示:

??? Error using ==> wavread Error using ==> wavread Data compression format(IMA ADPCM)is not supported.我在查阅了很多资料,在网上也查阅相关信息,花费了大量时间也没找出结果,最后发现在WAV格式的语音文件有两种格式,即PCM格式和IMA ADPCM格式,而在MATLAB中用wavread函数进行语音处理时,并不能直接处理IMA ADPCM格式的语音信号,经过格式转换之后(选择PCM格式),我运行出了正确的结果。刚开始由于对滤波器的滤波原理并不是很了解,于是我又翻出学过的数字信号处理课本,认真研究起各种滤波器了,这才使我明白了大多数滤波器是如何工作地,不再单单只是懂理论,理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论。实验过程中,我感觉到初始语音信号和滤波输出后的语音信号在音色上有一定的差别,这说明了信号在处理、传输过程中有损耗。不管对于什么样的课题,其实也是有很多东西可以发掘的,这需要我们在平时多积累,多思考,只有这样,才能取得更大的进步,才能学有所用,学有所长。

通过这次设计,进一步加深了对数字信号处理的了解,让我对它有了更加浓厚的兴趣。通过这次课程设计使我懂得了,平时的理论知识只有通过自己动手做一个课题,从做这个课题的过程中发现问题,解决问题,这个学习的过程,会比我们平时只通过课堂上听讲得到的知识更加生动立体,跟让人记忆深刻。在设计的过程中,我发现同学间的互帮互助真的很重要。当我们有问题的时候,大家一起讨论,将自己的观点表达出来,当发现别人的观点与自己的不同的时候,我们通过查阅资料找到最终正确的答案,这个过程是互利互惠的。这也培养了我们以后走上工作岗位后的团队精神,对我们以后的为人处世都有很大帮助。同时我们在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。

总的来说,通过这次的课程设计我对语音信号有了全面的认识,对数字信号处理的知识又有了深刻的理解,让我感受到只有在充分理解课本知识的前提下,才能更好的应用这个工具;并且熟练的应用MATLAB也可以很好的加深我对课程的理解,方便我的思维。这次设计使我了解了MATLAB的使用方法,学会分析滤波器的优劣和性能,提高了分析和动手实践能力。同时我相信,进一步加强对MATLAB的学习与研究对我今后的学习将会起到很大的帮助!

第四篇:基于+MATLAB+的语音信号分析与处理的课程设计

1.课程设计目的………………………………………………………………(1)

2.课程设计基本要求……………………………………………...………….(1)

3.课程设计内容………………………………………..……………………..(2)

4.课程设计实现……………………………………………………..…..……………(3)

(1)语音信号的采集……………………………………………………..(5)

(2)语音信号的频谱分析………………………………………………..(6)

(3)设计滤波器和画出频率响应………………………………………..(6)

(4)用滤波器对信号进行滤波…………………………………………..(9)

(5)比较滤波前后语音信号的波形及其频谱…………………………..(9)

(6)回放语音信号………………………………………………………..(11)

(7)设计系统界面………………………………………………………..(13)

5、心得体会……………………………………………..……………………..(14)

6、参考文献…………………………………….……………………………..(14)

第五篇:基于matlab的语音信号滤波处理——数字信号处理课程设计

数字信号处理课程设计

题目: 学院: 专业: 班级: 学号: 姓名: 指导教师:

基于matlab的语音信号滤波处理

物理与电子信息学院电子信息工程

摘要:

语音信号处理是研究用数字信号处理技术和语音学知识对语音信号进行处理的新兴学科,是目前发展最为迅速的学科之一,通过语音传递信息是人类最重要,最有效,最常用和最方便的交换信息手段,所以对其的研究更显得尤为重要。

Matlab语言是一种数据分析和处理功能十分强大的计算机应用软件,它可以将声音文件变换成离散的数据文件,然后用起强大的矩阵运算能力处理数据。这为我们的本次设计提供了强大并良好的环境!

本设计要求自己录制一段自己的语音后,在MATLAB软件中采集语音信号、回放语音信号并画出语音信号的时域波形和频谱图。再在Matlab中分别设计不同形式的FIR数字滤波器。之后对采集的语音信号经过不同的滤波器(低通、高通、带通)后,观察不同的波形,并进行时域和频谱的分析。对比处理前后的时域图和频谱图,分析各种滤波器对于语音信号的影响。最后分别收听进行滤波后的语音信号效果,做到了解在怎么样的情况下该用怎么样的滤波器。

目录

1.设计内容……………………………………………………………4 2.设计原理……………………………………………………………4 2.1语音信号的时域分析…………………………………………4 2.2语音信号的频域分析…………………………………………5 3.设计过程……………………………………………………………5 3.1实验程序源代码………………………………………………6

3.1.1原语音信号时域、频域图………………………………6

3.1.2低通滤波器的设计………………………………………6

3.1.3高通滤波器的设计………………………………………7

3.1.4带通滤波器的设计………………………………………8

3.1.5语音信号的回放………………………………………9 3.2调试结果描述…………………………………………………10 3.3所遇问题及结果分析…………………………………………15

3.3.1所遇主要问题…………………………………………16

3.3.2结果分析………………………………………………16 4.体会与收获…………………………………………………………17 5.参考文献……………………………………………………………17

1.设计内容:

1.首先录制好一段自己的语音。

2.用Matlab分别设计好3种类型的滤波器(指标自己确定):低通型、高通型、带通型。3.用Matlab将语音信号进行采样,并分别将其通过所设计的3种滤波器。4.用Matlab自带的语音返回函数收听滤波后的语音信号,分析并比较其与原语音信号的差异。

2.设计原理:

语音信号时一种非平稳的时变信号,它带着各种信息。在语音编码、语音合成、语音识别和语音增强等语音处理中无一例外需要提取语音中包含的各种信息。语音信号分析的目的就在于方便有效的提取并表示语音信号所携带的信息。语音信号处理可以分为时域和变换域等处理方法,其中时域分析是最简单的方法,直接对语音信号的时域波形进行分析,崎岖的特征参数主要有语音的短时能量,短时平均过零率,短时自相关函数等。2.1语音信号的时域分析

信号提取:通过图形用户界面上的菜单功能按键采集电脑上的一段音频信号,完成音频信号的频率,幅度等信息的提取,并得到该语音信号的波形图。

信号调整:在设计的用户图形界面下对输入的音频信号进行各种变化,如变化幅度、改变频率等操作,以实现对语音信号的调整。

2.2语音信号的频域分析

信号的傅里叶表示在信号的分析和处理中起着重要的作用。因为对于线性系统来说,可以很方便地确定其对正弦或复指数和的响应,所以傅里叶分析方法能完善地解决许多信号分析和处理问题。另外,傅里叶表示使信号的某些特性变得更明显,因此,它能更深入地说明信号的各项红物理现象。

由于语音信号时随着时间变化的,通常认为,语音是一个受准周期脉冲或随机噪声源激励的线性系统的输出。输出频谱是声道系统频率响应与激励源频谱的乘积。身份到系统的频率响应及激励源都是随时间变化的,因此一般标准的傅里叶表示虽然适用于周期及平稳随机信号的表示,但不能直接用于语音信号。由于语音信号可以认为在短时间内,近似不变,因而可以采用短时分析法。

1.信号变换:在用户图形界面西啊对采集的语音信号进行Fourier等变换,并画出变换前后的频谱图和倒谱图。

2.信号滤波:滤除语音信号中的噪音部分,可以采用抵用滤波、高通滤波、带通滤波,并比较各种滤波后的效果。

3.设计过程:

3.1实验程序源代码(原语音信号存放在e:下):

3.1.1.原语音信号的时域、频域图

[x1,fs,bits]=wavread('e:txwz.wav');%sound(x1,fs,bits);figure(1);

plot(x1);%做原始语音信号的时域图形 title('原始语音信号');xlabel('时间 t');ylabel('音量 n');figure(2);y1=fft(x1);%做length(x1)点的FFT y1=fftshift(y1);%平移,是频率中心为0 derta_fs = fs/length(x1);%设置频谱的间隔,分辨率 plot([-fs/2:derta_fs: fs/2-derta_fs],abs(y1));%画出原始语音信号的频谱图

title('原始语音信号的频谱');grid on;3.1.2低通滤波器的设计

%低通滤波:截止频率4000,阻带衰减20dB,过渡带宽0.1π

fc1=4000;N1=2*pi*0.9/(0.1*pi)wc1=2*pi*fc1/fs;if rem(N1,2)==0 N1=N1+1;end Window= boxcar(N1+1);%长度为N1的矩形窗Window b1=fir1(N1,wc1/pi,Window);

figure(3);freqz(b1,1,512);title('低通滤波器的频率响应');x1_low = filter(b1,1,x1);%对信号进行低通滤波 figure(4);plot(x1_low);title('信号经过低通滤波器(时域)');figure(5);plot([-fs/2:derta_fs:fs/2-derta_fs],abs(fftshift(fft(x1_low))));title('信号经过低通滤波器(频域)');3.1.3高通滤波器的设计

%高通滤波:截止频率4000,阻带衰减40dB,过渡带宽0.1π

fc2=4000;N2=2*pi*3.1/(0.1*pi)wc2=2*pi*fc1/fs;N2=N2+mod(N2,2);Window=hanning(N2+1);b2=fir1(N2,wc2/pi,'high',Window);figure(6);freqz(b2,1,512);%数字滤波器频率响应 title('高通滤波器的频率响应');

x1_high = filter(b2,1,x1);%对信号进行高通滤波 figure(7);plot(x1_high);title('信号经过高通滤波器(时域)');figure(8);plot([-fs/2:derta_fs:fs/2-derta_fs],abs(fftshift(fft(x1_high))));title('信号经过高通滤波器(频域)')3.1.4带通滤波器的设计

%带通滤波:下截止频率4000,上截止频率8000,阻带衰减20dB,过渡带宽度0.1π

f1=4000;f2=8000;%带通滤波器的通带范围 w1=2*pi*f1/fs;w3=w1+0.1*pi;w2=2*pi*f2/fs;w4=w2-0.1*pi;w=[(w1+w3)/2,(w2+w4)/2];B=0.1*pi;N3=ceil(2*0.9*pi/B);N3=N3+mod(N3,2);Window=boxcar(N3+1);b3=fir1(N3,w/pi,'stop',Window);%带通滤波器

figure(9);freqz(b3,1,512);%数字滤波器频率响应 title('带通滤波器的频率响应');x1_daitong = filter(b3,1,x1);%对信号进行带通滤波 figure(10);plot(x1_daitong);title('信号经过带通滤波器(时域)');figure(11);plot([-fs/2:derta_fs:fs/2-derta_fs],abs(fftshift(fft(x1_daitong))));title('信号经过带通滤波器(频域)');3.1.5语音信号的回放(分别执行)

sound(x1,fs,bits);%原始信号

sound(x1_low,fs,bits);%经过低通滤 sound(x1_high,fs,bits);%经过高通滤波 sound(x1_daitong,fs,bits);%经过带通滤波

3.2调试结果描述

原始语音信号的时域图形:

原始语音信号频谱:

低通滤波器的频率响应:

信号经过低通滤波后的时域波形:

信号经过低通滤波后的频域波形

高通滤波器的频率响应:

信号经过高通滤波后的时域波形:

信号经过高通滤波后的频域波形:

带通滤波器的频率响应:

信号经过带通滤波后的时域波形:

信号经过带通滤波后的频域波形:

3.3所遇问题及结果分析

3.3.1所遇主要问题

1.在高通与带通滤波器的设计时老是报错,但同样的用法在低通滤波器中就可以实现

b2=fir1(N2,wc2/pi,'high',Window);??? Error using ==> fir1 The window length must be the same as the filter length.其要求在fir函数中所选用的窗长要和滤波器长度一致。但在参考书上指出,滤波器阶数必须为窗长加1。经上网查询后,原来高通、带阻滤波器的阶数应该控制为奇数,因为如果阶数为偶数,则在π点必有一零点,这对于高通带阻来说是不允许的,故取阶数为奇数,而你FIR1滤波器阶数为M+1阶,所以你的M必须为偶数,所以可以将程序中去窗长算法由原程序的: N2=2*pi*0.9/(0.1*pi);if rem(N2,2)==0 N2=N2+1;End 和: N3=2*pi*0.9/(0.1*pi);if rem(N3,2)==0 N3=N3+1;End 改为了:

N2=N2+mod(N2,2);和: B=0.1*pi;(B为过渡带宽)N3=ceil(2*0.9*pi/B);N3=N3+mod(N3,2);2.在设计高通滤波器时先是使用的矩形窗,用矩形窗验证出来的结果中低频语音分量依旧很强,不能将其全部抑制在0,之后换窗,选着了最小衰减可以到达53dB的海明窗,再次试验,非常成功!3.3.2结果分析

经过回放三个不同类型滤波器输出的语音信号,并与原语音信号对比得到了如下结论。

语音高频成分音质非常尖锐,齿音中,声音有些暗淡。语音低频成分音质沉稳,空间感觉强,语音浑厚。语音中频成分音质有力度,有通透感。

4.体会与收获

以往都是通过课本来感性的认知语音信号,通过本次的课程设计,让我对语音信号有了一个较为实际的认识。于此同时,让我再次把数字信号处理及数字滤波器的设计方法重新进行了复习和学习。而对于Matlab,也再次让我感受到了其功能的强大。最为重要的是,本次课 17

程设计让我重新审视了学习的过程:只去做实验是不行的,首先还是要思考,遇到了问题查书籍,百度搜索也只是一种手段,更加重要的是想,再理解,只有这样才能真正的做好实验。

5.参考文献

《数字信号处理》钱同惠、百度文库

下载语音信号处理课程设计指导剖析word格式文档
下载语音信号处理课程设计指导剖析.doc
将本文档下载到自己电脑,方便修改和收藏,请勿使用迅雷等下载。
点此处下载文档

文档为doc格式


声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:645879355@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。

相关范文推荐

    《信号与系统》课程设计——语音信号的分析和处理

    《信号与系统》课程设计——语音信号的分析和处理 【设计题目】基于时频域的分析方法对语音信号进行分析和处理 【设计目标】尝试对语音信号进行时频域分析和处理的基本方法......

    语音信号处理实验报告要求

    实验一: 1.简述本次试验的目的,关于基音周期的理论; 2.使用相关法的同学,给出程序的同时要说明所使用语音段的长度(短时平稳性),解释怎样在matlab中实现三电平削波(for...end循环和i......

    专业英语7语音信号处理

    1、演讲的目的是沟通。有几种方法表征语音通信的潜力。一个高度量化的方法是香农信息论思想的引入。根据信息变换理论,语音可以表示其消息内容或信息。语音特征的另一种表征......

    语音信号处理与识别

    信号系统课程设计报告欧阳光亮2012029020025 语音信号处理与识别 目的:理解时域和频域尺度变换基本概念,掌握信号时频域分析方法,正确理解采样定理,准确理解滤波器的概念。 内......

    DSP语音信号处理(推荐阅读)

    目 录 第一章 绪论 ......................................................................................................... 1 1.1课程设计的目的及意义 ................

    TMS320C54XDSP语音信号处理(5篇范文)

    《TMS320C54XDSP语音信号处理》 DSP课程设计报告 学号:0906030430 班级: 通信四班姓名:唐溧同组姓名: 蒋双福,梁嘉杰 指导教师:徐淑芳二〇一二 年四 月十四 日 目录 《TMS320C54XD......

    基于MATLAB的有噪声的语音信号处理的课程设计要点[五篇范文]

    DSP实验课程设计实验报告 DSP实验课程设计实验报告 姓名: 学号: 班级: 1.课程设计题目: 基于MATLAB的有噪声的语音信号处理的课程设计。 2.课程设计的目的: 综合运用数字信号处理......

    语音信号处理及加密课程总结

    《语音信号处理及加密》课程总结 本学期,我选修了《语音信号处理及加密》这门课。在本门课程的学习中,我系统地学习了现代语音编码技术的基本概念和基本知识,如什么是语音编码......