毕业设计(论文)-基于MATLAB的有噪声语音信号处理

上传人:jiups****uk12 文档编号:40019186 上传时间:2018-05-22 格式:DOC 页数:65 大小:701KB
返回 下载 相关 举报
毕业设计(论文)-基于MATLAB的有噪声语音信号处理_第1页
第1页 / 共65页
毕业设计(论文)-基于MATLAB的有噪声语音信号处理_第2页
第2页 / 共65页
毕业设计(论文)-基于MATLAB的有噪声语音信号处理_第3页
第3页 / 共65页
毕业设计(论文)-基于MATLAB的有噪声语音信号处理_第4页
第4页 / 共65页
毕业设计(论文)-基于MATLAB的有噪声语音信号处理_第5页
第5页 / 共65页
点击查看更多>>
资源描述

《毕业设计(论文)-基于MATLAB的有噪声语音信号处理》由会员分享,可在线阅读,更多相关《毕业设计(论文)-基于MATLAB的有噪声语音信号处理(65页珍藏版)》请在金锄头文库上搜索。

1、- 南京林业大学本科毕业设计(论文)题 目: 基于MATLAB的有噪声语音信号处理 二O一一 年 六 月 十 日摘要滤波器设计在数字信号处理中占有极其重要的地位,FIR数字滤波器和IIR滤波器是滤波器设计的重要组成部分。Matlab功能强大、简单易学、编程效率高,深受广大科技工作者的欢迎。特别是Matlab还具有信号分析工具箱,不需具备很强的编程能力,就可以很方便地进行信号分析、处理和设计。利用MATLAB信号处理工具箱可以快速有效地设计各种数字滤波器。课题基于MATLAB有噪音语音信号处理的设计与实现,综合运用数字信号处理的理论知识对加噪声语音信号进行时域、频域分析和滤波。通过理论推导得出相

2、应结论,再利用MATLAB作为编程工具进行计算机实现。在设计实现的过程中,使用窗函数法来设计FIR数字滤波器,用巴特沃斯、切比雪夫和双线性变法设计IIR数字滤波器,并利用MATLAB作为辅助工具完成设计中的计算与图形的绘制。通过对对所设计滤波器的仿真和频率特性分析,可知利用MATLAB信号处理工具箱可以有效快捷地设计FIR和IIR数字滤波器,过程简单方便,结果的各项性能指标均达到指定要求。关键词 数字滤波器;MATLAB;窗函数法; 巴特沃斯; 切比雪夫; 双线性变换Abstract Filter design in digital signal processing plays an ext

3、remely important role, FIR digital filters and IIR filter is an important part of filter design. Matlab is powerful, easy to learn, programming efficiency, which was welcomed by the majority of scientists. Matlab also has a particular signal analysis toolbox, it need not have strong programming skil

4、ls can be easily signal analysis, processing and design. Using MATLAB Signal Processing Toolbox can quickly and efficiently design a variety of digital filters. MATLAB based on the noise issue speech signal processing design and implementation of digital signal processing integrated use of the theor

5、etical knowledge of the speech signal plus noise, time domain, frequency domain analysis and filtering. The corresponding results obtained through theoretical derivation, and then use MATLAB as a programming tool for computer implementation.Implemented in the design process, using the window functio

6、n method to design FIR digital filters with Butterworth, Chebyshev and bilinear Reform IIR digital filter design and use of MATLAB as a supplementary tool to complete the calculation and graphic design Drawing. Through the simulation of the designed filter and the frequency analysis shows that using

7、 Matlab Signal Processing Toolbox can quickly and easily design digital filters FIR and IIR, the process is simple and convenient, the results of the performance indicators to meet the specified requirements.Keywords: digital filter; MATLAB; Chebyshev; Butterworth;Window function method; bilinear tr

8、ansformation II目录 1绪论11.1研究的目的和意义21.2 国内同行研究现状21.3本课题的研究内容42.原始语音信号采集与处理52.1 Matlab简单介绍52.2 语音信号的采样理论依据62.3语音信号的采集72.4程序流程图72.5语音信号的时频分析82.6 语音信号加噪与频谱分析92.7 本章小结113设计数字滤波器123.1 数字滤波器设计的基本思路123.2 模拟滤波器概述123.3 IIR数字滤波器概述123.4 FIR数字滤波器概述133.5 FIR数字滤波器和IIR数字滤波器比较133.6 低通,高通及带通滤波器143.7 设计FIR滤波器143.8 设计II

9、R滤波器153.9 双线性变换法和窗函数法153.10 本章小结184 进行滤波,比较滤波前后语音信号的波形及频谱194.1验证所设计的滤波器194.2滤波214.3本章小结235.GUI界面245.1系统界面设计工具GUI概述245.2创建GUI界面245.3创建开关按钮255.4保存和修改fig文件265.5编写M文件285.6本章小结33总结34致谢35参考文献36附录38附录(I) 设计FIR和IIR数字滤波器38附录(II)比较滤波前后语音信号的波形及频谱461绪论数字信号处理是利用计算机或专用处理设备,以数值计算的方法对信号进行采集、抽样、变换、综合、估值与识别等加工处理,借以达到

10、提取信息和便于应用的目的。它在语音、雷达、图像、系统控制、通信、航空航天、生物医学等众多领域都获得了极其广泛的应用。具有灵活、精确、抗干扰强、设备尺寸小、造价低、速度快等优点。数字滤波器, 是数字信号处理中及其重要的一部分。随着信息时代和数字技术的发展,受到人们越来越多的重视。数字滤波器可以通过数值运算实现滤波,所以数字滤波器处理精度高、稳定、体积小、重量轻、灵活不存在阻抗匹配问题,可以实现模拟滤波器无法实现的特殊功能。数字滤波器种类很多,根据其实现的网络结构或者其冲激响应函数的时域特性,可分为两种,即有限冲激响应( FIR,Finite Impulse Response)滤波器和无限冲激响应

11、( IIR,Infinite Impulse Response)滤波器。FIR滤波器结构上主要是非递归结构,没有输出到输入的反馈,系统函数H (z)在处收敛,极点全部在z = 0处(因果系统),因而只能用较高的阶数达到高的选择性。FIR数字滤波器的幅频特性精度较之于IIR数字滤波器低,但是线性相位,就是不同频率分量的信号经过fir滤波器后他们的时间差不变,这是很好的性质。FIR数字滤波器是有限的单位响应也有利于对数字信号的处理,便于编程,用于计算的时延也小,这对实时的信号处理很重要。 FIR滤波器因具有系统稳定,易实现相位控制,允许设计多通带(或多阻带)滤波器等优点收到人们的青睐。IIR滤波器

12、采用递归型结构,即结构上带有反馈环路。IIR滤波器运算结构通常由延时、乘以系数和相加等基本运算组成,可以组合成直接型、正准型、级联型、并联型四种结构形式,都具有反馈回路。同时,IIR数字滤波器在设计上可以借助成熟的模拟滤波器的成果,如巴特沃斯、契比雪夫和椭圆滤波器等,有现成的设计数据或图表可查,在设计一个IIR数字滤波器时,我们根据指标先写出模拟滤波器的公式,然后通过一定的变换,将模拟滤波器的公式转换成数字滤波器的公式。滤波器的设计可以通过软件或设计专用的硬件两种方式来实现。随着MATLAB软件及信号处理工具箱的不断完善,MATLAB很快成为应用学科等领域不可或缺的基础软件。它可以快速有效地实

13、现数字滤波器的设计、分析和仿真,极大地减轻了工作量,有利于滤波器设计的最优化1。1.1研究的目的和意义 语音信号的采集与分析技术是一门涉及面很广的交叉科学,它的应用和发展与语音学、声音测量学、电子测量技术以及数字信号处理等学科紧密联系,语音是人类获取信息的重要来源和利用信息的重要手段。在信号传输过程中,由于实验条件或各种其他主观或客观条件的原因,语音处理系统都不可避免地要受到各种噪声的干扰。噪声不但降低了语音质量和语音的可懂度,而且还将导致系统性能的急剧恶化,严重时使整个系统无法正常工作。MATLAB是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境

