对语音信号进行分析及处理资料
语音信号处理实验报告2

实验二语音信号的频域特性一、实验目的(1)结合汉语语音信号的各类音素和复元音的特点分析其频域性质;(2)熟悉语音信号的各类音素和复元音的频域参数;(3)熟悉声音编辑软件PRAAT的简单使用和操作。
二、实验记录与思考题1. 观察语音信号的频域特点,总结其规律。
浊音段:其谱线结构是与浊音信号中的周期信号密切相关。
具有与基音及其谐波对应的谱线。
频谱包络中有几个凸起点,与声道的谐振频率相对应。
这些凸起点为共振峰。
清音段:清音的频谱无明显的规律,比较平坦。
2.总结清音/b/p/m/f/d/t/n/l/g/k/h/j/q/x/z/c/s/zh/ch/sh/r/共21个的语谱图的规律,给出辅音的能量集中区;语谱图中的花纹有横杠、乱纹和竖直条。
横杠是与时间轴平行的几条深黑色带纹,它们是共振峰。
从横杠对应的频率和宽度可以确定相应的共振峰频率和带宽。
在一个语音段的语谱图中,有没有横杠出现是判断它是否是浊音的重要标志。
竖直条是语谱图中出现于时间轴垂直的一条窄黑条。
每个竖直条相当于一个基音,条纹的起点相当于声门脉冲的起点,条纹之间的距离表示基音周期,条纹越密表示基音频率越高。
b,p……清音的语谱图为乱纹。
辅音的能量集中区为:高频区3. 总结浊音/a/o/e/i/u/ü/ao/ai/ei/ou/ie /an/en/in/ang/eng/ong/ing/共18个的语谱图的规律,提取这18个浊音的基频、前三个共振峰频率4./r/、/m/、/n/、/l/ 从这几个音素的的基频、共振峰频率5.分析宽带语谱图和窄带语谱图的不同之处,请解释原因;语谱图中的花纹有横杠、乱纹和竖直条等。
横杠是与时间轴平行的几条深黑色带纹,它们是共振峰。
从横杠对应的频率和宽度可以确定相应的共振峰频率和带宽。
在一个语音段的语谱图中,有没有横杠出现是判断它是否是浊音的重要标志。
竖直条(又叫冲直条)是语谱图中出现与时间轴垂直的一条窄黑条。
每个竖直条相当于一个基音,条纹的起点相当于声门脉冲的起点,条纹之间的距离表示基音周期。
语音信号处理第3章 语音信号分析方法

如果aN~=0,则IIR滤波器的阶数为N。
IIR滤波器的差分方程表示为:
y ( n)
m 0
bm x(n m) am y(n m)
m 1
M
N
设计经典数字滤波器的步骤:
(1)将设计指标归一化处理,即通带截止频率Wp 和阻带截止频率Ws。
(2)根据归一化频率,确定最小阶数N 和频率参数 Wn。可供选用的阶数选择函数有:buttord, cheb1ord,cheb2ord,ellipord 等。
(3)运用最小阶数N 设计模拟低通滤波器原型,用 到的函数有:butter, chebyl,cheby2, ellip 。
(4)用freqz(b,a,N,fs) 函数验证设计结果。
(5)用filter(b,a,x)函数实现滤波功能。
直接设计数字滤波器的MATLAB函数: [N,wn]=buttord(wp,ws,Rp,Rs) %数字频率采用标 准化频率,取值范围为0~1之间,标准化频率1对 应的数字频率为π,对应的模拟频率为采样频率 的一半。设计带通滤波器时,wp=[wp1,wp2]; ws=[ws1,ws2] [b,a]=butter(N,wn,’ftype’) %N为滤波器的阶数, wn为滤波器的截止频率(0~1),“ftype”为滤 波器的类型:‘high’为高通,‘stop’为带阻, 截止频率为wn=[w1,w2];缺省时为低通和带通滤 波器
[N,Wn]=buttord(wp1,ws1,Rp,Rs);
[b,a] = butter(N,Wn);%确定传递函数的分子、分母系数
[h,f]=freqz(b,a,Nn,Fs);
plot(f,20*log(abs(h)))
%生成频率响应参数
语音信号分析与语音合成技术研究

