含噪声的语音信号分析与处理设计讲解

合集下载

语音识别技术的噪声消除方法研究

语音识别技术的噪声消除方法研究

语音识别技术的噪声消除方法研究随着语音识别技术的迅猛发展,我们生活中越来越多的场景需要用到语音交互,例如语音助手、智能家居和汽车语音控制等。

然而,实际应用中常常存在噪声干扰,这会显著影响语音识别系统的准确性和稳定性。

因此,研究如何消除噪声对于提高语音识别系统的性能至关重要。

噪声消除是一种利用信号处理技术从噪声污染的语音信号中提取出干净语音信号的方法。

在语音识别领域,噪声消除算法有助于提高语音信号的质量,并显著提升语音识别系统的性能。

本文将介绍几种常用的语音识别技术的噪声消除方法。

一. 频域噪声消除方法频域噪声消除方法是一种常见的噪声消除方法,它利用语音信号和噪声信号在频域上的差异,通过滤波和谱减法等技术来减少噪声对语音的干扰。

1. 滤波法滤波法通过设计数字滤波器,将语音信号和噪声信号进行滤波,从而达到消除噪声的效果。

常用的滤波器设计方法有无限脉冲响应滤波器(IIR)和有限脉冲响应滤波器(FIR)。

滤波法可以有效地降低噪声的能量,但在某些情况下会对语音信号的频谱造成畸变。

2. 谱减法谱减法是一种常用的噪声消除方法,它通过对语音信号的频谱进行分析和处理,将噪声频谱从语音频谱中减去,从而得到较为清晰的语音信号。

谱减法包括短时傅里叶变换(STFT)和谱减。

二. 时域噪声消除方法时域噪声消除方法是基于时域分析的噪声消除方法,它通过对语音信号的时域特征进行处理,减少噪声的干扰。

1. 统计模型法统计模型法是一种常见的时域噪声消除方法,它利用语音信号和噪声信号之间的统计特性进行建模和分析。

常见的统计模型包括高斯混合模型(GMM)和隐马尔可夫模型(HMM)。

统计模型法可以通过对语音信号和噪声信号之间的统计特性进行建模,从而减少噪声对语音的干扰。

2. 线性预测法线性预测法是一种基于线性预测分析的噪声消除方法,它通过对语音信号的线性预测系数进行分析和处理,减少噪声的干扰。

线性预测法包括自相关法和自适应线性预测法。

三. 混合域噪声消除方法混合域噪声消除方法是将时域和频域噪声消除方法相结合的一种噪声消除方法,它利用了时域和频域上的信息来提高噪声消除效果。

小波分析的语音信号噪声消除方法

小波分析的语音信号噪声消除方法

小波分析的语音信号噪声消除方法小波分析是一种有效的信号处理方法,可以用于噪声消除。

在语音信号处理中,噪声常常会影响语音信号的质量和可理解性,因此消除噪声对于语音信号的处理非常重要。

下面将介绍几种利用小波分析的语音信号噪声消除方法。

一、阈值方法阈值方法是一种简单而有效的噪声消除方法,它基于小波变换将语音信号分解为多个频带,然后通过设置阈值将各个频带的噪声成分消除。

1.1离散小波变换(DWT)首先,对语音信号进行离散小波变换(DWT),将信号分解为近似系数和细节系数。

近似系数包含信号的低频成分,而细节系数包含信号的高频成分和噪声。

1.2设置阈值对细节系数进行阈值处理,将细节系数中幅值低于设定阈值的部分置零。

这样可以将噪声成分消除,同时保留声音信号的特征。

1.3逆变换将处理后的系数进行逆变换,得到去噪后的语音信号。

1.4优化阈值选择为了提高去噪效果,可以通过优化阈值选择方法来确定最佳的阈值。

常见的选择方法有软阈值和硬阈值。

1.4.1软阈值软阈值将细节系数进行映射,对于小于阈值的细节系数,将其幅值缩小到零。

这样可以在抑制噪声的同时保留语音信号的细节。

