DSP语音信号处理精.docx

上传人:b****7 文档编号:9062206 上传时间:2023-02-03 格式:DOCX 页数:13 大小:253.55KB
下载 相关 举报
DSP语音信号处理精.docx_第1页
第1页 / 共13页
DSP语音信号处理精.docx_第2页
第2页 / 共13页
DSP语音信号处理精.docx_第3页
第3页 / 共13页
DSP语音信号处理精.docx_第4页
第4页 / 共13页
DSP语音信号处理精.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

DSP语音信号处理精.docx

《DSP语音信号处理精.docx》由会员分享,可在线阅读,更多相关《DSP语音信号处理精.docx(13页珍藏版)》请在冰豆网上搜索。

DSP语音信号处理精.docx

DSP语音信号处理精

摘要

语音信号处理是研究数字信号处理技术和语音信号进行处理的一门学科,是一门新型的学科,是在多门学科基础上发展起来的综合性技术,它涉及到数字信号处理、模式识别、语言学。

语音信号处理是研究用数字信号处理技术对语音信号处理的一门学科。

处理的目的是要得到一些语音参数以便高效的传输或存储;或者是通过处理的某种运算以达到某种用途的要求。

语音信号处理又是一门边缘学科。

如上所诉,它是“语言语音学”与“数字信号处理”两个学科相结合的产物。

语音信号处理属于信息科学的一个重要分支,大规模集成技术的高度发展和计算机技术的飞速前进,推动了这一技术的发展。

在数字音频技术和多媒体技术迅速发展的今天,传统的磁带语音录放系统因体积大、使用不便、放音不清晰而受到了巨大挑战。

本次课程设计提出的体积小巧,功耗低的数字化语音存储与回放系统,可以有效的解决传统的语音录放系统在电子与信息处理的使用中受到的限制。

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

从而提高语音信号的教学和实验的质量。

实验内容采用MATLAB编程实现,不仅易于语音信号处理的实现,更易引导学生完成实验延伸的设计。

第一章

1.1课程设计的目的及意义绪论

目前广播电视系统尚未实现真正的数字化,相信在不久的将来,真正的数字电视、数字收音机、数字收录机将进入家庭。

所以,研究音频信号的数字化存储、处理和回放系统有着很重要的现实意义。

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

目的:

通过课程设计,使我们加强对MATLAB和语音的认识,能够实际操作处理语音信号,并能够应用MATLAB设计GUI界面。

能够学会搜集资料,做方案比较,设计出更加完美的界面。

意义:

进一步提高分析解决问题的能力,创造一个独立完成实验的机会,锻炼分析解决问题能力,实现由课本知识向实际能力的转化,加深对基本原理的了解。

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

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

1.2设计要求

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

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

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

(4)掌握MATLAB设计方法;

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

1.3研究内容

语音采集原理是,人耳能听到的声音是一种范围为20Hz—20kHz,而一般语1

音频率最高为3.4kHz。

语音的采集是指语音声波信号经麦克风和高频放大器转换成有一定幅度的模拟量电信号,然后再转换成数字量的全过程。

本次设计的基本原理是对语音的录音和放音进行数字化控制。

其中,关键技术在于:

为了增加语音存储时间,提高存储器的利用率,采用了非失真压缩算法对语音信号进行压缩后再存储,而在回放时再进行解压缩;同时,对输入语音信号进行数字滤波以抑制杂音和干扰,从而确保了语音回放的可靠质量。

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

2

第二章语音信号处理理论基础

2.1设计理论依据

理论依据:

根据设计要求分析系统功能,掌握设计中所需理论(采样频率、采样位数的概念,采样定理;时域信号的FFT分析;数字滤波器设计原理和方法,各种不同类型滤波器的性能比较),阐明设计原理。

2.2信号采集

采集语音信号,并对其进行FFT频谱分析,画出信号的时域波形图和频谱图。

2.2.1采样定理:

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

2.2.2采样频率:

