语音信号的噪声分析及滤波的过程研究
语音识别技术的噪声消除方法研究

语音识别技术的噪声消除方法研究随着语音识别技术的迅猛发展,我们生活中越来越多的场景需要用到语音交互,例如语音助手、智能家居和汽车语音控制等。
然而,实际应用中常常存在噪声干扰,这会显著影响语音识别系统的准确性和稳定性。
因此,研究如何消除噪声对于提高语音识别系统的性能至关重要。
噪声消除是一种利用信号处理技术从噪声污染的语音信号中提取出干净语音信号的方法。
在语音识别领域,噪声消除算法有助于提高语音信号的质量,并显著提升语音识别系统的性能。
本文将介绍几种常用的语音识别技术的噪声消除方法。
一. 频域噪声消除方法频域噪声消除方法是一种常见的噪声消除方法,它利用语音信号和噪声信号在频域上的差异,通过滤波和谱减法等技术来减少噪声对语音的干扰。
1. 滤波法滤波法通过设计数字滤波器,将语音信号和噪声信号进行滤波,从而达到消除噪声的效果。
常用的滤波器设计方法有无限脉冲响应滤波器(IIR)和有限脉冲响应滤波器(FIR)。
滤波法可以有效地降低噪声的能量,但在某些情况下会对语音信号的频谱造成畸变。
2. 谱减法谱减法是一种常用的噪声消除方法,它通过对语音信号的频谱进行分析和处理,将噪声频谱从语音频谱中减去,从而得到较为清晰的语音信号。
谱减法包括短时傅里叶变换(STFT)和谱减。
二. 时域噪声消除方法时域噪声消除方法是基于时域分析的噪声消除方法,它通过对语音信号的时域特征进行处理,减少噪声的干扰。
1. 统计模型法统计模型法是一种常见的时域噪声消除方法,它利用语音信号和噪声信号之间的统计特性进行建模和分析。
常见的统计模型包括高斯混合模型(GMM)和隐马尔可夫模型(HMM)。
统计模型法可以通过对语音信号和噪声信号之间的统计特性进行建模,从而减少噪声对语音的干扰。
2. 线性预测法线性预测法是一种基于线性预测分析的噪声消除方法,它通过对语音信号的线性预测系数进行分析和处理,减少噪声的干扰。
线性预测法包括自相关法和自适应线性预测法。
三. 混合域噪声消除方法混合域噪声消除方法是将时域和频域噪声消除方法相结合的一种噪声消除方法,它利用了时域和频域上的信息来提高噪声消除效果。
通信工程专业本科毕业论文语音信号去噪——数字滤波器的设计