1.4.2硬阈值硬阈值将细节系数进行二值化处理,对于小于阈值的细节系数,将其置零。

这样可以更彻底地消除噪声,但可能会损失一些语音信号的细节。

二、小波包变换小波包变换是对离散小波变换的改进和扩展,可以提供更好的频带分析。

在语音信号噪声消除中,小波包变换可以用于更精细的频带选择和噪声消除。

2.1小波包分解将语音信号进行小波包分解,得到多层的近似系数和细节系数。

2.2频带选择根据噪声和语音信号在不同频带上的能量分布特性,选择合适的频带对语音信号进行噪声消除。

2.3阈值处理对选定的频带进行阈值处理,将噪声成分消除。

2.4逆变换对处理后的系数进行逆变换,得到去噪后的语音信号。

三、小波域滤波小波域滤波是一种基于小波变换的滤波方法,通过选择合适的小波函数和滤波器来实现噪声消除。

含噪语音信号分析与处理

含噪语音信号分析与处理

Vol .30 No .6 Dec . 2016doi :10.13440/j .slxy .1674-0033.2016.06.004第30卷第6期 商洛学院学报2016 年 12 月Journal of Shangluo University含噪语音信号分析与处理张娜,袁训锋(商洛学院电子信息与电气工程学院,陕西商洛726000)摘要:语音信号在传输时受到噪声的污染会影响信息传递的可靠性与清晰度,以MATLAB为仿真工具,录制一段语音并加入高斯噪声模仿含噪语音信号,再分别设计出低通、高通、带通、带阻滤波器对含噪的语音信号进行滤波处理,最终比较滤波效果。

结果表明:人的声音能 量主要集中在低频部分,而噪声能量主要集中在高频部分,采用低通滤波器和带阻滤波器对 含噪语音信号进行滤波具有较好的效果。

关键词:含噪语音信号;滤波器;滤波处理中图分类号:TN 912.3文献标识码:A文章编号:1674-0033(2016)06-0011-05Analysis and Processing of Noisy Speech SignalZHANG Na,YUAN Xun-feng(College of Electronic and Electrical Engineering , Shangluo University , Shangluo 726000, Shaanxi )Abstract :Noise mixed with speech signal in transmission affects the reliability and clarity of the informationtransmission . with MATLAB as a simulation tool , a voice recording and join Gaussian noise , bilinear transform method is used to design the low -pass , high pass , band pass , band stop digital filter to filter the noisy speech signal , and compare the filtering effect . The results show that the sound energy is mainly concentrated in the low frequency part , and the noise energy mainly concentrated in the high frequency part , application of low pass filter and band stop filter of speech signal with noise has a better effect .Key words :noisy speech signal ; wave filter ; filtering process数字信号处理不仅是一门发展迅速、应用广 泛的前沿性学科,而且是一门理论性强、应用广、 难度大的交叉性学科,随着科技的迅速发展,数 字信号处理也在逐步朝着数字化、可视化、智能 化、软件化的方向发展[1-2]。

应用Matlab对含噪声语音信号进行频谱分析及滤波

应用Matlab对含噪声语音信号进行频谱分析及滤波

应用Matlab对含噪声语音信号进行频谱分析及滤波应用Matlab对含噪声的语音信号进行频谱分析及滤波一、实验内容录制一段个人自己的语音信号,并对录制的信号进行采样;画出采样后语音信号的时域波形和频谱图;在语音信号中增加正弦噪声信号(自己设置几个频率的正弦信号),对加入噪声信号后的语音信号进行频谱分析;给定滤波器的性能指标,采用窗函数法和双线性变换设计数字滤波器,并画出滤波器的频率响应;然后用自己设计的滤波器对采集的信号进行滤波,画出滤波后信号的时域波形和频谱,并对滤波前后的信号进行对比试听,分析信号的变化。

二、实现步骤1.语音信号的采集利用Windows下的录音机,录制一段自己的话音,时间在1 s内。

然后在Matlab软件平台下,利用函数wavread对语音信号进行采样,(可用默认的采样频率或者自己设定采样频率)。

