基于MATLAB的语音信号数字滤波器的的设计和实现论文.doc_第1页
基于MATLAB的语音信号数字滤波器的的设计和实现论文.doc_第2页
基于MATLAB的语音信号数字滤波器的的设计和实现论文.doc_第3页
基于MATLAB的语音信号数字滤波器的的设计和实现论文.doc_第4页
基于MATLAB的语音信号数字滤波器的的设计和实现论文.doc_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

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

文档简介

基于MATLAB的语音信号数字滤波器的设计和实现引 言随着信息时代和数字世界的到来,信号处理正向着数字化、软件化方向发展,数字信号处理已经成为当今一门极其重要的学科和技术,并且在通信、语音、图像、自动控制、雷达、军事、航空航天、医疗和家用电器等众多领域得到了广泛的应用。数字滤波器是数字信号处理的重要基础,在对信号的滤波、检测及参数的估计等信号应用中,数字滤波器是使用最为广泛的一种线性系统。在数字信号处理中,数字滤波器占有极其重要的地位,它具有精度高、可靠性好、灵活性大等特点。现代数字滤波器可以用软件或硬件两种方式来实现。软件方式实现的优点是可以通过滤波器参数的改变去调整滤波器的性能。人耳可闻的音频带宽为20Hz20KHz,而语音信号的带宽是不较窄的。试验证明,语音信号只要有500Hz3KHz的带宽就能够保持语音的清晰度。我们只需要设计带宽为500Hz3KHz的语音信号滤波器用于语音信号通路中,抑制了不需要的可闻音频信号,如低频噪声(交流感应噪声,电唱机唱盘噪声等),高频噪声(磁带噪声,无线电接收机中的啸叫声等)。或者只抑制低频和高频噪声其中的一种。从而改善语音信号的信噪比,提高语音清晰度。第1章 绪 论1.1 研究现状在近代电信设备和各类控制系统中,滤波器应用极为广泛;在所有的电子部件中,使用最多,技术最为复杂的要算滤波器了。滤波器的优劣直接决定产品的优劣,所以,对滤波器的研究和生产历来为各国所重视。1917年美国和德国科学家分别发明了LC滤波器,次年导致了美国第一个多路复用系统的出现。20世纪50年代无源滤波器日趋成熟。自60年代起由于计算机技术、集成工艺和材料工业的发展,滤波器发展上了一个新台阶,并且朝着低功耗、高精度、小体积、多功能、稳定可靠和价廉方向努力,其中小体积、多功能、高精度、稳定可靠成为70年代以后的主攻方向。导致RC有源滤波器、数字滤波器、开关电容滤波器和电荷转移器等各种滤波器的飞速发展,到70年代后期,上述几种滤波器的单片集成已被研制出来并得到应用。80年代,致力于各类新型滤波器的研究,努力提高性能并逐渐扩大应用范围。90年代至现在主要致力于把各类滤波器应用于各类产品的开发和研制。当然,对滤波器本身的研究仍在不断进行。 1965年单片集成运算放大器问世后,为有源滤波器开辟了广阔的前景。70年代初期,有源滤波器发展引人注目,1978年单片RC有源滤波器问世,为滤波器集成迈进了可喜的一步。由于运放的增益和相移均为频率的函数,这就限制了RC有源滤波器的频率范围,一般工作频率为20kHz左右,经过补偿后,工作频率也限制在100kHz以内。1974年产生了更高频的RC有源滤波器,使工作频率可达GB/4(GB为运放增益与带宽之积)。由于R的存在,给集成工艺造成困难,于是又出现了有源C滤波器:就是滤波器由C和运放组成。这样容易集成,更重要的是提高了滤波器的精度,因为有源C滤波器的性能只取决于电容之比,与电容绝对值无关。但它有一个主要问题:由于各支路元件均为电容,所以运放没有直流反馈通道,使稳定性成为难题。1982年由Geiger、Allen和Ngo提出用连续的开关电阻(SR)去替代有源RC滤波器中的电阻R,就构成了SRC滤波器,它仍属于模拟滤波器。但由于采用预置电路和复杂的相位时钟,使这种滤波器发展前途不大。 20世纪80年代技术改造一个重大课题是实现各种电子系统全面大规模集成(LSI)。使用最多的滤波器成为“拦路虎”,RC有源滤波器不能实现LSI,无源滤波器和机械滤波器更不用说了,于是,人们只能另辟新径。50年代曾有人提出SCF的概念,由于当时集成工艺不过关,并没有引起人们的重视。1972年,美国一个叫Fried的科学家发表了用开关和电容模拟电阻R,说SCF的性能只取决于电容之比,与电容绝对值无关,这样才引起人们的重视。1979年一些发达国家单片SCF已成为商品(属于高度保密技术)。现在SC技术已趋成熟。SCF采用MOS工艺加以实现,被公认为80年代网络理论与集成工艺的一个重大突破。当前MOS电容值一般为几皮法至100pF之内,它具有(10100)10-6/V的电压系数与(10100)10-6/的温度系数,这两个系数几乎接近理想的境界。SCF具有下列一些优点:SCF可以大规模集成;SCF精度高,因为其性能取决于电容之比,而MOS电容之比的误差小于千分之一;功能多,几乎所有电子部件和功能均可以由SC技术来实现;比数字滤波器简单,因为不需要A/D、D/A转换;功能小,可以做到小于10mW。 我国广泛使用滤波器是50年代后期的事,当时主要用于话路滤波和报路滤波。经过半个世纪的发展,我国滤波器在研制、生产和应用等方面已纳入国际发展步伐,但由于缺少专门研制机构,集成工艺和材料工业跟不上来,使得我国许多新型滤波器的研制应用与国际发展有一段距离。 在我国,1978年有的导师和在校研究生开始进行这项研究工作,真正引起人们重视是1980年以后。1983年清华大学已制成单片SCF,成都工程学院与工厂联合,也研制成单片SCF。现在关键是用MOS工艺实现SCF及推广应用问题,由于用户还不了解它,在我国SCF的应用还没有普及。我国现有滤波器的种类和所覆盖的频率已基本上满足现有各种电信设备。从整体而言,我国有源滤波器发展比无源滤波器缓慢,尚未大量生产和应用。从下面的生产应用比例可以看出我国各类滤波器的应用情况:LC滤波器占50%;晶体滤波器占20%;机械滤波器占15%;陶瓷和声表面滤波器各占1%;其余各类滤波器共占13%。从这些应用比例来看,我国电子产品要想实现大规模集成,滤波器集成化仍然是个重要课题。1.2 发展趋势随着科技的发展,近些年又出现了很多新型数字滤波器(DF),在这里,对一些新型DF做一些简单介绍。(1)自适应DF :最优控制、自适应控制和自学习控制都涉及到多参数、多变量的复杂控制系统,都属于现代控制理论研究的课题。自适应DF具有很强的自学习、自跟踪功能。它在雷达和声纳的波束形成、缓变噪声干扰的抑制、噪声信号的处理、通信信道的自适应均衡、远距离电话的回声抵消等领域获得了广泛的应用,促进了现代控制理论的发展。 自适应DF有如下一些简单算法:WLMS算法、MLMS算法、TDO算法、差值LMS算法和CLMS算法。(2)复数DF :在输入信号为窄带信号处理系统中,常采用复数DF技术。为了降低采样率而又保存信号所包含的全部信息,可利用正交双路检波法,取出窄带信号的复包络,然后通过A/D变换,将复包络转化为复数序列进行处理,这个信号处理系统即为复数DF。它具有许多功能:MTI雷达中抑制具有卜勒频移的杂波干扰;数字通信网与模拟通信网之间多路TDM/FDM信号变换复接 (3)多维DF :在图像处理、地震、石油勘探的数据处理中都用到多维DF(常用是二维DF),多维DF的设计,往往将一维DF优化设计直接推广到多维DF中去。对于模糊和随机噪声干扰的二维图像的处理,多维DF也能发挥很好的作用。 此外,还有波DF,它便于实现大规模集成,便于无源和有源滤波网络的数字模拟。因此,正受到人们的重视和加以研究。 对于DF有待研究的课题有:系数灵敏度、舍入噪声和极限环、多维逆归滤波器的稳定性、各种硬件和软件实现DF的研究等等。总之,DF在数字信号处理技术中占有极为重要的地位,对于它的研究、生产和应用等工作均是很有意义的。 为适应各种需要,出现了一批新型滤波器,这里介绍几种已得到广泛应用的新型滤波器。(1)电控编程CCD横向滤波器(FPCCDTF) :电荷耦合器(CCD)固定加权的横向滤波器(TF)在信号处理中,其性能和造价均可与数字滤波器和各种信号处理部件媲美。这种滤波器主要用于自适应滤波;P-N序列和Chirp波形的匹配滤波;通用化的频域滤波器及相关积运算;语音信号和相位均衡;相阵系统的波束合成和电视信号的重影消除等均有应用。当然,更多的应用有待进一步开拓。总之,FPCCDTF是最有希望的发展方向。 (2)晶体滤波器 :它是适应单边带技术而发展起来的。在20世纪70年代,集成晶体滤波器的产生,使它的发展产生一个飞跃。近十年来,晶体滤波器致力于下面一些研究:实现最佳设计,除具有优良的选择外,还具有良好的时域响应;寻求新型材料;扩展工作频率;改造工艺,使其向集成化发展。它广泛应用于多路复用系统中作为载波滤波器,在收发信中,单边带通信机中作为选频滤波器,在频谱分析仪和声纳装置中作为中频滤波器。(3)声表面滤波器 :它是理想的超高频器件。它的幅频特性和相位特性可以分别控制,以达到要求,而且它还有体积小,长时间稳定性好和工艺简单等特点。通常应用于:电视广播发射机中作为残留边带滤波器;在彩色电视接收机中调谐系统的表面梳形滤波器。此外,在国防卫星通信系统中已广泛采用。声表面滤波器是电子学和声学相结合的产物,而且可以集成,所以,它在所有无源滤波器中最有发展前途的。 随着电子工业的发展,对滤波器的性能要求越来越高,功能也越来越多,并且要求它们向集成方向发展。我国滤波器研制和生产与上述要求相差甚远,为缩短这个差距,电子工程和科技人员负有重大的历史责任。 第2章 MATLAB概述2.1 MATLAB的诞生与发展MATLAB是矩阵实验室(Matrix Laboratory)的简称,是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。20世纪70年代,美国新墨西哥大学计算机科学系主任Cleve Moler为了减轻学生编程的负担,用FORTRAN编写了最早的MATLAB。1984年由Little、Moler、Steve Bangert合作成立了的MathWorks公司正式把MATLAB推向市场。到20世纪90年代,MATLAB已成为国际控制界的标准计算软件。 其版本更新如表2-1所示。 表2-1 MATLAB版本更新表版本建造编号发布时间MATLAB 1.01984 MATALB 21986MATLAB 31987MATLAB 3.51990MATLAB 41992MATLAB 4.2cR7 1994MATLAB 5.0R81996MATLAB 5.1R91997MATLAB 5.1.1R9.1 1997MATLAB 5.2R10 1998MATLAB 5.2.1R10.11998MATLAB 5.3R111999MATLAB 5.3.1R11.11999MATLAB 6.0R122000MATLAB 6.1R12.12001MATLAB 6.5R132002MATLAB 6.5.1R13SP12003MATLAB 6.5.2R13SP22003MATLAB 7R142004MATLAB 7.0.1R14SP12004MATLAB 7.0.4 R14SP22005MATLAB 7.1 R14SP32005MATLAB 7.2R2006a2006MATLAB 7.3 R2006b2006MATLAB 7.4R2007a2007MATLAB 7.5R2007b2007MATLAB 7.6R2008a2008MATLAB 7.7R2008b2008MATLAB 7.8R2009a2009.3.6MATLAB 7.9R2009b2009.9.4MATLAB 7.10R2010a2010.3.52.2 MATLAB的基本功能及其应用 MATLAB和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连 接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。 MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且mathwork也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C+ ,JAVA的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用。MATLAB 产品族可以用来进行以下各种工作:数值分析、数值和符号计算、工程与科学绘图、控制系统的设计与仿真、数字图像处理技术、数字信号处理技术、通讯系统设计与仿真、财务与金融工程。MATLAB 的应用范围非常广,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。附加的工具箱(单独提供的专用 MATLAB 函数集)扩展了 MATLAB 环境,以解决这些应用领域内特定类型的问题。2.3 MATLAB的特点及其优势 MATLAB特点包括几下几个方面 (1)此高级语言可用于技术计算 (2)此开发环境可对代码、文件和数据进行管理 (3)交互式工具可以按迭代的方式探查、设计及求解问题 (4)数学函数可用于线性代数、统计、傅立叶分析、筛选、优化以及数值积分等 (5)二维和三维图形函数可用于可视化数据 (6)各种工具可用于构建自定义的图形用户界面 (7)各种函数可将基于MATLAB的算法与外部应用程序和语言 (8)不支持大写输入,内核仅仅支持小写 MATLAB的优势包括以下几个方面 (1)友好的工作平台和编程环境 (2)简单易用的程序语言 (3)强大的科学计算机数据处理能力 (4)出色的图形处理功能 (5)应用广泛的模块集合工具箱 (6)实用的程序接口和发布平台 (7)应用软件开发(包括用户界面) 第3章 语音信号分析3.1 语音信号概述语音信号基本组成语音信号的基本组成单位是音素。音素可分成“浊音”和“清音”两大类。如果将不存在语音而只有背景噪声的情况称为“无声”, 那么音素可以分成“无声”、“浊音”、“清音”三类。一个音节由元音和辅音构成。元音在音节中占主要部分。所有元音都是浊音。在汉语普通话中, 每个音节都是由“辅音- 元音”构成的。语音信号的“短时谱”对于非平稳信号, 它是非周期的, 频谱随时间连续变化, 因此由傅里叶变换得到的频谱无法获知其在各个时刻的频谱特性。如果利用加窗的方法从语音流中取出其中一个短断, 再进行傅里叶变换, 就可以得到该语音的短时谱。浊音的短时谱有两个特点: 第一, 有明显的周期性起伏结构, 这是因为浊音的激励源为周期脉冲气流;第二, 频谱中明显地有凸出点, 即“共振峰”, 它们的出现频率与声道的谐振频率相对应。清音的短时谱则没有这两个特点, 它十分类似于一段随机噪声的频谱。短时分析技术语音信号具有时变特性, 但在一个短时间范围内( 一般认为在1030ms 的短时间内) , 其特性基本保持不变, 即相对稳定, 因而可以将其看作是一个准稳态过程, 即语音信号具有短时平稳性。任何语音信号的分析和处理必须建立在“短时”的基础上, 即进行“短时分析”, 将语音信号分段来分析其特征参数,其中每一段称为一“帧”, 帧长一般取为1030ms。这样, 对于整体的语音信号来讲, 分析出的是由每一帧特征参数组成的特征参数时间序列。倒谱分析倒谱分析是指信号短时振幅谱的对数傅里叶反变换。它具有可近似地分离并提取出频谱包络信息和细微结构信息的特点。本文按照以下设计思路进行阐述: 录制采集语音信号, 对录制的信号进行采样; 绘制采样后语音信号的时域波形和频谱图, 设计滤波器, 并运用所设计的滤波器对采集的信号进行滤波, 绘制滤波后信号的时域波形和频谱。3.2 理论依据3.2.1 采样定理在进行模拟数字信号的转换过程中,当采样频率fs.max大于信号中最好频率fmax的2倍时,即:fs.max=2fmax,则采样之后的数字信号完整的保留了原始信号中的信息,一般实际应用中保证采样频率为信号最高频率的510倍,采样定理又称为耐奎斯特定理。1924年耐奎斯特(Nyquist)就推导出在理想低通信道的最高大码元传输速率的公式:理想低通信道的最高大码元传输速率=2W*log2N(其中W是理想低通信道的带宽,N是电平强度)3.2.2 采样频率采样频率是指计算机每秒采集多少个声音样本,是秒速声音文件的音质、音调、衡量声卡、声音文件的质量标准。采样频率越高,即采样的时间间隔越短,则在单位时间内计算机得到的声音样本数据就越多,对声音波形的表示也越精确。采样频率与声音频率之间有一定的关系,根据耐奎斯特理论,只有采样频率高于声音信号的最高频率两倍时,才能把数字信号表示的声音还原成为原来的声音。这就是说采样频率是衡量声卡采集、记录和还原声音文件的质量标准。3.2.3 采样位数与采样频率采样位数即采样值或取样值,用来衡量声音波动变化的参数,是指声卡在采集和播放声音文件时所使用数字声音信号的二进制位数。采样频率是指录音设备在一秒钟内对声音信号的采集次数,采样频率越高,声音的还原就越真实越自然。采样位数和采样频率对于音频接口来说事最为重要的两个指标,也是选择音频接口的两个重要标准。无论采样频率如何,理论上来说采样的位数决定了音频数据的最大力度范围。每增加一个采样位数,相当于力度范围增加了6dB。采样位数越多则捕捉到的信号越精确。对于采样率来说你可以想象它类似于一个照相机,44.1kHz意味着音频流进入计算机时计算机每秒会对其拍照达到441000次。显然采样频率越高,计算机摄取的图片越多,对于原始音频的还原也越加精确。3.3 语音信号分析及处理方法3.3.1 语音的录入与打开 在MATLAB中,y,fs,bits=wavread(Blip,N1 N2);用于读取语音,采样值放在向量y中,fs表示采样频率(Hz),bits表示采样位数。N1 N2表示读取从N1点到N2点的值(若只有一个N的点则表示读取前N点的采样值)。sound(x,fs,bits); 用于对声音的回放。向量y则就代表了一个信号(也即一个复杂的“函数表达式”)也就是说可以像处理一个信号表达式一样处理这个声音信号。3.3.2 时域信号的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章 滤波器的设计4.1 滤波器的简介按所处理的信号分为模拟滤波器和数字滤波器两种,按所通过信号的频段分为低通、高通、带通和带阻滤波器四种,按所采用的元器件分为无源和有源滤波器两种。与模拟滤波器相对应,在离散系统中广泛应用数字滤波器。它的作用是利用离散时间系统的特性对输入信号波形或频率进行加工处理。或者说,把输入信号变成一定的输出信号,从而达到改变信号频谱的目的。数字滤波器一般可以用两种方法来实现:一种方法是用数字硬件装配成一台专门的设备,这种设备称为数字信号处理机;另一种方法就是直接利用通用计算机,将所需要的运算编成程序让通用计算机来完成,即利用计算机软件来实现。数字滤波器一词出现在60年代中期。由于电子计算机技术和大规模集成电路的发展,数字滤波器已可用计算机软件实现,也可用大规模集成数字硬件实时实现。 数字滤波器是一个离散时间系统(按预定的算法,将输入离散时间信号转换为所要求的输出离散时间信号的特定功能装置)。应用数字滤波器处理模拟信号时,首先须对输入模拟信号进行限带、抽样和模数转换。数字滤波器输入信号的抽样率应大于被处理信号带宽的两倍,其频率响应具有以抽样频率为间隔的周期重复特性,且以折叠频率即12抽样频率点呈镜像对称。为得到模拟信号,数字滤波器处理的输出数字信号须经数模转换、平滑。数字滤波器具有高精度、高可靠性、可程控改变特性或复用、便于集成等优点。数字滤波器在语言信号处理、图像信号处理、医学生物信号处理以及其他应用领域都得到了广泛应用。 数字滤波器有低通、高通、带通、带阻和全通等类型。它可以是时不变的或时变的、因果的或非因果的、线性的或非线性的。应用最广的是线性、时不变数字滤波器,以及FIR滤波器。从滤波器的网络结构或者从单位脉冲响应分类:可分为IIR滤波器(即无限长单位冲激响应滤波器)和FIR滤波器(即有限长单位冲激响应滤波器)。它们的函数如公式4-1,公式4-2所示: (4-1) (4-2)式(4-1)中的H (z)称为N阶IIR滤波器函数,式(4-2)中的H (z)称为(N-1)阶FIR滤波器函数。IIR数字滤波器的系统函数可以写成封闭函数的形式。 IIR数字滤波器采用递归型结构,即结构上带有反馈环路。IIR滤波器运算结构通常由延时、乘以系数和相加等基本运算组成,可以组合成直接型、正准型、级联型、并联型四种结构形式,都具有反馈回路。由于运算中的舍入处理,使误差不断累积,有时会产生微弱的寄生振荡。 IIR数字滤波器在设计上可以借助成熟的模拟滤波器的成果,如巴特沃斯、契比雪夫和椭圆滤波器等,有现成的设计数据或图表可查,其设计工作量比较小,对计算工具的要求不高。在设计一个IIR数字滤波器时,我们根据指标先写出模拟滤波器的公式,然后通过一定的变换,将模拟滤波器的公式转换成数字滤波器的公式。 IIR数字滤波器的相位特性不好控制,对相位要求较高时,需加相位校准网络。 在MATLAB下设计IIR滤波器可使用Butterworth函数设计出巴特沃斯滤波器,使用Cheby1函数设计出契比雪夫I型滤波器,使用Cheby2设计出契比雪夫II型滤波器,使用ellipord函数设计出椭圆滤波器。下面主要介绍前两个函数的使用。 与FIR滤波器的设计不同,IIR滤波器设计时的阶数不是由设计者指定,而是根据设计者输入的各个滤波器参数(截止频率、通带滤纹、阻带衰减等),由软件设计出满足这些参数的最低滤波器阶数。在MATLAB下设计不同类型IIR滤波器均有与之对应的函数用于阶数的选择。 IIR单位响应为无限脉冲序列FIR单位响应为有限的 IIR幅频特性精度很高,不是线性相位的,可以应用于对相位信息不敏感的音频信号上; FIR幅频特性精度较之于IIR低,但是线性相位,就是不同频率分量的信号经过FIR滤波器后他们的时间差不变。这是很好的性质。 另外有限的单位响应也有利于对数字信号的处理,便于编程,用于计算的时延也小,这对实时的信号处理很重要。4.2 本次设计滤波器要求本次论文需要设计一个数字语音信号滤波器。我们知道,人可以感受到的语音频率范围为20Hz20000Hz,而语音信号的带宽是比较窄的。试验证明,能够较好的保持语音的清晰度,语音信号只要有500Hz3KHz的带宽就足够了,所以本次设计中,我们只需要设计带宽为500Hz3KHz的语音信号滤波器,即可实现所要求的功能。一方面,抑制了不需要的可闻音频信号,如低频噪声(交流感应噪声,电唱机唱盘噪声等),另一方面,也抑制了高频噪声(磁带噪声,无线电接收机中的啸叫声等)。从而改善语音信号的信噪比,提高语音清晰度。通过前文的介绍,我们也知道了,数字滤波器可以划分为FIR与IIR两种滤波器,而两种滤波器无论是在性能上,还是在设计方法上,都有很大区别。FIR滤波器可以对给定的频率特性直接设计,而IIR滤波器目前最通用的办法是利用已经很成熟的模拟滤波器的实际方法来进行设计。其中,IIR数字滤波器设计借助模拟滤波器原型,再将模拟滤波器转换成数字滤波器,这些过程已经成为一套成熟的设计程序。模拟滤波器设计已经有了一套相当成熟的方法,它不但有完整的设计公式,而且还有较为完整的图标以供查询,因此,充分利用这些已经有的资源,将会给数字滤波器的设计带来很大的方便。考虑到本设计需要用简单直接的方法设计一个语音信号滤波器,而IIR数字滤波器最大的优点是给定一组指标时,他的阶数要比相同组的FIR滤波器的低得多,故选择IIR数字滤波器。在讨论由模拟滤波器变换为数字滤波器时,普遍采用的是双线性变换法,它保留的是从模拟域到数字域的系统函数表示。同时,在IIR 型的滤波器的滤波器中,应用最广泛的便是Butterworth 滤波器。综上所述,本次方案是在MATLAB软件基础上,利用双线性变换法,设计一个巴特沃斯型IIR低通数字滤波器。第5章 方案论述5.1 方案总述此次“基于MATLAB的语音信号滤波器的设计与实现”课程设计要求要求自行采集语音信号后,在MATLAB软件平台进行频谱分析;并对所采集的语音信号加入干扰噪声,对加入噪声的信号进行频谱分析,设计合适的滤波器滤除噪声,恢复原信号。总体思路如图4-1所示。绘制采样后的语音信号时域波形和频谱对录制的信号进行采样录制采集语音信号分析设计滤波器构建干扰信号与合成 图4-1 语音信号的滤波流程图5.2 声音信号的录制和处理 利用WINDOWS自带的媒体录音工具录制长度适中的一段声音。保存文件时,利用计算机上的A/D转换,把声音信号由模拟信号转换成离散量化的数字信号(放音时,再通过A/D转换器转换成模拟声音信号)。然后在MATLAB中,调入此声音文件,再利用函数Wavread对已录制的语音信号进行采样,然后对语音信号进行频谱分析。噪音信号的生成,需要自行在在MATLAB中人为设计一个干扰信号(如高斯噪声),运用MATLAB软件对语音信号和干扰信号进行合成。5.3 滤波器的设计滤波器的设计是本次设计的重点,也是难点所在。数字滤波器分为FIR滤波器和IIR滤波器。采用软件设计来实现,主要方法有脉冲响应不变法,双线性变换法,窗函数法。本设计是用双线性变换法设计一个低通滤波器。通过对语音信号的数据分析,对滤波器的参数性能设定,可以成功滤除干扰信号,从而利用软件仿真完成硬件滤波器的功能。设计时要考虑滤波器的类型,阶数,截止频率,衰减幅度等。第6章 方案实现6.1 语音信号采集在本论文中,需要一个相对无噪声的语音信号来进行与固定频率的噪声信号的合成,并对合成后信号通过语音滤波器进行滤波处理。由于绝对无噪声的语音信号是不存在的,所以现在使用PC机在相对安静无噪声的环境下录取一段语音信号来作为相对无噪声的语音信号。在一台装有MATLAB的多媒体PC机上,利用PC 机上的声卡和WINDOWS 操作系统中的录音软件就可以进行语音信号的采集(即录音)。在PC机上加一个语言输入设备(麦克风),接着在WINDOWS的桌面上依次点击:【开始】、【所有程序】、【附件】、【录音机】,启动录音机,然后单击录音键,对麦克风大声地说出“安徽工程大学”录制一段长度适中的语音信号。完成后停止录音,屏幕左侧将显示所录声音的长度。点击放音按钮,可以实现所录音的重现。并将其保存于计算机硬盘上,保存为“ZY.wav”。6.2 语音信号分析6.1.1 原信号分析打开MATLAB软件,对无噪声语音信号进行时域和频域的定性分时析。在MATLAB中,导入此语音信号,利用函数Wavread对已录制的语音信号进行采样。通过对信号的采样,得到了声音数据变量X,同时把X的采样频率Fs=8000Hz和数据位Nbit=8bit 放进MATLAB工作空间,然后对语音信号进行频谱分析。程序如下:fs = 8000 ; %给出抽样频率Nbits = 8 ; %放入数据位 x ,fs ,Nbits = wavread (ZY.wav) ; %把语音信号进行加载入Matlab 仿真软件平台中figure(1);subplot(121);stem(x) ;title (语音信号的时域波形图) ;下图所示图6-1就是相对无噪声的语音信号的时域波形。从图中可以看出在时域环境下,该信号呈现出了6个不规则的信号波峰。 图6-1 原语音信号时域波形然后对原信号进行频域分析,通过下面的MATLAB程序,对原信号进行FFT变换。程序如下:n = length (x) ; %求出语音信号的长度x1 = fft (x ,n) ; %傅里叶变换x2 = fftshift (x1) ; %对频谱图进行平移f1 = 0 :fs/ n :fs * (n - 1) / n ;%得出频点figure(1);subplot(122);plot (f1 ,abs(x2) ) ;title (语音信号的频谱图) ;pause;sound(x ,fs) ;%对加载的语音信号进行回放pause;信号频谱图如下图6-2所示 图6-2 原语音信号频域波形可以看出该相对无噪声的语音信号在3500Hz与4500HZ时达到了高峰,在3000Hz5000Hz范围内比较集中。6.1.2 噪音信号合成和分析本次设计中,加入的噪音信号为高斯噪音信号MATLAB中产生高斯白噪声非常方便,可以直接应用两个函数,一个是WGN,另一个是AWGN。WGN用于产生高斯白噪声,AWGN则用于在某一信号中加入高斯白噪声。利用函数y = awgn(x,SNR) 在信号x中加入高斯白噪声。然后对于合成后的信号进行时域和频域分析。程序如下:fs = 8000 ; %给出抽样频率Nbits = 8 ; %放入数据位x,fs,Nbits = wavread (ZY.wav) ; %把语音信号进行加载入Matlab 仿真软件平台中y = awgn(x,0) %在原信号x中加入高斯噪声yfigure(1);subplot(121);stem(y) ;title (语音信号的时域波形图) ;合成后信号y的时域波形图如图6-3所示。从图中可知,原信号6个比较明显的波峰已经不见,整个含噪音的信号波峰与波谷不再明显,波形图起伏不大,趋于平稳。 图6-3 含噪音的语音信号时域波形图对合成后的语音信号进行频域分析,程序如下:n = length (y) ; %求出语音信号的长度x1 = fft (y ,n) ; %傅里叶变换x2 = fftshift (x1) ; %对频谱图进行平移f1 = 0 :fs/ n :fs * (n - 1) / n ;%得出频点figure(1);subplot(122);plot (f1 ,abs(x2) ) ;title (语音信号的频谱图) ;pause;sound(y ,fs) ;%对加载的语音信号进行回放pause;合成后的语音信号频域波形图如图6-4所示。 图6-4 合成后的语音信号频域波形图6.3 数字滤波器的设计本设计是用双线性变换法设计Butterworth低通型滤波器。滤波器的设计指标参数主要有p,p,s和s。其中p和s分别称为通带边界频率和阻带截止频率,p称为通带最大衰减(即通带0,p中允许A()的最大值),s称为阻带最小衰减(即阻带S上允许A()的最小值),p和s的单位为dB。以上指标如图6-5所示。 图6-5 模拟低通滤波器的设计指标参数程序如下:fs = 8000 ; %给出抽样频率Nbits = 8 ; %放入数据位x,fs,Nbits = wavread (ZY.wav) ; %把语音信号进行加载入Matlab 仿真软件平台中y= awgn(x,0) %在原信号x中加入高斯噪声yb,a=butter(8,0.707);z=filter(b,a,x); figure(1);subplot(121);stem(z) ;title (语音信号的时域波形图) ;n = length (z) ; %求出语音信号的长度x1 = fft (z ,n) ; %傅里叶变换x2 = fftshift (x1) ; %对频谱图进行平移f1 = 0 :fs/ n :fs * (n - 1) / n ;%得出频点figure(2);subplot(122);plot (f1 ,abs(x2) ) ;title (语音信号的频谱图) ;下图分别为滤波后语音信号时域波形图与频域波形图:图6-6 滤波后语音信号时域波形图 图6-7 滤波后语音信号频域波形图6.4 结果分析对比两个语音信号的时域波形图和频谱图,以便更好的进行比较和分析。由此得出的对比图像如下图6-8,图6-9所示。(a) 原信号时域波形图 (b)滤波后信号时域波形图 图6-8 语音信号时域对比图 (a) 原信号频谱图 (b) 滤波后信号频谱图 图6-9 语音信号频域对比图 结论与展望至此,本论文已经基本完成,在本次课程设计中,完成了以下内容:1 本次设计较好的完成了对语音信号的录制和合成,同时利用MATLAB软件对其进行时域和频域的分析,得出了信号的时域图和频域图。2 本次设计也比较好的利用MATLAB软件模拟了一个低通滤波器,对录制的语音信号进行处理,分析比较结果,与课题要求基本相符。3 在对语音信号的滤波这一方面,本次设计主要是从Butterworth型IIR(无限长脉冲响应)低通滤波器入手来设计数字滤波器,并且也基本实现了滤波器的功能。语音信号处理是语音学与数字信号处理技术相结合的交叉学科,课题在这里不讨论语音学,而是将语音当做一种特殊的信号,即一种“复杂向量”来看待。也就是说,课题更多的还是体现了数字信号处理技术。本次课程设计中,体现了数字信号处理技术在某一实际领域中的应用这一实例,这里就是指对语音的处理。作为存储于计算机中的语音信号,其本身就是离散化了的向量,我们只需将这些离散的量提取出来,就可以对其进行处理了。课题的特色在于它将语音看作了一个向量,于是语音数字化了,则可以完全利用数字信号处理的知识来解决。我们可以像给一般信号做频谱分析一样,来给语音信号做频谱分析,也可以较容易的用数字滤波器来对语音进行滤波处理。本文研究了基于MATLAB下的IIR滤波器的设计实现、进行了数字信号处理、数字信号处理中的滤波器设计,对数字信号分别进行了时域分析和频域分析并且对之进行了滤波处理,取得了显著的效果。在这里,用到了处理数字信号的强有力工具MATLAB,通过MATLAB里几个命令函数的调用,很轻易的在实际化语音与数字信号的理论之间搭了一座桥。利用MATLAB强大的运算和作图功能来设计数字滤波器,使原来繁琐的程序设计简化成函数的调用。以数字滤波器为例,分别从时域和频域详细地分析了语音信号的特性,并以MATLAB的声音处理函数设计了一组语音滤波的程序。只要以正确的指标参数调用相应的滤波器设计程序或工具箱函数,便可以得到正确的设计结果,使用非常方便,这有利于学生理解算法的意义,有利于激发学生的学习兴趣,从而引发学生对数字信号处理算法的进一步思考。 该方法很容易扩展到语音的其它处理。所以MATLAB已成为数字滤波器研究与应用的一个直观、高效、便捷的利器。综上所述,利用Matlab的信号处理工具箱能够方便快捷地设计和实现各种滤波器,这对于信号的传输和处理有着极其重要的作用。致 谢通过几个月的努力,在不断的学习与实践下,现在本次设计已经完成。在此之际,本人要特别感谢在此次设计写作的过程中给予我帮助的人们。首先感谢我本次的论文指导老师赵发老师,在这几个月中,赵发老师不断的帮助丰富我的理论知识,给我讲解论文设计的经验,帮助我完善设计方案。正是因为有了他的细心解答与耐心辅导帮助,才使我在遇到困难时能够顺利的度过,使本次的设计进一步的发展,使设计有一个质的飞跃,进一步的升华。然后感谢我的同学们,特别是周照同学,他们在我完成本次课程设计的过程中,不断的帮助我搜集资料,共同帮我讨论设计方案,帮助我解决设计中所遇到的种种难题,总之,在学习生活各个方面给于我无微不至的帮助。有了他们的帮助,我才能更好的学习生活,更好的完成我的本次设计。再次感谢你们,有了你们的帮助,我才能顺利的完成这篇设计。谢谢你们!以后的生活中,我也一定会更加努力的!谢谢! 作 者: 日 期: 2010 年 6 月 16 日参考文献1 刘敏,魏玲. Matlab 通信仿真与应用【M】. 北京: 国防工业出版社, 2001 .2 楼顺天, 刘小东, 李博菡.基于Matlab7.x 的系统分析与设计【J】.信号处理. 西安: 西安电子科技大学, 2005.3 陈怀深. MATLAB及其在理工课程中的应用指南【M】.西安:西安交通大学出版社,1998.4 程佩青. 数字信号处理教程【M】.北京: 清华大学出版社,2002.5 朱芳.用MATLAB设计自适应低通滤波器【J】.吉林水利学报,2002,5(5):35-386 Fisk, C. Some developments in equilibrium traffic assignment【J】. Transportation Research B, 1980,14(3): 243-255.7 徐明远,邵玉斌.MATLAB仿真在通信与电子工程中的应用【M】.西安:西安电子科技大学出版社,20058 Dial, R.B. A probabilistic multipath assignment model whichobviates path enumeration 【J】. Transportation Research,1971( 5) : 83-111.9 雷学堂,徐火希.可直接感受的基于MATLAB的语音滤波【J】.合肥学院学报【自然科学版】,2006(3):48-5210 于润伟. MATLAB基础及应用【M】. 北京:机械工业出版社,2003.911 王世一编著.数字信号处理【M】.北京:北京理工大学出版社,2003.2,重版12 Heinz Spiess, Michael Florian. Optimal strategies : A New Assignment Model for Transit Networks 【J】.Transportation Research Part B,1989,23(2):83-102.13 SORIAE,CALPEJ,CHAMBERSJ,etal.conver2gence analysis of a variable step-size normalized LMS adap tive filter algorithm【J】.IEEE Transact ions on Education,2004,47(1):127-13314 衷小平,王艳芳,史良.基于MATLAB的数字信号处理课程的实验教学【J】.上海:实验室研究与探索,2002(2):58-6015 赵红怡,张长年.数字信号处理及其MATLAB实现【M】.北京:化学工业出版社,工业装备与信息工程出版中心,2002:68-6916 陈桂明,张明照,戚红雨. 应用MATLAB语言处理数字信号与数字图像【M】.北京:科学出版社,2

温馨提示

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

评论

0/150

提交评论