数字信号处理课程设计基于FIR的有噪声语音信号处理.doc_第1页
数字信号处理课程设计基于FIR的有噪声语音信号处理.doc_第2页
数字信号处理课程设计基于FIR的有噪声语音信号处理.doc_第3页
数字信号处理课程设计基于FIR的有噪声语音信号处理.doc_第4页
数字信号处理课程设计基于FIR的有噪声语音信号处理.doc_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于FIR的有噪声语音信号处理第一章 绪论 1.1 引言数字信号处理的主要研究对象是数字信号,且是采用运算的方法达到处理的目的的,因此,其实现方法,基本上分成两种实现方法,即软件和硬件实现方法。软件实现方法指的是按照原理和算法,自己编写程序或者采用现成的程序在通用计算机上实现,硬件实现指的是按照具体的要求和算法,设计硬件结构图,用乘法器加法器延时器、控制器、存储器以及输入输出接口部件实现的一种方法。显然前者灵活,只要改变程序中的有关参数,但是运算速度慢,一般达不到实时处理,因此,这种方法适合于科研和教学。后者运算速度快,可以达到实时处理要求,但是不灵活。目前DSP芯片已进入市场,且正在高速发展,速度高,体积小,性能优良,价格也在不断下降。可以说,用DSP芯片实现数字信号处理,正在变成工程技术领域的主要方法。用合适的DSP芯片,配有合适的芯片语言及任务要求的软件,来实现信号处理功能无疑是一种最佳的数字信号处理系统。本文仅使用软件实现。 MATLAB是一种科学计算软件,主要适用于矩阵运算和信息处理领域的分析设计,它使用方便,输入简捷,运算高效,内容丰富,并且很容易由用户自行扩展。MATLAB当前已成为美国和其他发达国家在大学教学和教学研究中最常用而必不可少的工具。其主要有信号处理(signal processing)、系统控制(control system)、神经网络(neural network)、图形处理(image processing)、鲁棒控制(robust control)、非线形系统控制设计(nonlinear control)、系统辨识(system identification)、最优化(optimisation)、µ分析与综合(µ analysis and synthesis)、模糊逻辑(fuzzy logic)、小波(wavlet)、样条(spline)等工具箱,而且工具箱还在不断增加。这些工具箱给各个领域的研究和工具应用提了有利的工具。借助于这些“巨人肩上的工具”,各个层次研究人员可直观、方便地进行分析计算及设计工作,从而大大地节省时间。1.2课程设计基本要求 1. 熟悉离散信号和系统的时域特性。2. 掌握数字信号处理的基本概念,基本理论和基本方法。3. 掌握序列快速傅里叶变换方法。4. 学会MATLAB的使用,掌握MATLAB的程序设计方法。5. 掌握利用MATLAB对语音信号进行频谱分析。6. 掌握MATLAB设计FIR数字滤波器的方法和对信号进行滤波的方1.3课程设计内容1.利用Windows下的录音机或其他软件,录制一段自己的语音信号,时间控制在1s左右,并对录制的信号进行采样;2.语音信号的频谱分析,画出采样后语音信号的时域波形和频谱图;3.产生噪声信号并加到语音信号中,得到被污染的语音信号,并回放语音信号;4.污染信号的频谱分析,画出被污染的语音信号时域波形和频谱; 5.根据有关的频谱特性,设计FIR数字滤波器;6.用自己设计的滤波器对被污染的语音信号进行滤波;7.分析得到信号的频谱,画出滤波后信号的时域波形和频谱,并对滤波前后的信号进行对比,分析信号的变化;8.回放语音信号。第二章 数字滤波器的设计的总体方案2.1流程框图方案一: 在一个相对较安静的环境下,录下1s左右的wav声音信号,然后对声音进行采样,画出其时域波形和频谱图,利用程序编一个噪声信号加载在原声音信号里面,将这个被污染的语音信号通过baterworth带通滤波器,将滤波后的信号进行抽样再和原始信号进行比较,其流程图如下所示:方案二: 我们知道在我们的现实生活中噪声信号是无处不在的,所以,声音信号中本来就存在着噪声,我们只需设计一个合适的滤波器将原始声音中的杂音滤除就可以了,其流程图如下所示:2.2、语音信号采集 录制一段课程设计学生的语音信号并保存为文件,要求长度控制在1秒,并对录制的信号进行采样;录制时可以使用Windows自带的录音机,或者使用其它专业的录音软件,录制时需要配备录音硬件(如麦克风),为便于比较,需要在安静、干扰小的环境下录音。2.3、语音信号分析 通过用windows录音之后,将录音的文件导入到MATLAB,并使用MATLAB绘出采样后的语音信号的时域波形和频谱图。根据频谱图求出其带宽,并说明语音信号的采样频率不能低于多少赫兹。语音信号采集的程序:fs=8000,bits=8,T=1,Ts=1/fs;N=T/Ts; x,fs,bits=wavread(E:MATLAB7workyuyin.wav,1024 6023);x=x(:,1); subplot(321);plot(x); sound(x,fs,bits);title(语音信号时域波形图)y=fft(x,1024);n=(fs/1024)*1:1024; subplot(322);plot(n(1:512),abs(y(1:512);title(语音信号频谱图);2.4、含噪语音信号合成 在MATLAB软件平台下,给原始的语音信号叠加上噪声,噪声类型分为如下几种:(1)白噪声;(2)单频噪色(正弦干扰);(3)多频噪声(多正弦干扰);(4)其它干扰,可设置为低频、高频、带限噪声,或Chirp干扰、冲激干扰。绘出叠加噪声后的语音信号时域和频谱图,在视觉上与原始语音信号图形对比,也可通过Windows播放软件从听觉上进行对比,分析并体会含噪语音信号频谱和时域波形的改变。这里,我们加的是单频的正弦干扰。噪声信号与语音信号合成的程序:dt=0.1*sin(2*pi*5000*(1:size(x)/fs);% dt1=fft(dt,1024);% plot(n(1:512),abs(dt1(1:512);x1=x+dt;sound(x1,fs,bits);y1=fft(x1,1024);subplot(323);plot(x1);title(含噪声信号波形);subplot(324);plot(n(1:512),abs(y1(1:512);title(含噪声信号频谱);2.5、数字滤波器原理及步骤给定滤波器的规一化性能指标(参考指标,实际中依据每个同学所叠加噪声情况而定)例如:通带截止频率wp=0.25*pi, 阻通带截止频率ws=0.3*pi; 通带最大衰减Rp=1 dB; 阻带最小衰减Rs=15 dB,可以采用窗函数法与等波纹法分别设计各型FIR滤波器(低通、高通、带通、带阻中的至少3种类型)来对叠加噪声前后的语音信号进行滤波处理,绘出滤波器的频域响应,绘出滤波后信号的时域波形和频谱,并对滤波前后的信号进行对比,分析信号的变化;在相同的性能指标下比较各方法的滤波效果,并从理论上进行分析(或解释)。 2.5.1相关原理:设计数字滤波器的任务就是寻求一个因果稳定的线性时不变系统,并使系统函数H(z)具有指定的频率特性。 数字滤波器从实现的网络结构或者从单位冲激响应分类,可以分成无限长单位冲激响应(IIR)数字滤波器和有限长单位冲激响应(FIR)数字滤波器。 数字滤波器频率响应的三个参数: (1) 幅度平方响应:(2) 相位响应(3) 群时延响应FIR数字滤波器:FIR滤波器通常采用窗函数方法来设计。窗设计的基本思想是,首先选择一个适当的理想选频滤波器(它总是具有一个非因果,无限持续时间脉冲响应),然后截取(加窗)它的脉冲响应得到线性相位和因果FIR滤波器。因此这种方法的重点是选择一个合适的窗函数和理想滤波器。我我们用表示理想的选频滤波器,它在通带上具有单位增益和线性相位,在阻带上具有零响应。一个带宽的低通滤波器由下式给定:为了从得到一个FIR滤波器,必须同时在两边截取。而要得到一个因果的线性相位滤波器,它的长度为,必须有: 这种操作叫做加窗,可以看作是与窗函数的乘积:其中根据的不同定义,可以得到不同的窗结构。在频域中,因果FIR滤波器响应由和窗响应的周期卷积得到,即: 常用的窗函数有矩形窗、巴特利特(BARTLETT)窗、汉宁(HANNING)窗、海明(HAMMING)窗、布莱克曼(BLACKMAN)窗、凯泽(KAISER)窗等。2.5.2 用窗函数数字滤波器设计的基本步骤(1)确定技术指标在设计一个滤波器之前,必须首先根据工程实际的需要确定滤波器的技术指标。在很多实际应用中,数字滤波器常常被用来实现选频操作。因此,指标的形式一般在频域中给出幅度和相位响应。幅度指标主要以两种方式给出。第一种是绝对指标。它提供对幅度响应函数的要求,一般应用于FIR滤波器的设计。第二种指标是相对指标。它以分贝值的形式给出要求。在工程实际中,这种指标最受欢迎。对于相位响应指标形式,通常希望系统在通频带中人有线性相位。运用线性相位响应指标进行滤波器设计具有如下优点:只包含实数算法,不涉及复数运算;不存在延迟失真,只有固定数量的延迟;长度为N的滤波器(阶数为N-1),计算量为N/2数量级。因此,本文中滤波器的设计就以线性相位FIR滤波器的设计为例。(2)逼近确定了技术指标后,就可以建立一个目标的数字滤波器模型。通常采用理想的数字滤波器模型。之后,利用数字滤波器的设计方法,设计出一个实际滤波器模型来逼近给定的目标。(3)性能分析和计算机仿真上两步的结果是得到以差分或系统函数或冲激响应描述的滤波器。根据这个描述就可以分析其频率特性和相位特性,以验证设计结果是否满足指标要求;或者利用计算机仿真实现设计的滤波器,再分析滤波结果来判断。 图1 数字滤波器设计步骤 第三章 窗函数的设定3.1 窗函数的定义 数字信号处理的主要数学工具是博里叶变换而傅里叶变换是研究整个时间域和频率域的关系。不过,当运用计算机实现工程测试信号处理时,不可能对无限长的信号进行测量和运算,而是取其有限的时间片段进行分析。做法是从信号中截取一个时间片段,然后用观察的信号时间片段进行周期延拓处理,得到虚拟的无限长的信号,然后就可以对信号进行傅里叶变换、相关分析等数学处理。无线长的信号被截断以后,其频谱发生了畸变,原来集中在f0处的能量被分散到两个较宽的频带中去了,这种现象称之为频谱能量泄漏。信号截断以后产生的能量泄漏现象是必然的,因为窗函数w(t)是一个频带无限的函数,所以即使原信号x(t)是限带宽信号,而在截断以后也必然成为无限带宽的函数,即信号在频域的能量与分布被扩展了。又从采样定理可知,无论采样频率多高,只要信号一经截断,就不可避免地引起混叠,因此信号截断必然导致一些误差。为了减少频谱能量泄漏,可采用不同的截取函数对信号进行截断,截断函数称为窗函数,简称为窗。泄漏与窗函数频谱的两侧旁瓣有关,如果两侧瓣的高度趋于零,而使能量相对集中在主瓣,就可以较为接近于真实的频谱,为此,在时间域中可采用不同的窗函数来截断信号。3.2实际应用的窗函数,可分为以下主要类型: 3.2.1幂窗采用时间变量某种幂次的函数,如矩形、三角形、梯形或其它时间(t)的高次幂; 3.2.2 三角函数窗应用三角函数,即正弦或余弦函数等组合成复合函数,例如汉宁窗、海明窗等; 3.2.3 指数窗采用指数时间函数,如 形式,例如高斯窗等。3.3几种常用窗函数的性质和特点。3.3.1 矩形窗矩形窗属于时间变量的零次幂窗。矩形窗使用最多,习惯上不加窗就是使信号通过了矩形窗。这种窗的优点是主瓣比较集中,缺点是旁瓣较高,并有负旁瓣,导致变换中带进了高频干扰和泄漏,甚至出现负谱现象3.3.2 三角窗三角窗亦称费杰(Fejer)窗,是幂窗的一次方形式。与矩形窗比较,主瓣,宽约等于矩形窗的两倍,但旁瓣小,而且无负旁瓣。3.3.3汉宁(Hanning)窗汉宁窗又称升余弦窗,汉宁窗可以看作是3个矩形时间窗的频谱之和,或者说是 3个 sine(t)型函数之和,而括号中的两项相对于第一个谱窗向左、右各移动了 /T,从而使旁瓣互相抵消,消去高频干扰和漏能。可以看出,汉宁窗主瓣加宽并降低,旁瓣则显著减小,从减小泄漏观点出发,汉宁窗优于矩形窗但汉宁窗主瓣加宽,相当于分析带宽加宽,频率分辨力下降。 3.3.4 海明(Hamming)窗海明窗也是余弦窗的一种,又称改进的升余弦窗。海明窗与汉宁窗都是余弦窗,只是加权系数不同。海明窗加权的系数能使旁瓣达到更小。分析表明,海明窗的第一旁瓣衰减为一42dB海明窗的频谱也是由3个矩形时窗的频谱合成,但其旁瓣衰减速度为20dB(10oct),这比汉宁窗衰减速度慢。海明窗与汉宁窗都是很有用的窗函数。3.3.5高斯窗高斯窗是一种指数窗。高斯窗谱无负的旁瓣,第一旁瓣衰减达一55dB。高斯富谱的主瓣较宽,故而频率分辨力低高斯窗函数常被用来截断一些非周期信号,如指数衰减信号等。不同的窗函数对信号频谱的影响是不一样的,这主要是因为不同的窗函数,产生泄漏的大小不一样,频率分辨能力也不一样。信号的截断产生了能量泄漏,而用FFT算法计算频谱又产生了栅栏效应,从原理上讲这两种误差都是不能消除的,但是我们可以通过选择不同的窗函数对它们的影响进行抑制。图6.5是几种常用的窗函数的时域和频域波形,其中矩形窗主瓣窄,旁瓣大,频率识别精度最高,幅值识别精度最低;布莱克曼窗主瓣宽,旁瓣小,频率识别精度最低,但幅值识别精度最高。对于窗函数的选择,应考虑被分析信号的性质与处理要求。如果仅要求精确读出主瓣频率,而不考虑幅值精度,则可选用主瓣宽度比较窄而便于分辨的矩形窗,例如测量物体的自振频率等;如果分析窄带信号,且有较强的干扰噪声,则应选用旁瓣幅度小的窗函数,如汉宁窗、三角窗等;对于随时间按指数衰减的函数,可采用指数窗来提高信噪比。第四章 利用窗函数设计给定参数的FIR滤波器4.1指标的确定对于不同类型的滤波器,参数wp和ws有一些限制:对于低通滤波器,wpws; 首先,根据所录得音跟所加正弦噪声合成后的频谱观察,确定wp和ws的大致范围,设定好了wp和ws之后,变可以确定过度带的大小了,根据过度带的及阻带衰减的指标要求,来选择窗函数的类型。根据前面介绍的录音噪声信号跟源信号合成后的频谱图可以看出噪声频率大概在3KHZ左右,所以就可以设定fp,fs从而确定wp,ws。接着,按照阻带衰减选择窗函数的类型。4.2 凯塞窗函数的程序的设定滤波器的程序:fp=2800,fc=3600,rs=90; %设置通带频率和阻带频率,单位是Hzwp=2*pi*fp/fs;ws=2*pi*fc/fs;Bt=ws-wp; %转化为数字频率求过渡带宽alph=0.5842*(rs-21)0.4+0.07886*(rs-21);M=ceil(rs-8)/2.285/Bt); %求滤波器长度wc=(wp+ws)/2/pi; %理想滤波器通带截止频率 hn=fir1(M,wc,kaiser(M+1,alph); %理想低通滤波器脉冲响应并形成了凯塞函数X=conv(hn,x); %过滤后的信号sound(X,fs,bits);X1=fft(X,1024)subplot(325);plot(X);title(处理后的信号波形);subplot(326);plot(n(1:512),abs(X1(1:512); title(处理后的信号频谱)第五章 滤波分析5.1 通过回放语音信号分析从以上种音乐滤波去噪设计,我们可以从信号滤波前后的波形图以及频谱图上看出变化。当然,也可以用sound()函数来播放滤波后的音乐,从听觉上直接感受音乐信号的变化,本次设计比较明显,滤波后的音乐比滤波前要清晰明亮很多,当然由于人耳听力的限制,有些情况下我们是很难听出异同的。sound(x1,fs,bits); %回放含噪音乐sound(X,fs,bits); %回放去噪声后音乐 5.2 通过信号滤波前后的波形图分析 滤波前后信号在时间域和频率域上的对照图如下所示:5.2.1图5-1到5-3原信号以及滤波前后信号在时间域的对照图信号时域图形如下所示:图5-1图5-2图5-35.2.2图5-4到5-6原信号以及滤波前后信号在频域的对照图从滤波前后信号在频率域上的对照图能够看出滤波后信号在3000Hz后的部分被完全滤掉,这样就实现了对音乐信号的去噪,从而基本恢复了原语音信号图5-4为原信号的的频频谱图,图5-5为加噪声后的频谱图,图5-6为加噪声之后经过滤波器之后的频谱图。通过观察不难发现,经过滤波器之后的频谱与原信号的频谱相同。图5-4图5-5图5-6结束语在本次课程设计的过程中,主要遇到的问题是原始音乐信号的选取。有些音乐信号在MATLAB中运行时出错,开始以为自己的操作问题,在跟同学商讨多次更换音乐信号后得到了解决。其次就是在滤波器参数的选取上,开始时不清楚怎么选取,又在课本中找了好久才找到。学习的过程是相互讨论共同进步的,多多讨论课题中遇到的问题,可以巩固我们的知识掌握能力,增加熟练运用度。从本次课程设计的中心来看,课题是希望将数字信号处理技术应用于某一实际领域,这里就是指对音乐的处理。作为存储于计算机中的音乐信号,其本身就是离散化了的向量,我们只需将这些离散的量提取出来,就可以对其进行处理了。在这里,用到了处理数字信号的强有力工具MATLAB,通过MATLAB里几个命令函数的调用,很轻易的在实际化音乐与数字信号的理论之间搭了一座桥。课题的特色在于它将音乐看作了一个向量,于是音乐数字化了,则可以完全利用数字信号处理的知识来解决。我们可以像给一般信号做频谱分析一样,来给音乐信号做频谱分析,也可以较容易的用数字滤波器来对音乐进行滤波处理。改变参数,理论结合实际,分析各参数对图形的影响,从而加深对各个参数的理解。在完成这次课程设计过程中学到了许多东西,进一步理解了滤波器设计方法和各参数意义,通过分析信号时域和频域的关系等,加深了对滤波性能的理解,而且学会了使用Matlab一些基本函数,增加了进一步学习Matlab软件的兴趣。同时,通过本次课程设计,锻炼了我的动手能力,和提高了我分析问题,解决问题的能力。参考文献1王达K恩格尔,约翰G普罗克斯. 数字图像处理使用 MATLAB M.西安:西安交通大学出版社,2002.62 钟麟,王峰. MATLAB仿真技术与应用教程M.北京:国防工业出版社,2004.13 汪

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论