数字信号综合实验八.docx

上传人:b****6 文档编号:5377844 上传时间:2022-12-15 格式:DOCX 页数:16 大小:272.77KB
下载 相关 举报
数字信号综合实验八.docx_第1页
第1页 / 共16页
数字信号综合实验八.docx_第2页
第2页 / 共16页
数字信号综合实验八.docx_第3页
第3页 / 共16页
数字信号综合实验八.docx_第4页
第4页 / 共16页
数字信号综合实验八.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

数字信号综合实验八.docx

《数字信号综合实验八.docx》由会员分享,可在线阅读,更多相关《数字信号综合实验八.docx(16页珍藏版)》请在冰豆网上搜索。

数字信号综合实验八.docx

数字信号综合实验八

 

数字信号处理实验

 

题目数字音频信号的分析与处理

班级电子111班

姓名陈述创

学号1107400113

日期2014.06.13-2013.06.20

 

一、实验目的

1.复习巩固数字信号处理的基本理论;

2.利用所学知识研究并设计工程应用方案。

二、实验原理

数字信号处理技术在音频信号处理中的应用日益增多,其灵活方便的优点得到体现。

分频器即为其中一种音频工程中常用的设备。

人耳能听到的声音频率范围为20Hz~20000Hz,但由于技术所限,扬声器难以做到在此频率范围内都有很好的特性,因此一般采用两个以上的扬声器来组成一个系统,不同的扬声器播放不同频带的声音,将声音分成不同频带的设备就是分频器。

下图是一个二分频的示例。

图8.1二分频示意图

高通滤波器和低通滤波器可以是FIR或IIR类型,其中FIR易做到线性相位,但阶数太高,不仅需要耗费较多资源,且会带来较长的延时;IIR阶数低,但易出现相位失真及稳定性问题。

对分频器的特性,考虑最多的还是两个滤波器合成的幅度特性,希望其是平坦的,如图8.2所示:

图8.2分频器幅度特性

由于IIR的延时短,因此目前工程中大量应用的还是Butterworth、Bessel、Linkwitz-Riley三种IIR滤波器。

其幅频特性如图8.3所示:

图8.3三种常用IIR分频器的幅度特性

巴特沃斯、切比雪夫、椭圆等类型的数字滤波器系数可通过调用MATLAB函数很方便的计算得到,但Bessel、Linkwitz-Riley数字滤波器均无现成的Matlab函数。

并联系统的系统函数为

 

级联系统的系统函数为

 

宁可瑞滤波器(Linkwitz-Riley),由两个巴特沃斯滤波器级联而成。

N阶巴特沃夫滤波器等效宁可瑞滤波器的设计

为了使设计的IIR滤波器方便在DSP上实现,常将滤波器转换为二阶节级联的形式。

设计好分频器后,为验证分频后的信号是否正确,可用白噪声信号作为输入信号,然后对分频后的信号进行频谱分析。

三、仪器设备

1.硬件:

计算机一台,耳机。

2.软件:

MATLABR2010b

四、实验步骤

任意选择两种类型的IIR数字滤波器,设计一个二分频的数字分频器,已知系统的采样率为48000Hz。

(1)分频点为2000Hz;

(2)要求给出类似图8.3的幅频特性图,分频器的幅频响应平坦,在分频点处最多不能超过3dB的偏差;

(3)滤波器必须是二阶节形式;

(4)给出相位特性图;

(5)用频谱分析的方法验证设计好的分频器;

(6)对选用的两种类型的滤波器效果进行对比。

滤波器设计的基本步骤:

根据分频点要求初始化参数(截止频率、滤波器阶数N)

调用MATLAB函数设计滤波器(如[B,A]=butter(N,wc))

评估滤波器性能([magH,w]=freqz(B,A))

五、数据记录

我选择要设计的合成滤波器为ButterWorthIIR滤波器和Linkwitz-RileyIIR滤波器。

1.设计程序

设计程序如下:

(以4阶巴特沃斯滤波器、宁可瑞滤波器设计的分频器程序为例(分频器阶数为8阶))

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%设计分频器

clear;clc;

fs=48000;%采样频率为48000Hz

