设计数字信号处理课程设计.pdf

上传人:tbuqq 文档编号:5491772 上传时间:2020-05-23 格式:PDF 页数:16 大小:1.44MB
返回 下载 相关 举报
设计数字信号处理课程设计.pdf_第1页
第1页 / 共16页
设计数字信号处理课程设计.pdf_第2页
第2页 / 共16页
设计数字信号处理课程设计.pdf_第3页
第3页 / 共16页
设计数字信号处理课程设计.pdf_第4页
第4页 / 共16页
设计数字信号处理课程设计.pdf_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《设计数字信号处理课程设计.pdf》由会员分享,可在线阅读,更多相关《设计数字信号处理课程设计.pdf(16页珍藏版)》请在三一文库上搜索。

1、实用标准文案 精彩文档 语音信号滤波去噪报告书 课程: 数 字 信 号 处 理 指导老师 : 完成组员: 完成日期: 2013.01.05 实用标准文案 精彩文档 摘要本课程设计主要是下载一段语音信号,绘制其波形并观察其频谱。然后在该语言 信号中加一个噪音,利用布莱克曼和矩形窗窗设计一个FIR 滤波器,对该语音信号进行虑 噪处理,然后比较滤波前后的波形与频谱。在本课程设计中,是用MATLAB 的集成环境完 成一系列的设计。首先对加噪的语音信号进行虑波去噪处理,再比较滤波前后的频率响应 曲线,若一样则满足所设计指标,否则不满足。也可以调用函数sound 听滤波前后其语音 信号是否带有噪声。若无噪

2、声也说明该滤波器的设置也是成功的。 关键词语音信号; MATLAB ; FIR 滤波器;滤波去噪; 1 引言 人们在语音通信的过程中将不可避免的会受到来自周围环境的干扰,例如传输媒介引 入的噪声,通信设备内部的电噪声,乃至其他讲话者的话音等。正因为有这些干扰噪声的 存在,接受者接受到的语音已不是原始的纯净语音信号,而是受噪声干扰污染的带噪声语 音信号。而本课程设计就是利用MATLAB 集成环境用布莱克曼窗的方法设计一个FIR 滤波 器,对语音信号进行滤波去噪处理,并将虑噪前后的频谱图进行对比。 1.1 课程设计目的 数字信号处理课程设计是数字信号处理课程的重要实践性环节,是学生在校期间一次 较

3、全面的工程师能力训练,在实现学生总体培养目标中占有重要地位。综合运用本课程的 理论知识进行频谱分析以及滤波器设计,通过理论推导得出相应结论,并利用MATLAB 作 为编程工具进行计算机实现,从而复习巩固了课堂所学的理论知识,提高了对所学知识的 综合应用能力,并从实践上初步实现了对数字信号的处理。本课程设计能使学生对通信工 程领域各种技术的DSP实现的设计有较熟练的掌握。且通过自身的实践,对DSP的设计程 序、内容和方法有更深入的掌握,提高实际运用的能力。并可综合运用这些知识解决一定 实用标准文案 精彩文档 的实际问题,使学生在所学知识的综合运用能力上以及分析问题、解决问题能力上得到一 定的提高

4、。 1.2 课程设计的要求 (1) 、录制一段个人自己的语音信号,并对录制的信号进行采样,画出采样后语音信 号的时域波形和频谱图。 (2) 、给定滤波器的性能指标,采用窗函数法和双线性变换设计滤波器,并画出滤波 器的频率响应。 (3) 、用自己设计的滤波器对采集的信号进行滤波,画出滤波后信号的时域波形和频 谱,并对滤波前后的信号进行对比,分析信号的变化并回放语音信号; (4) 、通过利用各种不同的开发工具实现语音信号的滤波去噪,掌握数字信号的分析 方法和处理方法。而且通过课程设计能够培养学生严谨的科学态度,认真的工作作风和团 队协作精神。 (5) 、在老师的指导下,要求独立完成课程设计的全部内

5、容,并按要求编写课程设计 学年论文,能正确阐述和分析设计和实验结果。 1.3 设计平台 MATLAB 名称是有两个英文单词Matrix 和 Laboratory的前三个字母组成。 MATLAB7.0 是美国 MathWorks公司开发的优秀计算软件MATLAB 的最新版本。 MATLAB 自 20 世纪 80 年 代面世以来,以其强大的数值计算能力、优秀的绘图功能以及与其他软件良好的交互功能 在众多的数学计算软件中独领风骚,特别是它源代码的开放性使用户可以二次开发,受到 了广大使用者的格外赞赏。 MATLAB 是一个为科学和工程计算机专门设计的交互式大型软件,是一个可以完成各种 精确计算和数据