采样频率是指计算机每秒钟采集多少个声音样本,是描述声音文件的音质、音调、衡量声卡、声音文件的质量标准。

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

2.2.3采样位数与采样频率

采样位数即采样值或取样值,用来衡量声音波动变化的参数,是指声卡在采集和播放声音文件时候使用数字声音信号的二进制为数。

采样频率是指录音设备在一秒钟内对声音信号的采样次数,采样频率越高声音的还原就越真实越自然。

采样位数和采样频率对于音频接口来说是最为重要的两个基本指标,也是选择音频接口的两个重要标准。

无论采样频率如何,理论上来说采样的位数决定了音频数据最大的力度范围。

每增加一个采样位数相当于力度范围增加了6dB。

采样位数越多则捕捉到的信号越精确。

对于采样率来说你可以想象它类似于一个照3

相机。

显然采样率越高,计算机提取的声音越多,对于原始的还原也越加精确。

2.3构造受干扰信号并对其进行FFT频谱分析

对所采集的语音信号加入干扰噪声,对语音信号进行回放,感觉加噪前后声音的变化,分析原因,得出结论。

并对其进行FFT频谱分析,比较加噪前后语音信号的波形及频谱,对所得结果进行分析,阐明原因,得出结论。

2.4数字滤波器设计

根据待处理信号特点,设计合适数字滤波器,绘制所设计滤波器的幅频和相频特性。

2.5信号处理

用所设计的滤波器对含噪语音信号进行滤波。

对滤波后的语音信号进行FFT频谱分析。

画出处理过程中所得各种波形及频谱图。

对语音信号进行回放,感觉滤波前后声音的变化。

比较滤波前后语音信号的波形及频谱,对所得结果和滤波器性能进行频谱分析,阐明原因,得出结论。

2.6设计图形用户界面

设计处理系统的用户界面,在所设计的系统界面上可以选择滤波器的参数,显示滤波器的频率响应,选择信号等。

4

第三章系统方案论证

3.1设计方案

利用MATLAB中的wavread命令来读入(采集)语音信号,将它赋值给某一向量。

再将该向量看作一个普通的信号,对其进行FFT变换实现频谱分析,再依据实际情况对它进行滤波。

对于波形图与频谱图(包括滤波前后的对比图)都可以用MATLAB画出。

我们还可以通过sound命令来对语音信号进行回放,以便在听觉上来感受声音的变化。

选择设计此方案,是对数字信号处理的一次实践。

在数字信号处理的课程学习过程中,我们过多的是理论学习,几乎没有进行实践方面的运用。

这个课题正好是对数字语音处理的一次有利实践,而且语音处理也可以说是信号处理在实际应用中很大众化的一方面。

这个方案用到的软件也是在数字信号处理中非常通用的一个软件——MATLAB软件。

所以这个课题的设计过程也是一次数字信号处理在MATLAB中应用的学习过程。

课题用到了较多的MATLAB语句,而由于课题研究范围所限,真正与数字信号有关的命令函数却并不多。

3.2图形用户界面概念

图形用户界面或图形用户接口是指采用图形方式显示的计算机操作环境由用户接口。

与早期计算机使用的命令行界面相比,图形界面对于用户来说更为简便易用。

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

该界面主要实现了以下几个功能:

1打开wav格式的音频文件,并将该音频信号的值读取并赋予某一向量;2播放音频文件,可以选择性的显示该音频信号的波形、频谱、幅值以及相位;

3对音频信号进行IIR与FIR的5阶固定滤波处理,可以选择性的显示滤波前后信号的波形、频谱、幅值以及相位,以及播放滤波后的声音。

界面如图(2.2.1)所示:

5

图3-1界面

4可以通过单击图上按钮对按钮进行设置和编辑,背景的颜色也是通过单击背景进行设置的。

5通过该界面,可以方便用户进行语音信号的处理。

6

第四章GUI设计实现

4.1GUI设计模板

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

MATLAB为GUI设计一共准备了四个模板,分别是BlankGUI、GUIwithUicontrols、GUIwithAxesandMenu、ModalQuestionDialog。

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

