滤波器语音信号去噪要点.pdf

上传人:tbuqq 文档编号:5210224 上传时间:2020-02-21 格式:PDF 页数:24 大小:1.66MB
返回 下载 相关 举报
滤波器语音信号去噪要点.pdf_第1页
第1页 / 共24页
滤波器语音信号去噪要点.pdf_第2页
第2页 / 共24页
滤波器语音信号去噪要点.pdf_第3页
第3页 / 共24页
滤波器语音信号去噪要点.pdf_第4页
第4页 / 共24页
滤波器语音信号去噪要点.pdf_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《滤波器语音信号去噪要点.pdf》由会员分享,可在线阅读,更多相关《滤波器语音信号去噪要点.pdf(24页珍藏版)》请在三一文库上搜索。

1、* 实践教学 * 兰州理工大学 计算机与通信学院 2013 年春季学期 信号处理课程设计 题目: 基于 MATLAB 的 FIR 滤波器语音信号去噪 专业班级 :通信工程( 1)班 姓名:王兴栋 学号:10250114 指导教师 :陈海燕 成绩: 1 摘要 语音信号在数字信号处理中占有极其重要的地位,因此选择通过对语音信号 的研究来巩固和掌握数字信号处理的基本能力十分具有代表性。对数字信号处理 离不开滤波器,因此滤波器的设计在信号处理中占有极其重要的地位。而 MATLAB 软件工具箱提供了对各种数字滤波器的设计。本论文“在 MATLAB平台上实现对 语音信号的去噪研究与仿真” 综合运用了数字信

2、号处理的各种基本知识,进而对 不带噪语音信号进行谱分析以及带噪语音信号进行谱分析和滤波处理。通过理论 推导得出相应的结论, 再通过利用 MATLAB作为编程工具来进行计算机实现比价 已验证推导出来的结论。在设计过程中,通过设计FIR数字滤波器和 IIR数字滤 波器来完成滤波处理。 在设计过程中, 运用了 MATLAB对整个设计中的图形的绘 制和一些数据的计算以及仿真。 关键字滤波器; MATLAB ;仿真;滤波 2 前言 语音是语言的声学表现,是人类交流信息最自然、最有效、最方便的手段。 随着社会文化的进步和科学技术的发展,人类开始进入了信息化时代, 用现代手 段研究语音处理技术, 使人们能更

3、加有效地产生、 传输、存储、和获取语音信息, 这对于促进社会的发展具有十分重要的意义,因此,语音信号处理正越来越受到 人们的关注和广泛的研究。 语音信号是信息技术处理中最重要的一门科学,是人类社会几步的标志。 那 么什么是语音?语音是人类特有的功能,也是人类获取外界信息的重要工具,也 是人与人交流必不可少的重要手段。 那么什么又是信号?那信号是什么呢?信号 是传递信息的函数。离散时间信号序列可以用图形来表示。 语音信号处理是一门用研究数字信号处理研究信号的科学。它是一新兴的信 息科学,同时又是综合多个学科领域的一门交叉科学。语音在我们的日常生活中 随时可见, 也随处可见, 语音很大程度上可以影

4、响我们的生活。所以研究语音信 号无论是在科学领域上还是日常生活中都有其广泛而重要的意义。 本论文主要介绍的是的语音信号的简单处理。本论文针对以上问题, 运用数 字信号学基本原理实现语音信号的处理, 在 matlab7.0 环境下综合运用信号提取, 幅频变换以及傅里叶变换、 滤波等技术来进行语音信号处理。我所做的工作就是 在 matlab7.0 软件上编写一个处理语音信号的程序,能对语音信号进行采集,并 对其进行各种处理,达到简单语音信号处理的目的。 对语音信号的研究, 本论文采用了设计两种滤波器的基本研究方法来达到研 究语音信号去噪的目的, 最终结合图像以及对语音信号的回放,通过对比, 得出