语音信号分析与语音合成技术研究近年来,语音信号分析和语音合成技术的研究得到了越来越多的关注。
语音作为一种个性化的沟通方式,在现代社会扮演着重要的角色。
语音识别、语音合成、情感分析等多个领域的技术也在不断发展。
本文将从以下几个方面对语音信号分析和语音合成技术进行探讨。
一、语音信号分析技术语音信号作为一种复杂的信号,其分析和处理涉及到很多方面的知识。
对于语音信号的分析技术,主要可以分为以下几类:1.语音信号的预处理语音信号的预处理其实就是对语音信号的一些附加处理。
比如,对于语音信号的容量比较大,需要将其进行降采样,以减少数据的冗余,同时避免由于数据过多导致的计算误差等。
还可以进行去噪处理,去除环境噪声的影响,使语音信号更加干净、清晰。
2.语音信号的特征提取语音信号是很复杂的信号,其包含了很多信息,如音调、音频、元音等。
因此,在语音信号分析中,在预处理之后,还需要对信号进行特征提取,以便于对语音信号进行分类、识别等处理。
因此,常用的特征提取算法包括:线性预测系数(LPC)、短时傅里叶转换(STFT)、梅尔频率倒谱系数(MFCC)等。
3.语音信号的分类和识别语音信号的特征提取之后,就可以使用分类和识别算法,对语音信号进行分类和识别了。
常用的语音信号分类和识别算法包括隐马尔可夫模型(HMM)、高斯混合模型(GMM)等。
其中,HMM 是一种基于概率的模型,常被用于语音识别中,其主要依靠模型的转移概率、状态概率和观测概率等进行识别分析。
4.语音信号的情感分析由于语音信号不仅包含声音信号,还包含了丰富的文化和情感信息,因此语音信号的情感分析也成为了研究的热点。
情感分析主要是通过语音表现的语言特征,比如声调、语调、语速、音节长度等,对说话人的情感状态进行分类和分析。
二、语音合成技术对于语音合成技术,主要包括如下几个方面的研究:1.语音合成技术的原理语音合成技术主要是将文本转化为语音的过程。
其工作原理是通过提取文本的语音特征,并利用这些特征合成出逼真的人类语音。
语音信号处理

语音信号处理语音信号处理是对语音信号进行分析、处理和合成的一种技术。
随着和语音识别技术的快速发展,语音信号处理变得越来越重要。
本文将详细介绍语音信号处理的基本概念、常用技术和应用领域。
基本概念语音信号是指人类通过声音来交流的方式。
语音信号通常采用模拟信号的形式,通过麦克风传感器转换为数字信号,然后使用数字信号处理技术进行分析和处理。
语音信号的特点包括频率、幅度和时域特性。
常用技术预处理语音信号预处理是指在进行语音信号分析和处理之前,对原始语音信号进行预处理以提取和增强感兴趣的特征。
常用的预处理技术包括去噪、滤波、降低共振、归一化等。
特征提取特征提取是从语音信号中提取有用信息的过程,目的是将语音信号转化为可以被机器学习算法处理的形式。
常用的特征包括声谱图、梅尔倒谱系数(MFCC)、线性预测编码(LPC)等。
语音识别语音识别是将语音信号转化为文字或命令的过程。
常用的语音识别技术包括基于模板的方法、隐马尔可夫模型(HMM)、深度学习等。
语音合成语音合成是将文字转化为语音信号的过程。
常用的语音合成技术包括基于拼接的方法、隐马尔可夫模型(HMM)、深度学习等。
应用领域语音信号处理在许多领域中起着重要作用,以下是几个主要应用领域的例子:语音识别系统语音识别系统可以用于实现语音自动接听、语音搜索等应用。
这些系统通过对输入语音信号进行处理和分析,将其转化为文字或命令。
语音合成系统语音合成系统可以将文字转化为语音,实现自动语音播报、电子书朗读等功能。
这些系统通过将输入文本处理和合成为语音信号。
声纹识别系统声纹识别系统通过对语音信号进行处理和分析,将其转化为声纹特征,用于实现语音身份认证等应用。
噪声抑制噪声抑制是指对含噪声的语音信号进行处理,去除噪声以提高语音信号的质量。
语音压缩语音压缩是将语音信号进行压缩,以减小存储空间和传输带宽的需求。
语音压缩技术可以用于语音通信、语音存档等应用。
语音信号处理是一项重要的技术,它在语音识别、语音合成和其他领域中有广泛的应用。
语音信号处理第3章-语音信号分析

