数字信号处理实验报告.docx
《数字信号处理实验报告.docx》由会员分享,可在线阅读,更多相关《数字信号处理实验报告.docx(13页珍藏版)》请在冰豆网上搜索。
数字信号处理实验报告
实验报告
实验课程:
数字信号处理
学生姓名:
张祝祥
学号:
20134277
专业班级:
自动化1308
2015年5月22日
实验内容与要求
在MATLAB下实现信号的频谱分析与滤波器设计
(1)频谱分析
确定实验数据(可自行选择或选用BB上“课程文档”下“DATA”下的数据),可以是语音信号,生物电信号,图像等,对该信号进行频谱分析,说明频谱分析时参数选择的依据,给出频谱分析结果。
改变参数,重新进行频谱分析,讨论参数选择对频谱分析结果的影响;
(2)滤波器设计
给出设计指标,分别设计IIR数字滤波器和FIR数字滤波器,绘制滤波器的幅频特性,证明所设计的滤波器满足性能指标要求。
对滤波后的信号进行频谱分析,并对结果进行说明与讨论。
实验要求:
自行完成,并将实验内容整理成一份实验报告,要求有数据说明,参数与指标的选择,实验结果的分析与讨论。
数据选用说明:
我选用老师所给的信号marimba.wav,它是一个双声道信号。
一信号的频谱分析
1.1参数选择
对所选信号进行读取操作,由读取的数据得知,采样频率fs=48000
频率分辨率选择∆f=1Hz,
那么最小数据记录Tpmin=1s,
频率采样点数N>=48000/1=48000,
因为N为2倍数,所以选择N=65536,即是进行FFT的点数。
我们由下面的工作区x的值以及原始音频信号图看到,信号为二维信号,即是双声道的音频信号,为方便分析,对它进行处理,得到单声道的信号x_left。
图1.1MATLAB工作区
图1.2
由对原始的信号进行频谱分析的结果,可以看出信号的幅值基本上集中在频率f=5000以内,并且峰值在f=2000Hz以内。
图1.3
原始双声道音频信号分出单音频信号后的结果:
分出单声道后的信号与原信号相比在信号图以及频谱分析上并没有明显变化,因此我认为之后对于双声道的处理都放在单声道上。
图1.4
图1.5
接下来,我们尝试改变参数,重新进行频谱分析,讨论参数选择对频谱分析结果的影响:
1.首先分别选择改变作FFT的点数N,分别取N=32768、16384、8192、4096、1024、256。
可以看到随着FFT点数的减少,信号频谱图越来越粗糙并且不同频率幅值差别越来越小,即幅频分析图的分辨率越来越低。
图1.6不同N值的频谱分析比较
(一)
图1.7不同N值的频谱分析比较
(二)
二、滤波器设计
2.1有限长单位冲击响应(FIR)滤波器的设计
2.1.1低通滤波
由之前的频谱分析我们可以得到信号频率幅值高的区域大多集中在2000Hz以内,现在在单声道的音频信号(x_left)的基础上,我们加上一个噪音信号(x_n),其频率为4000Hz与6000Hz,得到混合音频信号(xx)。
图2.1
由此,我们可以设计一个低通滤波器,选用汉宁窗,阶数为501阶,其通带截止频率为3000Hz。
图2.2FIR滤波器设计结果
用该滤波器对信号进行滤波,其结果如下:
图2.3
通过信号滤波后的频谱分析看出,之前所加的频率为4000Hz与6000Hz的噪音信号被过滤掉,滤波器表现良好。
2.1.2带通滤波器的设计
将信号(x_left)的频谱分析图放大,可以看到如下图
图2.4
我们设计一个带通滤波器,使滤波后的频率成分集中在200---1000Hz,此时,我选用MATLAB中的滤波器工具箱进行滤波器设计。
性能指标要求为:
通带截止频率为200—1000Hz,阻带截止频率为100、1200,通带波动1db,阻带波动80dB。
此时的参数设置如下:
Fs=48000;
Fpass1=300,Fpass2=1000,
Fstop1=250,Fstop2=1050,
Apass=1,Asto=80,Astop2=80;
此时,设计的滤波器的幅频特性图为:
图2.5滤波器的幅频特性图
图2.6经过带通滤波后的信号频谱图
我们明显的看到,经过FIR的带通滤波后,只有f=300Hz—1000Hz的信号保留下来,滤波达到要求的指标,并且由听到的声音可以看出基本保留了原声。
2.2无限长单位冲激相应(IIR)滤波器的设计
2.2.1设计低通滤波器
(1)冲击响应不变法设计滤波器
选用巴特沃斯低通数字滤波器,参数设置如下:
fp=2000;fst=3800;
rp=1;rs=80;
结果如下:
图2.7
图2.8滤波结果
由上图的结果看到滤波比较成功,但MATLAB显示:
Theoutputisnotcorrect/robust.CoeffsofB(s)/A(s)arereal,butB(z)/A(z)hascomplexcoeffs.Probablecauseisrootingofhigh-orderrepeatedpolesinA(s).
说明输出并不是那么稳定。
(2)双线性不变法设计滤波器
因为冲击响应不变法并不那么稳定,所以再试用双线性法进行设计。
当参数与上述相同时,结果如下,可以看到,两者的结果相近,但双线性不不变法的稳定性更好一些。
图2.9
图2.10
如果改变设计的参数,比如fp=2500;fst=3900;rp=1;rs=80;那么滤波器的滤波效果很糟糕。
图2.11
图2.12
2.2.2运用MATLAB工具箱设计高通滤波器(IIR)
设计参数为:
图2.13高通滤波器的参数设置
图2.14高通滤波器的幅频特性
结果如下图所示,该滤波器将f=4000Hz与f=6000Hz的信号留下,其余的信号几乎都给滤掉,实现了高通滤波功能。
图2.15
2.2.3用MATLAB工具箱设计带通滤波器
在做该滤波器设计时,参数设置要求比较苛刻,过渡带要求很宽。
不过从结果上来看,大概保留了2000Hz到5000Hz的音频信号,而作为过渡带的f=4000的噪音信号保留了下来。
参数设置如下:
图2.16参数设置
图2.17滤波器幅频特性
图2.18
2.3.实验结果的分析与讨论
通过以上滤波器的设计过程以及对信号进行滤波后的效果来看:
FIR滤波器的通带与阻带是以线性连接的,而IIR滤波器则是以圆滑的曲线连接的。
并且我们用FIR做带通滤波器时,实验的效果较好,基本完成了实验指标。
当我们用IIR滤波器设计低通滤波器时,通过冲击不变法与双线性不变法设计的效果相当,但用双线性不变法的稳定性更好。
由我们所学的知识也可以了解到,冲击响应不变法存在频率特性的混叠失真,而双线性法则是没有的。
因此,现在应用更为普遍的方法是双线性不变法。
当我们用IIR设计带阻滤波器时,滤波器的幅频特性显示良好,但滤波效果很糟糕,其设计具有很大难度。
而用FIR设计的带通滤波器时则是显示出不错的幅频特性以及良好的滤波结果。