6、处理的、可视化的、强大的计算工具。它集图和精确计算与一身,在应用 数学、物理、化工、机电工程、医药、金融和其他需要进行复杂数值计算的领域得到了广 泛应用。它不仅是一个在各类工程设计中便于使用的计算工具,在世界各地的高等院校中 十分流行,在各类工业应用中更有不俗的表现。MATLAB 可以几乎所有的PC机和大型计算 机上运行,适用于 Window 、 UNIX等多种系统平台。本课程设计我们就可以直接诶使用MATLAB 提供的模块,实现模拟通信系统的仿真。 MATLAB 软件有很强的开放性和适应性。在保持内核不变的情况下,MATLAB 可以针对 实用标准文案 精彩文档 不同的应用学科推出相应的工具箱

7、,目前已经推出了图像处理工具箱、信号处理工具箱、 小波工具箱、神经网络工具箱以及通信工具箱等多个学科的专用工具箱,极大的方便了不 同学科的研究工作。国内已有越来越多的科研和技术人员认识到MABLAB 的强大作用,并 在不同领域内使用MATLAB 来快速实现科研构想和提高工作效率。 2 设计原理 2.1 FIR 滤波器 FIR(Finite Impulse Response)滤波器:有限长单位冲激响应滤波器,是数字信号处 理系统中最基本的元件,它可以在保证任意幅频特性的同时具有严格的线性相频特性,同 时其单位抽样响应是有限长的,因而滤波器是稳定的系统。因此,FIR 滤波器在通信、图 像处理、模式

8、识别等领域都有着广泛的应用。 FIR 数字滤波器以其良好的线性特性被广泛应用于现代电子通信系统中,是数字信号 处理的重要内容之一。在实际信号处理中,往往要求系统兼具实时性和灵活性,而已有的 一些软件或硬件实现方案(如 DSP) 则难以同时达到这两方面的要求。使用具有并行处理特 性的 FPGA 来实现 FIR 滤波器,既有很强的实时性,又兼顾了灵活性,为数字信号处理提 供了一种很好的解决方案。FIR 滤波器系数计算较为繁琐,在设计时借助Matlab 工具箱, 选择合适的窗函数,可以方便地计算滤波器系数,并分析其幅频、相频特性。 有限长单位冲激响应( FIR)滤波器有以下特点: (1) 、系统的单