2.语音信号的频谱分析要求首先画出语音信号的时域波形;然后对语音号进行快速傅里叶变换,得到信号的频谱特性。

在采集得到的语音信号中加入正弦噪声信号,然后对加入噪声信号后的语音号进行快速傅里叶变换,得到信号的频谱特性。

并利用sound试听前后语音信号的不同。

分别设计IIR和FIR滤波器,对加入噪声信号的语音信号进行去噪,画出并分析去噪后的语音信号的频谱,并进行前后试听对比。

3.数字滤波器设计给出数字低通滤波器性能指标:如,通带截止频率fp=10000 Hz,阻带截止频率fs=12000 Hz(可根据自己所加入噪声信号的频率进行阻带截止频率设置),阻带最小衰减Rs=50 dB,通带最大衰减Rp =3 dB(也可自己设置),采样频率根据自己语音信号采样频率设定。

报告内容一、实验原理含噪声语音信号通过低通滤波器,高频的噪声信号会被过滤掉,得到清晰的无噪声语音信号。

二、实验内容录制一段个人自己的语音信号,并对录制的信号进行采样;画出采样后语音信号的时域波形和频谱图;在语音信号中增加正弦噪声信号(自己设置几个频率的正弦信号),对加入噪声信号后的语音信号进行频谱分析;给定滤波器的性能指标,采用窗函数法和双线性变换设计数字滤波器,并画出滤波器的频率响应;然后用自己设计的滤波器对采集的信号进行滤波,画出滤波后信号的时域波形和频谱,并对滤波前后的信号进行对比试听,分析信号的变化。

含噪声的语音信号分析与处理设计

含噪声的语音信号分析与处理设计

含噪声的语音信号分析与处理设计随着科技的发展,语音信号的分析与处理在音频处理、语音识别、交互设计等领域中得到了广泛应用。

然而,由于实际环境条件的影响,语音信号常常受到噪声的干扰,导致信号质量下降。

因此,对含噪声的语音信号进行分析与处理设计成为一个重要的研究课题。

本文将从语音信号分析、噪声分析以及处理方法三个方面对含噪声的语音信号进行分析与处理设计。

首先,语音信号分析是语音处理的基础,通过分析语音信号的频率、幅度和时域特性等可以更好地了解信号的特点,从而为后续的噪声分析与处理提供基础。

语音信号通常由基频、共振峰和噪声组成,而噪声是导致语音信号质量下降的主要原因之一、因此,理解和提取语音信号中的基频和共振峰等特征参数,可以帮助我们更好地去除噪声。

在语音信号分析中,常用的方法包括短时傅里叶变换(STFT)、自相关函数(RAF)以及线性预测编码(LPC)等。

其次,噪声分析是对噪声的特性进行分析,掌握噪声特征对于噪声的抑制和处理至关重要。

常见的噪声类型包括白噪声、脉冲噪声、环境噪声等,它们的特点各不相同。

通过对噪声的分析,可以确定适当的噪声模型,为后续的噪声抑制算法提供基础。

噪声分析方法包括谱分析、相关性分析以及统计特性分析等。

最后,针对含噪声的语音信号进行处理,目的是降低噪声对语音信号的干扰,提高语音信号的质量。

噪声抑制是含噪声语音信号处理中的一项重要任务,主要分为基于时域和频域的方法。

时域方法包括Wiener滤波器、语音活性检测和语音增强等;频域方法主要包括基于短时傅里叶变换的声纹估计法、频率掩蔽法和频谱减法法等。

此外,还可以通过使用降噪算法、特征选择和分类器训练等方法来提高语音信号的鲁棒性。

综上所述,含噪声的语音信号分析与处理设计是一个复杂而关键的问题,需要综合考虑语音信号的特点和噪声的特性,并选择合适的方法进行处理。

通过合理的信号分析和噪声分析,结合有效的处理方法和算法,可以实现对含噪声的语音信号的准确分析和高效处理,从而提高语音信号的质量和应用效果。

含噪声的语音信号分析与处理设计