语音信号去噪 ——数字滤波器的设计摘要:在现代各种通信系统中,由于自然界中的各种各样的复杂噪声不免会掺杂在其中,数字信号处理这门经典学科恰好能够解决这个问题,其中最通用的方法就是利用滤波器来滤除这些杂波噪声,FIR 数字滤波器就是滤波器设计的基本部分。
本论文研究的主要内容就是基于Matlab 软件仿真设计一个数字滤波器,将掺杂在语音信号中的高频噪音消除,在此将分析消除高频噪音前后语音信号的时域及频域特性,对比分析即可验证滤波前后特性差别。
在本课题中,将利用简单的窗函数法来设计FIR 数字滤波器,通过Matlab 仿真说明所设计滤波器的正确性。
仿真说明所设计滤波器的正确性。
通过这次毕业设计,通过这次毕业设计,将会进一步理解语音信号原理分析及滤波处理,为更好的设计滤波器打好基础。
波处理,为更好的设计滤波器打好基础。
关键词:Matlab ;窗函数法;FIR 数字滤波器数字滤波器 Remove noise in the speech signal ————the design of digital filter the design of digital filter Abstract :In modern communication systems, a variety of complex noise may mix in the nature of sounds. The classic disciplines of the digital signal processing can solve this problem, one of the most common method is to use a filter to filter those clutter noise. FIR digital filter is the basic part part of of of filter filter filter design. design. The The main main main research research research content content content of of of this this this paper paper paper is is is based based based on on on Matlab Matlab Matlab software software software simulation simulation simulation to to design a digital filter, in which to cancel the high frequency noise of the speech signal, then it will eliminate the high high frequency frequency frequency noise noise noise and and and the the the speech speech speech signals signals signals from from from time time time domain domain domain and and and frequency frequency frequency domain domain domain characteristics characteristics characteristics in in in this this analysis analysis before before before and and and after, after, after, and and and analysis analysis analysis the the the differences differences differences test test test the the the filtering filtering filtering characteristics. characteristics. characteristics. In In In this this this issue, issue, issue, using using using a a simple simple window window window function function function method method method to to to design design design a a a FIR FIR FIR digital digital digital filter, filter, filter, Matlab Matlab Matlab simulation simulation simulation shows shows shows the the the correct correct correct of of of the the designed filter. Through the design of this graduation design, we will understand the principle of speech signal analysis and filtering, and lay the foundation for the filter design.Key words: Matlab; window function method; FIR digital filter 作 者指导教师目录1 引言................................................................................................................................................ 31.1 课题研究现状课题研究现状 ....................................................................................................................... 31.2 课题研究目的课题研究目的 ....................................................................................................................... 31.3 课题研究内容课题研究内容 ....................................................................................................................... 31.4 MA TLAB软件设计平台简介 .............................................................................................. 4 2 原始语音信号采集与处理原始语音信号采集与处理 .............................................................................................................. 52.1 课题设计步骤及流程图课题设计步骤及流程图 ...................................................................................................... 52.2 语音信号处理语音信号处理 ....................................................................................................................... 52.2.1 语音信号的采集语音信号的采集 .......................................................................................................... 52.2.2 语音信号的时域频谱分析语音信号的时域频谱分析 .......................................................................................... 62.2.3 语音信号加噪与频谱分析语音信号加噪与频谱分析 .......................................................................................... 8 3 FIR数字滤波器的设计数字滤波器的设计 (10)3.1 数字滤波器基本概念数字滤波器基本概念 (10)3.2 常用窗函数介绍常用窗函数介绍 (10)3.3 FIR数字滤波器概述数字滤波器概述 (10)3.4 FIR滤波器的窗函数设计滤波器的窗函数设计 (11)3.5 滤波器的编程实现滤波器的编程实现 (13)3.6 用滤波器对加噪语音信号进行滤波用滤波器对加噪语音信号进行滤波 (14)3.7 回放语音信号回放语音信号 (16)4 结论 (17)致谢 (18)参考文献 (19)参考文献20世纪60年代中期数字信号处理领域形成的诸多富有实践性的的理论和算法,如快速傅立叶变换(FFT )以及各种数字滤波器等是语音信号数字处理的各项理论和技术基础。
含噪声的语音信号分析与处理设计

含噪声的语音信号分析与处理设计随着科技的发展,语音信号的分析与处理在音频处理、语音识别、交互设计等领域中得到了广泛应用。
然而,由于实际环境条件的影响,语音信号常常受到噪声的干扰,导致信号质量下降。
因此,对含噪声的语音信号进行分析与处理设计成为一个重要的研究课题。
本文将从语音信号分析、噪声分析以及处理方法三个方面对含噪声的语音信号进行分析与处理设计。
首先,语音信号分析是语音处理的基础,通过分析语音信号的频率、幅度和时域特性等可以更好地了解信号的特点,从而为后续的噪声分析与处理提供基础。
语音信号通常由基频、共振峰和噪声组成,而噪声是导致语音信号质量下降的主要原因之一、因此,理解和提取语音信号中的基频和共振峰等特征参数,可以帮助我们更好地去除噪声。
在语音信号分析中,常用的方法包括短时傅里叶变换(STFT)、自相关函数(RAF)以及线性预测编码(LPC)等。
其次,噪声分析是对噪声的特性进行分析,掌握噪声特征对于噪声的抑制和处理至关重要。
常见的噪声类型包括白噪声、脉冲噪声、环境噪声等,它们的特点各不相同。
通过对噪声的分析,可以确定适当的噪声模型,为后续的噪声抑制算法提供基础。
噪声分析方法包括谱分析、相关性分析以及统计特性分析等。
最后,针对含噪声的语音信号进行处理,目的是降低噪声对语音信号的干扰,提高语音信号的质量。
噪声抑制是含噪声语音信号处理中的一项重要任务,主要分为基于时域和频域的方法。
时域方法包括Wiener滤波器、语音活性检测和语音增强等;频域方法主要包括基于短时傅里叶变换的声纹估计法、频率掩蔽法和频谱减法法等。
此外,还可以通过使用降噪算法、特征选择和分类器训练等方法来提高语音信号的鲁棒性。
综上所述,含噪声的语音信号分析与处理设计是一个复杂而关键的问题,需要综合考虑语音信号的特点和噪声的特性,并选择合适的方法进行处理。
通过合理的信号分析和噪声分析,结合有效的处理方法和算法,可以实现对含噪声的语音信号的准确分析和高效处理,从而提高语音信号的质量和应用效果。
含噪声的语音信号分析与处理设计