fc=2000;%分频点为2000Hz

wc=2*fc/fs;

N=4;%滤波器阶数,分频器阶数为2*N

[BL,AL]=butter(N,wc);%计算巴特沃思低通滤波器系统函数B,A系数

[BH,AH]=butter(N,wc,'high');%计算巴特沃思高通滤波器系统函数B,A系数

[magHH,w]=freqz(BH,AH);%计算巴特沃思高通滤波器幅频特性

magHH=20*log10(abs(magHH));

f=w*fs/(2*pi);%把数字频率w转换为模拟频率f

[BL1,AL1]=butter(N/2,wc);

[BH1,AH1]=butter(N/2,wc,'high');

BL1=conv(BL1,BL1);%计算宁可瑞低通滤波器系统函数B,A系数

AL1=conv(AL1,AL1);

BH1=conv(BH1,BH1);%计算宁可瑞高通滤波器系统函数B,A系数

AH1=conv(AH1,AH1);

[magHH1,w1]=freqz(BH1,AH1);%计算宁可瑞高通滤波器幅频特性

magHH1=20*log10(abs(magHH1));

f1=w1*fs/(2*pi);

semilogx(f,magHH,'-.r',f1,magHH1,'b');

holdon;

[magHL,w]=freqz(BL,AL);%计算巴特沃思低通滤波器幅频特性

magHL=20*log10(abs(magHL));

f=w*fs/(2*pi);

[magHL1,w1]=freqz(BL1,AL1);%计算宁可瑞低通滤波器幅频特性

magHL1=20*log10(abs(magHL1));

f1=w1*fs/(2*pi);

semilogx(f,magHL,'-.r',f1,magHL1,'b');

holdon;

B=conv(BL,AH)+conv(BH,AL);%计算巴特沃思滤波器并联系统的系统函数

A=conv(AL,AH);

[magH,w]=freqz(B,A);%计算巴特沃思滤波器并联系统幅频特性

magH=20*log10(abs(magH));

f=w*fs/(2*pi);

B1=conv(BL1,AH1)+conv(BH1,AL1);%计算宁可瑞滤波器并联系统的系统函数

A1=conv(AL1,AH1);

[magH1,w1]=freqz(B1,A1);%计算宁可瑞滤波器并联系统幅频特性

magH1=20*log10(abs(magH1));

f1=w1*fs/(2*pi);

semilogx(f,magH,'-.r',f1,magH1,'b');

legend('巴特沃斯滤波器','宁可瑞滤波器');

title('IIR分频器的幅度特性');

axis([10020000-4010]);

holdon

gridon

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%分析巴特沃斯滤波器及其设计的分频器的幅频特性、零极点分布

%巴特沃斯低通

subplot(2,2,1);zplane(BL,AL);

title('巴特沃斯低通滤波器的零极点分布')

[HL,wL]=freqz(BL,AL);

subplot(2,2,2);plot(wL/pi,abs(HL));

title('巴特沃斯低通滤波器的幅度特性')

xlabel('\omega/\pi');ylabel('|H(e^j^\omega)|');

subplot(2,2,4);plot(wL/pi,angle(HL));

xlabel('\omega/\pi');ylabel('\phi(\omega)');

title('巴特沃斯低通滤波器的相频特性')

%巴特沃斯高通

subplot(2,2,1);zplane(BH,AH);

title('巴特沃斯高通滤波器的零极点分布')

[HH,wH]=freqz(BH,AH);

subplot(2,2,2);plot(wH/pi,abs(HH));

title('巴特沃斯高通滤波器的幅度特性')

xlabel('\omega/\pi');ylabel('|H(e^j^\omega)|');

subplot(2,2,4);plot(wH/pi,angle(HH));

xlabel('\omega/\pi');ylabel('\phi(\omega)');

title('巴特沃斯高通滤波器的相频特性')

%设计的分频器

subplot(2,2,1);zplane(B,A);

title('分频器的零极点分布')

[H,w]=freqz(B,A);

subplot(2,2,2);plot(w/pi,abs(H));

xlabel('\omega/\pi');ylabel('|H(e^j^\omega)|');