9、位冲激响应h (n) 在有限个 n 值处不为零; (2) 、系统函数 H (z) 在|z|0处收敛,极点全部在z = 0处(因果系统); (3) 、 结构上主要是非递归结构,没有输出到输入的反馈,但有些结构中(例如频率 抽样结构)也包含有反馈的递归部分。 设 FIR 滤波器的单位冲激响应h (n) 为一个 N点序列, 0 n N 1,则滤波器的 系统函数为: H(z) = 1 0 )( N n znh -n (2-1) 就是说,它有( N1)阶极点在 z = 0 处,有( N 1)个零点位于有限z 平面的任 何位置因此 H(z) 是永远稳定的。稳定和香味特性是FIR 滤波器突出的优点。 FIR

10、 滤波器有 实用标准文案 精彩文档 以下几种基本结构:横截型(卷积型、直接型)、级联型、频率抽样型、快速卷积结构。 FIRDF的设计方法主要分为两类:第一类是基于逼近理想滤波器特性的方法,包括窗 函数法、频率采样法和等波纹最佳逼近法;第二类是最优设计法。 2.2 窗口设计法 数字信号处理的主要数学工具是博里叶变换而傅里叶变换是研究整个时间域和 频率域的关系。不过,当运用计算机实现工程测试信号处理时,不可能对无限长的信 号进行测量和运算,而是取其有限的时间片段进行分析。做法是从信号中截取一个时 间片段,然后用观察的信号时间片段进行周期延拓处理,得到虚拟的无限长的信号, 然后就可以对信号进行傅里叶

11、变换、相关分析等数学处理。无线长的信号被截断以后, 其频谱发生了畸变,原来集中在f(0)处的能量被分散到两个较宽的频带中去了(这种 现象称之为频谱能量泄漏) 。 为了减少频谱能量泄漏,可采用不同的截取函数对信号进行截断,截断函数称为 窗函数,简称为窗。 窗函数设计法的基本思路是用FIRDF逼近希望的滤波特性。设希望逼近的滤波器的频 率响应函数为 hd(e j ),其单位脉冲响应用 hd(n) 表示。为了设计简单方便,通常选择hd(e j ) 为具有片段常数特性的理想滤波器。因此 hd(n) 是无限长非因果序列,不能直接作为 FIRDF的单位脉冲响应。 窗函数设计法就是截取hd(n) 为有限长的

12、一段因果序列, 并用合适 的窗函数进行加权做为FIRDF的单位脉冲响应 h(n) 。 下面介绍窗函数设计法的基本设计过 程。 窗口设计法的主要工作是计算hd(n) 和 w(n),但当 Hd(e j )较为复杂时, h d(n) 就不容易 由反付里叶变换求得。这时一般可用离散付里叶变换代替连续付里叶变换,求得近似值。 窗口法的设计步骤如下: (1) 、通过傅里叶变换忽的理想滤波器的单位脉冲响应hd(n) 。 (2) 、根据指标选择窗口形状、大小和位置。确定窗口类型的主要依据是过渡带宽和阻带 最小衰耗的指标。 (3) 、给定理想频响由hd(e j ) 和 h d(n) ,加窗得 h(n)=w(n)

13、hd(n) 。 (4) 、检验滤波器的性能。由h(n)求 H (e j ) 是否在误差容限之内。如果不满足,则返 回第( 2)步。 以上步骤中hd(n) 、H(e j )的计算可采用傅氏变换的现成公式和程序,窗函数 w(n)也是现 实用标准文案 精彩文档 成的。但整个设计过程不能一次完成,因为窗口类型和大小的选择没有解析公式可一次算 出。整个设计可用计算机编程来做。 窗口法的优点是简单,有闭合的公式可用,性能及参数都有表格资料可查,计算程序 简单,较为实用。缺点是当Hd(e j ) 较为复杂时, h d(n) 就不容易由反付里叶变换求得。边 界频率因为加窗的影响而不易控制。 窗口函数对理想特性

14、的影响: 改变了理想频响的边沿特性,形成过渡带, 宽为 N 4 , 等于 WR( ) 的主瓣宽度;过渡带两旁产生肩峰和余振(带内、带外起伏),取决于 WR() 的旁瓣,旁瓣多,余振多;旁瓣相对值大,肩峰强,与 N 无关; N增加, 过渡带宽减小 , 肩 峰值不变。因主瓣附近 (2-2) 其中 x=N/2, 所以 N的改变不能改变主瓣与旁瓣的比例关系,只能改变WR()的绝 对值大小和起伏的密度,当N增加时,幅值变大,频率轴变密,而最大肩峰永远为8.95%, 这种现象称为吉布斯( Gibbs)效应。 肩峰值的大小决定了滤波器通带内的平稳程度和阻带内的衰减,所以对滤波器的性能 有很大的影响。改变窗函

15、数的形状,可改善滤波器的特性,窗函数有许多种,但要满足以 下两点要求 : 窗谱主瓣宽度要窄,以获得较陡的过渡带;相对于主瓣幅度,旁瓣要尽可能 小,使能量尽量集中在主瓣中,这样就可以减小肩峰和余振,以提高阻带衰减和通带平稳 性。但实际上对同样长度的窗这两点不能兼得,一般总是通过增加主瓣宽度来换取对旁瓣 的抑制。 2.3 布莱克曼窗 布莱克曼窗的时域形式可表示为: R N n N n n) 1 4 cos(08.0) 1 2 (cos5.042.0)(wN(n) (2-3) 它的频域特性为: W0.42W)( R 0.25W)( RW N ) 1 2 ( R 1 2 ( N 0.04W R ) 1

16、 4 ( N WR) 1 4 ( N (2-4) 其中)( R W为矩形窗函数的幅度频率特性。 x x N N N N N WR sin 2/ )2/sin( )2/sin( )2/sin( )( 实用标准文案 精彩文档 增加一个二次谐波余弦分量,可进一步降低旁瓣,但主瓣宽度进一步增加,为 N 12 。 加 N可减少过渡带。 布莱克曼窗函数的最大旁瓣之比主瓣值低57db,但是主瓣宽度是矩形 窗函数的主瓣宽度的三倍。布莱克曼窗主瓣宽,旁瓣小,频率识别精度最低,但幅值 识别精度最高。 3.1 设计流程图 本课程设计是对录制的语音信号进行加噪处理并分析加噪前后语音信号的时域图与 频域图,再用布莱克曼

17、窗设计一个FIR 滤波器,而滤波器的设计必须符合其相应的指标, 否则将不能滤掉加入的噪声。最后将滤波前后的波形图进行比较看是否相同。下面是整个 课程设计的流程图如图3.1 所示: 图 3.1 语音信号的整个流程图 开始 下载语音信号 分析语音信号的频谱 用窗函数设计FIR 滤波器 在语音信号中加入噪声 用滤波器对信号进行滤波 比较滤波前后的波型及频 回放语音信号 结束 实用标准文案 精彩文档 3.3 滤波器设计 本课程设计就是要设计一个滤波器虑掉加入的噪声,使其恢复原始的语音信号。 而设 计滤波器的方法有很多, 例如:窗函数法、 频率采样法、 脉冲响应不变法和双线性变换法。 而本课程设计采用的

18、是窗函数法设计FIR 滤波器。而 FIR 滤波器的设计也有很多方法。在 Matlab 中,可以利用矩形窗、三角窗、汉宁窗、汉明窗、布莱克曼窗、凯塞窗等设计FIR 滤波器。而本次采用的是布莱克曼窗来设计滤波器。 3.4 运行效果 实用标准文案 精彩文档 实用标准文案 精彩文档 实用标准文案 精彩文档 实用标准文案 精彩文档 3.5 结果分析 要确定本课程设计是否成功就得看原始信号的频域图和时域图与经过滤波器后的语音 信号的频域图和时域图是否一样,若一样则表示该设计是成功的,否则是不成功的。 在第一个图中:第一幅图和第二幅图是原始语音信号的时域图和频域图, 第三幅图和 第四幅图是加入噪声。从图中可

19、以看出,第一图和第三图相比因为加入噪声的缘故所以第 三图 y 轴的幅度要比第一图要大,但其形状还是基本没有改变。而第二图与第四图相比多 了一个尖锐脉冲。说明原始语音信号加入噪声是成功的。 在滤波器频率特性的图中可以看到:第一个图是以db 为单位的幅频特性,第二图是 幅频特性,第三个图是滤波器的相频特性,最后一个图是滤波器的脉冲响应。从图中可以 清楚的了解滤波器的幅频和相频特性。 在滤波前后信号比较的图中我们可以得到:原始的语音信号与滤波后的信号的图基本 一样,只是滤波后的图在原始信号的基础上有所延迟。所以用布莱克曼窗设计的滤波器是 符合要求的,也就是说该课程设计是成功的。 再次, 在利用自编函

20、数计算理想带阻滤波器的脉冲响应,如果在 MATLAB 软件中的 Work 下没有定义,那么不能调用自编的函数,否则将会报错。 最后,在 MATLAB 软件下编程时最好新建一个File文档。因为在编程的过程过有可能 实用标准文案 精彩文档 出现错误,如果建一个文档有助于程序出现错误时可以在文档中直接修改,这样可以省很 多的时间,又这个课程设计的程序多而繁杂,一不小心就有可能写错,如果在工作环境下 修改这样利于将所有的程序复制在课程设计中,而且还要对复制后的程序进行删除。 5 结束语 在这次设计中我学到了许多的东西。通过这次的设计,不仅加深了我对课本基础理论 知识的理解,而且增强了我的实践能力,同

21、时更加认识到理论知识和实践结合的重要性。 首先,更加深入理解了滤波器设计的各个关键环节,包括在什么情况下使用哪种方法设计 FIR 滤波器最好以及在选择特定的窗函数进行滤波器的设计时我们应该怎样确定其性能指 标;其次,更加深刻的认识了语音原始信号与加噪后语音信号的波形及频谱;再次,较大 地提高了综合运用专业基础知识及软件设计能力,在一定程度上对自己的动手能力有很大 的帮助。 虽然这次课程设计已经完成了,但是遇到的困难也是很多的。其中最主要的问题要属 怎样设置滤波器的指标问题,如果指标的设置有问题那么后续的工作就不可能得到原始的 语音信号。在设置过程中有很多次因为设置的参数不合适而导致设计的滤波器

22、不能虑出单 频噪声信号。所以在设计指标问题时一定要结合布莱克曼本身的特点还要考虑加入噪声的 频率。其次就是一些函数的细节问题。虽然在这次课程设计中遇到很多的困难,但通过自 己查找有关资料以及老师和同学的帮助下都一一解决了,而且在与同学交流的过程中使同 学之间的感情更进一步。这次设计不仅让我学会如何独立完成一项工作,而且提高了独立 解决问题的能力,为以后的课程设计打下良好的基础。 在此向帮助我的老师及热心同学表示忠心的感谢!希望今后还能参加更多的课程设 计,以锻炼自己在各个方面的能力,尤其是综合运用专业基础知识和实践结合的能力。设 计的过程中,我通过查阅大量有关资料,与同学交流经验和自学,并向老

23、师请教等方式, 使我学到了不少的东西,虽然有许多的辛酸,但是看到自己课程设计完成后心中的那份激 动是无法用言语来形容的。 实用标准文案 精彩文档 参考文献 1 丁玉美 , 高西全,阔永红 . 数字信号处理 . 第一版 . 西安:西安电子科技出版社,2001 年 2 陈后金 . 数字信号处理 . 第三版 . 北京: 高等教育业出版社, 2004年 3 程佩青 . 数字信号处理教程 . 第四版 . 北京:清华大学出版社,2002年 4 刘敏,魏玲 .Matlab 通信仿真与应用 . 第二版 . 北京:国防工业出版社,2001年 5 张圣勤 .MATLAB7.0实用教程 . 第三版 . 北京:机械工

24、业出版社,2006 源程序; y ? D ? o ? t? a ? ? -( ? ? ? ? ).wav); x1,fs,bits=wavread(? ? ? ? 2 ? welcome.wav); x1=x1+0.001*randn(size(x1); sound(x1,fs,bits); % fs = 11025 bits = 8 figure(1); plot(x1);% ? ? -? ? ? D ? o ? ? ? D ? title( ? -? ? ? D ? o ? ); xlabel( ? ? t); ylabel( ? ? n ); figure(2); y1=fft(x1);

25、% ? length(x1) ? ? FFT y1=fftshift(y1); % ? ? ? ? ? ? ? ? D D ? ? a 0 derta_fs = fs/length(x1); % ? ? ? ? ? ? ? ? ? ? ? ? ? plot(-fs/2:derta_fs: fs/2-derta_fs,abs(y1);% ? - 3 ? ? - ? ? ? D ? o ? ? ? ? ? title( ? -? ? ? D ? o ? ? ? ? ); grid on; % ? ? 2 o ? ? ? 1 ? ? 2000 ? ? ? ¥? ? 20dB? 1 y ? ? ? 0

26、.1 |D fc1=2000; 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); % 3 ? ? a N1? ? ? D ? Window b1=fir1(N1,wc1/pi,Window); figure(3); freqz(b1,1,512); 实用标准文案 精彩文档 title( ? ? D ? FIR? ? 2 ? ? ? ? ? | ); x1_low = filter(b1,1,x1);% ? ? D ? o ? ? ? D D ? ? 2 figure(

27、4); plot(x1_low); title( D ? o ? ? - 1 y ? ? D ? FIR? ? 2 ? ( ) ); figure(5); plot(-fs/2:derta_fs:fs/2-derta_fs,abs(fftshift(fft(x1_low); title( D ? o ? ? - 1 y ? ? D ? FIR? ? 2 ? ? ? ); sound(x1_low,fs,bits); % ? ? 2 o ? ? ? 1 ? ? 2000 ? ? ? ¥? ? 20dB? 1 y ? ? ? 0.1 |D fc1=2000; N1=2*pi*0.9/(0.1*pi

28、) wc1=2*pi*fc1/fs; if rem(N1,2)=0 N1=N1+1; end Window=blackman(N1+1);% 3 ? ? a N1? 2 ? -? ? ? Window b1=fir1(N1,wc1/pi,Window); figure(6); freqz(b1,1,512); title( 2 ? -? ? ? FIR? ? 2 ? ? ? ? ? | ); x1_low = filter(b1,1,x1);% ? ? D ? o ? ? ? D D ? ? 2 figure(7); plot(x1_low); title( D ? o ? ? - 1 y 2 ? -? ? ? FIR? ? 2 ? ( ) ); figure(8); plot(-fs/2:derta_fs:fs/2-derta_fs,abs(fftshift(fft(x1_low); title( D ? o ? ? - 1 y 2 ? -? ? ? FIR? ? 2 ? ? ? ); sound(x1_low,fs,bits); 实用标准文案 精彩文档

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

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1