含噪声的语音信号分析与处理设计在现实生活中,我们常常会面临到含有噪声的语音信号,这些噪声可能来自于环境、设备或者通信等因素。
对于这种含噪声的语音信号,我们需要进行分析与处理,以提高语音信号的质量和可理解性。
首先,在进行语音信号的分析与处理之前,我们需要先对其进行预处理。
预处理的目的是减小噪声的影响,使得后续分析与处理更加精确和有效。
常用的预处理方法有:1.噪声估计和建模:通过对含噪声语音信号进行噪声估计和建模,可以获得噪声的统计特性和模型参数,为后续处理提供基础。
2.降噪滤波:根据噪声模型和估计结果,设计合适的降噪滤波算法,将信号中的噪声成分减小或者消除,以提高语音信号的清晰度和可理解性。
3.音频增益调整:对语音信号进行音量调整,以使得信号在放大的过程中不会引入过多的噪声。
分析与处理的主要目标是提取出有用的语音特征,如声音的音素、音调、语速等信息,以实现语音识别、语音合成等应用。
常用的分析与处理方法有:1.特征提取:通过应用信号处理和模式识别技术,提取语音信号中的关键特征,如短时能量、短时平均过零率、MFCC等。
这些特征可以反映出语音信号的频谱特性和时域特性。
2.去除噪声和失真:通过使用降噪算法和滤波算法,去除语音信号中的噪声和失真,使得信号更加清晰和准确。
3.语音识别与分割:通过使用语音识别技术,将语音信号转化为文字,实现自动语音识别。
同时,根据语音信号中的静音段和非静音段的特征,对语音信号进行分割,以提取出单词和句子。
4.语音合成与转换:通过使用声学模型和语言模型,将文字转化为语音信号,实现自动语音合成。
同时,可以通过修改声学模型中的参数,实现说话人的转换和风格的改变。
最后,在进行语音信号分析与处理时,还需要注意以下几个问题:1.信号与噪声的属性:不同环境和设备产生的噪声具有不同的统计特性和功率分布,对于不同类型的噪声,需要采用不同的噪声估计和降噪方法。
2.降噪算法与语音质量:降噪算法在减小噪声的同时,也可能会引入一定的失真和伪声。
语音信号去噪方法及其在语音识别中的应用

语音信号去噪方法及其在语音识别中的应用语音信号在现实应用中经常遭受各种干扰与噪声,这些噪声会影响语音信号的品质,进而引起语音识别失效。
因此,语音信号去噪就成为了语音领域研究的一个重要方向。
本文将介绍几种比较常见的语音信号去噪方法及其在语音识别中的应用。
一、基于频域的去噪方法基于频域的去噪方法是将语音信号从时域转换为频域,利用频域特征对语音信号进行分析和处理。
这种方法常见的去噪算法有傅里叶变换(FFT)、短时傅里叶变换(STFT)等。
在去噪过程中,可以将频率范围内的干扰信号过滤掉,提高语音信号的信噪比。
还可以通过时域窗函数和滤波技术来实现。
基于频域的去噪方法在语音信号的短时处理和实时处理方面有着广泛的应用。
例如,在电话通信领域中,许多手机厂商都采用了该方法来实现语音通话的降噪功能。
此外,基于频域的去噪方法还可以应用在语音识别、音频编码解码等方面。
二、基于时域的去噪方法基于时域的去噪方法通常是在时域上对语音信号进行操作,在信号的各个时间点进行处理。
最常见的方法是利用数字滤波器滤除干扰信号。
而且,这种方法对于较复杂的噪声类型如白噪声来说效果较好。
基于时域去噪方法在语音识别领域中也有着广泛的应用。
例如,在话者识别中,对于前景音(说话之声)和背景音(其他噪声)的分离,就可以使用基于时域的方法。
而且,与基于频域的方法相比,基于时域的方法具有更高的计算效率。
三、基于统计学的去噪方法基于统计学的去噪方法主要是利用概率统计模型来对语音信号进行建模,从而减去噪声所带来的影响。
例如,高斯混合模型(GMM)和鲍姆-韦尔奇滤波(BWF)算法就是基于此理论出现的去噪方法。
基于统计学的去噪方法在语音识别的前期处理中也有着广泛的应用。
其中,利用GMM对语音信号模拟,在语音信号的特征提取中占据着重要的地位。
而且,鲍姆-韦尔奇滤波器算法可以将语音信号的噪声部分去除,提高识别率。
综合而言,语音信号去噪是一个非常重要的研究领域,已经在很多应用场景中得到了广泛的应用。
语音降噪处理技术的研究