title('分频器的幅度特性')

subplot(2,2,4);plot(w/pi,angle(H));

xlabel('\omega/\pi');ylabel('\phi(\omega)');

title('分频器的相频特性')

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%分析宁可瑞滤波器及其设计的分频器的幅频特性、零极点分布

%宁可瑞低通

subplot(2,2,1);zplane(BL1,AL1);

title('宁可瑞低通滤波器的零极点分布')

[HL1,wL1]=freqz(BL1,AL1);

subplot(2,2,2);plot(wL1/pi,abs(HL1));

title('宁可瑞低通滤波器的幅度特性')

xlabel('\omega/\pi');ylabel('|H(e^j^\omega)|');

subplot(2,2,4);plot(wL1/pi,angle(HL));

xlabel('\omega/\pi');ylabel('\phi(\omega)');

title('宁可瑞低通滤波器的相频特性')

%宁可瑞高通

subplot(2,2,1);zplane(BH1,AH1);

title('宁可瑞高通滤波器的零极点分布')

[HH1,wH1]=freqz(BH1,AH1);

subplot(2,2,2);plot(wH1/pi,abs(HH1));

title('宁可瑞高通滤波器的幅度特性')

xlabel('\omega/\pi');ylabel('|H(e^j^\omega)|');

subplot(2,2,4);plot(wH1/pi,angle(HH1));

xlabel('\omega/\pi');ylabel('\phi(\omega)');

title('宁可瑞高通滤波器的相频特性')

%设计的分频器

subplot(2,2,1);zplane(B1,A1);

title('分频器的零极点分布')

[H1,w1]=freqz(B1,A1);

subplot(2,2,2);plot(w1/pi,abs(H1));

xlabel('\omega/\pi');ylabel('|H(e^j^\omega)|');

title('分频器的幅度特性')

subplot(2,2,4);plot(w1/pi,angle(H));

xlabel('\omega/\pi');ylabel('\phi(\omega)');

title('分频器的相频特性')

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%滤波效果验证

%巴特沃斯设计的分频器滤波效果

[hB,g]=tf2sos(B,A)%调用函数tf2sos,将巴特沃斯滤波器设计的分频器转换成二阶节形式