含噪声的语音信号分析与处理设计

含噪声的语音信号分析与处理设计在现实生活中,我们常常会面临到含有噪声的语音信号,这些噪声可能来自于环境、设备或者通信等因素。

对于这种含噪声的语音信号,我们需要进行分析与处理,以提高语音信号的质量和可理解性。

首先,在进行语音信号的分析与处理之前,我们需要先对其进行预处理。

预处理的目的是减小噪声的影响,使得后续分析与处理更加精确和有效。

常用的预处理方法有:1.噪声估计和建模:通过对含噪声语音信号进行噪声估计和建模,可以获得噪声的统计特性和模型参数,为后续处理提供基础。

2.降噪滤波:根据噪声模型和估计结果,设计合适的降噪滤波算法,将信号中的噪声成分减小或者消除,以提高语音信号的清晰度和可理解性。

3.音频增益调整:对语音信号进行音量调整,以使得信号在放大的过程中不会引入过多的噪声。

分析与处理的主要目标是提取出有用的语音特征,如声音的音素、音调、语速等信息,以实现语音识别、语音合成等应用。

常用的分析与处理方法有:1.特征提取:通过应用信号处理和模式识别技术,提取语音信号中的关键特征,如短时能量、短时平均过零率、MFCC等。

这些特征可以反映出语音信号的频谱特性和时域特性。

2.去除噪声和失真:通过使用降噪算法和滤波算法,去除语音信号中的噪声和失真,使得信号更加清晰和准确。

3.语音识别与分割:通过使用语音识别技术,将语音信号转化为文字,实现自动语音识别。

同时,根据语音信号中的静音段和非静音段的特征,对语音信号进行分割,以提取出单词和句子。

4.语音合成与转换:通过使用声学模型和语言模型,将文字转化为语音信号,实现自动语音合成。

同时,可以通过修改声学模型中的参数,实现说话人的转换和风格的改变。

最后,在进行语音信号分析与处理时,还需要注意以下几个问题:1.信号与噪声的属性:不同环境和设备产生的噪声具有不同的统计特性和功率分布,对于不同类型的噪声,需要采用不同的噪声估计和降噪方法。

2.降噪算法与语音质量:降噪算法在减小噪声的同时,也可能会引入一定的失真和伪声。

基于MATLAB的有噪声的语音信号处理的课程设计要点

基于MATLAB的有噪声的语音信号处理的课程设计要点

基于MATLAB的有噪声的语音信号处理的课程设计要点一、设计背景随着科技的不断发展,语音信号处理愈发成为热门话题。

在语音数据中,常常会被噪声干扰,从而使得信号质量下降,影响了数据分析和处理的效果。

本课程设计旨在通过MATLAB来设计一套有噪声的语音信号处理方法,以提高对语音信号信噪比的分析和处理能力,为后续的语音处理研究奠定基础。

二、课程设计要点1. 语音信号的获取和预处理在本课程中,需要使用MATLAB语音处理工具箱中的audioread()函数获取.wav格式的语音信号,然后进行预处理操作,包括:•极化和采样:将语音信号从时间域转换到频域,并进行重采样处理,以适应后续处理操作的需求。

•去噪:根据信噪比的情况,选择合适的去噪算法对语音信号进行滤波,以减低信号的噪声干扰。

2. 基本的信号处理方法•频谱分析和频率域滤波:可以通过MATLAB处理语音信号的频域,进行谱分析、谱修复以及滤波的操作。

•时域滤波:应用IIR和FIR滤波器来消除噪声,提高信号质量。

•自适应滤波:通过模型建立和自适应滤波器设计,从语音信号中分离出噪声信号。

3. 压缩和解压缩•信号压缩:对语音信号进行压缩处理,以实现数据的高效管理和传输。

•信号解压缩:对压缩后的语音信号进行解压缩处理,还原原始的语音信号,以进行后续处理。

4. 语音识别•特征提取:通过分段处理,并进行特征提取,将信号的语音特征转换为相应的数字特征向量,为后续的语音识别做准备。

