基于matlab语音信号处理设计Word格式文档下载.doc
- 文档编号:472499
- 上传时间:2023-04-29
- 格式:DOC
- 页数:40
- 大小:383.50KB
基于matlab语音信号处理设计Word格式文档下载.doc
《基于matlab语音信号处理设计Word格式文档下载.doc》由会员分享,可在线阅读,更多相关《基于matlab语音信号处理设计Word格式文档下载.doc(40页珍藏版)》请在冰点文库上搜索。
目录
摘要 I
Abstract II
第一章绪论 1
1.1课题研究的背景 1
1.2国内外研究状况 1
1.3本文的主要工作及研究步骤 2
1.3.1本文的主要工作 2
1.3.2论文的研究步骤 2
第二章语音信号处理的总体方案 4
2.1运行环境及系统的基本要求 4
2.1.1运行的环境 4
2.1.2系统的基本要求 4
2.2语音信号相关调用函数介绍 4
2.2.1Wavread函数介绍 4
2.2.2其他相关函数介绍 5
第三章语音信号处理的基本知识 7
3.1语音的录入和打开 7
3.2采样位数和采样频率 7
3.3时域信号FFT分析 7
第四章语音信号的采集 8
4.1语音信号的采集 8
4.2语音信号的频谱分析 9
第五章数字滤波器的设计和画出其频率响应 11
5.1三种滤波器的性能指标 11
5.2IIR滤波器与FIR滤波器的性能比较 11
5.3设计FIR滤波器 12
5.3.1FIR低通滤波器设计 12
5.3.2FIR高通滤波器设计 13
5.3.3FIR带通滤波器的设计 14
5.4设计IIR滤波器 15
5.4.1IIR低通滤波器的设计 15
5.4.2IIR高通滤波器设计 17
5.4.3IIR带通滤波器设计 18
第六章语音信号的滤波 20
6.1语音信号滤波的流程 20
6.2对语音信号滤波的仿真 20
6.2.1滤波前后的时域对比 20
6.2.2滤波前后的频域对比 23
第七章总结 27
参考文献 28
致谢 1
附录:
1
第一章绪论
1.1课题研究的背景
通过语音传递倍息是人类最重要、最有效、最常用和最方便的交换信息的形式。
语言是人类持有的功能,声音是人类常用的工具,是相互传递信息的最主要的手段。
因此,语音信号是人们构成思想疏通和感情交流的最主要的途径。
并且,由于语言和语音与人的智力活动密切相关,与社会文化和进步紧密相连,所以它具有最大的信息容量和最高的智能水平。
现在,人类已开始进入了信息化时代,用现代手段研究语音信号,使人们能更加有效地产生、传输、存储、获取和应用语音信息,这对于促进社会的发展具有十分重要的意义。
让计算机能听懂人类的语言,是人类自计算机诞生以来梦寐以求的想法。
随着计算机越来越向便携化方向发展,随着计算环境的日趋复杂化,人们越来越迫切要求摆脱键盘的束缚而代之以语音输人这样便于使用的、自然的、人性化的输人方式。
作为高科鼓应用领域的研究热点,语音信号采集与分析从理论的研究到产品的开发已经走过了几十个春秋并且取得了长足的进步。
它正在直接与办公、交通、金融、公安、商业、旅游等行业的语音咨询与管理.工业生产部门的语声控制,电话、电信系统的自动拨号、辅助控制与查询以及医疗卫生和福利事业的生活支援系统等各种实际应用领域相接轨,并且有望成为下一代操作系统和应用程序的用户界面。
可见,语音信号采集与分析的研究将是一项极具市场价值和挑战性的工作。
我们今天进行这一领域的研究与开拓就是要让语音信号处理技术走人人们的日常生活当中,并不断朝更高目标而努力。
语音信号采集与分析之所以能够那样长期地、深深地吸引广大科学工作者去不断地对其进行研究和探讨,除了它的实用性之外,另一个重要原因是,它始终与当时信息科学中最活跃的前沿学科保持密切的联系.并且一起发展。
语音信号采集与分析是以语音语言学和数字信号处理为基础而形成的一门涉及面很广的综合性学科,与心理、生理学、计算机科学、通信与信息科学以及模式识别和人工智能等学科都有着非常密切的关系。
对语音信号采集与分析的研究一直是数字信号处理技术发展的重要推动力量。
因为许多处理的新方法的提出,首先是在语音信号处理中获得成功,然后再推广到其他领域。
1.2国内外研究状况
早在一两千年前,人们便对语言进行了研究。
由于没有适当的仪器设备,长期以来,一直是由耳倾听和用口模仿来进行研究。
因此,这种语言研究常被称为“口耳之学”,所以对语音只是停留在定性的描写上。
语音信号处理真正意义上的研究可以追溯到1876年贝尔电话的发明,该技术首次使用声电、电声转换技术实现了远距离的语音传输。
1939年提出并研制成功的第一个声码器,从此奠定了语音产生模型的基础。
这一发明在语音信号处理领域具有划时代的意义。
19世纪60年代,亥姆霍兹应用声学方法对元音和歌唱进行了研究,从而奠定了语言的声学基础。
20世纪40年代,一种语言声学的专用仪器—语谱图仪问世了。
它可以把语音的时变频谱用语图表示出来,从而得出了“可见语言”。
1948年美国Haskins实验室研制成功的语音回放机,该仪器可以把手工绘制在薄膜片上的语谱图自动转换成语音,并进行语音合成。
20世纪50年代队语言产生了系统的论述。
随着计算机的出现,语音分析工作,得以在电子计算机上进行。
在此基础上,语音信号处理的研究工作得到了计算机技术的帮助,取得了突破性的进展。
语音信号处理作为一个重要的研究领域,已经有很长的研究历史。
但是它的快速发展可以说是从1940年前后Dudley的声码器和Potter等人的可见语音开始的;
20世纪60年代中期形成的一系列数字信号处理方法和技术,如数字滤波器、快速傅立叶变换等成为语音信号数字处理的理论和技术基础;
到了80年代,由于矢量量化、隐马尔可夫模型和人工神经网络等相继被应用于语音信号处理,并经过不断改进与完善,使得语音信号处理技术产生了突破性的进展。
进入90年代以来,语音信号处理在实用化方面取得了许多实质性的进展。
一方面,对声学语音学统计模型的研究逐渐深入,鲁棒的语音识别、基于语音段的建模方法及隐马尔可夫模型与人工神经网络的结合成为研究的热点。
另一方面,为了语音识别实用化的需要,讲者自适应、听觉模型、快速搜索识别算法以及进一步的语言模型的研究等课题倍受关注。
1.3本文的主要工作及研究步骤
1.3.1本文的主要工作
本文简要介绍了语音信号采集与分析的发展史以及语音信号的特征、采集与分析方法,并通过手机录制自己的一段声音,运用Matlab进行仿真分析,最后对于声音中的噪声进行滤波处理,比较滤波前后的变化以及介绍语音信号的特点与采集,仿真主要是验证奈奎斯特定理,对语音信号进行时域、频域上的分析,率谱,是对语音信号的综合和分析,包括语音信号的调制和滤波。
1.3.2论文的研究步骤
1.理论依据
根据设计要求分析系统功能,掌握设计中所需理论(采样频率、采样位数的概念,采样定理;
时域信号的FFT分析;
数字滤波器设计原理和方法,各种不同类型滤波器的性能比较),阐明设计原理。
2.信号采集
采集语音信号,并对其进行FFT频谱分析,画出信号的时域波形图和频谱图。
3.构造受干扰信号并对其进行FFT频谱分析
对所采集的语音信号加入干扰噪声,对语音信号进行回放,感觉加噪前后声音的变化,分析原因,得出结论。
并对其进行FFT频谱分析,比较加噪前后语音信号的波形及频谱,对所得结果进行分析,阐明原因,得出结论。
4.数字滤波器设计
根据待处理信号特点,设计合适数字滤波器,绘制所设计滤波器的幅频和相频特性。
5.信号处理
用所设计的滤波器对含噪语音信号进行滤波。
对滤波后的语音信号进行FFT频谱分析。
画出处理过程中所得各种波形及频谱图。
对语音信号进行回放,感觉滤波前后声音的变化。
比较滤波前后语音信号的波形及频谱,对所得结果和滤波器性能进行频谱分析,阐明原因,得出结论。
1.4本文使用的软件Matlab介绍
MATLAB是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分[4]。
MATLAB在现实中应用很广泛,如今随处可见,在各个领域都是有广泛的使用。
MATLAB是矩阵实验室(MatrixLaboratory)的简称,和Mathematica、Maple并称为三大数学软件。
它在数学类科技应用软件中在数值计算方面首屈一指。
MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。
MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完相同的事情简捷得多,并且mathwork也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。
在新的版本中也加入了对C,FORTRAN,C++,JAVA的支持。
可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用。
第二章语音信号处理的总体方案
2.1运行环境及系统的基本要求
2.1.1运行的环境
运行环境主要介绍了硬件环境和软件环境。
硬件环境:
(1)处理器:
InterCore2T6400
(2)内存:
2G
(3)硬盘空间:
320GB或更高
(4)显卡:
SVGA显示适配器
软件环境:
操作系统:
WindowXP
开发环境主要介绍了本系统采用的操作系统、开发语言。
(1)操作系统:
WindowsXP
(2)开发环境:
Matlab7.0
2.1.2系统的基本要求
本文是用Matlab对含噪的的语音信号同时在时域和频域进行滤波处理和分析,同时对该语音信号通过滤波器出去噪声,设计出三种滤波器,得出图形后一一比较实现语音信号的处理分析。
2.2语音信号相关调用函数介绍
2.2.1Wavread函数介绍
选取一段语音信号,然后在matlab软件平台下,利用wavread函数对语音信号进行采样,记住采样频率和采样点数。
通过使用wavread函数,理解采样频率、采样位数等概念。
wavread函数调用格式:
y=wavread(file),读取file所规定的wav文件,返回采样值放在响亮y中。
[y,fs,nbits]=wavread(file),采样值放在向y中,表示采样频率(),nbits表示采样位数。
y=wavread(file,N),读取前N点的采样值放在向量y中。
y=wavread(file,[,]),读取从到点的采样值放在向量y中。
对语音信号04.wav进行采样其程序如下:
[y,fs,nbits]=wavread(‘larry’)
其中:
fs=44100;
(fs=44100为双声道设置频率,fs=22050为单声道设置频率)
nbits=16;
y=wavread(file,[20000,65000])
2.2.2其他相关函数介绍
(1).函数fftfilt的调用
函数fftfilt的调用格式为
y=fftfilt(b,x)
该格式是利用基于FFT的重叠相加法对数据进行滤波,这种频域滤波技术只对FIR滤波器有效。
该函数是通过向量b描述的滤波器对x数据进行滤波。
(2).函数sound的调用
函数sound可以对声音进行回放。
其调用格式为:
Sound(x,fs,bits)
(3).函数filter的调用
函数filter的调用格式为
y=filter(b,a,x)
该格式采用数字滤波器对数据进行滤波,既可以用于IIR滤波器,也可以用于FIR滤波器。
其中向量b和a分别表示系统函数的分子、分母多项式的系数,若a=1,此时表示FIR滤波器,否则就是IIR滤波器。
该函数是利用给出的向量b和a,对x中的数据进行滤波,结果放入向量y。
(4).randn函数调用
rand产生的是[0,1]上的均匀分布的随机序列,randn产生均值为0,方差为1的高斯随机序列,也就是白噪声序列;
也就是说,可以直接使用上面两个函数对原始信号添加噪声,调用格式:
y=x+rand(length(x),1)或者y=x+randn(length(x),1)
(5).FFT函数调用
在MATLAB的信号处理工具箱中函数FFT用于序列快速傅立叶变换。
FFT函数的一种调用格式为
其中,x是序列,y是序列的FFT,x可以为一向量或矩阵,若x为一向量,y是x的FFT。
且和x相同长度。
FFT函数的另一种调用格式为:
式中,x,y意义同前,N为正整数
第三章 语音信号处理的基本知识
3.1语音的录入和打开
在MATLAB中,[y,fs,bits]=wavread('
Blip'
[N1N2]);
用于读取语音,采样值放在向量y中,fs表示采样频率(Hz),bits表示采样位数。
[N1N2]表示读取从N1点到N2点的值(若只有一个N的点则表示读取前N点的采样值)。
sound(x,fs,bits);
用于对声音的回放。
向量y则就代表了一个信号(也即一个复杂的“函数表达式”)也就是说可以像处理一个信号表达式一样处理这个声音信号。
3.2采样位数和采样频率
采样位数即采样值或取样值,用来衡量声音波动变化的参数,是指声卡在采集和播放声音文件时所使用数字声音信号的二进制位数。
采样频率是指录音设备在一秒钟内对声音信号的采样次数,采样频率越高声音的还原就越真实越自然。
采样位数和采样率对于音频接口来说是最为重要的两个指标,也是选择音频接口的两个重要标准。
无论采样频率如何,理论上来说采样的位数决定了音频数据最大的力度范围。
每增加一个采样位数相当于力度范围增加了6dB。
采样位数越多则捕捉到的信号越精确。
对于采样率来说你可以想象它类似于一个照相机,44.1kHz意味着音频流进入计算机时计算机每秒会对其拍照达441000次。
显然采样率越高,计算机摄取的图片越多,对于原始音频的还原也越加精确。
3.3时域信号FFT分析
FFT即为快速傅氏变换,是离散傅氏变换的快速算法,它是根据离散傅氏变换的奇、偶、虚、实等特性,对离散傅立叶变换的算法进行改进获得的。
在MATLAB的信号处理工具箱中函数FFT和IFFT用于快速傅立叶变换和逆变换。
函数FFT用于序列快速傅立叶变换,其调用格式为y=fft(x),其中,x是序列,y是序列的FFT,x可以为一向量或矩阵,若x为一向量,y是x的FFT且和x相同长度;
若x为一矩阵,则y是对矩阵的每一列向量进行FFT。
如果x长度是2的幂次方,函数fft执行高速基-2FFT算法,否则fft执行一种混合基的离散傅立叶变换算法,计算速度较慢。
函数FFT的另一种调用格式为y=fft(x,N),式中,x,y意义同前,N为正整数。
函数执行N点的FFT,若x为向量且长度小于N,则函数将x补零至长度N;
若向量x的长度大于N,则函数截短x使之长度为N;
若x为矩阵,按相同方法对x进行处理
第四章语音信号的采集
4.1语音信号的采集
首先我们通过在网上下载一段语音,定义为“larry.wav”,过后在matlab软件中,利用函数wavread对语音信号进行采样,记下采样频率和采样点数。
程序如下:
functionyuyin_00
closeall;
i=1;
[x,fs,bits]=wavread('
E:
\larry.wav'
);
%x:
语音数据;
fs:
采样频率;
bits:
采样点数
sound(x,fs,bits);
%话音回放
N=length(x);
n=0:
N-1;
figure(i);
subplot(2,1,1);
plot(n,x);
%画出原始语音信号的波形
xlabel('
n'
ylabel('
x(n)'
title('
原始语音信号'
subplot(2,1,2);
[H,f]=freqz(x,1,512,fs);
plot(f,20*log10(abs(H)));
%画出原始语音信号的频谱
原始语音信号的频谱'
运行结果:
fs=22050HZ
bit=16
图4.1是原始语音信号的波形和频谱图
4.2语音信号的频谱分析
画出原始语音信号的时域波形,然后对语音信号进行FFT变换,得到原始信号的频谱特性。
FFT频谱分析程序如下:
functionyuyin_04
%x:
plot
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 matlab 语音 信号 处理 设计