语音降噪处理技术的研究语音降噪处理技术的研究引言:随着科技的不断发展和人们对通信质量的要求不断提高,语音降噪处理技术成为了当前研究的热点之一。
语音降噪处理技术旨在降低语音信号中的噪声干扰,提高语音的清晰度和可懂性。
本文将探讨语音降噪处理技术的研究现状、方法和应用。
一、研究现状1. 传统语音降噪处理方法传统的语音降噪处理方法主要基于统计模型和滤波技术。
其中,统计模型方法主要有高斯混合模型 (GMM) 和隐马尔科夫模型(HMM) 等,它们通过对语音信号中的噪声进行建模,然后使用最大后验概率 (MAP) 或最大似然估计 (MLE) 等方法进行降噪。
滤波技术则是通过设计滤波器来消除语音信号中的噪声,常见的滤波器包括陷波滤波器、带通滤波器和自适应滤波器等。
2. 基于机器学习的语音降噪处理方法近年来,随着机器学习技术的飞速发展,越来越多的研究者开始应用机器学习方法来进行语音降噪处理。
其中最为常见的方法包括主成分分析 (PCA)、独立成分分析 (ICA)、支持向量机(SVM) 和深度学习等。
这些方法通过从大量的训练数据中学习语音信号的特征,然后利用这些特征进行降噪处理,取得了较好的效果。
二、方法1. 频域方法频域方法是一种常用的语音降噪处理方法。
其基本思想是将语音信号从时域转换到频域,然后通过对频域信号进行滤波来降低噪声干扰。
常见的频域方法包括快速傅里叶变换 (FFT)、小波变换和自适应滤波等。
2. 时域方法时域方法是另一种常用的语音降噪处理方法。
其基本思想是利用时域的相关性和自相关性等特征来进行降噪处理。
常见的时域方法包括自相关函数法、线性预测法和短时能量法等。
三、应用语音降噪处理技术广泛应用于各种语音通信系统中,如手机通话、会议系统、语音识别系统等。
在手机通话中,语音降噪处理技术能有效提高语音的清晰度,降低通话质量受噪声影响的程度;在会议系统中,语音降噪处理技术能够从复杂的环境中过滤出语音信号,使会议讨论更为高效;在语音识别系统中,语音降噪处理技术能够提高语音的信噪比,减少识别错误的发生。
实验三 语音信号的滤波处理