•语音识别:基于数字特征向量,采用各种识别算法,进行语音识别。

三、设计思路1.读入语音信号和噪声,可以通过audioread()函数和一些MATLAB工具箱实现。

同时,对输出语音信号进行噪声除去处理。

2.对语音信号进行频谱分析,并基于不同的SNR条件下,应用FIR和IIR滤波器对语音信号进行滤波处理。

进而利用多种去噪算法对含噪语音信号进行去噪处理。

3.对经过滤波处理的语音信号进行特征提取,并采用隐马尔可夫模型(HMM)对数字特征向量进行处理,进行不同说话人的识别。

应用Matlab对含噪声语音信号进行频谱分析及滤波

应用Matlab对含噪声语音信号进行频谱分析及滤波

应用Matlab对含噪声语音信号进行频谱分析及滤波频谱分析是对信号的频率特性进行研究和描述的一种方法,而滤波是对信号进行去除或者强调特定频率成份的处理。

在语音信号处理中,频谱分析及滤波常用于去除噪声、增强语音信号的清晰度和可听度。

Matlab作为一种强大的科学计算软件,提供了丰富的工具和函数用于频谱分析和滤波。

下面将详细介绍如何使用Matlab对含噪声语音信号进行频谱分析及滤波的步骤和方法。

1. 导入语音信号首先,我们需要将含噪声的语音信号导入到Matlab中进行处理。

可以使用Matlab提供的`audioread()`函数读取语音文件,并将其存储为一个向量。

```matlab[y, Fs] = audioread('noisy_speech.wav');```其中,`y`是读取到的语音信号向量,`Fs`是采样率。

如果语音文件的采样率不是默认的16kHz,可以使用`resample()`函数调整采样率。

2. 绘制时域波形为了对语音信号有一个直观的了解,可以绘制其时域波形图。

使用Matlab的`plot()`函数可以实现这一目标。

```matlabt = (0:length(y)-1)/Fs;plot(t, y);xlabel('Time (s)');ylabel('Amplitude');title('Time Domain Waveform');```这段代码将绘制出含噪声语音信号的时域波形图,横轴表示时间,纵轴表示信号的幅值。

3. 进行频谱分析频谱分析可以匡助我们了解语音信号在不同频率上的能量分布情况。

在Matlab 中,可以使用`fft()`函数对语音信号进行傅里叶变换,得到其频谱。

```matlabN = length(y);Y = fft(y);P = abs(Y).^2/N;f = Fs*(0:(N/2))/N;plot(f, 10*log10(P(1:N/2+1)));xlabel('Frequency (Hz)');ylabel('Power (dB)');title('Power Spectrum');```上述代码将绘制出含噪声语音信号的功率谱图,横轴表示频率,纵轴表示功率(以分贝为单位)。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

课程设计任务书学生姓名:苗强强专业班级:电信1204 指导教师:阙大顺沈维聪工作单位:信息工程学院题目: 程控宽带放大器的设计初始条件:程控宽带放大器是电子电路中常用模块,在智能仪器设备及嵌入式系统中有广泛的应用。

因此对于电子信息专业的技术人员来说,熟练掌握该项技术很有必要。

要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)(1)输入阻抗>1KΩ,单端输入,单端输出,放大器负载电阻为600Ω;(2)3dB通频带10kHz~6MHz,在20kHz~5MHz频带内增益起伏<1dB。

(3)增益调节范围10 dB~40 dB,(通过键盘操作调节)。

(4)发挥部分:当输入频率或输出负载发生变化时,通过微处理器自动调节,保持放大器增益不变。

(5)电路通过仿真即可。

时间安排:1. 任务书下达,查阅资料 1天2. 制图规范、设计说明书讲解 2天3. 设计计算说明书的书写 5天4. 绘制图纸 1天5. 答辩 1天指导教师签名:年月日系主任(或责任教师)签名:年月日滤波器设计在数字信号处理中占有极其重要的地位,FIR数字滤波器和IIR滤波器是滤波器设计的重要组成部分。