[xB,fs,bits]=wavread('E:

\white.wav');

X=fft(xB,1024);

fori=1:

size(hB)

xB=filter(hB(i,1:

3),hB(i,4:

6),xB);%二阶节级联形式对白噪声进行滤波处理

end

wavwrite(xB,fs,bits,'e:

\巴特沃斯设计的分频器滤波后信号.wav')%将滤波后的噪声保存

YB=fft(xB,1024);

k=0:

1023;

N=1024;

wk=2*k/N;

subplot(211);plot(wk,abs(X));xlabel('\omega/\pi');title('原始白噪声信号频谱')

subplot(212);plot(wk,abs(YB));xlabel('\omega/\pi');title('巴特沃斯设计的分频器滤波后信号频谱')

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

[hL,gL=tf2sos(B1,A1)%调用函数tf2sos,将宁可瑞滤波器设计的分频器转换成二阶节形式

[xL,fs,bits]=wavread('E:

\white.wav');

X=fft(xL,1024);

fori=1:

size(hL)

xL=filter(hL(i,1:

3),hL(i,4:

6),xL);%二阶节级联形式对白噪声进行滤波处理

end

wavwrite(xL,fs,bits,'e:

\宁可瑞设计的分频器滤波后信号.wav')%将滤波后的噪声保存

YL=fft(xL,1024);

k=0:

1023;

N=1024;

wk=2*k/N;

subplot(211);plot(wk,abs(X));xlabel('\omega/\pi');title('原始白噪声信号频谱')

subplot(212);plot(wk,abs(YL));xlabel('\omega/\pi');title('宁可瑞设计的分频器滤波后信号频谱')

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

2.图形记录

[figure1]两种滤波器设计的分频器的幅度特性曲线:

[figure2]巴特沃思低通滤波器的零极点分布和幅频特性:

[figure3]巴特沃思高通滤波器的零极点分布和幅频特性:

[figure4]巴特沃思滤波器设计的分频器的零极点分布和幅频特性:

[figure5]宁可瑞低通滤波器的零极点分布和幅频特性:

[figure6]宁可瑞高通滤波器的零极点分布和幅频特性:

[figure7]宁可瑞滤波器设计的分频器的零极点分布和幅频特性:

[figure8]巴特沃思滤波器设计的分频器的滤波效果的频谱分析:

[figure9]宁可瑞滤波器设计的分频器的滤波效果的频谱分析:

[figure10]将白噪声音频文件通过分频器处理后保存为wav文件:

3.数据记录

[hB,g]=tf2sos(B,A)%将巴特沃斯滤波器设计的分频器转换成二阶节形式

得到数据:

[hL,gL]=tf2sos(B1,A1)%将宁可瑞滤波器设计的分频器转换成二阶节形式

得到数据:

六、实验结果讨论

1.对巴特沃思滤波器设计的分频器及滤波效果进行讨论

根据调用tf2sos函数得到的数据可以得出二阶节级联形式的分频器的系统函数:

从[figure1]分频器的幅度特性曲线可以看出巴特沃思滤波器设计的分频器整体较为平整,高低通并联而成的分频器系统在分频点2000hz的地方有3dB左右的偏差。

粗略可以看出设计的数字分频器满足设计要求;而从[figure2]到[figure4]这三幅零极点分布和幅频特性图可以看出巴特沃思高低通滤波器和分频器的极点都在单位圆内,所以设计的分频器系统是稳定的,分频器的幅度比较平缓,在约0.1的地方有提升;将[figure10]中巴特沃思滤波器设计的分频器处理后生成的wav文件打开,和原白噪声wav文件进行对比,听觉上未发现有差别,基本一致;将该分频器处理后的效果进行频谱分析,如[figure8]所示,可以看到处理得到的频谱在0.1左右的地方与原来的有所差别,可以与[figure4]显示的分频器在该处的幅值达到1.4(大约3dB的偏差)相符合,设计结果在可接受范围内。

2.对宁可瑞滤波器设计的分频器及滤波效果进行讨论

根据调用tf2sos函数得到的数据可以得出二阶节级联形式的分频器的系统函数:

从[figure1]分频器的幅度特性曲线可以看出宁可瑞滤波器设计的分频器幅度特性曲线很平坦,高低通并联而成的分频器系统在分频点2000hz的地方幅度也基本没有偏差,满足设计要求;而从[figure5]到[figure7]这三幅零极点分布和幅频特性图可以看出宁可瑞高低通滤波器和分频器的极点都在单位圆内,所以设计的分频器系统是稳定的,分频器的幅度比较平缓,在约0.1的地方(分频点)有小波动,不过稳定保持在1;将[figure10]中宁可瑞滤波器设计的分频器处理后生成的wav文件打开,和原白噪声wav文件进行对比,听觉上未发现有差别,基本一致;将该分频器处理后的效果进行频谱分析,如[figure9]所示,可以看到处理得到的频谱基本跟原音频的频谱图一致,符合设计要求。

七、结论:

本实验设计内容是二分频的数字分频器,输入信号的低通和高通分量通过设计的并联系统分两路输出,实际中常采用分频器将音频信号进行处理,将高频部分输出在小音箱,低频部分输出在大音箱。

而实验中设计的较为理想的分频器相当于全通滤波器,通过分频器处理得到的wav音频文件已经将低频高频部分叠加在一起,所以处理后的效果应该与原信号一致。

根据实验结果可以得出结论:

设计的二分频数字分频器符合设计要求,实现的分频效果较好。

而宁可瑞滤波器设计的分频器的效果比巴特沃思滤波器设计的分频器的效果要好,基本实现信号的全通,与原信号基本一致。

八、参考文献

[1]高西全、丁玉美、阔永红《数字信号处理——原理、实现与应用(第2版)》电子工业出版社2012年5月

[2]董长虹、高成、金涛《Matlab信号处理与应用》国防工业出版社2005

[3]张志涌、杨祖樱《MATLAB教程》北京航空航天大学出版社2011年7月

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 其它

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1