实验三 语音信号的滤波处理一、实验目的通过对语音信号的滤波处理,掌握信号频谱的计算、滤波方法,实现从频域上分离不同特点的信号,从而达到滤除信号中的干扰、降低噪声、以及分离男声和女声的目的。
二、实验原理1. 信号的和、积运算信号和与积运算是指信号相加与相乘。
这类运算较为简单。
需要注意的是,必须将同一瞬间的两个函数值相加或相乘。
在图1中,将()x t 视为缓慢波动的信道噪声,()g t 视为要传输的数字信号,则()()x t g t +表示了实际发送的数字信号,()()x t g t ⋅表示了信道噪声()x t 的取样输出信号。
tttt图1 信号的相乘与相加 图2 正弦信号与噪声相加 在实际应用中,最常见的是有用信号与噪声相加,这样的信号中,信号功率与噪声功率之比称为信噪比。
如图2所示是正弦信号、噪声信号的波形及两种信噪比下正弦信号与噪声相加的波形图。
然而有用信号是相对的,例如在语音信号中,正弦信号则是干扰信号,它同噪声一起,都是需要设法去掉的信号。
2. 信号的频谱计算实际应用中的信号绝大多数表现为振荡形式。
如图3所示是语音信号及其一个局部的波形图,可见该信号是一种振荡形式。
语音信号语音信号局部图3 语音信号的波形将复杂振荡分解为振幅不同和频率不同的正(余)弦振荡,这些谐振荡的幅值按频率排列的图形叫做频谱(幅度谱)。
广泛应用在声学、光学和无线电技术等方面。
它将对信号的研究从时域引到频域,从而带来更直观的认识。
在信号与系统中,采用FS、FT、DFS、DTFT等工具来计算信号的频谱。
实际信号的频谱往往比教材中的例子要复杂得多。
例如图4是图3所示语音信号的幅度谱,其中上图是fft()输出的结果,其表示的频率范围为0~f,下图s是中心频率在零频率处的幅度谱,它与教材中的表示方式一致。
应用FFT计算的幅度谱中心在零频率的幅度谱图4 语音信号的频谱3. 信号的理解本课程的教材中讲到了“信号的分类”、“典型信号(或常用信号)”等内容,这对于理解信号还远远不够。
基于LMS算法滤波的语音降噪研究