0.1 0.05 0 -0.05 -0.1 -80
-60
-40
-20
0
20
40
60
80
0.1 0.05 0 -0.05 -0.1 -80
-60
-40
-20
0 k =1
20
40
60
80
信息科学与工程学院
东南大学
0.1 0.05 0 -0.05 -0.1 -80
-60
-40
信息科学与工程学院
东南大学
预处理:加窗
2.窗口的长度
采样周期Ts=1/fs,窗口长度N和频率分辨率Δf 之间存在下列关系:
采样率一定时,Δf 随窗口宽度N的增加而减小 ,即频率分辨率相应得到提高
• 窗口长,频率分辨率高,时域分辨率降低 • 窗口短,频率分辨率低,时间分辨率提高
1 Vf NTs
信息科学与工程学院
东南大学
3.短时相关分析
1.短时自相关函数 定义语音信号xn(m)的短时自相关函数Rn(k) :
Rn (k )
N 1 k m 0
x (m) x (m k ),0 k K
n n
这里K是最大的延迟点数。
短时自相关函数的性质:
(1)如果xn(m)是周期的,则自相关函数是同周期 (2)Rn(k)是偶函数 (3) Rn(0)是最大值,且为确定信号的能量或随机信号的 功率。
信息科学与工程学院 东南大学
预处理:加窗
矩形窗与汉明窗的比较
窗类型 旁瓣峰值 主瓣宽度 最小阻带衰减
矩形窗 汉明窗 -13 -41 4π/N 8π/N -21 -53
汉明窗的主瓣宽度比矩形窗大一倍,即带 宽约增加一倍,同时其带外衰减也比矩形 窗大一倍多,汉明窗比矩形窗更为合适。 因此,对语音信号的短时分析来说,窗口 的形状是至关重要的。
语音信号分析与处理方法综述

语音信号分析与处理方法综述语音信号是人类交流中重要的组成部分,语音信号分析与处理是一项非常重要的研究方向。
语音信号分析与处理技术可以被应用于语音识别、语音合成、语音增强、语音鉴别等领域,为人类提供更高效、高质量的语音交流体验。
本文将综述语音信号分析与处理的方法,包括基本概念和基础知识,语音信号的预处理、特征提取与分类等技术,以及目前应用较广泛的语音识别和语音合成技术。
本文还将介绍这些技术的理论基础、算法和应用案例。
一. 语音信号的基本概念和基础知识语音信号是人类通过声音来进行交流的信号,包含语音的各种音节和声调信息。
在语音信号分析与处理中,需要掌握语音信号的基本概念和基础知识。
在语音信号中,有许多不同的声音成分和噪声成分,语音信号预处理技术采取一系列措施来消除这些噪声,提高语音信号的质量。
例如,预处理技术包括消噪、滤波、去混响等技术。
二. 语音信号的预处理技术语音信号预处理技术包括噪声去除、滤波、去混响等技术。
这些技术可以帮助清除语音信号中的杂音和噪声,提高语音信号的可读性和质量。
噪声去除技术是预处理语音信号中最常用和最简单的技术。
这种技术采用滤波器、降噪器等设备或软件来消除语音信号中的杂音和噪声。
滤波技术是在语音信号中过滤特定频率成分的一种技术,这可以将一些不必要的频率成分去除,使语音信号更加清晰。
滤波依据的原理是,去除不相关信号的频率成分,使有用信号能够更好地被保留。
去混响技术是将混响(残留回响)去除的技术。
在语音信号分析与处理中,经常需要去除混响,因为混响会导致语音信号的低频部分(主要是语音信号中的音节)发生失真,降低语音信号的质量。
三. 语音信号特征提取语音信号的特征提取是将语音信号转化为一种易于分析和识别的数据结构或特征向量的过程。
一些常用的语音信号特征提取方法包括短时能量、过零率、梅尔倒谱系数等。
短时能量是一种用于计算语音信号能量的技术。
通过计算语音信号每个短时间内的总能量,可以得出一个很好的特征向量。
对语音信号进行分析及处理.