利用MATLAB信号处理工具箱可以快速有效地设计各种数字滤波器。

课题基于MATLAB有噪音语音信号处理的设计与实现,综合运用数字信号处理的理论知识对加噪声语音信号进行时域、频域分析和滤波。

通过理论推导得出相应结论,再利用MATLAB 作为编程工具进行计算机实现。

在设计实现的过程中,使用窗函数法来设计FIR数字滤波器,用巴特沃斯、切比雪夫和双线性变法设计IIR数字滤波器,并利用MATLAB 作为辅助工具完成设计中的计算与图形的绘制。

通过对对所设计滤波器的仿真和频率特性分析,可知利用MATLAB信号处理工具箱可以有效快捷地设计FIR和IIR数字滤波器,过程简单方便,结果的各项性能指标均达到指定要求。

关键词数字滤波器 MATLAB IIR滤波器 FIR滤波器1 绪论 (1)2 课程设计内容 (2)3 课程设计的具体实现 (2)3.1 语音信号的采集 (2)3.2 语音信号的时频分析 (2)3.3 语音信号加噪与频谱分析 (4)3.4 设计FIR和IIR数字滤波器 (5)3.5 用滤波器对加噪语音信号进行滤波 (7)3.6 实验现象记录及分析 (9)3.7调试过程遇到的问题及解决办法 (10)4总结 (12)参考文献 (13)含噪声的语音信号分析与处理设计1 绪论数字语音处理的重要基础是数字信号处理。

数字信号处理是利用计算机或专用处理设备,以数值计算的方法对信号进行采集、抽样、变换、综合、估值与识别等加工处理,借以达到提取信息和便于应用的目的。

它在语音、雷达、图像、系统控制、通信、航空航天、生物医学等众多领域都获得了极其广泛的应用。

具有灵活、精确、抗干扰强、设备尺寸小、造价低、速度快等优点。

数字滤波器, 是数字信号处理中及其重要的一部分。

随着信息时代和数字技术的发展,受到人们越来越多的重视。

数字滤波器可以通过数值运算实现滤波,所以数字滤波器处理精度高、稳定、体积小、重量轻、灵活不存在阻抗匹配问题,可以实现模拟滤波器无法实现的特殊功能。

数字滤波器种类很多,根据其实现的网络结构或者其冲激响应函数的时域特性,可分为两种,即有限冲激响应( FIR,Finite Impulse Response)滤波器和无限冲激响应( IIR,Infinite Impulse Response)滤波器。

FIR滤波器结构上主要是非递归结构,没有输出到输入的反馈,系统函数H (z)在处收敛,极点全部在z = 0处(因果系统),因而只能用较高的阶数达到高的选择性。

FIR数字滤波器的幅频特性精度较之于IIR数字滤波器低,但是线性相位,就是不同频率分量的信号经过fir滤波器后他们的时间差不变,这是很好的性质。

FIR数字滤波器是有限的单位响应也有利于对数字信号的处理,便于编程,用于计算的时延也小,这对实时的信号处理很重要。

FIR滤波器因具有系统稳定,易实现相位控制,允许设计多通带(或多阻带)滤波器等优点收到人们的青睐。

IIR滤波器采用递归型结构,即结构上带有反馈环路。

IIR滤波器运算结构通常由延时、乘以系数和相加等基本运算组成,可以组合成直接型、正准型、级联型、并联型四种结构形式,都具有反馈回路。

同时,IIR数字滤波器在设计上可以借助成熟的模拟滤波器的成果,如巴特沃斯、契比雪夫和椭圆滤波器等,有现成的设计数据或图表可查,在设计一个IIR数字滤波器时,我们根据指标先写出模拟滤波器的公式,然后通过一定的变换,将模拟滤波器的公式转换成数字滤波器的公式。

滤波器的设计可以通过软件或设计专用的硬件两种方式来实现。

随着MATLAB 软件及信号处理工具箱的不断完善,MATLAB很快成为应用学科等领域不可或缺的基础软件。

它可以快速有效地实现数字滤波器的设计、分析和仿真,极大地减轻了工作量,有利于滤波器设计的最优化。