基于LMS算法滤波的语音降噪研究语音降噪是一项重要的音频信号处理技术,其应用广泛,包括通信、语音识别、语音合成等领域。
在实际应用中,由于环境噪声的存在,语音信号往往受到干扰,导致语音质量下降,因此需要采用降噪算法对语音信号进行处理以提高语音质量。
LMS算法(Least Mean Square)是一种常用的自适应滤波算法,具有较低的计算复杂度和快速的收敛速度,适用于实时语音降噪的应用场景。
本文将基于LMS算法对语音信号进行降噪研究。
LMS算法的基本原理是在时域上对输入信号进行滤波,通过不断调整滤波器的权值,使输出信号尽可能接近期望信号。
算法的核心思想是通过最小化误差信号的均方差来更新权值,从而逐步逼近最佳滤波器。
在语音降噪中,输入信号包括语音信号和噪声信号,我们的目标是将噪声信号滤除,保留语音信号。
通过加性噪声模型,我们可以得到语音信号和噪声信号的线性组合,即输入信号。
首先,我们需要对输入信号进行分帧处理,将长时间的信号划分为小的时间段,每段称为帧。
然后,对每一帧信号应用LMS算法进行降噪处理。
在LMS算法中,首先需要初始化滤波器的权值,可以随机选择一组初始权值。
然后,对每一帧信号,将输入信号输入到滤波器中得到输出信号,计算输出信号与期望信号之间的误差。
通过最小化误差信号的均方差,更新滤波器的权值,使输出信号逐步逼近期望信号。
重复这个过程,直到滤波器的权值收敛或达到最大迭代次数。
LMS算法有一定的优点,如计算复杂度较低、收敛速度较快。
然而,它也存在一些缺点。
首先,它对输入信号的统计特性要求较高,如果输入信号不满足高斯分布或平稳性的假设,则算法的性能可能会下降。
此外,LMS算法对于信噪比较低的情况效果较差,无法充分抑制噪声。
为了提高语音降噪的效果,可以采用改进的LMS算法或结合其他降噪算法。
例如,可以借鉴NLMS算法(Normalized LMS)对LMS算法进行改进,消除了对输入信号统计特性的依赖。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
电网络理论课程设计与报告题目:语音信号的噪声分析及滤波的过程研究一、语音信号的噪声分析及滤除一般过程选择一个语音信号作为分析的对象,或录制一段格式为 *.wav各人自己的语音信号,对其进行频谱分析;利用MATLAB中的随机函数产生噪声加入到语音信号中,模仿语音信号被污染,并对其进行频谱分析;设计数字滤波器,并对被噪声污染的语音信号进行滤波,分析滤波后信号的时域和频域特征,回放语音信号。
其流程图如下所示:二、音频信号、噪声的分析(一)、音频信号分析音频信号的频率范围在20Hz-20000Hz,是人耳可以听到的频率范围,超过这个范围的音频信号没有意义。
语音的频率范围在30-1000Hz之间。
(二)、噪声的产生噪声的来源一般有环境设备噪声和电气噪声。
环境噪声一般指在录音时外界环境中的声音,设备噪声指麦克风、声卡等硬件产生的噪声,电气噪声有直流电中包含的交流声,三极管和集成电路中的无规则电子运动产生的噪声,滤波不良产生的噪声等。
这些噪声虽然音量不大(因为在设备设计中已经尽可能减少噪声),但参杂在我们的语音中却感到很不悦耳,尤其中在我们语音的间断时间中,噪声更为明显。
三、A/D转换A/D转换可分为4个阶段:即采样、保持、量化和编码。
采样就是将一个时间上连续变化的信号转换成时间上离散的信号,根据奈奎斯特采样定理fsZZfh,如果采样信号频率大于或等于2倍的最高频率成分,则可以从采样后的信号无失真地重建恢复原始信号。
考虑到模数转换器件的非线性失真、量化噪声及接收机噪声等因素的影响,采样频率一般取2.5~3倍的最高频率成分。
要把一个采样信号准确地数字化,就需要将采样所得的瞬时模拟信号保持一段时间,这就是保持过程。
保持是将时间离散、数值连续的信号变成时间连续、数值离散信号,虽然逻辑上保持器是一个独立的单元,但是,实际上保持器总是与采样器做在一起,两者合称采样保持器。
图给出了A/D采样电路的采样时序图,采样输出的信号在保持期间即可进行量化和编码。
量化是将时间连续、数值离散的信号转换成时间离散、幅度离散的信号;编码是将量化后的信号编码成二进制代码输出。
到此,也就完成了A/D转换,这些过程通常是合并进行的。
例如,采样和保持就经常利用一个电路连续完成,量化和编码也是在保持过程中实现的。
四、通用串行总线(一)、USB总线的分析USB标准采用NRZI方式(翻转不归零制)对数据进行编码。
翻转不归零制(non-return to zero,inverted),电平保持时传送逻辑1,电平翻转时传送逻辑0。
USB 接头提供一组5伏特的电压,可作为相连接USB设备的电源。
实际上,设备接收到的电源可能会低于5V,只略高于4V。
USB规范要求在任何情形下,电压均不能超过5.25V;在最坏情形下(经由USB供电HUB所连接的LOW POWER 设备)电压均不能低于4.375V,一般情形电压会接近5V。
(二)、PCI总线PCI是由Intel公司1991年推出的一种局部总线。
从结构上看,PCI是在CPU和原来的系统总线之间插入的一级总线,具体由一个桥接电路实现对这一层的管理,并实现上下之间的接口以协调数据的传送。
管理器提供了信号缓冲,使之能支持10种外设,并能在高时钟频率下保持高性能,它为显卡,声卡,网卡,MODEM等设备提供了连接接口,它的工作频率为33MHz/66MHz。
五、语音信号杂音滤除的具体实现(一)、语音信号的采集利用PC 机上的声卡和WINDOWS 操作系统可以进行数字信号的采集。
将话筒输入计算机的语音输入插口上,启动录音机。
按下录音按钮,接着对话筒说话“语音信号处理”,说完后停止录音,屏幕左侧将显示所录声音的长度。
点击放音按钮,可以实现所录音的重现。
以文件名“speech”保存入X:\ MATLAB \ work 中。
可以看到,文件存储器的后缀默认为*.wav ,这是WINDOWS 操作系统规定的声音文件存的标准。
(二)、语音信号的时频分析利用MATLAB中的“wavread”命令来读入(采集)语音信号,将它赋值给某一向量。
再对其进行采样,记住采样频率和采样点数。
其格式是:y=wavread(file)功能是读取file所规定的wav文件,返回采样值放在向量y中。
接下来,对语音信号OriSound.wav进行采样。
其程序是[y,fs,nbits]=wavered (‘OriSound’); 把语音信号加载入Matlab 仿真软件平台中。
然后,画出语音信号的时域波形,再对语音信号进行频谱分析。
MATLAB提供了快速傅里叶变换算法FFT计算DFT的函数fft,其调用格式是Xk=fft(xn,N)。
参数xn为被变换的时域序列向量,N是DFT变换区间长度,当N大于xn的长度时,fft函数自动在xn后面补零。
,当N小于xn的长度时,fft函数计算xn的前N个元素,忽略其后面的元素。
在本次设计中,我们利用fft对语音信号进行快速傅里叶变换,就可以得到信号的频谱特性。
其程序如下:fs=22050;[y,fs,nbits]=wavread ('OriSound.wav');sound(y,fs,nbits); %回放语音信号N= length (y) ; %求出语音信号的长度Y=fft(y,N); %傅里叶变换subplot(2,1,1);plot(y);title('原始信号波形');subplot(2,1,2);plot(abs(Y));title('原始信号频谱')程序结果如下图:图1 原始信号波形及频谱(三)、语音信号加噪与频谱分析MATLAB中产生高斯白噪声非常方便,有两个产生高斯白噪声的两个函数。
我们可以直接应用两个函数:一个是WGN,另一个是AWGN。
WGN用于产生高斯白噪声,AWGN则用于在某一信号中加入高斯白噪声。
也可直接用randn函数产生高斯分布序列。
在本次课程设计中,用MATLAB中的随机函数(rand或randn)产生噪声加入到语音信号中,模仿语音信号被污染,并对其频谱分析。
Randn函数有两种基本调用格式:Randn(n)和Randn(m,n),前者产生n×n服从标准高斯分布的随机数矩阵,后者产生m×n的随机数矩阵。
在这里,用Randn(m,n)函数。
语音信号添加噪声及其频谱分析的主要程序如下:[y,fs,nbits]=wavread ('OriSound.wav');N = length (y) ; %求出语音信号的长度Noise=0.01*randn(n,2); %随机函数产生噪声Si=y+Noise; %语音信号加入噪声sound(Si);subplot(2,1,1);plot(Si);title('加噪语音信号的时域波形');S=fft(Si); %傅里叶变换subplot(2,1,2);plot(abs(S));title('加噪语音信号的频域波形');程序结果如下图:图2 加噪后的波形及频谱分析六、数字滤波器设计滤波器设计方法有间接法和直接法,间接法是借助于模拟滤波器的设计方法进行的。
其设计步骤是:先设计过渡模拟滤波器得到系统函数H(s),然后将H (s)按某种方法转换成数字滤波器的系统函数H(z)。
间接法,常用的方法有窗函数法、频率采样等。
具体设计步骤如下:(1)确定所需类型数字滤波器的技术指标。
(2)将所需类型数字滤波器的边界频率转换成相应的模拟滤波器的边界频率,转换公式为Ω=2/T tan(0.5ω)(3)将相应类型的模拟滤波器技术指标转换成模拟低通滤波器技术指标。
(4)设计模拟低通滤波器。
(5)通过频率变换将模拟低通转换成相应类型的过渡模拟滤波器。
(6)采用双线性变换法将相应类型的过渡模拟滤波器转换成所需类型的数字滤波器。
脉冲响应不变法的主要缺点是会产生频谱混叠现象,使数字滤波器的频响偏离模拟滤波器的频响特性。
原则是在保证阻带衰减满足要求的情况下,尽量选择主瓣的窗函数。
(1)构造希望逼近的频率响应函数。
(2)计算h(n)。
(3)加窗得到设计结果。
接下来,我们根据语音信号的特点给出有关滤波器的技术指标:①低通滤波器的性能指标: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数字滤波器的主要程序:1、低通滤波器: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'); %求S域的频率响应的参数[num11,den11]=bilinear(b11,a11,0.5); %双线性变换实现S域到Z域的变换[h,w]=freqz(num11,den11); %根据参数求出频率响应plot(w*8000*0.5/pi,abs(h));legend('用butter设计');图3 低通滤波器2、带通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'); %求S域的频率响应参数[num2,den2]=lp2bp(b12,a12,sqrt(wp1*wp2),bw);%将S域低通参数转为带通的[num12,den12]=bilinear(num2,den2,0.5);%双线性变换实现S域到Z域的转换[h,w]=freqz(num12,den12); %根据参数求出频率响应plot(w*8000*0.5/pi,abs(h));axis([0 4000 0 1.5]);legend('用butter设计');图4 带通滤波器七、用滤波器对加噪语音信号进行滤波(一)、滤波用自己设计的各滤波器分别对加噪的语音信号进行滤波,在Matlab中,FIR 滤波器利用函数fftfilt对信号进行滤波,IIR滤波器利用函数filter对信号进行滤波。