一、设计目的1.进一步巩固数字信号处理的基本概念、理论、分析方法和实现方法;使自身对信号的采集、处理、传输、显示和存储等有一个系统的掌握和理解;2.增强应用Matlab语言编写数字信号处理的应用程序及分析、解决实际问题的能力;3.培养自我学习的能力和对相关课程的兴趣;二、设计过程1、语音信号的采集采样频率,也称为采样速度或者采样率,定义了每秒从连续信号中提取并组成离散信号的采样个数,它用赫兹(Hz)来表示。
采样位数可以理解为声卡处理声音的解析度。
这个数值越大,解析度就越高,录制和回放的声音就越真实采样定理又称奈奎斯特定理,在进行模拟/数字信号的转换过程中,当采样频率fs不小于信号中最高频率fm的2倍时,采样之后的数字信号完整地保留了原始信号中的信息,一般实际应用中保证采样频率为信号最高频率的5~10倍。
利用Windows下的录音机,录制了一段发出的声音,内容是“数字信号”,时间在3 s内。
接着在D盘保存为WAV格式,然后在Matlab软件平台下.利用函数wavread对语音信号进行采样,并记录下了采样频率和采样点数,在这里我们还通过函数sound引入听到采样后自己所录的一段声音。
[x1,fs,bits]=wavread('E:\数字信号.wav'); %读取语音信号的数据,赋给变量x1,返回频率fs 44100Hz,比特率为16 。
2 、语音信号的频谱分析(1)首先画出语音信号的时域波形;程序段:x=x1(60001:1:120000); %截取原始信号60000个采样点plot(x) %做截取原始信号的时域图形 title('原始语音采样后时域信号'); xlabel('时间轴 n'); ylabel('幅值 A');(2)然后用函数fft 对语音号进行快速傅里叶变换,得到信号的频谱特性;y1=fft(x,6000); %对信号做N=6000点FFT 变换 figure(2)subplot(2,1,1),plot(k,abs(y1)); title('|X(k)|');ylabel('幅度谱');subplot(2,1,2),plot(k,angle(y1)); title('arg|X(k)|'); ylabel('相位谱');(3)产生高斯白噪声,并且对噪声进行一定的衰减,然后把噪声加到信号中,再次对信号进行频谱特性分析,从而加深对频谱特性的理解;d=randn(1,60000); %产生高斯白噪声 d=d/100; %对噪声进行衰减 x2=x+d; %加入高斯白噪声3、设计数字滤波器(1)IIR 低通滤波器性能指标通带截止频Hz f c 1000=,阻带截止频率Hz f st 1200=,通带最大衰减dB 11=δ,阻带最小衰减dB 1002=δ。
语音信号处理实验报告

