汕头大学工学院
三级项目报告
课程名称:数字信号处理
项目题目:线性相位FIR数字均衡器设计
指导教师:***
系别:电子工程系专业:电子信息工程学号:姓名:
合作者
完成时间: 2011 年 11 月 25 日至 11 月 26 日成绩:评阅人:李旭涛
线性相位FIR数字均衡器的设计
千千静听、酷狗等常用音乐播放软件都有均衡器,界面如下面所示:
电脑音量输出的均衡器界面:
设计思路:人们能听到的声音的频谱范围大约为20Hz—20kHz,由于20KHz远大于20Hz,为了方便,假设人们能听到的声音的频谱范围大约为0—20kHz。
根据酷狗均衡器的界面,我们把这20kHz分成8个频段,调节八个频段的信号强度就能达到均衡器的效果。
这八个频段的分频点的值为fa=2.5kHz,fb=5kHz,fc=7.5kHz,fd=10kHz,fe=12.5kHz,ff=15.0kHz,fg=17.5kHz;采样频率为fs=40kHz。
则8个频段的频率分别为
[0,2500Hz] 频带1 [2500,5000Hz] 频带2
[5000,7500Hz] 频带3 [7500,10000Hz] 频带4
[10000,12500Hz] 频带5 [12500,15000Hz] 频带6
[15000,17500Hz] 频带7 [17500,20000kHz] 频带8
各个频段加凯泽窗后所对应的单位冲激响应为
1sin(())()()[]()
a w n M h n w n n M π-=- 2sin(())sin(())()()[]()
b a w n M w n M h n w n n M π---=- 3sin(())sin(())()()[]()
c b w n M w n M h n w n n M π---=- 4sin(())sin(())()()[]()
d c w n M w n M h n w n n M π---=- 5sin(())sin(())()()[]()
e d w n M w n M h n w n n M π---=- 6sin(())sin(())()()[]()
f e w n M w n M h n w n n M π---=- 7sin(())sin(())()()[]()
g f w n M w n M h n w n n M π---=- 8sin(())()()[()]()g w n M h n w n n M n M σπ-=--
- 其中M=(N-1)/2; ()w n 选取为凯泽窗;
8个不同频段的单位冲激响应对应8个不同的滤波器,经过滤波后得到各频段的幅频响应|H(f)|,把这8个频段组合起来作为输出,即得到8频段的均衡器。
Matlab 代码如下:
%8频段均衡器
clear
Nwin=205;%凯泽窗的阶数
dealt=10;%凯泽窗的形状参数
Nf=512;
fs=40000;
M=(Nwin-1)/2;
n=0:Nwin-1;
fa=2500;fb=5000;fc=7500;fd=10000;fe=12500;ff=15000;fg=17500;%各频率点频率值
wa=2*pi*fa/fs;wb=2*pi*fb/fs;wc=2*pi*fc/fs;wd=2*pi*fd/fs;we=2*pi*fe/fs; %频率归一化
wf=2*pi*ff/fs;wg=2*pi*fg/fs;
dap=sin(wa*(n-M))./(pi*(n-M)+eps);%频带1滤波器的单位冲激响应
dbp=(sin(wb*(n-M))-sin(wa*(n-M)))./(pi*(n-M)+eps);%频带2滤波器的单位冲激响应
dcp=(sin(wc*(n-M))-sin(wb*(n-M)))./(pi*(n-M)+eps);%频带3滤波器的单位冲激响应
ddp=(sin(wd*(n-M))-sin(wc*(n-M)))./(pi*(n-M)+eps);%频带4滤波器的单位冲激响应
dep=(sin(we*(n-M))-sin(wd*(n-M)))./(pi*(n-M)+eps);%频带5滤波器的单位冲激响应
dfp=(sin(wf*(n-M))-sin(we*(n-M)))./(pi*(n-M)+eps);%频带6滤波器的单位冲激响应
dgp=(sin(wg*(n-M))-sin(wf*(n-M)))./(pi*(n-M)+eps);%频带7滤波器的单位冲激响应
dhp=[(n-M)==0]-sin(wg*(n-M))./(pi*(n-M)+eps);%频带8滤波器的单位冲激响应
w_kaiser=kaiser(Nwin,dealt);%凯泽窗
wn=w_kaiser';
hap=wn.*dap;%对单位冲激响应加凯泽窗
hbp=wn.*dbp;
hcp=wn.*dcp;
hdp=wn.*ddp;
hep=wn.*dep;
hfp=wn.*dfp;
hgp=wn.*dgp;
hhp=wn.*dhp;
%求冲激响应的傅里叶变换
[y1,f]=freqz(hap,1,Nf,fs);[y2,f]=freqz(hbp,1,Nf,fs);[y3,f]=freqz(hcp,1,Nf,fs);
[y4,f]=freqz(hdp,1,Nf,fs);[y5,f]=freqz(hep,1,Nf,fs);[y6,f]=freqz(hfp,1,Nf,fs);
[y7,f]=freqz(hgp,1,Nf,fs);[y8,f]=freqz(hhp,1,Nf,fs);
mag1=abs(y1);mag2=abs(y2);mag3=abs(y3);mag4=abs(y4);mag5=abs(y5);
mag6=abs(y6);mag7=abs(y7);mag8=abs(y8);
%各个波段的幅频图
subplot(4,2,1),plot(f,20*log(mag1));xlabel('f/Hz');ylabel('|H(f)|/dB');grid on;title('频带1滤波器的幅频图'); subplot(4,2,2),plot(f,20*log(mag2));xlabel('f/Hz');ylabel('|H(f)|/dB');grid on;title('频带2滤波器的幅频图'); subplot(4,2,3),plot(f,20*log(mag3));xlabel('f/Hz');ylabel('|H(f)|/dB');grid on;title('频带3滤波器的幅频图'); subplot(4,2,4),plot(f,20*log(mag4));xlabel('f/Hz');ylabel('|H(f)|/dB');grid on;title('频带4滤波器的幅频图'); subplot(4,2,5),plot(f,20*log(mag5));xlabel('f/Hz');ylabel('|H(f)|/dB');grid on;title('频带5滤波器的幅频图'); subplot(4,2,6),plot(f,20*log(mag6));xlabel('f/Hz');ylabel('|H(f)|/dB');grid on;title('频带6滤波器的幅频图'); subplot(4,2,7),plot(f,20*log(mag7));xlabel('f/Hz');ylabel('|H(f)|/dB');grid on;title('频带7滤波器的幅频图'); subplot(4,2,8),plot(f,20*log(mag8));xlabel('f/Hz');ylabel('|H(f)|/dB');grid on;title('频带8滤波器的幅频图');
figure
g1=0.9;g2=0.01;g3=0.8;g4=0.2;g5=0.7;g6=0.01;g7=0.9;g8=0.5;;%调节系数,用于调节不同频段的信号的幅值
y=g1*y1+g2*y2+g3*y3+g4*y4+g5*y5+g6*y6+g7*y7+g8*y8;%均衡器的输出
plot(f,20*log10(abs(y)));grid on;xlabel('f/Hz');ylabel('|H(f)|/dB');title('均衡器输出幅频特性');
8个频段的滤波器的幅频图:
均衡器输出的单位冲激频率响应:
注:上图中,调节系数为g1=0.9;g2=0.01;g3=0.8;g4=0.2;g5=0.7;g6=0.01;g7=0.9;g8=0.5; 调节这几个参数的值可改变均衡器输出幅频特性。
五项目总结
通过此次Matlab仿真,我掌握了运用FIR滤波器的设计方法,以及其应用—均衡器的设计。
FIR 滤波器能够对信号进行线性滤波,对信号的分析处理带来很大的方便。
而均衡器在音频信号的处理中应用广泛。
通过本次仿真,我对FIR滤波器的设计及运用有了比较深刻的认识。
参考文献:
余成波数字信号修理及MATLAB实现清华大学出版社
郭仕剑MATLAB7.X数字信号处理人民邮电出版社
程佩青数字信号处理教程清华大学出版社。