14、。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。其强大的数据处理能力可以极大程度上削弱噪声影响,还原出真实的语音信号(相符度在90%以上)2。1.2 国内同行研究现状 MATLAB是Matrix Laboratory(矩阵实验室)的缩写,是MathWorks推出的一套高性能可视化软件,它集数值分析,矩阵运算,函数生成,信号处理,

15、图像处理,建模与仿真等诸多功能于一体,为使用者提供一个高效的编程工具。本次毕业设计中,我们就用它作为编程工具和辅助工具进行设计。噪声污染位于联合国四大公认污染之一,无论是尖锐的火车汽笛声,还是我们肉耳听不到的超声波,次声波都有可能给人们生活带来极大不便。在机械方面,机械件碰撞带来的噪声会缩短器件寿命,在电子方面,电器件在噪声的影响下可能会失灵。华中师范大学教育信息技术工程研究中心(武汉)刘智老师曾经就机械噪声给人们身心带来的伤害进行过一次计算机仿真,同时用MATLAB进行了信号处理。此次研究,他通过比较加噪前后,语音的频谱和语音回放,能明显的感觉到加入噪声后回放的声音与原始的语音信号有很大的不

16、同,前者随较尖锐的干扰啸叫声。从含噪语音信号的频谱图中可以看出含噪声的语音信号频谱,在整个频域范围内分是布均匀。其实,这正是干扰所造成的。通过滤波前后的对比,得出低通滤波后效果最好,高通滤波后的效果最差的结果3。大连理工大学2000级硕士蒋瑞艳也曾经做过一个振动,噪声处理系统,它是WINDOWS界面下的振动、噪声信号处理系统,它在专用模拟输入硬件(数据采集系统)支持下,可以完成振动、噪声信号的数据采集以及功率谱、倒谱、谱阵和传递函数分析等功能。能将数据转化成各种对应的图形,并具备ZOOM功能。它可以广泛应用于实验室、生产现场和教学中做振动、噪声的测试和分析,可以代替专用信号处理机的工作。 本系

17、统软件采用先进的C+ Builder语言编制,在WINDOWS系统下运行。软件界面的设计以满足大多数用户为主,力求直观通俗,通过菜单驱动完成各个功能4。华中科技大学能源与动力工程学院就“基于MATLAB的噪声信号采集与分析系统研究 ”做过研究报告,他们利用MATLAB的数据采集工具箱(DAQ)和信号处理工具箱开发了一套声音信号采集分析系统,该系统不仅能够实现低成本、高精度的实时采集,还能将声音信号资料导入系统进行时域和频域分析。利用另外一个工具Compiler使编制的MATLAB程序能够独立运行从而提高了运行速度;配备了友好的图形用户界面(GUI),方便用户操作。最后给出了系统在内燃机噪声诊断

18、方面的应用实例5。在机械方面,西北工业大学航海工程学院就“基于MATLAB的舰船辐射噪声信号小波消噪处理” 做过研究报告,他们针对舰船辐射噪声信号的特点提出了小波消噪的方法,对小波消噪理论作了简要的阐述,并设计了一种消噪方案,最后利用MATLAB,在计算机上选用不同的小波基和阈值进行了实船信号的消噪处理试验,并对结果进行了简单的分析比较。试验结果表明,在选择了合适的小波基和阈值的情况下,利用小波变换的方法对舰船辐射噪声进行消噪处理可以取得良好的效果6。 由此可见,MATLAB给噪声处理带来了极大“福音”。1.3本课题的研究内容课题基于MATLAB有噪音语音信号处理的设计与实现,综合运用数字信号

19、处理的理论知识对加噪声语音信号进行时域、频域分析和滤波。通过理论推导得出相应结论,再利用 MATLAB 作为编程工具进行计算机实现。在设计实现的过程中,使用窗函数法来设计FIR数字滤波器,用巴特沃斯、切比雪夫和双线性变法设计IIR数字滤波器,并利用MATLAB 作为辅助工具完成设计中的计算与图形的绘制。通过对对所设计滤波器的仿真和频率特性分析,可知利用MATLAB信号处理工具箱可以有效快捷地设计FIR和IIR数字滤波器。2.原始语音信号采集与处理2.1 Matlab简单介绍 MATLAB是矩阵实验室(Matrix Laboratory)的简称,是美国MathWorks公司出品的商业数学软件,用

20、于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。MATLAB是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。MATLAB和Mathematica、Maple并称

21、为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。 MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C+ ,JAVA的支持。可以直接调用,用户也可以将自己

22、编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用。MATLAB 的应用范围非常广,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。附加的工具箱(单独提供的专用 MATLAB 函数集)扩展了 MATLAB 环境,以解决这些应用领域内特定类型的问题。2.2 语音信号的采样理论依据2.2.1采样频率采样频率是指计算机每秒钟采集多少个声音样本,是描述声音文件的音质、音调,衡量声卡、声音文件的质量标准。采样频率越高,即采样的间隔时间越短,则在单位时间内计算机得到的声音

23、样本数据就越多,对声音波形的表示也越精确。采样频率与声音频率之间有一定的关系,根据奎斯特理论,只有采样频率高于声音信号最高频率的两倍时,才能把数字信号表示的声音还原成为原来的声音。这就是说采样频率是衡量声卡采集、记录和还原声音文件的质量标准。2.2.2采样位数采样位数即采样值或取样值,用来衡量声音波动变化的参数,是指声卡在采集和播放声音文件时所使用数字声音信号的二进制位数。采样频率是指录音设备在一秒钟内对声音信号的采样次数,采样频率越高声音的还原就越真实越自然。采样位数和采样率对于音频接口来说是最为重要的两个指标,也是选择音频接口的两个重要标准。无论采样频率如何,理论上来说采样的位数决定了音频

24、数据最大的力度范围。每增加一个采样位数相当于力度范围增加了6dB。采样位数越多则捕捉到的信号越精确。对于采样率来说你可以想象它类似于一个照相机,44.1kHz意味着音频流进入计算机时计算机每秒会对其拍照达441000次。显然采样率越高,计算机摄取的图片越多,对于原始音频的还原也越加精确。2.2.3采样定理在进行模拟/数字信号的转换过程中,当采样频率fs.max大于信号中,最高频率fmax的2倍时,即:fs.max=2fmax,则采样之后的数字信号完整地保留了原始信号中的信息,一般实际应用中保证采样频率为信号最高频率的510倍;采样定理又称奈奎斯特定理。 1924年奈奎斯特(Nyquist)就推

25、导出在理想低通信道的最高大码元传输速率的公式:理想低通信道的最高大码元传输速率=2W*log2 N (其中W是理想低通信道的带宽,N是电平强度)2.3语音信号的采集利用PC机上的声卡和WINDOWS操作系统可以进行数字信号的采集。将话筒输入计算机的语音输入插口上,启动录音机。按下录音按钮,接着对话筒说话“语音信号处理”,说完后停止录音,屏幕左侧将显示所录声音的长度。点击放音按钮,可以实现所录音的重现。以文件名“Orisound”保存入c : MATLAB work中。可以看到,文件存储器的后缀默认为. wav ,这是WINDOWS操作系统规定的声音文件存的标准。开始用wavread读取语音信号

26、,并进行采样,建立数据文件,并用plot画出数据文件时域波形图和频谱图利用MATLAB中的随机函数产生噪声加入到语音信号中,模仿语音信号被污染,并对其进行频谱分析。回放语音信号得出所设计滤波器在语音处理中的优劣并设计一个信号处理系统界面。结束运用数字信号处理理论设计FIR和IIR数字滤波器, 并对被噪声污染的语音信号进行滤波,分析滤波后信号的时域和频域特征。2.4程序流程图图 2-1程序流程图2.5语音信号的时频分析在MATLAB软件平台下,利用wavread函数对语音信号进行采样,记住采样频率和采样点数,Wavread函数调用格式y=wavread(file)%读取file所规定的wav文件