语音信号处理实验报告——语音信号分析实验一.实验目的及原理语音信号分析是语音信号处理的前提和基础,只有分析出可表示语音信号本质特征的参数,才有可能利用这些参数进行高效的语音通信、语音合成和语音识别等处理,并且语音合成的音质好坏和语音识别率的高低,都取决于对语音信号分析的准确性和精确性;贯穿语音分析全过程的是“短时分析技术”;因为从整体来看,语音信号的特性及表征其本质特征的参数均是随时间变化的,所以它是一个非平稳态过程,但是在一个短时间范围内一般认为在10~30ms的时间内,其特性基本保持不变,即相对稳定,可将其看做一个准稳态过程,即语音信号具有短时平稳性;所以要将语音信号分帧来分析其特征参数,帧长一般取为10ms~30ms;二.实验过程男声及女声蓝色为时域信号,红色为每一帧的能量,绿色为每一帧的过零率某一帧的自相关函数3.频域分析①一帧信号的倒谱分析和FFT及LPC分析②男声和女声的倒谱分析对应的倒谱系数:,,……对应的LPC预测系数:1,,,,,……原语音波形一帧语音波形一帧语音的倒谱③浊音和清音的倒谱分析④浊音和清音的FFT分析和LPC分析红色为FFT图像,绿色为LPC图像三.实验结果分析1.时域分析实验中采用的是汉明窗,窗的长度对能否由短时能量反应语音信号的变化起着决定性影响;这里窗长合适,En能够反应语音信号幅度变化;同时,从图像可以看出,En可以作为区分浊音和清音的特征参数;短时过零率表示一帧语音中语音信号波形穿过横轴零电平的次数;从图中可以看出,短时能量和过零率可以近似为互补的情况,短时能量大的地方过零率小,短时能量小的地方过零率较大;从浊音和清音的时域分析可以看出,清音过零率高,浊音过零率低;从男声女声的时域信号对比图中可以看出,女音信号在高频率分布得更多,女声信号在高频段的能量分布更多,并且女声有较高的过零率,这是因为语音信号中的高频段有较高的过零率;2.频域分析这里对信号进行快速傅里叶变换FFT,可以发现,当窗口函数不同,傅里叶变换的结果也不相同;根据信号的时宽带宽之积为一常数这一性质,可以知道窗口宽度与主瓣宽度成反比,N越大,主瓣越窄;汉明窗在频谱范围中的分辨率较高,而且旁瓣的衰减大,具有频谱泄露少的有点,所以在实验中采用的是具有较小上下冲的汉明窗;为了使频域信号的频率分辨率较高,所取的DFT及相应的FFT点数应该足够多,但时域信号的长度受到采样率和和短时性的限制,这里可以采用补零的办法,对补零后的序列进行FFT变换;从实验仿真图可以看出浊音的频率分布比清音高;3.倒谱分析通过实验可以发现,倒谱的基音检测与语音加窗的选择也是有关系的;如果窗函数选择矩形窗,在许多情况下倒谱中的基音峰将变得不清晰,窗函数选择汉明窗较为合理,可以发现,加汉明窗的倒谱基音峰较为突出;在典型的浊音清音倒谱对比中,理论上浊音倒谱基音峰应比较突出,而清音不出现这种尖峰,只是在倒谱的低时域部分包含关于声道冲激响应的信息;实验仿真的图形不是很理想;4.线性预测分析从实验中可以发现,LPC谱估计具有一个特点,在信号能量较大的区域即接近谱的峰值处,LPC谱和信号谱很接近;而在信号能量较低的区域即接近谱的谷底处,则相差比较大;在浊音清音对比中,可以发现,对呈现谐波特征的浊音语音谱来说这个特点很明显,就是在谐波成分处LPC谱匹配信号谱的效果要远比谐波之间好得多;在实验中,当P值增加到一定程度,预测平方误差的改善就不很明显了,而且会增加计算量,一般取为8~14,这里P取为10;5.基音周期估计①自互相关函数法②短时平均幅度差法③倒谱分析法共偏移92+32=124个偏移点16000/124=可以发现,上面三种方法计算得到的基音周期基本相同;。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、设计目的1.进一步巩固数字信号处理的基本概念、理论、分析方法和实现方法;使自身对信号的采集、处理、传输、显示和存储等有一个系统的掌握和理解;2.增强应用Matlab语言编写数字信号处理的应用程序及分析、解决实际问题的能力;3.培养自我学习的能力和对相关课程的兴趣;二、设计过程1、语音信号的采集采样频率,也称为采样速度或者采样率,定义了每秒从连续信号中提取并组成离散信号的采样个数,它用赫兹(Hz)来表示。
采样位数可以理解为声卡处理声音的解析度。
这个数值越大,解析度就越高,录制和回放的声音就越真实采样定理又称奈奎斯特定理,在进行模拟/数字信号的转换过程中,当采样频率fs不小于信号中最高频率fm的2倍时,采样之后的数字信号完整地保留了原始信号中的信息,一般实际应用中保证采样频率为信号最高频率的5~10倍。
利用Windows下的录音机,录制了一段发出的声音,内容是“数字信号”,时间在3 s内。
接着在D盘保存为WAV格式,然后在Matlab软件平台下.利用函数wavread对语音信号进行采样,并记录下了采样频率和采样点数,在这里我们还通过函数sound引入听到采样后自己所录的一段声音。
[x1,fs,bits]=wavread('E:\数字信号.wav'); %读取语音信号的数据,赋给变量x1,返回频率fs 44100Hz,比特率为16 。
2 、语音信号的频谱分析(1)首先画出语音信号的时域波形;程序段:x=x1(60001:1:120000); %截取原始信号60000个采样点plot(x) %做截取原始信号的时域图形 title('原始语音采样后时域信号'); xlabel('时间轴 n'); ylabel('幅值 A');(2)然后用函数fft 对语音号进行快速傅里叶变换,得到信号的频谱特性;y1=fft(x,6000); %对信号做N=6000点FFT 变换 figure(2)subplot(2,1,1),plot(k,abs(y1)); title('|X(k)|');ylabel('幅度谱');subplot(2,1,2),plot(k,angle(y1)); title('arg|X(k)|'); ylabel('相位谱');(3)产生高斯白噪声,并且对噪声进行一定的衰减,然后把噪声加到信号中,再次对信号进行频谱特性分析,从而加深对频谱特性的理解;d=randn(1,60000); %产生高斯白噪声 d=d/100; %对噪声进行衰减 x2=x+d; %加入高斯白噪声3、设计数字滤波器(1)IIR 低通滤波器性能指标通带截止频Hz f c 1000=,阻带截止频率Hz f st 1200=,通带最大衰减dB 11=δ,阻带最小衰减dB 1002=δ。
(2)FIR 低通滤波器性能指标通带截止频率Hz f c 1000=,阻带截止频率Hz f st 1200=, 通带衰减1δ≤1dB ,阻带衰减2δ≥100dB 。
(3)IIR 高通滤波器的设计指标,Hz f z 1000=,Hz f p 2000=,阻带最小衰减dB A s 30=,通带最大衰减dB A P 1=。
(4)(4)FIR 高通滤波器的设计指标,Hz f z 1000=,Hz f p 2000=,阻带最小衰减dB A s 50=,通带最大衰减dB A P 1=。
(5)用自己设计的各滤波器分别对采集的信号进行滤波,在Matlab 中,FIR 滤波器利用函数fftfilt 对信号进行滤波,IIR 滤波器利用函数filter 对信号进行滤波。
比较滤波前后语音信号的波形及频谱,在一个窗口同时画出滤波前后的波形及频谱。
在Matlab中,函数sound可以对声音进行回放。
其调用格式:sound(x,fs,bits);可以感觉滤波前后的声音有变化。
三、结果分析1、原始语音信号采样后的时域波形及FFT变换后频谱图 1.原始信号时域图图 2.原始信号的频谱图2、加入噪声后信号的时域波形及FFT变换后频谱图 3.加入噪声后的时域信号分析:由图可以看出加入噪声后有明显的不一样,运行sound(x2 ,fs);播放加入高斯噪声后的语音,可以明显听出兹兹的噪声图 4.加入噪声后的频谱图3、IIR滤波器及原始信号通过IIR后的时域波形频谱变化图 5. IIR低通滤波器图 6. IIR低通滤波器滤波前后时域波形分析:经过滤波器后的信号和原始信号很近似图7. IIR低通滤波器滤波前后的频谱分析:从图7可以看出,经过IIR低通滤波器滤波后将高频部分滤除了。
4、FIR滤波器及原始信号通过FIR后的时域波形频谱变化图8. FIR低通滤波器图9.FIR低通滤波器滤波前后时域波形图10.FIR低通滤波器滤波前后频谱分析:从图10可以看出,经过FIR低通滤波器滤波后将高频部分滤除了。
5、IIR高通滤波器的设计图11. IIR高通滤波器图12. IIR高通滤波器滤波前后时域波形图13. IIR高通滤波器滤波前后频谱6、FIR高通滤波器的设计图14. FIR高通滤波器图15. FIR高通滤波器滤波前后时域波形图16.FIR高通滤波器滤波前后频谱四、结束语这次的数字信号处理大作业的题目是应用Matlab对语音信号进行频谱分析及滤波,首先通过网络和书籍查找有关本次作业所需的资料,编写相关程序,并通过Matlab软件运行得到相关波形频谱图。
在做作业的过程中,我将上课所学的理论知识运用到实践中。
通过这次应用Matlab对语音信号进行频谱分析及滤波,让我对Matlab的应用以及数字滤波器的设计有了更深层次的理解,每个程序中的语句表示什么意思也有了很清楚的了解。
在实践中增强了我的动手能力,并提高了我的综合能力,使自身得到了很大的锻炼。
另外,在设计滤波器的过程中由于个人知识学得不到位,后面的仿真结果不是很理想,我希望以后多查阅资料,多积累,多思考,只有这样,才能取得更大的进步,才能学有所用,学有所长。
五、程序附录(1)采样+噪声clearclc[x1,fs,bits]=wavread('E:\数字信号.wav'); %读取语音信号的数据,赋给变量x1 sound(x1,fs); %播放原始语音信号N=length(x1)fs %采样频率为44100Hzbits %比特率为16x=x1(60001:1:120000); %截取原始信号60000个采样点N1=length(x)figure(1)plot(x) %做截取原始信号的时域图形title('原始语音采样后时域信号');xlabel('时间轴 n');ylabel('幅值 A');sound(x,fs); %播放截取后语音信号,仍能清晰地听到“数字信号”k=0:5999;y1=fft(x,6000); %对信号做N=6000点FFT变换figure(2)subplot(2,1,1),plot(k,abs(y1));title('|X(k)|');ylabel('幅度谱');subplot(2,1,2),plot(k,angle(y1));title('arg|X(k)|');ylabel('相位谱');mean(x) %求得语音信号平均幅值-2.1368e-04d=randn(1,60000); %产生高斯白噪声mean(d)d=d/100; %对噪声进行衰减x2=x+d; %加入高斯白噪声sound(x2 ,fs); %播放加入高斯噪声后的语音,可以明显听出噪声figure(3)plot(x2)title('加入噪声后时域信号');xlabel('时间轴 n');ylabel('幅值 A');k=0:5999;y2=fft(x2,6000); %对信号做N点FFT变换figure(4)subplot(2,1,1),plot(k,abs(y2));title('加入噪声后|X(k)|');ylabel('幅度谱');subplot(2,1,2),plot(k,angle(y2));title('加入噪声后arg|X(k)|');ylabel('相位谱');(2)IIR低通滤波器%IIR低通滤波器clearclc[x1,fs,bits]=wavread('E:\数字信号.wav'); %读取语音信号的数据,赋给变量x1 x=x1(60001:1:120000); %截取原始信号60000个采样点d=randn(1,60000); %产生高斯白噪声mean(d);d=d/100; %对噪声进行衰减x2=x+d; %加入高斯白噪声sound(x2 ,fs); %播放加入高斯噪声后的语音,可以明显听出噪声fs=44100;Ts=1/fs;wp=2*pi*45000/fs; %通带截止频率ws=2*pi*50000/fs; %阻带截止频率Rp=1; %通带衰减Rs=100; %阻带衰减wp1=2/Ts*tan(wp/2); %将模拟指标转换成数字指标ws1=2/Ts*tan(ws/2);[N,Wn]=buttord(wp1,ws1,Rp,Rs,'s'); %选择滤波器的最小阶数[Z,P,K]=buttap(N); %创建butterworth模拟低通滤波器[Bap,Aap]=zp2tf(Z,P,K);[b,a]=lp2lp(Bap,Aap,Wn); %将模拟原型低通滤波器转换为低通滤波器[bz,az]=bilinear(b,a,fs); %用双线性变换法实现模拟滤波器到数字滤波器的转换[H,W]=freqz(bz,az); %绘制频率响应曲线figure(1)plot(W*fs/(2*pi),abs(H))gridxlabel('频率/Hz')ylabel('频率响应幅度')title('IIR低通滤波器')f1=filter(bz,az,x2);figure(2)subplot(2,1,1)plot(x2) %画出滤波前的时域图title('IIR低通滤波器滤波前的时域波形');subplot(2,1,2)plot(f1); %画出滤波后的时域图title('IIR低通滤波器滤波后的时域波形');sound(f1,44100); %播放滤波后的信号F0=fft(f1,1024);f=fs*(0:511)/1024;figure(3)y2=fft(x2,1024);subplot(2,1,1);plot(f,abs(y2(1:512))); %画出滤波前的频谱图title('IIR低通滤波器滤波前的频谱')xlabel('频率/Hz');ylabel('幅值');subplot(2,1,2)F1=plot(f,abs(F0(1:512))); %画出滤波后的频谱图title('IIR低通滤波器滤波后的频谱')xlabel('频率/Hz');ylabel('幅值');(3)FIR低通滤波%FIR低通滤波clearclcfs=44100;x1=wavread('E:\数字信号.wav');x=x1(60001:1:120000); %截取原始信号60000个采样点d=randn(1,60000); %产生高斯白噪声d=d/100; %对噪声进行衰减x2=x+d; %加入高斯白噪声sound(x2 ,fs); %播放加入高斯噪声后的语音,可以明显听出噪声wp=2*pi*1000/fs;ws=2*pi*1200/fs;Rp=1;Rs=100;wdelta=ws-wp;N=ceil(8*pi/wdelta); %取整wn=(wp+ws)/2[b,a]=fir1(N,wn/pi,hamming(N+1)); %选择窗函数,并归一化截止频率figure(1)freqz(b,a,512);title('FIR低通滤波器');f2=filter(b,a,x2);figure(2)subplot(2,1,1)plot(x2)title('FIR低通滤波器滤波前的时域波形');subplot(2,1,2)plot(f2);title('FIR低通滤波器滤波后的时域波形');sound(f2,44100); %播放滤波后的语音信号F0=fft(f2,1024);f=fs*(0:511)/1024;figure(3)y2=fft(x2,1024);subplot(2,1,1);plot(f,abs(y2(1:512)));title('FIR低通滤波器滤波前的频谱')xlabel('频率/Hz');ylabel('幅值');subplot(2,1,2)F2=plot(f,abs(F0(1:512)));title('FIR低通滤波器滤波后的频谱')xlabel('频率/Hz');ylabel('幅值');(4)IIR高通滤波器wp=2*2000/fs;ws=2*1000/fs;ap=1;as=30;[N,Wc]=buttord(wp,ws,ap,as);[B,A]=butter(N,Wc,'high');[H,W]=freqz(B,A);figure(1)plot(W,abs(H))title('高通滤波的幅值响应')f1=filter(B,A,x2);sound(f1,fs)figure(2)subplot(2,1,1)plot(x2)title('IIR高通滤波器滤波前的时域波形'); subplot(2,1,2)plot(f1)title('IIR高通滤波器滤波后的时域波形');f0=fft(f1,2048);f=fs*(0:1023)/2048;y=fft(x2,2048);y0=fft(f1,2048);figure(3)subplot(2,1,1)plot(f,abs(y(1:1024)))title('IIR高通滤波前的幅频图');subplot(2,1,2)plot(f,abs(y0(1:1024)));title('IIR高通滤波厚的幅频图');(5)FIR高通滤波器clc;[x1,fs,bits]=wavread('E:\数字信号.wav'); t=(0:length(x1)-1)/fs;Au=0.05;d=[Au*cos(2*pi*11025*t)];x2=x1'+d;T=1/fs;wp=2*pi*2000/fs;ws=2*pi*1000/fs;ap=1;as=50;B=wp-ws;N0=ceil(6.6*pi/B);N=N0+mod(N0+1,2);wc=(wp+ws)/2/pi;h=fir1(N-1,wc, 'high',hanning(N));t=1:N;figure(1)plot(t,h)y=fftfilt(h,x2);sound(y,fs)figure(2)subplot(2,1,1)plot(x2)title('FIR高通滤波器滤波前的时域波形'); subplot(2,1,2)plot(y)title('FIR高通滤波器滤波后的时域波形'); f0=fft(y,2048);f=fs*(0:1023)/2048;y0=fft(x2,2048);figure(3)subplot(2,1,1)plot(f,abs(y0(1:1024)))title('FIR高通滤波前的幅频图');subplot(2,1,2)plot(f,abs(f0(1:1024)));title('FIR高通滤波厚的幅频图');。