5、结论。 3 目录 一、基本原理 . 4 二、设计步骤 . 8 三、总结. 15 致谢. 17 参考文献 . 18 附录. 19 4 一、基本原理 数字滤波器 , 是数字信号处理中及其重要的一部分。随着信息时代和数字 技术的发展,受到人们越来越多的重视。 数字滤波器可以通过数值运算实现滤波, 所以数字滤波器处理精度高、 稳定、体积小、重量轻、灵活不存在阻抗匹配问题, 可以实现模拟滤波器无法实现的特殊功能。数字滤波器种类很多, 根据其实现的 网络结构或者其冲激响应函数的时域特性,可分为两种,即有限冲激响应( FIR, Finite Impulse Response)滤波器和无限冲激响应( IIR,

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

7、的青睐。 IIR 滤波器采用递归型结构,即结构上带有反馈环路。IIR 滤波器运算结构 通常由延时、乘以系数和相加等基本运算组成,可以组合成直接型、正准型、级 联型、并联型四种结构形式,都具有反馈回路。同时,IIR 数字滤波器在设计上 可以借助成熟的模拟滤波器的成果,如巴特沃斯、 契比雪夫和椭圆滤波器等, 有 现成的设计数据或图表可查, 在设计一个 IIR 数字滤波器时, 我们根据指标先写 出模拟滤波器的公式, 然后通过一定的变换, 将模拟滤波器的公式转换成数字滤 波器的公式。 本次课程设计主要是对语音信号的时频进行分析,并对语音信号加噪后设计 FIR 滤波器对其进行滤波处理,对语音信号加噪声前

8、后的频谱进行比较分析,对 合成语音信号滤波前后进行频谱的分析比较。对前后滤波前后的频谱进行分析比 较,对不同的滤波器处理效果的比较。其原理框图如下图所示。 5 1、设计方案 首先选择一个语音信号作为分析的对象,在 MATLAB软件平台下对语音信号 进行时频变换、 时频分析。 利用 MATLAB产生信噪比可控的高斯白噪声作为干扰 信号加入到原始语音信号中, 模仿语音信号被污染, 并对合成的语音信号进行时 频分析。然后根据合成信号的频谱特点,选择合适的性能指标设计低通、高通、 带通滤波器,并绘制滤波器的频率响应曲线。采用不同的滤波器对加入噪声的 音信号进行滤波处理,绘制处理后的语音信号的频谱图。

9、语音信号采集 效果显示 语音信号录入语音信号变换信号加噪语音信号滤波 6 2、FIR 数字滤波器的设计及实现 FIR:有限脉冲响应滤波器。有限说明其脉冲响应是有限的。与IIR 相比, 它具有线性相位、容易设计的优点。这也就说明,IIR 滤波器具有相位不线性, 不容易设计的缺点。而另一方面,IIR 却拥有 FIR 所不具有的缺点,那就是设计 同样参数的滤波器, FIR 比 IIR 需要更多的参数。这也就说明,要增加DSP的计 算量。 DSP需要更多的计算时间,对DSP的实时性有影响。 FIR 滤波器的设计比 较简单,就是要设计一个数字滤波器去逼近一个理想的低通滤波器。通常这个理 想的低通滤波器在

10、频域上是一个矩形窗。根据傅里叶变换我们可以知道, 函数在 时域上是一个采样函数。通常此函数的表达式为: sa(n)sin (n) /n (3-2) 但是这个采样序列是无限的, 计算机是无法对它进行计算的。 故我们需要对 此采样函数进行截断处理。 也就是加一个窗函数。 就是传说中的加窗。 也就是把 这个时域采样序列去乘一个窗函数, 就把这个无限的时域采样序列截成了有限个 序列值。但是加窗后对此采样序列的频域也产生了影响:此时的频域便不在是一 个理想的矩形窗, 而是成了一个有过渡带, 阻带有波动的低通滤波器。 通常根据 所加的窗函数的不同, 对采样信号加窗后, 在频域所得的 低通滤波器的阻带衰减

11、也不同。通常我们就是根据此阻带衰减去选择一个合适的窗函数。如矩形窗、 汉 宁窗、汉明窗、 BLACKMAN窗、凯撒窗等。 窗函数法设计 FIR 滤波器的步骤如下: (1)根据对阻带衰减及过渡带的指标要求,选择串窗数类型(矩形窗、三 角窗、汉宁窗、哈明窗、凯塞窗等) ,并估计窗口长度 N。先按照阻带衰减选择 窗函数类型。原则是在保证阻带衰减满足要求的情况下,尽量选择主瓣的窗函数。 (2)构造希望逼近的频率响应函数。 (3)计算 h(n). 。 (4)加窗得到设计结果。 根据语音信号的特点给出有关滤波器的技术指标: 低通滤波器的性能指标: fp=1000Hz,fc=1200Hz,As=50db ,

12、Ap=1dB 7 高通滤波器的性能指标:fp=3500Hz,fc=4000Hz,As=50dB ,Ap=1dB 在 Matlab 中,可以利用函数fir1设计 FIR 滤波器,利用 Matlab 中的函数 freqz 画出各步步器的频率响应。 MATLAB 信号处理工具箱函数cheblap,cheblord和 cheeby1 是切比雪夫 I 型 滤波器设计函数。我们用到的是cheeby1 函数,其调用格式如下: B,A=cheby1(N,Rp,wpo,ftypr ) B,A=cheby1(N,Rp,wpo,ftypr , s) 设计 FIR 数字滤波器的低通滤波器源程序见附录(1)。 以下为设

13、计 FIR 数字滤波器的低通滤波器图像: 图 1 FIR低通滤波器 二、设计步骤 1、语音信号读入 单击开始程序,选择所有程序,接着选择附件,再选择录音。自己录入“课 程设计”语音信号,然后保存在MATLAB 文件夹里面,命名为“ new.wav”。 利用 MATLAB 中的 wavread 命令来读入 (采集)语音信号, 将它赋值给某一向 量。 y,fs,bits=wavread( N1 N2); 用于读取语音,采样值放在向量y 中,fs 表示采样频率 (Hz) ,bits表示采样位数。 N1 N2表示读取从 N1点到 N2点的值 (若只有一个 N的点则表示读取前 N点的采样值)。源程序见附

14、录(2)。 2、原始语音信号频谱分析及仿真 利用 MATLAB 中的 wavread 命令来读入(采集)语音信号,将它赋值给某一 向量。再将该向量看作一个普通的信号,对其进行 FFT变换实现频谱分析, 再依 据实际情况对它进行滤波。 对于波形图与频谱图 (包括滤波前后的对比图) 都可 以用 MATLAB 画出。我们还可以通过sound 命令来对语音信号进行回放,以便在 听觉上来感受声音的变化。 选择设计此方案, 是对数字信号处理的一次实践。在 数字信号处理的课程学习过程中,我们过多的是理论学习, 几乎没有进行实践方 面的运用。这个课题正好是对数字语音处理的一次有利实践,而且语音处理也可 以说是

15、信号处理在实际应用中很大众化的一方面。这个方案用到的软件也是在数 字信号处理中非常通用的一个软件MATLAB 软件。所以这个课题的设计过程 也是一次数字信号处理在MATLAB 中应用的学习过程。 课题用到了较多的MATLAB 语句,而由于课题研究范围所限,真正与数字信号有关的命令函数却并不多。 sound(x,fs,bits); 用于对声音的回放。 向量 y 则就代表了一个信号 (也即一个 复杂的“函数表达式”) 也就是说可以像处理一个信号表达式一样处理这个声音 信号。 9 FFT的 MATLAB 实现: 在 MATLAB 的信号处理工具箱中函数FFT和 IFFT 用于快速傅立叶变换和逆变 换

16、。下面介绍这些函数。 函数 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 补零

17、至长度 N。若向量 x 的长度大于 N,则函数截短 x 使 之长度为 N。若 x 为矩阵,按相同方法对x 进行处理。 经函数 fft求得的序列 y 一般是复序列,通常要求其幅值和相位。MATLAB 提供求复数的幅值和相位函数:abs,angle ,这些函数一般和 FFT 同时使用。 函数 abs(x) 用于计算复向量x 的幅值,函数 angle(x) 用于计算复向量的相角, 介于 和 之间,以弧度表示。函数unwrap(p) 用于展开弧度相位角p , 当相位角 绝对变化超过时,函数把它扩展至。 用 MATLAB 工具箱函数 fft进行频谱分析时需注意: (1)函数 fft返回值 y 的数据结构

18、对称性 一般而言,对于 N点的 x(n) 序列的 FFT是 N点的复数序列,其点n=N/2+1 对应 Nyquist 频率,作频谱分析时仅取序列X(k) 的前一半,即前N/2 点即可。 X(k) 的后一半序列和前一半序列时对称的。 10 (2)频率计算 若 N点序列 x( n)(n=0,1,N-1) 是在采样频率下获得的。它的FFT也是 N 点序列,即 X(k)(k=0,1,2,N-1) ,则第 k 点所对应实际频率值为f=k*f /N. (3)作 FFT分析时,幅值大小与FFT选择点数有关,但不影响分析结果。 以下为语音信号的时域图和频谱图: 图 2 原始信号时域频谱 3、原始信号采样及加噪

19、 (1)原始信号采样 用傅里叶变换到频域: y_p=fft(y,n);通过函数 f=fs*(0:n/2-1)/n;计算出 对应点的频率, 然后绘制出对原始语音信号采样的时域波形和频谱图。源程序见 附录( 3)。图形如下: 11 图 3 原始语音信号采样后时域波形和频谱图 (2)信号加噪 matlab 函数 randn:产生正态分布的随机数或矩阵的函数 产生均值为 0,方差 2 = 1 ,标准差 = 1 的正态分布的随机数或矩阵的函 数。 用法: Y = randn(n) 返回一个 n*n 的随机项的矩阵。如果n 不是个数量,将返回错误信息。 Y = randn(m,n) 或 Y = randn

20、(m n) 返回一个 m*n的随机项矩阵。 Y = randn(m,n,p,.) 或 Y = randn(m n p.) 产生随机数组。 Y = randn(size(A) 12 返回一个和 A有同样维数大小的随机数组。 randn 返回一个每次都变化的数量。 下面一段程序实现了利用randn 函数把一段随机噪音信号加入原始语音信号 的信号处理过程:见附录6 语句 L=length(y) noise=0.1*randn(L,2) y_z=y+noise;sound(y_z,fs) 加噪语音信号时域波形和频谱图如下图所示: 图4 加噪语音信号时域波形和频谱图 通过对两张图片的对比, 很明显可以看

21、加噪后的语音信号时域波形比原始语 音信号浑浊了许多, 在时间轴上可以明显看出00.5S 的幅值增大了; 通过对原 始语音信号的频谱图与加噪后的语音信号频谱图的对比,也可以看出在频率 5000Hz以后的频率幅值发生了明显的增加。 13 再通过对原始语音信号的回放效果与加噪后的语音信号回放的效果的对 比,人耳可以明显辨别出两种语音信号不一样了,加噪后的语音信号在听觉上比 原始语音信号要浑浊很多,而且还有吱吱嘎嘎的混杂音。 4、 FIR 滤波器去噪及仿真 通过对上一节中加噪语音信号和原始语音信号频谱图对比可以知道,噪音 大部分是 Hz大于 5000 的部分,故设计低通滤波器进行滤波处理。然后用设计的

22、 FIR 低通滤波器对上一节中加噪语音信号进行滤波处理。 用 FIR 数字低通滤波器对加噪的语音信号进行滤波时,在Matlab 中,FIR 滤波器利用函数 fftfilt对信号进行滤波。函数 fftfilt用的是重叠相加法实现 线性卷积的计算。调用格式为:y=fftfilter(h,x,M)。其中,h 是系统单位冲击 响应向量; x 是输入序列向量; y 是系统的输出序列向量;M是有用户选择的输 入序列的分段长度,缺省时,默认的输入向量的重长度M=512 。 FIR 数字低通滤波器对加噪语音信号的源程序见附录(4) 。 FIR数字低通滤波器对加噪语音信号的滤波结果图如下: 图5 FIR 滤波前

23、和滤波后波形及频谱 14 分析: 从以上四图可以很明显和直观的看出原始语音信号和加噪语音信号时 域波形和频谱图的区别。 加噪后的语音信号的时域波形比原始语音信号要模糊得 多,频谱图则是在频率5000Hz以后出现了明显的变化。再通过滤波前的信号波 形和频谱图的对比, 可以明显看出滤波后的波形开始变得清晰了,有点接近原始 信号的波形图了。滤波后信号的频谱图也在5000Hz以后开始逐渐接近原始语音 信号的频谱图。 再从对语音信号的回放,人耳可以明显辨别出加噪后的语音信号比较浑浊, 还有很明显嘎吱嘎吱的杂音在里面。滤波后,语音信号较加噪后的信号有了明显 的改善,基本可以听清楚了, 而且杂音也没有那么强

24、烈, 但是声音依然没有原始 语音信号那么清晰脆耳。 15 三、总结 语音信号处理是语音学与数字信号处理技术相结合的交叉学科,课程设计在 这里不讨论语音学,而是将语音当做一种特殊的信号,即一种“复杂向量”来看 待。也就是说,课程设计更多的还是体现了数字信号处理技术。 从课题的中心来看,课程设计“基于MATLAB 的 FIR 滤波器语音信号去噪” 是希望将数字信号处理技术应用于某一实际领域,这里就是指对语音及加噪处 理。作为存储于计算机中的语音信号,其本身就是离散化了的向量,只需将这些 离散的量提取出来, 就可以对其进行处理了。 这一过程的实现, 用到了处理数字 信号的强有力工具MATLAB 。通

25、过 MATLAB 里几个命令函数的调用,很轻易的在实 际语音与数字信号的理论之间搭了一座桥。 课程设计的特色在于它将语音信号看作一个向量,于是就把语音数字化了。 那么,就可以完全利用数字信号处理的知识来解决语音及加噪处理问题。我们可 以像给一般信号做频谱分析一样,来对语音信号做频谱分析, 也可以较容易的用 数字滤波器来对语音进行滤波处理。 通过比较加噪前后,语音的频谱和语音回放, 能明显的感觉到加入噪声后回放的声音与原始的语音信号有很大的不同, 前者随 较尖锐的干扰啸叫声。 从含噪语音信号的频谱图中可以看出含噪声的语音信号频 谱, 在整个频域范围内分是布均匀。由此可见,语音信号主要分布在低频段

26、,而 噪声主要分布在高频段。 在此次课程训练当中我们系统的学习了信号的知识,通过本次综合训练让我 了解了 FIR 器的知识,这次综合训练对将来从事这一工作的同学尤为重要,这等 于让我们提前对这方面的知识有了进一步的认识。在这次综合训练过程中也当遇 到了很多实际问题, 比如说对有些关于嵌入式知识的缺乏,不过在老师的进一步 讲解之后,我们逐步认识和理解了其中的关键,而且又对所学的理论知识有了升 华。 同时通过此次训练, 加深了我对所学过的各种理论数据的认识和理解,并在 一定程度上掌握并会运用。我还学会了把学到的知识用于解决实际问题,培养、 加强锻炼了我的动手实践能力。更为难得的是, 在这次训练过程

27、中, 屡屡碰见一 16 些问题,在解决这些问题的过程中, 不断加强了我对嵌入式系统的理解。对于一 些自己不清楚,不明白但平时又很难发现的知识点有了一次全面的巩固与复习。 在大学阶段, 理论的学习和实践是密不可分的。离开了实践的理论是没有任 何意义可言的。与此同时,理论是需要伴随着实践才能完善。同时,在与同学共 同在解决一些问题的过程中,提高了我们的团队协作精神。 17 致谢 通过此次课程设计,我们都学到了许多东西,体会到了从书本学习与实际 应用中的不同, 这种感同身受必将对我们今后的学习与生活带来很大的帮助。在 三周的时间中, 我们的指导老师时时在我们的身旁引导我们,帮助我们, 倾注他 们所有

28、的才华, 用心血让我们学会从理论走向实际这一目标十分艰辛,对我们来 说是飞跃的过程。 不会忘记他们为了我们紧缩的眉头,焦急的眼神,疲倦的笑容, 忙碌的身影!谢谢我们的指导老师对我们的帮助! 18 参考文献 1 丁玉美 . 数字信号处理 M. 西安电子科技大学出版社,2003,3. 2 朱冰莲 . 数字信号处理 M. 电子工业出版社, 2003,7. 3 胡航,语音信号处理,哈尔滨工业大学出版社,2000 年 5 月 4 皇甫堪 , 陈建文 , 楼生强 . 现代数字信号处理 M. 北京: 电子工业出版社 ,2003. 5 吴红卫 , 吴镇扬 , 赵力. 基于多窗谱的心理声学语音增强J.声学学 报

29、,2007,32(3):275-281. 6 潘欣裕,童兴法,赵鹤鸣,基于谱能比例加权的谱减法语音增强研究J. 中 国电子学会第十五届信息论学术年会暨第一届全国网络编码学术年会论文集 7 程正, 赵鹤鸣 . 基于多频带谱减法的语音增强算法的研究J. 002-8331(2007)36-0040-03. 8 曹瑜镠 , 方元, 吕勇. 基于最小统计及谱减法的语音增强J. 语音技术 . 002-8684(2006)12-0043-04 9 白文雅,黄健群,陈智伶. 基于维纳滤波语音增强算法的改进实现J.电声 技术, 2007,31(1) :44-46. 10 蔡斌. 一种改进型 MMSE 语音增强方

30、法 J. 信号处理,2004,20 (1) : 70-74. 11 陈俊,孙洪,董航. 基于 MMSE 先验信噪比估计的语音增强J. 武汉大学学 理学版, 2005,51(5) :638-642. 12 樊昌信,曹丽娜 . 通信原理 M. 北京:国防工业出版社,2008. 13姚天任 .数字语音处理 M. 武汉:华中科技大学出版社,2005. 19 附录 程序 1; Ft=8000; Fp=1000; Fs=1200; wp=2*Fp/Ft; ws=2*Fs/Ft; rp=1; rs=50; p=1-10.(-rp/20); %通带阻带波纹 s=10.(-rs/20); fpts=wp ws;

31、 mag=1 0; dev=p s; n21,wn21,beta,ftype=kaiserord(fpts,mag,dev);%kaiserord求阶数截止频 率 b21=fir1(n21,wn21,Kaiser(n21+1,beta); %由 fir1设计滤波器 h,w=freqz(b21,1); %得到频率响应 plot(w/pi,abs(h); title(FIR低通滤波器 ); 程序 2; y,Fs,nbits=wavread(E:123.wav);%载入波形 N=length(y)% 计算输入波形长度 Y=fft(y,N);%进行快速傅里叶变换 sound(y);% 播放声音 fig

32、ure(4); subplot(211); plot(0:15/(N-1):15;0:15/(N-1):15,y);title(原始信号时域图 )%时域图 NFFT = 2nextpow2(N); % Next power of 2 from length of y Y = fft(y,NFFT)/N; 20 f = Fs/2*linspace(0,1,NFFT/2+1); subplot(212); plot(f,2*abs(Y(1:NFFT/2+1);title(滤波前频谱图 )%滤波前频谱图 程序 3; y,fs,bits=wavread(E:123.wav); sound(y,fs)

33、n=length(y) y_p=fft(y,n); f=fs*(0:n/2-1)/n; figure(1) subplot(2,1,1); plot(0:15/(N-1):15;0:15/(N-1):15,y); title(原始语音信号采样后的时域波形); xlabel(时间轴 ) ylabel(幅值 A) subplot(2,1,2); plot(f,abs(y_p(1:n/2); title(原始语音信号采样后的频谱图); xlabel(频率 Hz); ylabel(频率幅值 ); L=length(y) noise=0.1*randn(L,2); y_z=y+noise; sound(

34、y_z,fs) n=length(y); y_zp=fft(y_z,n); f=fs*(0:n/2-1)/n; figure(2) subplot(2,1,1); 21 plot(0:15/(N-1):15;0:15/(N-1):15, y_z); title(加噪语音信号时域波形 ); xlabel(时间轴 ) ylabel(幅值 A) subplot(2,1,2); plot(f,abs(y_zp(1:n/2); title(加噪语音信号频谱图 ); xlabel(频率 Hz); ylabel(频率幅值 ); 程序 4; y,fs,bits=wavread(E:123.wav); soun

35、d(y,fs) n=length(y) y_p=fft(y,n); f=fs*(0:n/2-1)/n; figure(1) subplot(2,1,1); plot(0:15/(N-1):15;0:15/(N-1):15,y); title(原始语音信号采样后的时域波形); xlabel(时间轴 ) ylabel(幅值 A) subplot(2,1,2); plot(f,abs(y_p(1:n/2); title(原始语音信号采样后的频谱图); xlabel(频率 Hz); ylabel(频率幅值 ); L=length(y) noise=0.1*randn(L,2); y_z=y+noise

36、; 22 sound(y_z,fs) n=length(y); y_zp=fft(y_z,n); f=fs*(0:n/2-1)/n; figure(2) subplot(2,1,1); plot(0:15/(N-1):15;0:15/(N-1):15,y); title(加噪语音信号时域波形 ); xlabel(时间轴 ) ylabel(幅值 A) subplot(2,1,2); plot(f,abs(y_zp(1:n/2); title(加噪语音信号频谱图 ); xlabel(频率 Hz); ylabel(频率幅值 ); Ft=5000; Fp=1000; Fs=1200; wp=2*Fp/

37、Ft; ws=2*Fs/Ft; rp=1; rs=50; p=1-10.(-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); 23 h,w=freqz(b21,1); plot(w/pi,abs(h); title(FIR低通滤波器 ); x=fftfilt(b21,y_z); X=fft(x,n); figure(4); subplot(2,2,1);plot(f,abs(y_zp(1:n/2); title(滤波前信号的频谱 ); subplot(2,2,2);plot(f,abs(X(1:n/2); title(滤波后信号的频谱 ); subplot(2,2,3);plot(0:15/(N-1):15;0:15/(N-1):15,y); title(滤波前信号的时域波形 ) subplot(2,2,4);plot(0:15/(N-1):15;0:15/(N-1):15,x); title(滤波后信号的时域波形 ) sound(x,fs,bits)

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

当前位置:首页 > 其他


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