27、,返回采样值放在向量y中。y,fs,bits=wavread(file) %采样值放在向量y中,fs表示采样频率(hz),bits表示采样位数。y=wavread(file,N)%读取前N点的采样值放在向量y中。y=wavread(file,N1,N2)%读取从N1到N2点的采样值放在向量y中。对语音信号Orisound.wav进行采样其程序如下:y,fs,nbits=wavread (OriSound); %把语音信号加载入MATLAB仿真软件平台中画出语音信号的时域波形,再对语音信号进行频谱分析。MATLAB提供了快速傅里叶变换算法FFT计算DFT的函数fft,其调用格式如下:Xk=fft

28、(xn,N) (式2-1)参数xn为被变换的时域序列向量,N是DFT变换区间长度,当N大于xn的长度时,fft函数自动在xn后面补零。,当N小于xn的长度时,fft函数计算xn的前N个元素,忽略其后面的元素。在本次设计中,我们利用fft对语音信号进行快速傅里叶变换,就可以得到信号的频谱特性。程序如下:y,fs,nbits=wavread(OriSound); %语音信号的采集sound(y,fs,nbits); %语音信号的播放n=length(y) ; Y=fft(y,n); %快速傅里叶变换figure;subplot(2,1,1);plot(y);title(原始信号波形,fontwei

29、ght,bold);axis( 78000 80000 -1 1);grid;subplot(2,1,2);plot(abs(Y);title(原始信号频谱,fontweight,bold);axis( 0 150000 0 4000);grid;程序结果如下图: 图 2-2 原始信号采集波形图2.6 语音信号加噪与频谱分析在MATLAB中产生高斯白噪声非常方便,我们可以直接应用两个函数:一个是WGN,另一个是AWGN。WGN用于产生高斯白噪声,AWGN则用于在某一信号中加入高斯白噪声。也可直接用randn函数产生高斯分布序列。在本次设计中,我们是利用MATLAB中的随机函数(rand或ran

30、dn)产生噪声加入到语音信号中,模仿语音信号被污染,并对其频谱分析。Randn函数有两种基本调用格式:Randn(n)和Randn(m,n),前者产生nn服从标准高斯分布的随机数矩阵,后者产生mn的随机数矩阵。在这里,我们选用Randn(m,n)函数。语音信号添加噪声及其频谱分析的主要程序如下:y,fs,nbits=wavread(OriSound);sound(y,fs,nbits); n = length (y) ; Noise=0.2*randn(n,2);s=y+Noise;sound(s);figure;subplot(2,1,1);plot(s);title(加噪语音信号的时域波形

31、,fontweight,bold);axis( 78000 80000 -1 1);grid;S=fft(s); subplot(2,1,2);plot(abs(S);title(加噪语音信号的频域波形,fontweight,bold);axis( 0 150000 0 4000);grid; 图 2-3 信号加噪时域波形图与频谱图2.7 本章小结 本章介绍了语音信号的采集,信号加白噪声,加噪后的时域与频域分析。3设计数字滤波器3.1 数字滤波器设计的基本思路数字滤波器的实现有两个关键步骤:一个从数字域到模拟域间的变换,这个变换实现了数字滤波器技术指标到模拟滤波器技术指标的转换,同样也实现了模

32、拟滤波器系统函数到数字滤波器系统函数的转换;另一个是从模拟滤波器技术指标到满足该指标的模拟滤波器的设计。3.2 模拟滤波器概述用模拟数字变换法设计IIR数字滤波器,首先必须设计一个模拟滤波器,它有许多不同的类型,主要有以下两种类型:巴特沃思(Botterworth简写BW)滤波器。BW滤波器是根据幅频特性在通带内具有最拼图特性而定义的滤波器,对一个N阶低通滤波器来说,所谓最平坦特性就是模拟函数的前(2N-1)阶导数在处都为零。BW滤波器的另一个特性是在通带和阻带内的幅频特性始终是频率的单调下降函数,且其模拟函数随阶次N 的增大而更接近于理想低通滤波器。切比雪夫(Chbyshev简写为CB)滤波

33、器。CB低通滤波器的模拟函数由切比雪夫多项式定义,且在通带内的幅频响应是波动的,在阻带则单调变化。3.3 IIR数字滤波器概述IIR(Infinite Impulse Response)数字滤波器,又名“无限脉冲响应数字滤波器”,或“递归滤波器”。递归滤波器,也就是IIR数字滤波器,顾名思义,具有反馈,一般认为具有无限的脉冲响应。IIR滤波器有以下几个特点:(1)封闭函数:IIR数字滤波器的系统函数可以写成封闭函数的形式。 (2)IIR数字滤波器采用递归型结构:IIR数字滤波器采用递归型结构,即结构上带有反馈环路。IIR滤波器运算结构通常由延时、乘以系数和相加等基本运算组成,可以组合成直接型、

34、正准型、级联型、并联型四种结构形式,都具有反馈回路。由于运算中的舍入处理,使误差不断累积,有时会产生微弱的寄生振荡。 (3)借助成熟的模拟滤波器的成果:IIR数字滤波器在设计上可以借助成熟的模拟滤波器的成果,如巴特沃斯、契比雪夫和椭圆滤波器等,有现成的设计数据或图表可查,其设计工作量比较小,对计算工具的要求不高。在设计一个IIR数字滤波器时,我们根据指标先写出模拟滤波器的公式,再通过一定的变换,将模拟滤波器的公式转换成数字滤波器的公式。(4)需加相位校准网络:IIR数字滤波器的相位特性不好控制,对相位要求较高时,需加相位校准网络。3.4 FIR数字滤波器概述FIR数字滤波器(finite im

35、pulse response filter)又名“有限脉冲响应数字滤波器”,这类滤波器对于脉冲输入信号的响应最终趋向于0,因此而得名。有限脉冲响应滤波器(FIR filter)的优点:(1) 脉冲响应(impulse response)为有限长:造成当输入数位讯号为有限长的时候,输出数位讯号也为有限长。(2) 比无限脉冲响应滤波器(IIR filter)较容易最佳化(optimize)。(3) 线性相位(linear phase):造成h(n),是偶对称(even)或奇对称(odd)且有限长。(4)一定是稳定的(stable):因为Z转换(Z transform)后所有的极点(pole)都在单

36、位圆内3.5 FIR数字滤波器和IIR数字滤波器比较 不论是IIR滤波器还是FIR滤波器的设计都包括三个步骤:(1)按照实际任务的要求,确定滤波器的性能指标。(2)用一个因果、稳定的离散线性时不变系统的系统函数去逼近这一性能指标。根据不同的要求可以用IIR系统函数,也可以用FIR系统函数去逼近。(3)利用有限精度算法实现系统函数,包括结构选择、字长选择等。但IIR滤波器和FIR滤波器的设计方法完全不同。IIR滤波器设计方法有间接法和直接法,间接法是借助于模拟滤波器的设计进行的。其设计步骤是:先设计过渡模拟滤波器得到系统函数H(s),然后将H(s)按某种方法转换成数字滤波器的系统函数H(z)。F

37、IR滤波器比鞥采用间接法,常用的方法有窗函数法、频率采样发和切比雪夫等波纹逼近法。对于线性相位滤波器,经常采用FIR滤波器。3.6 低通,高通及带通滤波器低通滤波器:对于不同滤波器而言,每个频率的信号的减弱程度不同。当使用在音频应用时,它有时被称为高频剪切滤波器, 或高音消除滤波器。低通滤波器概念有许多不同的形式,其中包括电子线路(如音频设备中使用的hiss 滤波器、平滑数据的数字算法、音障(acoustic barriers)、图像模糊处理等等,这两个工具都通过剔除短期波动、保留长期发展趋势提供了信号的平滑形式。低通滤波器在信号处理中的作用等同于其它领域如金融领域中移动平均数(moving

38、average)所起的作用;低通滤波器有很多种,其中,最通用的就是巴特沃斯滤波器和切比雪夫滤波器。高通滤波器:去掉信号中不必要的低频成分,去掉低频干扰的滤波器。在电力系统中,谐波补偿时用高通滤波器滤除某次及其以上的各次谐波。高通滤波器是指车载功放中能够让中、高频信号通过而不让低频信号通过的电路,其作用是滤去音频信号中的低音成分,增强中音和高音成分以驱动扬声器的中音和高音单元。此外高通滤波器常常和低通滤波器成对出现,不论哪一种,都是为了把一定的声音频率送到应该去的单元。带通滤波器:能通过某一频率范围内的频率分量、但将其他范围的频率分量衰减到极低水平的滤波器,与带阻滤波器的概念相对。一个模拟带通滤

39、波器的例子是电阻-电感-电容电路(RLC circuit)。这些滤波器也可以用低通滤波器同高通滤波器组合来产生。3.7 设计FIR滤波器如前所述,IIR滤波器和FIR滤波器的设计方法有很大的区别。下面我们着重介绍用窗函数法设计FIR滤波器的步骤。如下:(1)根据对阻带衰减及过渡带的指标要求,选择窗函数类型(矩形窗、三角窗、汉宁窗、哈明窗、凯塞窗等),并估计窗口长度N。先按照阻带衰减选择窗函数类型。原则是在保证阻带衰减满足要求的情况下,尽量选择主瓣的窗函数。(2)构造希望逼近的频率响应函数。(3)计算h(n).。(4)加窗得到设计结果。3.8 设计IIR滤波器无论是数字滤波器还是模拟滤波器,他们

40、技术指标的建立都是以所谓的“固有衰减”参数为参照。以数字滤波器为例,固有衰减参数(关于之旅分量归一化)定义为 A(w)=-20lg|H(ejw)|-20lg|H(ej0)| (式3-1)目前IIR数字滤波器设计的最通用的方法是借助于模拟滤波器的设计方法。模拟滤波器设计已经有了一套相当成熟的方法,它不但有完整的设计公式,而且还有较为完整的图表供查询,因此,充分利用这些已有的资源将会给数字滤波器的设计带来很大方便。IIR数字滤波器的设计步骤是:按一定规则将给出的数字滤波器的技术指标转换为模拟低通滤波器的技术指标;根据转换后的技术指标设计模拟低通滤波器;再按一定规则将G(s)转换成H(z)。若设计的

41、数字滤波器是低通的,那么上述设计工作可以结束,若所设计的是高通,带通或带阻滤波器,那么还有步骤;将高通、带通、或带阻数字l不去的技术指标先转化为低通模拟滤波器的技术指标,然后按照上述步骤设计出低通,再将转换为所需的H(z)。3.9 双线性变换法和窗函数法对于数字高通、带通滤波器的设计,通用方法为双线性变换法。可以借助于模拟滤波器的频率转换设计一个所需类型的过渡模拟滤波器,再经过双线性变换将其转换策划那个所需的数字滤波器。具体设计步骤如下:(1)确定所需类型数字滤波器的技术指标。(2)将所需类型数字滤波器的边界频率转换成相应的模拟滤波器的边界频率,转换公式为=2/T tan(0.5)(式3-2)

42、(3)将相应类型的模拟滤波器技术指标转换成模拟低通滤波器技术指标。(4)设计模拟低通滤波器。(5)通过频率变换将模拟低通转换成相应类型的过渡模拟滤波器。(6)采用双线性变换法将相应类型的过渡模拟滤波器转换成所需类型的数字滤波器。我们知道,脉冲响应不变法的主要缺点是会产生频谱混叠现象,使数字滤波器的频响偏离模拟滤波器的频响特性。为了克服之一缺点,可以采用双线性变换法。下面我们总结一下利用模拟滤波器设计IIR数字低通滤波器的步骤:(1)确定数字低通滤波器的技术指标:通带边界频率、通带最大衰减,阻带截止频率、阻带最小衰减。(2)将数字低通滤波器的技术指标转换成相应的模拟低通滤波器的技术指标。(3)按

43、照模拟低通滤波器的技术指标设计及过渡模拟低通滤波器。(4)用双线性变换法,模拟滤波器系统函数转换成数字低通滤波器系统函数。接下来,我们根据语音信号的特点给出有关滤波器的技术指标:低通滤波器的性能指标:fp=1000Hz,fc=1200Hz,As=100db ,Ap=1dB高通滤波器的性能指标:fp=3500Hz,fc=4000Hz,As=100dB,Ap=1dB;带通滤波器的性能指标:fp1=1200Hz,fp2=3000hZ,fc1=1000Hz,fc2=3200Hz,As=100dB,Ap=1dB在Matlab中,可以利用函数fir1设计FIR滤波器,利用函数butter,cheby1和e

44、llip设计IIR滤波器,利用Matlab中的函数freqz画出各步步器的频率响应。hn=fir1(M,wc,window),可以指定窗函数向量window。如果缺省window参数,则fir1默认为哈明窗。其中可选的窗函数有Rectangular Barlrtt Hamming Hann Blackman窗,其相应的都有实现函数。MATLAB信号处理工具箱函数buttp buttor butter是巴特沃斯滤波器设计函数,其有5种调用格式,本课程设计中用到的是N,wc=butter(N,wc,Rp,As,s),该格式用于计算巴特沃斯模拟滤波器的阶数N和3dB截止频率wc。MATLAB信号处理

45、工具箱函数cheblap,cheblord和cheeby1是切比雪夫I型滤波器设计函数。我们用到的是cheeby1函数,其调用格式如下:B,A=cheby1(N,Rp,wpo,ftypr)函数butter,cheby1和ellip设计IIR滤波器时都是默认的双线性变换法,所以在设计滤波器时只需要代入相应的实现函数即可。下面我们以IIR低通滤波器的设计为例:Ft=8000;Fp=1000;Fs=1200;wp=2*pi*Fp/Ft;ws=2*pi*Fs/Ft;fp=2*Ft*tan(wp/2);fs=2*Fs*tan(wp/2);n11,wn11=buttord(wp,ws,1,50,s); b

46、11,a11=butter(n11,wn11,s); num11,den11=bilinear(b11,a11,0.5);h,w=freqz(num11,den11);figure;plot(w*8000*0.5/pi,abs(h);legend(IIR低通滤波器,Location,NorthWest);grid;程序结果如下图: 图3-1 IIR低通滤波器IIR高通要用cheby1(即切比雪夫I型滤波器)函数来设计,1p2hp其中p;pose(模型),h(high),同理,1p2bp中b表示band(带通),FIR与此类似。其余具体程序及运行结果如 附录(I) 设计FIR和IIR数字滤波器3

47、.10 本章小结本章详细介绍了FIR和IIR数字滤波器的设计,利用MATLAB信号处理工具箱函数,我们很容易写出其相应程序。4 进行滤波,比较滤波前后语音信号的波形及频谱4.1验证所设计的滤波器为了验证滤波器的可使用性,我们用常用的sin函数来进行验证。其具体程序及运行结果如下:t=0:1/1023:1;s=sin(2*pi*t);N=length(s);y=s+0.5*rand(1,N);subplot(2,1,1);plot(y);title(加噪语音信号的时域波形,fontweight,bold);S=fft(y); subplot(2,1,2);plot(abs(S);title(加噪

48、语音信号的频域波形,fontweight,bold);Ft=8000;Fp=1000;Fs=1200;wp=2*pi*Fp/Ft;ws=2*pi*Fs/Ft;n11,wn11=buttord(wp,ws,1,50,s); %求低通滤波器的阶数和截止频率b11,a11=butter(n11,wn11,s); %求S域的频率响应的参数 num11,den11=bilinear(b11,a11,0.5); %利用双线性变换实现频率响应S域到Z域的变换 z11=filter(num11,den11,s);sound(z11);m11=fft(z11); %求滤波后的信号figure;subplot(2

49、,2,1);plot(abs(S),g);title(滤波前信号的频谱,fontweight,bold);grid;subplot(2,2,2);plot(abs(m11),r);title(滤波后信号的频谱,fontweight,bold);grid;subplot(2,2,3);plot(y);title(滤波前信号的波形,fontweight,bold);grid;subplot(2,2,4);plot(z11);title(滤波后的信号波形,fontweight,bold);grid; 图 4-1 验证所设计的滤波器由所得结果可知,所设计的滤波器符合要求。4.2滤波用自己设计的各滤波器

50、分别对加噪的语音信号进行滤波,在Matlab中,FIR滤波器利用函数fftfilt对信号进行滤波,IIR滤波器利用函数filter对信号进行滤波。函数fftfilt用的是重叠相加法实现线性卷积的计算。调用:y=fftfilter(h,x,M)。其中,h是系统单位冲击响应向量;x是输入序列向量;y是系统的输出序列向量;M是有用户选择的输入序列的分段长度,缺省时,默认的输入向量的重长度M=512。函数filter的调用格式:yn=filter(B,A.xn),它是按照直线型结构实现对xn的滤波。其中xn是输入信号向量,yn输出信号向量。 由于所设计的滤波器有六个,故我们需要进行六次滤波,然后比较得

51、出哪种滤波器的效果最好。下面我们以IIR低通为例:y,fs,nbits=wavread (OriSound); %IIR低通n = length (y) ; %求出语音信号的长度Noise=0.2*randn(n,2); %随机函数产生噪声s=y+Noise; %语音信号加入噪声S=fft(s); Ft=8000;Fp=1000;Fs=1200;wp=2*pi*Fp/Ft;ws=2*pi*Fs/Ft;n11,wn11=buttord(wp,ws,1,50,s);%求低通滤波器的阶数和截止频率b11,a11=butter(n11,wn11,s); %求S域的频率响应的参数 num11,den11

52、=bilinear(b11,a11,0.5); %利用双线性变换实现频率响应S域到Z域的变换 z11=filter(num11,den11,s);sound(z11);m11=fft(z11); %求滤波后的信号figure;subplot(2,2,1);plot(abs(S),g);title(滤波前信号的频谱,fontweight,bold);axis( 0 150000 0 4000);grid;subplot(2,2,2);plot(abs(m11),r);title(滤波后信号的频谱,fontweight,bold);axis( 0 150000 0 4000);grid;subpl

53、ot(2,2,3);plot(s);title(滤波前信号的波形,fontweight,bold);axis(95000 100000 -1 1);grid;subplot(2,2,4);plot(z11);title(滤波后的信号波形,fontweight,bold);axis(95000 100000 -1 1);grid;程序结果如下图: 图 4-2 IIR低通滤波器经过以上的加噪处理后,可在Matlab中用函数sound对声音进行回放。其调用格式:sound(y,Fs),sound(y)和sound(y,Fs,bits)。可以察觉滤波前后的声音有明显的变化。比较后可得;低通效果较好,高

54、通其次,带通最差。对原始语音信号具体程序及运行结果如附录(II) 比较滤波前后语音信号的波形及频谱4.3本章小结本章详细介绍了怎样通过自己设计的滤波器进行滤波。5.GUI界面5.1系统界面设计工具GUI概述图形用户界面(graphical user interfaces ,GUI)则是由窗口、光标、按键、菜单、文字说明等对象(objects)构成的一个用户界面。用户通过一定的方法(如鼠标或键盘)选择、激活这些图形对象,使计算机产生某种动作或变化,比如实现计算、绘图等。在MATLAB中GUI是一中包含多种对象的图形窗口,并为GUI开发提供一个方便高效的集成开发环境GUIDE。GUIDE主要是一个

55、界面设计工具集,MAYLAB将所有GUI支持度控件都集成在这个环境中,并提供界面外观、属性和行为响应方式的设置方法。GUIDE将设计好的GUI保存在一个FIG文件中,同时生成M文件框架。FIG文件:包括GUI图形窗口及其所有后裔的完全描述,包括所有对象属性的属性值。它是一个二进制文件调用hsave课保存图形窗口时将生车该文件。M文件包括GUI设计、控件函数以及定义为子函数的用户控件回调函数,主要用于控制GUI展开时的各种特征。 GUI创建包括界面设计和控件编程两部分,主要步骤如下。第一步:通过设置GUIDE应用程序的选项来运行GUIDE;第二步:使用界面设计编辑器进行面设计;第三步:编写控件行

56、为响应控制(即回调函数)代码。5.2创建GUI界面首先我们新建一个GUI文件:File/New/GUI , 选择Blank GUI(Default)。 图5-1 GUI创建界面 选择Blank GUI(Default)。5.3创建开关按钮创建4个Button Group,4个静态文本(Static text),17个Push Button,如下图所示(属性可双击更改)图5-2 GUI界面 图5-3 属性框5.4保存和修改fig文件大多数文件的保存和修改都可通过快捷键和来进行,但是fig文件是无法通过进行打开,其打开和修改方式应为 图 5-4 MATLAB主界面 其中有一个按钮(GUIDE),双

57、击得到界面 图 5-5 GUI创建界面 选择 Open Existing GUI,打开你开始保存的文件,如下图所示 图 5-6 GUI打开界面双击文件,得到如下界面 图5-7 GUI编辑界面这样,文件(fig文件)即可打开修改。5.5编写M文件编置好各控件以后,我们就可以来为这些控件编写程序(M-file), 图 5-8原始语音播放: function varargout=OriVoiPlayButton_Callback(hObject, eventdata, handles)图5-9 FIR低通:function FIRLowPassButton_Callback(hObject, eve

58、ntdata, handles)图5-10 退出:function varargout=ExitButton_Callback(hObject, eventdata, handles)close(gcf) 图 5-11双线性变换法低通滤波器:function DDesignLowPassButton_Callback(hObject, eventdata, handles)最后,使用说明。单击相应的按钮,便跳出对应的界面。图5-12 FIG文件界面5.6本章小结本章介绍了GUI界面的简单设置,按钮的设置,编程等都充分得到了体现总结 本次设计通过选择一个语音信号作为分析的对象,对其进行频谱分析;

59、利用MATLAB中的随机函数产生噪声加入到语音信号中,模仿被噪声干扰的语音信号,并对其进行频谱分析;运用数字信号处理理论设计FIR和IIR数字滤波器, 并对被噪声污染的语音信号进行滤波,分析滤波后信号的时域和频域特征,回放语音信号。最后,设计一个信号处理系统界面返回。圆满的完成了对加噪声语音信号的读取与打开,与课题的要求十分相符;也较好的完成了对原始语音信号和加噪声后的语音信号的频谱分析,通过fft变换,得出了语音信号的频谱图;在滤波这一部分,课题主要是从巴特沃斯滤波器入手来设计滤波器等入手,实现了预期的滤波效果;完成了界面的设计,但也存在许多的不足,只是很勉强的达到了打开语音文件、显示已定滤

60、波前后的波形图,界面没有用到其它的一些控件,如列表框、下拉菜单等等,GUI的界面设计功能没能得到充分的发挥。这次毕业设计还使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。总的来说,这次课程设计还是比较成功的,在设计中遇到了很多问题,在老师和同学的细心帮助下,终于一一解决了,有点小小的

61、成就感,终于觉得平时所学的知识有了实用的价值,达到了理论与实际相结合的目的,不仅学到了不少知识,而且锻炼了自己的能力,使自己对以后的路有了更加清楚的认识,同时,对未来有了更多的信心。致谢感谢南京林业大学机械电子工程学院给我这次锻炼的机会。感谢黄石红老师,严谨细致、一丝不苟的作风一直是我学习的榜样;循循善诱的教导和不拘一格的思路给予我无尽的启迪。老师多次询问进程,并为我指点迷津,帮助我开拓研究思路,精心点拨、热忱鼓励。无论是在程序的编写,还是在系统界面的设计上,我都得到了老师们悉心细致的教诲和无私的帮助。他们多次为我指点迷津,帮助我开拓研究思路,精心点拨、热忱鼓励。渊博的专业知识,严谨的治学态度

62、,精益求精的工作作风,诲人不倦的高尚师德,严以律己、宽以待人的崇高风范,朴实无华、平易近人的人格魅力对我影响深远。不仅使我树立了远大的学术目标、掌握了基本的研究方法,还使我明白了许多待人接物与为人处世的道理。在此,谨向指导老师黄石红表示崇高的敬意和衷心的感谢!同时也要表达对南京林业大学机械电子工程学院实验室的工作人员表达我真挚的谢意,他们为我们提供良好的学习环境,为此次我们毕业设计提供了很大的方便,再次对他们辛勤的工作表示感谢! 在毕业设计过程中,也得到了许多同学的宝贵建议和真诚的帮助,在此也对他们表示真诚的感谢!在这里我要对我的老师以及我的同学真挚的说一声:“谢谢!” 没有你们的帮助,我可能

63、要花费更多的时间与精力来完成这次毕业设计,最后,对给过我帮助的所有同学和各位指导老师再次表示衷心的感谢!参考文献1 高西全,丁玉美.数字信号处理(第三版)M.西安:西安电子科技大学出版社,2008.82语音信号数字处理,杨行峻等编著M.电子工业出版社,19953 刘智 基于MATLAB的机械噪声分析与处理J. 华中江师范学院学报(自然科学版) 2010(4)4 蒋瑞艳 振动,噪声处理系统J. 大连理工大学学院学报(自然科学版) 2002(1)5 马超 高世伦 基于MATLAB的噪声信号采集与分析系统研究J. 华中科技大学能源与动力工程学院院报 2004(5)6 崔晓娟 王炳和 常远 相敬林 基

64、于MATLAB的舰船辐射噪声信号小波消噪处理J.舰船科学技术 2006(06)7 李正周.MATLAB数字信号处理与应用M.北京:清华大学出版社,20088 徐明远,刘增力MATLAB仿真在信号处理中的应用M.西安:电子科技大学出版社,2007 9 李显宏.MATLAB 7.x界面设计与编译技巧M.北京: 电子工业出版社, 200610 郭仕剑等.MATLAB7.X数字信号处理.人民邮电出版社M, 200611 高萍,祖静.基于MATLAB小波去噪技术浅析J.科技信息(学术版),2006(11)1-3.12 王书林.小波变换在信号去噪中的应用J.弹箭与制导学报,2006(4)293-296.1

65、3 王吉华,袁翔.小波变换在单片机信号去噪中的应用J.计算机仿真,2004(7)55-57.14 吴湘淇.信号系统与信号处理(下)M.北京:电子工业出版社,1996.15 徐长发,李国宽.实用小波方法M.武汉:华中科技大学出版社,2001.16 丁玉美,高西全,彭学愚.数字信号处理M.西安:西安电子科技大学出版社,2000.17 谢国瑞.线性代数及应用M.北京:高等教育出版社,1999.18 赵红怡. DSP技术与应用实例M . 北京: 电子工业出版社, 2003.19 王念旭, 等. DSP基础及应用系统设计M . 北京: 北京航空航天大学出版社, 2001.20 钟麟,王峰.MATLAB仿

66、真技术与应用教程M, 国防工业出版社,2004.01 21 Acarnley. Stepping motors: a guide to modern theory and practice J, (IEE Control Engineering Series 19, Peter Peregrinus, Stevenage, UK, 1984)22 Kenjo. Stepping, motors and their microprocessor controls J, (Clarendon Press, Oxford, UK, 1984)23 Sen M.Kuo Bob H.Lee 著.卢伯英译

67、.实时数字信号处理M.北京:中国铁道出版社,2005.01:5024 Delyon B,Juditsky A,Benveniste A.Accuracy Analysis for Wavelet Approximat-ionJ.IEEE Transactions on Neural Networks,1995,(6) :320-350.25 D L Donoho,I M Johnstone,G Keryacharian and D Picard.Wavelet shrinkag:As ymptopia J.Joumal of the Royal Statistical society sens

68、e B,1994.附录附录(I) 设计FIR和IIR数字滤波器%=IIR低通滤波器=Ft=8000;Fp=1000;Fs=1200;wp=2*pi*Fp/Ft;ws=2*pi*Fs/Ft;fp=2*Ft*tan(wp/2);fs=2*Fs*tan(wp/2);n11,wn11=buttord(wp,ws,1,50,s); b11,a11=butter(n11,wn11,s); num11,den11=bilinear(b11,a11,0.5);h,w=freqz(num11,den11);figure;plot(w*8000*0.5/pi,abs(h);legend(IIR低通滤波器,Loca

69、tion,NorthWest);grid;程序结果如下图: %=IIR带通滤波器=Fp1=1200;Fp2=3000;Fs1=1000;Fs2=3200;Ft=8000;wp1=tan(pi*Fp1/Ft);wp2=tan(pi*Fp2/Ft);ws1=tan(pi*Fs1/Ft);ws2=tan(pi*Fs2/Ft);w=wp1*wp2/ws2;bw=wp2-wp1; %有效通带频率wp=1;ws=(wp1*wp2-w.2)/(bw*w);n12,wn12=buttord(wp,ws,1,50,s); b12,a12=butter(n12,wn12,s);num2,den2=lp2bp(b1

70、2,a12,sqrt(wp1*wp2),bw);num12,den12=bilinear(num2,den2,0.5);h,w=freqz(num12,den12);figure;plot(w*8000*0.5/pi,abs(h);axis(0 4500 0 1.5);legend(IIR带通滤波器,Location,NorthWest);grid;程序结果如下图:%=IIR高通滤波器=Ft=8000;Fp=4000;Fs=3500;wp1=tan(pi*Fp/Ft);ws1=tan(pi*Fs/Ft);wp=1;ws=wp1*wp/ws1;n13,wn13=cheb1ord(wp,ws,1,

71、50,s);b13,a13=cheby1(n13,1,wn13,s); num,den=lp2hp(b13,a13,wn13);num13,den13=bilinear(num,den,0.5); h,w=freqz(num13,den13);figure;plot(w*21000*0.5/pi,abs(h);legend(IIR高通滤波器,Location,NorthWest);axis(0 11000 0 1.5);grid;程序结果如下图:%*FIR低通滤波*Ft=8000; Fp=1000; Fs=1200; wp=2*Fp/Ft;ws=2*Fs/Ft;rp=1;rs=50;p=1-1

72、0.(-rp/20); s=10.(-rs/20);fpts=wp ws;mag=1 0;dev=p s;n21,wn21,beta,ftype=kaiserord(fpts,mag,dev);b21=fir1(n21,wn21,kaiser(n21+1,beta);h,w=freqz(b21,1); figure;plot(w*8000*0.5/pi,abs(h);title(FIR低通滤波器,fontweight,bold);grid;程序结果如下图:%*FIR带通滤波器*Fp1=1200; %通带边界频率 Fp2=3000;Fs1=1000; %阻带截止频率Fs2=3200;Ft=800

73、0;wp1=tan(pi*Fp1/Ft); wp2=tan(pi*Fp2/Ft);ws1=tan(pi*Fs1/Ft);ws2=tan(pi*Fs2/Ft); w=wp1*wp2/ws2;bw=wp2-wp1;wp=1;ws=(wp*wp2-w.2)/(bw*w);n22,wn22=buttord(wp,ws,1,50,s); b22,a22=butter(n22,wn22,s); num2,den2=lp2bp(b22,a22,sqrt(wp1*wp2),bw); num22,den22=bilinear(num2,den2,0.5);h,w=freqz(num22,den22); figu

74、re;plot(w*8000*0.5/pi,abs(h);axis(0 4500 0 1.5);legend(FIR带通滤波器,Location,NorthWest);grid;程序结果如下图:%*%FIR高通滤波器*Ft=8001;Fp=4000; %通带边界频率 Fs=3500; %阻带截止频率wp=2*Fp/Ft;ws=2*Fs/Ft;rp=1;rs=50;p=1-10.(-rp/20); s=10.(-rs/20);fpts=ws wp;mag=0 1;dev=p s;n23,wn23,beta,ftype=kaiserord(fpts,mag,dev);b23=fir1(n23,wn

75、23,high,kaiser(n23+1,beta);h,w=freqz(b23,1); figure;plot(w*12000*0.5/pi,abs(h);title(FIR高通滤波器,fontweight,bold);axis(2500 5500 0 1.2);grid;程序结果如下图:附录(II)比较滤波前后语音信号的波形及频谱% =双线性变换法=%*低通滤波器*y,fs,nbits=wavread (OriSound); %IIR低通n = length (y) ; %求出语音信号的长度Noise=0.2*randn(n,2); %随机函数产生噪声s=y+Noise; %语音信号加入噪

76、声S=fft(s); Ft=8000;Fp=1000;Fs=1200;wp=2*pi*Fp/Ft;ws=2*pi*Fs/Ft;n11,wn11=buttord(wp,ws,1,50,s);%求低通滤波器的阶数和截止频率b11,a11=butter(n11,wn11,s); %求S域的频率响应的参数 num11,den11=bilinear(b11,a11,0.5); %利用双线性变换实现频率响应S域到Z域的变换 z11=filter(num11,den11,s);sound(z11);m11=fft(z11); %求滤波后的信号figure;subplot(2,2,1);plot(abs(S)

77、,g);title(滤波前信号的频谱,fontweight,bold);axis( 0 150000 0 4000);grid;subplot(2,2,2);plot(abs(m11),r);title(滤波后信号的频谱,fontweight,bold);axis( 0 150000 0 4000);grid;subplot(2,2,3);plot(s);title(滤波前信号的波形,fontweight,bold);axis(95000 100000 -1 1);grid;subplot(2,2,4);plot(z11);title(滤波后的信号波形,fontweight,bold);axi

78、s(95000 100000 -1 1);grid;程序结果如下图: 附II-1 双线性低通滤波器比较%*带通滤波器*y,fs,nbits=wavread (OriSound); %IIR带通n = length (y) ; %求出语音信号的长度Noise=0.2*randn(n,2); %随机函数产生噪声s=y+Noise; %语音信号加入噪声 S=fft(s); %傅里叶变换Ft=8000;Fp=1000;Fs=1200;wp=2*Fp/Ft;ws=2*Fs/Ft;rp=1;rs=50;p=1-10.(-rp/20); %通带阻带波纹q=10.(-rs/20);fpts=wp ws;mag

79、=1 0;dev=p q;n21,wn21,beta,ftype=kaiserord(fpts,mag,dev);%由kaiserord求滤波器的阶数和截止频率b21=fir1(n21,wn21,kaiser(n21+1,beta); %由fir1设计滤波器z21=fftfilt(b21,s);sound(z21);m21=fft(z21); %求滤波后的信号figure(4);subplot(2,2,1);plot(abs(S),g);title(滤波前信号的频谱,fontweight,bold);axis(0 150000 0 4000);grid;subplot(2,2,2);plot(

80、abs(m21),r);title(滤波后信号的频谱,fontweight,bold);axis(0 150000 0 4000);grid;subplot(2,2,3);plot(s);title(滤波前信号的波形,fontweight,bold);axis(95000 100000 -1 1);grid;subplot(2,2,4);plot(z21);title(滤波后的信号波形,fontweight,bold);axis(95000 100000 -1 1);grid;程序结果如下图:附II-2 双线性带通滤波器比较%*高通滤波器*y,fs,nbits=wavread (OriSoun

81、d); %IIR高通n = length (y) ; %求出语音信号的长度Noise=0.2*randn(n,2); %随机函数产生噪声s=y+Noise; %语音信号加入噪声S=fft(s); %傅里叶变换Fp1=1200;Fs1=1000;Ft=8000;wp1=tan(pi*Fp1/Ft);ws1=tan(pi*Fs1/Ft);wp=1;ws=wp1*wp/ws1;n13,wn13=cheb1ord(wp,ws,1,50,s); %求模拟的低通滤波器阶数和截止频率b13,a13=cheby1(n13,1,wn13,s); %求S域的频率响应的参数num,den=lp2hp(b13,a13

82、,wn13);%将S域低通参数转为高通的num13,den13=bilinear(num,den,0.5); %利用双线性变换实现频率响应S域到Z域转换z13=filter(num13,den13,s);sound(z13);m13=fft(z13); %求滤波后的信号figure;subplot(2,2,1);plot(abs(S),g);title(滤波前信号的频谱,fontweight,bold);axis(0 150000 0 4000);grid;subplot(2,2,2);plot(abs(m13),r);title(滤波后信号的频谱,fontweight,bold);axis(

83、0 150000 0 4000);grid;subplot(2,2,3);plot(s);title(滤波前信号的波形,fontweight,bold);axis(95000 100000 -1 1);grid;subplot(2,2,4);plot(z13);title(滤波后的信号波形,fontweight,bold);axis(95000 100000 -1 1);grid;程序结果如下图 附II-3 双线性高通滤波器比较%=窗函数法=%*低通滤波器*y,fs,nbits=wavread (OriSound); %FIR低通n = length (y) ; %求出语音信号的长度Noise

84、=0.2*randn(n,2); %随机函数产生噪声s=y+Noise; %语音信号加入噪声 S=fft(s); %傅里叶变换Ft=8000;Fp=1000;Fs=1200;wp=2*Fp/Ft;ws=2*Fs/Ft;rp=1;rs=50;p=1-10.(-rp/20); %通带阻带波纹q=10.(-rs/20);fpts=wp ws;mag=1 0;dev=p q;n21,wn21,beta,ftype=kaiserord(fpts,mag,dev);%由kaiserord求滤波器的阶数和截止频率b21=fir1(n21,wn21,kaiser(n21+1,beta); %由fir1设计滤波

85、器z21=fftfilt(b21,s);sound(z21);m21=fft(z21); %求滤波后的信号figure(4);subplot(2,2,1);plot(abs(S),g);title(滤波前信号的频谱,fontweight,bold);axis(0 150000 0 4000);grid;subplot(2,2,2);plot(abs(m21),r);title(滤波后信号的频谱,fontweight,bold);axis(0 150000 0 4000);grid;subplot(2,2,3);plot(s);title(滤波前信号的波形,fontweight,bold);ax

86、is(95000 100000 -1 1);grid;subplot(2,2,4);plot(z21);title(滤波后的信号波形,fontweight,bold);axis(95000 100000 -1 1);grid; 附II-4 窗函数低通滤波器比较%*带通滤波器*y,fs,nbits=wavread (OriSound);n = length (y) ; %求出语音信号的长度Noise=0.2*randn(n,2); %随机函数产生噪声s=y+Noise; %语音信号加入噪声 S=fft(s); %傅里叶变换Fp1=1200;Fp2=3000;Fs1=1000;Fs2=3200;F

87、t=2200;wp1=tan(pi*Fp1/Ft); %带通到低通滤波器参数转换wp2=tan(pi*Fp2/Ft);ws1=tan(pi*Fs1/Ft);ws2=tan(pi*Fs2/Ft); w=wp1*wp2/ws2;bw=wp2-wp1;wp=1;ws=(wp*wp2-w.2)/(bw*w);n22,wn22=buttord(wp,ws,1,50,s); %求低通滤波器阶数和截止频率b22,a22=butter(n22,wn22,s); %求S域的频率响应的参数z22=fftfilt(b22,s);sound(z22);m22=fft(z22); %求滤波后的信号figure;subp

88、lot(2,2,1);plot(abs(S),g);title(滤波前信号的频谱,fontweight,bold);axis(0 500 0 500);grid;subplot(2,2,2);plot(abs(m22),r);title(滤波后信号的频谱,fontweight,bold);axis(0 500 0 500);grid;subplot(2,2,3);plot(s);title(滤波前信号的波形,fontweight,bold);axis(95000 100000 -1 1);grid;subplot(2,2,4);plot(z22);title(滤波后的信号波形,fontweig

89、ht,bold);axis(95000 100000 -1 1);grid;附II-5 窗函数带通滤波器比较%*高通滤波器*y,fs,nbits=wavread (OriSound);n = length (y) ; %求出语音信号的长度Noise=0.2*randn(n,2); %随机函数产生噪声s=y+Noise; %语音信号加入噪声 S=fft(s); %傅里叶变换Ft=8001;Fp=4000;Fs=3500;wp=2*Fp/Ft;ws=2*Fs/Ft;rp=1;rs=50;p=1-10.(-rp/20); %通带阻带波纹q=10.(-rs/20);fpts=ws wp;mag=0 1

90、;dev=p q;n23,wn23,beta,ftype=kaiserord(fpts,mag,dev);b23=fir1(n23,wn23,high,kaiser(n23+1,beta); %由fir1设计滤波器z23=fftfilt(b23,s);sound(z23);m23=fft(z23); %求滤波后的信号figure;subplot(2,2,1);plot(abs(S),g);title(滤波前信号的频谱,fontweight,bold);axis(0 150000 0 4000);grid;subplot(2,2,2);plot(abs(m23),r);title(滤波后信号的频

91、谱,fontweight,bold);axis(0 150000 0 4000);grid;subplot(2,2,3);plot(s);title(滤波前信号的波形,fontweight,bold);axis(95000 100000 -1 1);grid;subplot(2,2,4);plot(z23);title(滤波后的信号波形,fontweight,bold);axis(95000 100000 -1 1);grid;附II-6 窗函数高通滤波器比较10/30 17:12 C620轴拨杆的工艺规程及钻2-16孔的钻床夹具设计09/21 13:39 CA6140车床拨叉零件的机械加工工

92、艺规程及夹具设计83100308/30 15:37 CPU风扇后盖的注塑模具设计09/20 16:19 GDC956160工业对辊成型机设计08/30 15:45 LS型螺旋输送机的设计10/07 23:43 LS型螺旋输送机设计09/20 16:23 P-90B型耙斗式装载机设计09/08 20:17 PE10自行车无级变速器设计10/07 09:23 话机机座下壳模具的设计与制造09/08 20:20 T108吨自卸车拐轴的断裂原因分析及优化设计09/21 13:39 X-Y型数控铣床工作台的设计09/08 20:25 YD5141SYZ后压缩式垃圾车的上装箱体设计10/07 09:20

93、ZH1115W柴油机气缸体三面粗镗组合机床总体及左主轴箱设计09/21 15:34 ZXT-06型多臂机凸轮轴加工工艺及工装设计10/30 16:04 三孔连杆零件的工艺规程及钻35H6孔的夹具设计08/30 17:57 三层货运电梯曳引机及传动系统设计10/29 14:08 上盖的工工艺规程及钻6-4.5孔的夹具设计10/04 13:45 五吨单头液压放料机的设计10/04 13:44 五吨单头液压放料机设计09/09 23:40 仪表外壳塑料模设计09/08 20:57 传动盖冲压工艺制定及冲孔模具设计09/08 21:00 传动系统测绘与分析设计10/07 23:46 保护罩模具结构设计

94、09/20 15:30 保鲜膜机设计10/04 14:35 减速箱体数控加工工艺设计10/04 13:20 凿岩钎具钎尾的热处理工艺探索设计09/08 21:33 分离爪工艺规程和工艺装备设计10/30 15:26 制定左摆动杠杆的工工艺规程及钻12孔的夹具设计10/29 14:03 前盖板零件的工艺规程及钻8-M16深29孔的工装夹具设计10/07 08:44 加油机油枪手柄护套模具设计09/20 15:17 加热缸体注塑模设计10/07 09:17 动模底板零件的工艺规程及钻52孔的工装夹具设计10/08 20:23 包缝机机体钻孔组合机床总体及夹具设计09/21 15:19 升板机前后辅

95、机的设计09/09 22:17 升降式止回阀的设计09/22 18:52 升降杆轴承座的夹具工艺规程及夹具设计09/09 16:41 升降杠杆轴承座零件的工艺规程及夹具设计08/30 15:59 半自动锁盖机的设计(包装机机械设计)08/30 15:57 半轴零件的机械加工工艺及夹具设计10/29 13:31 半轴零件钻6-14孔的工装夹具设计图纸09/26 13:53 单吊杆式镀板系统设计08/30 16:20 单级齿轮减速器模型优化设计08/30 16:24 单绳缠绕式提升机的设计09/09 23:08 卧式加工中心自动换刀机械手设计09/08 22:10 厚板扎机轴承系统设计09/18

96、20:56 叉杆零件的加工工艺规程及加工孔20的专用夹具设计08/30 19:32 双卧轴混凝土搅拌机机械部分设计09/09 22:33 双模轮胎硫化机机械手控制系统设计09/09 22:32 双辊驱动五辊冷轧机设计09/08 20:36 变位器工装设计-0.1t普通座式焊接变位机09/28 16:50 叠层式物体制造快速成型机机械系统设计09/08 22:41 可急回抽油机速度分析及机械系统设计09/08 22:42 可移动的墙设计及三维建模10/04 13:25 右出线轴钻2-8夹具设计10/04 13:23 右出线轴钻6-6夹具设计09/08 22:36 咖啡杯盖注塑模具设计10/07

97、08:33 咖啡粉枕式包装机总体设计及横封切断装置设计09/09 16:15 啤酒贴标机的设计(总体和后标部分的设计)10/29 13:58 喷油泵体零件的工艺规程及钻14通孔的工装夹具设计08/30 19:39 四工位的卧式组合机床设计及其控制系统设计09/21 13:39 四方罩模具设计08/30 19:42 四组调料盒注塑模具设计10/07 23:55 固定座的注塑模具设计09/09 23:52 圆柱坐标型工业机器人设计09/09 23:48 圆珠笔管注塑模工艺及模具设计10/13 16:36 圆盘剪切机设计09/21 13:25 基于PLC变频调速技术的供暖锅炉控制系统设计09/08

98、22:20 基于pro-E的减速器箱体造型和数控加工自动编程设计08/30 18:00 基于PROE的果蔬篮注塑模具设计08/30 19:37 基于UG的TGSS-50型水平刮板输送机-机头段设计09/21 15:16 塑料油壶盖模具设计09/09 22:41 塑料胶卷盒注射模设计10/07 09:25 多功能推车梯子的设计09/08 21:25 多功能齿轮实验台的设计08/30 16:32 多层板连续排版方法及基于控制系统设计08/30 16:30 多层板连续排版方法毕业设计08/30 16:42 多用角架搁板的注塑模具设计及其仿真加工设计08/30 16:39 多绳摩擦式提升机的设计09/08 21:05 大型矿用自卸车静液压传动系统设计09/20 16:27 大型耙斗装岩机设计09/08 21:01 大批生产的汽车变速器左侧盖加工工艺及指定工序夹具设计10/30 15:42 套筒的机械加工工艺规程及攻6-M8-6H深10的夹具设计10/30 15:38 套筒的机械加工工艺规程及钻40H7孔的夹具设计10/29 14:13 套筒零件的工艺规程及钻3-10孔的工装夹具设计58

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号