2 课程设计内容语音信号处理是信号处理技术最早涉及的应用领域,数字信号处理技术中的很多方法都可以在语音信号处理中得到应用。

设计内容及要求:(1)选择一个语音信号作为分析对象,或录制一段语音信号;(2)对语音信号进行采样,画出采样前后语音信号的时域波形和频谱图;(3)利用MATLAB中的随机函数产生噪声加入到语音信号中,使语音信号被污染,然后进行频谱分析;(4)设计用于处理该语音信号的数字滤波器,给出滤波器的性能指标,画出滤波器的频率响应;(5)对被噪声污染的语音信号进行滤波,画出滤波前后信号的时域波形和频谱,并对滤波前后的信号进行比较和分析;(6)回放各步骤的语音信号,给出相应处理程序及运行结果分析。

3 课程设计的具体实现3.1 语音信号的采集利用PC 机上的声卡和WINDOWS 操作系统可以进行数字信号的采集。

将话筒输入计算机的语音输入插口上,启动录音机。

按下录音按钮,接着对话筒说话“语音信号处理”,说完后停止录音,屏幕左侧将显示所录声音的长度。

点击放音按钮,可以实现所录音的重现。

以文件名“speech”保存入g :\ MATLAB \ work 中。

可以看到,文件存储器的后缀默认为. wav ,这是WINDOWS 操作系统规定的声音文件存的标准。

3.2 语音信号的时频分析利用MATLAB中的“wavread”命令来读入(采集)语音信号,将它赋值给某一向量。

再对其进行采样,记住采样频率和采样点数。

下面介绍Wavread 函数几种调用格式。

(1)y=wavread(file)功能说明:读取file所规定的wav文件,返回采样值放在向量y中。

(2)[y,fs,nbits]=wavread(file)功能说明:采样值放在向量y中,fs表示采样频率(hz),nbits表示采样位数。

(3)y=wavread(file,N)功能说明:读取钱N点的采样值放在向量y中。

(4)y=wavread(file,[N1,N2])功能说明:读取从N1到N2点的采样值放在向量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对语音信号进行快速傅里叶变换,就可以得到信号的频谱特性。

其程序如下:[y,fs,nbits]=wavread ('01south_girl.wav'); %原始文件是《南方姑娘》的片段sound(y,fs,nbits); %回放语音信号N= length (y) ; %求出语音信号的长度Y=fft(y,N); %傅里叶变换subplot(2,1,1);plot(y,'b');title('原始信号波形');grid;subplot(2,1,2);plot(abs(Y),'b');title('原始信号频谱');grid;程序结果如下图1:图1 原始信号波形及频谱3.3 语音信号加噪与频谱分析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 ('01south_girl.wav');N = length (y) ; %求出语音信号的长度Noise=0.01*randn(N,2); %随机函数产生噪声Si=y+Noise; %语音信号加入噪声sound(Si);subplot(2,1,1);plot(Si,'b');title('加噪语音信号的时域波形');S=fft(Si); %傅里叶变换subplot(2,1,2);plot(abs(S),'b');title('加噪语音信号的频域波形');程序结果如下图2:图2 加噪后的波形及频谱分析3.4 设计FIR和IIR数字滤波器IIR滤波器和FIR滤波器的设计方法完全不同。

IIR滤波器设计方法有间接法和直接法,间接法是借助于模拟滤波器的设计方法进行的。

其设计步骤是:先设计过渡模拟滤波器得到系统函数H(s),然后将H(s)按某种方法转换成数字滤波器的系统函数H(z)。

FIR滤波器比鞥采用间接法,常用的方法有窗函数法、频率采样发和切比雪夫等波纹逼近法。

对于线性相位滤波器,经常采用FIR滤波器。

对于数字高通、带通滤波器的设计,通用方法为双线性变换法。

可以借助于模拟滤波器的频率转换设计一个所需类型的过渡模拟滤波器,再经过双线性变换将其转换策划那个所需的数字滤波器。

相关文档
最新文档