4.2GUI设计窗口

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

GUI设计窗口由菜单栏、工具栏、空间工具栏以及图形对象设计区等部分组成。

GUI设计窗口的菜单栏有File、Edit、View、Layout、Tools和Help六个菜单项,使用其中的命令可以完成图形用户界面的设计操作。

4.3GUI设计窗口的基本操作

(1)前面板的设计:

在GUI设计窗口创建图形对象后,通过双击该对象,就会显示该对象的属性编辑器。

如下图所示。

例如,创建一个PushButton对象,并设计该对象的属性值。

图4-1按钮属性编辑器

通过以上的按钮属性编辑器可以根据个人情况对按钮的名称、颜色、大小等方面7

的属性进行修改,使按钮在视觉上变的更加完美。

(2)按钮功能的实现:

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

图4-2按钮功能编辑器

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

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

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

8

图4-4图形化操作界面

4.4语音的录入与打开

在MATLAB中,[y,fa,bits]=wavread(‘Blip’,[N1N2]);用于读取语音,采样值放在向y中,fs表示采样频率,bits表示采样位数。

[N1N2]表示读取从N1点到N2点的值。

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

9

第五章总结与心得体会

5.1总结

图5.1GUI界面

本设计完成了对语音信号的读取与打开,与课题的要求相符

本设计也较好的完成了对语音信号的频谱分析,通过fft变换,得出了语音信号的频谱图

图5.2滤波

在滤波这一块,课题主要是从巴特沃斯滤波器入手来设计滤波器,也从一方面基本实现了滤波。

10

5.2心得体会

通过本次课程设计完成了对语音信号的读取与打开,与课题的要求十分相符;初略的完成了界面的设计,但也存在相当的不足,达到了打开语音文件,显示已定波形。

语音信号处理时语音学与数字信号处理技术相结合的交叉学科,将语音当做一种特殊的信号,即一种“复杂向量”来看待。

也就是说,体现了数字信号处理技术。

本次课程设计时希望将数字信号处理技术应用与某一实际领域,这里就是指对语音的处理。

作为存储与计算机中的语音信号,其本身就是离散化了的向量,我们只需要将这些离散的量提取出来美酒可以对其进行处理了。

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

最后,还利用了MATLAB的另一强大功能——GUI界面设计。

设计出了一个建议的用户应用界面,可以让人实现界面操作。

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

本次课程设计,我明白了理论的学习需要在实践中才能得到巩固。

在课程设计中,只有动手慢慢研究,才能真正了解MATLAB软件平台中可以直接设计数字滤波器的各个函数的调用,对设计GUI实验箱的所有函数的运用有了比较好的认识。

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

11

附录:

fs=25600;%语音信号采样频率为25600

[x,fs,bits]=wavread('C:

\DocumentsandSettings\Administrator\桌面\语音\音频.wav');

sound(x,fs,bits);%播放语音信号

y1=fft(x,4096);%对信号做2048点FFT变换

f=fs*(0:

2047)/4096;

figure

(1)

magy1=abs(y1);

angy1=angle(y1);

subplot(3,1,1),plot(x);title('原始信号波形')

subplot(3,1,2),plot(magy1);title('原始信号幅值')

subplot(3,1,3),plot(angy1);title('原始信号相位')

figure

(2)

freqz(x)%绘制原始语音信号的频率响应图

title('频率响应图')

figure(3)

plot(f,abs(y1(1:

2048)));

title('原始语音信号频谱')

xlabel('Hz');

ylabel('fudu');

axis([045000400

12

参考文献

[1]刘庆华陈紫强《基于MATLAB和DSP的语音信号处理课程的建设》电气电子教学学报200610(3):

124-128

[2]张力《MATLAB在语音信号处理辅助教学中的应用》电气电子教学学报200527卷2期:

96-99

[3]邓立新杨震《信息技术融入“语音信号处理”课程的教学实践》电气电子教学学报200527卷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第二版

13

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 机械仪表

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1