《数字信号处理》课程设计基于某MATLAB地音乐信号处理和分析报告解析汇报.docx

上传人:b****8 文档编号:30202542 上传时间:2023-08-07 格式:DOCX 页数:23 大小:291.11KB
下载 相关 举报
《数字信号处理》课程设计基于某MATLAB地音乐信号处理和分析报告解析汇报.docx_第1页
第1页 / 共23页
《数字信号处理》课程设计基于某MATLAB地音乐信号处理和分析报告解析汇报.docx_第2页
第2页 / 共23页
《数字信号处理》课程设计基于某MATLAB地音乐信号处理和分析报告解析汇报.docx_第3页
第3页 / 共23页
《数字信号处理》课程设计基于某MATLAB地音乐信号处理和分析报告解析汇报.docx_第4页
第4页 / 共23页
《数字信号处理》课程设计基于某MATLAB地音乐信号处理和分析报告解析汇报.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

《数字信号处理》课程设计基于某MATLAB地音乐信号处理和分析报告解析汇报.docx

《《数字信号处理》课程设计基于某MATLAB地音乐信号处理和分析报告解析汇报.docx》由会员分享,可在线阅读,更多相关《《数字信号处理》课程设计基于某MATLAB地音乐信号处理和分析报告解析汇报.docx(23页珍藏版)》请在冰豆网上搜索。

《数字信号处理》课程设计基于某MATLAB地音乐信号处理和分析报告解析汇报.docx

《数字信号处理》课程设计基于某MATLAB地音乐信号处理和分析报告解析汇报

 

《数字信号处理》课程设计

 

设计题目:

基于MATLAB的音乐信号处理和分析

 

院系:

物理工程学院

专业:

电子信息科学与技术

学号:

某某:

 

一、课程设计的目的

本课程设计通过对音乐信号的采样、抽取、调制解调、滤波、去噪等多种处理过程的理论分析和MATLAB实现,使学生进一步巩固数字信号处理的根本概念、理论以与频谱分析方法和数字滤波器设计方法;使学生掌握的根本理论和分析方法只是得到进一步扩展;使学生能有效地将理论和实际严密结合;增强学生软件编程实现能力和解决实际问题的能力。

二、课程设计的根本要求

1学会MATLAB的使用,掌握MATLAB的根本编程语句。

2掌握在Windows环境下音乐信号采集的方法。

3掌握数字信号处理的根本概念、根本理论和根本方法。

4掌握MATLAB设计FIR和IIR数字滤波器的方法。

5掌握使用MATLAB处理数字信号、进展频谱分析、涉与数字滤波器的编程方法。

三、课程设计内容

实验1音乐信号的音谱和频谱观察

使用windows下的录音机录制一段音乐信号或采用其它软件截取一段音乐信号〔要求:

时间不超过5s、文件格式为wav文件〕

1 使用wavread语句读取音乐信号,获取抽样率;〔注意:

读取的信号时双声道信号,即为双列向量,需要分列处理〕;

2 输出音乐信号的波形和频谱,观察现象;

使用sound语句播放音乐信号,注意不同抽样率下的音调变化,解释现象。

程序如下:

[Y,FS,NBITS]=WAVREAD('怒放的生命-汪峰5s');%读取音乐信号

plot(Y);%显示音乐信号的波形和频谱

sound(Y,FS);%听音乐〔按照原来的抽样率〕

Y1=Y(:

1);%由双声道信号变为单声道信号

size(Y1)

figure

subplot(2,1,1);

plot(Y);%显示原信号波形

N=length(Y1);

f1=fft(Y1);%傅立叶变换

w=2/N*[0:

N/2-1];

subplot(2,1,2);

plot(w,abs(f1(1:

N/2)));%显示波形

原信号的波形和频谱图

 

实验2音乐信号的抽取〔减抽样〕

1 观察音乐信号频率上限,选择适当的抽取间隔对信号进展减抽样〔给出两种抽取间隔,代表混叠与非混叠〕;

2 输出减抽样音乐信号的波形和频谱,观察现象,给出理论解释;

播放减抽样音乐信号,注意抽样率的变化,比拟不同抽取间隔下的声音,解释现象

程序如下

[Y,FS,NBITS]=WAVREAD('怒放的生命-汪峰5s');

Y1=Y(:

1);

D=;j=0;%减抽样,D表示抽样间隔〔10倍和100倍〕

fori=1:

D:

length(Y1)%I表示开始减抽样的起始点

j=j+1;

Y2(j)=Y1(i);%Y2减抽样后的信号

end

N=length(Y1);

N1=length(Y2);

F1=fft(Y1);

F2=fft(Y2);

w1=2/N*[0:

N-1];

w2=2/N1*[0:

N1-1];

figure

subplot(4,1,1);plot(Y1);%显示原单声道信号波形和频谱

subplot(4,1,2);plot(Y2);%图显示抽样信号波形和频谱

subplot(4,1,3);plot(w1,abs(F1));%显示原单声道信号fft变换后的波形和频谱

subplot(4,1,4);plot(w2,abs(F2));%显示抽样信号快速fft变换后的波形和频谱

sound(Y2,FS)%声音低沉,而且不是很清晰。

有一些声音信号丢失,%抽样率越高,声音越听不清晰,

图2〔〔10倍〕图中由上而下依次为原单声道波形、抽样后波形、原单快速fft变换波形、抽样信号快速fft变换波形

图2〔〔100倍〕图中由上而下依次为原单声道波形、抽样后波形、原单声道

快速fft变换波形、抽样信号快速fft变换波形〕

实验3音乐信号的AM调制

1 观察音乐信号的频率上限,选择适当调制频率对信号进展调制〔给出高、低两种调制频率〕;

2 输出调制信号的波形和频谱,观察现象,给出理论解释;

播放调制音乐信号,注意不同调制频率下的声音,解释现象。

程序如下:

[Y,FS,NBITS]=WAVREAD('怒放的生命-汪峰5s');

Y1=Y(:

1);

N=length(Y1);

F1=fft(Y1);%傅立叶变换

w1=2/N*[0:

N/2-1];

figure

subplot(2,2,1);

plot(w1,abs(F1(1:

N/2)));

N1=0:

N-1;

Y2=cos(N1*pi/8);%设置高频调制信号

N2=length(Y2)

F2=fft(Y2);

w2=2/N2*[0:

N2/2-1];

subplot(2,2,2);plot(w2,abs(F2(1:

N2/2)));

subplot(2,2,3);stem((0:

64),Y2(1:

65));

F=Y1.*Y2';%利用高频调制信号调制单列音乐信号

N3=length(F);

F3=fft(F);%傅立叶变换

w3=2/N3*[0:

N3-1];

subplot(2,2,4);plot(w3,abs(F3));

sound(F,FS)%未混叠时,声音锋利,不清晰,刺耳

%混叠时,声音轻,只有淡淡的音调,根本没有起伏,不清晰。

〔未混叠〕图中由左到右依次为原音乐的傅立叶变换COS函数的频谱图

COS函数离散信号AM调制的后的波形

(混叠)图中由左到右依次为原音乐的傅立叶变换COS函数的频谱图

COS函数离散信号AM调制的后的波形

实验4AM调制音乐信号同步解调

1 设计巴特沃斯IIR滤波器完成同步解调;观察滤波器频率响应曲线

2 用窗函数法设计FIR滤波器完成同步解调,观察滤波器频率响应曲线;〔分别使用矩形窗和布莱克曼窗,进展比拟〕;

3 输出解调信号的波形和频谱图,观察现象,给出理论解释;

播放解调音乐信号,比拟不同滤波器下的声音,解释现象。

巴特沃斯IIR滤波器

程序如下

clearall;closeall;clc

[Y,FS,NBITS]=WAVREAD('怒放的生命-汪峰5s');

Y1=Y(:

1);

N=length(Y1);

N1=0:

N-1;

Y2=cos(N1*pi/8);

F=Y1.*Y2';

F2=F.*Y2';%音乐信号调制

wp=0.18;ws=0.25;rp=1;rs=50;%设计巴特沃斯IIR滤波器

[N4,Wc]=buttord(wp,ws,rp,rs);

[B,A]=butter(N4,Wc);

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

figure

subplot(2,1,1);plot(w/pi,abs(Hd));

F3=filter(B,A,F2);%解调音乐信号

N4=length(F3);

F4=fft(F3);

w4=2/N4*[0:

N4/2-1];

subplot(2,1,2);plot(w4,abs(F4(1:

N4/2)));

sound(F3,FS)%声音清晰,根本和原来的音乐差不多,但是音乐开始有一点点杂音。

巴特沃斯IIR滤波器频率响应曲线与解调后的波形

矩形窗和布莱克曼窗

functionhd=ideal(N,wc)

forn=0:

N-1

ifn==(N-1)/2

hd(n+1)=wc/pi;

elsehd(n+1)=sin(wc*(n-(N-1)/2))/(pi*(n-(N-1)/2));

end

end

〔将上述程序保存为ideal.m,但是不能运行。

然后在打开新窗口编写如下主程序〕

clearall;closeall;clc

[Y,FS,NBITS]=WAVREAD('怒放的生命-汪峰5s');

Y1=Y(:

1);

N=length(Y1);

N1=0:

N-1;

Y2=cos(N1*pi/8);

F=Y1.*Y2';

F2=F.*Y2';%调制音乐信号

N=89;wc=pi/0.22;%矩形和布莱克曼窗

hd=ideal(N,wc);

w1=boxcar(N);

w2=blackman(N);

h1=hd.*w1';

h2=hd.*w2';

N1=length(h1);

N2=length(h2);

fh1=fft(h1);

fh2=fft(h2);

ww1=2/N1*(0:

(N1-1)/2);

ww2=2/N2*(0:

(N2-1)/2);

figure

subplot(2,1,1);plot(ww1,abs(fh1(1:

(N1-1)/2+1)));

subplot(2,1,2);plot(ww2,abs(fh2(1:

(N1-1)/2+1)));

F3=conv(F2,h1);

F4=conv(F2,h2);

M1=length(F3);

M2=length(F4);

fy1=fft(F3);

fy2=fft(F4);

w3=2/M1*[0:

M1/2-1];

w4=2/M2*[0:

M2/2-1];

figure

subplot(2,1,1);plot(w3,abs(fy1(1:

M1/2)));

subplot(2,1,2);plot(w4,abs(fy2(1:

M2/2)));

sound(F3,FS)%音乐信号清晰,有杂音,低沉.

滤波器频率响应曲线

解调后波形

5、音乐信号的滤波去噪

1 给出原始音乐信号叠加幅度为0.05,频率为3kHz,5kHz、8kHz的三余弦混合噪声,观察噪声频谱以与加噪后音乐信号的音谱和频谱,并播放音乐,感受噪声对音乐信号的影响;

2 给原始音乐信号叠加幅度为0.5的随机白噪声〔可用rand语句产生〕,观察噪声频谱以与加噪后音乐信号的音谱和频谱,并播放音乐,感受噪声对音乐信号的影响;

根据步骤①、②观察到的频谱,选择适宜指标设计滤波器进展滤波去噪,观察去噪后信号音谱和频谱,并播放音乐,解释现象。

程序如下:

三余弦混合噪声:

[x,fs,nbits]=wavread('怒放的生命-汪峰5s');

x1=x(:

1);%获取单列音乐信号并对其做FFT变换

N1=length(x1);

fx1=fft(x1);

w1=2/N1*[0:

N1/2-1];

n=0:

N1-1;y=0.05*(cos(2*pi*n*3000/fs)+cos(2*pi*n*5000/fs)+cos(2*pi*n*8000/fs));

%设计三余弦混合噪声信号

N2=length(y);%对三余弦混合噪声信号做FFT变换

fy=fft(y);

w2=2/N2*(0:

N2/2-1)*fs/2;

hdx=x1+y';%产生加噪后的音乐信号并对其做FFT变换

M=length(hdx);

fhdx=fft(hdx);

w3=2/M*(0:

M/2-1);

figure%画出单列信号音乐信号的频谱图、三余弦混合噪声信号的离散信号图

%与其频谱图和加噪后音乐信号的频谱图

subplot(2,2,1);plot(w1,abs(fx1(1:

N1/2)));

subplot(2,2,2);stem((0:

127),y(1:

128));

subplot(2,2,3);plot(w2,abs(fy(1:

N2/2)));

subplot(2,2,4);plot(w3,abs(fhdx(1:

M/2)));

sound(hdx,fs);%音乐信号有电流声,而且噪声比拟明显。

wp=0.1;ws=0.15;rp=1;rs=50;%设计巴特沃斯滤波器

[N4,Wc]=buttord(wp,ws,rp,rs);

[B,A]=butter(N4,Wc);

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

lohdx=filter(B,A,hdx);%利用巴特沃斯滤波器对加噪后音乐信号进展滤波并对其做%FFT变换

M1=length(lohdx);

flohdx=fft(lohdx);

w4=2/M1*(0:

M1/2-1);

figure%画出加噪后音乐信号的音频图、巴特沃斯滤波器的频率响应曲线

%和滤波后音乐信号的频谱图

subplot(3,1,1);plot(hdx);

subplot(3,1,2);plot(w/pi,abs(Hd));

subplot(3,1,3);plot(w4,abs(flohdx(1:

M1/2)));

sound(lohdx,fs);%滤波后音乐信号比拟低沉,较清晰。

单列信号音乐信号的频谱图、三余弦混合噪声信号的离散信号图

与其频谱图、加噪后音乐信号的频谱图

加噪后音乐信号的音频图、巴特沃斯滤波器的频率响应曲线

和滤波后音乐信号的频谱图

白噪声:

[x,fs,nbits]=wavread('怒放的生命-汪峰5s');

x1=x(:

1);%获取单列音乐信号并对其做FFT变换

N1=length(x1);

fx1=fft(x1);

w1=2/N1*[0:

N1/2-1];

ry=rand(size(x1))-0.5;%产生随机白噪声信号并对其做FFT变换

N=length(ry);

fry=fft(ry);

w=2/N*(0:

N-1);

xry=x1+ry;%产生加噪后的音乐信号并对其做FFT变换

NN=length(xry)

fxry=fft(xry);

ww=2/NN*(0:

NN/2-1);

figure%画出单列信号音乐信号的频谱图、随机白噪声信号的音频图

%与其频谱图和加噪后音乐信号的频谱图

subplot(2,2,1);plot(w1,abs(fx1(1:

N1/2)));

subplot(2,2,2);plot(ry);

subplot(2,2,3);plot(w,abs(fry));

subplot(2,2,4);plot(ww,abs(fxry(1:

NN/2)));

sound(xry,fs);%声音信号有沙沙声。

wp=0.1;ws=0.15;rp=1;rs=50;%设计巴特沃斯滤波器

[N4,Wc]=buttord(wp,ws,rp,rs);

[B,A]=butter(N4,Wc);

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

loxry=filter(B,A,xry);%利用巴特沃斯滤波器对加噪后音乐信号进展滤波并对%其做FFT变换

NN1=length(loxry);

floxry=fft(loxry);

ww1=2/NN1*(0:

NN1/2-1);

figure%画出加噪后音乐信号的音频图、巴特沃斯滤波器的频率响应曲线

%和滤波后音乐信号的频谱图

subplot(3,1,1);plot(xry)

subplot(3,1,2);plot(w/pi,abs(Hd));

subplot(3,1,3);plot(ww1,abs(floxry(1:

NN1/2)));

%sound(loxry,fs);%音乐信号低沉,但是沙沙声还是没有滤除。

但是较为减轻

 

单列信号音乐信号的频谱图、随机白噪声信号的音频图

与其频谱图和加噪后音乐信号的频谱图

画出加噪后音乐信号的音频图、巴特沃斯滤波器的频率响应曲线

和滤波后音乐信号的频谱图

 

6、音乐信号的幅频滤波与相频分析

1 设计低通滤波器〔可自行选取不同的截止频率〕,滤除原始音乐信号的高频信息,观察滤波前后的幅度频谱,并比拟滤波前后的音乐效果,感受高频信息对音乐信号的影响;

2 设计高通滤波器〔可自行选取不同的截止频率〕,滤除原始音乐信号的低频信息,观察滤波前后的幅度频谱,并比拟滤波前后的音乐效果,感受低频信息对音乐信号的影响;

3 选取两段不同的音乐信号,分别将其幅度谱与相位谱交叉组合构成新的音乐信号,播放比拟组合后的音乐与原始音乐,感受相频信息对音乐信号的影响。

程序如下;

滤除高频信息的程序:

clearall;closeall;clc

[x,fs,nbits]=wavread('怒放的生命-汪峰5s');

x1=x(:

1);%获取单列音乐信号并对其做FFT变换

N=length(x1);

fx1=fft(x1);

w1=2/N*(0:

N/2-1);

wp=0.01;ws=0.06;rp=1;rs=50;%设计巴特沃斯滤波器

[N4,Wc]=buttord(wp,ws,rp,rs);

[B,A]=butter(N4,Wc);

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

lox1=filter(B,A,x1);%使用巴特沃斯滤波器滤除音乐信号的高频局部并对所得

%音乐信号做FFT变换

N1=length(lox1);

flox1=fft(lox1);

w2=2/N1*(0:

N1/2-1);

figure%画出单列音乐信号的频谱图、巴特沃斯滤波器的频率响应曲线和滤除

%高频后的音乐信号的频谱图

subplot(3,1,1);plot(w1,abs(fx1(1:

N/2)));

subplot(3,1,2);plot(w/pi,abs(Hd));

subplot(3,1,3);plot(w2,abs(flox1(1:

N1/2)));

sound(x1,fs);%播放单列音乐信号和滤除高频后的音乐信号

sound(lox1,fs);%声音清晰

单列音乐信号的频谱图、巴特沃斯滤波器的频率响应曲线、

滤除高频后的音乐信号的频谱图

滤除低频信息的程序:

clearall;closeall;clc

[x,fs,nbits]=wavread('怒放的生命-汪峰5s');

x1=x(:

1);%获取单列音乐信号并对其做FFT变换

N=length(x1);

fx1=fft(x1);

w1=2/N*(0:

N/2-1);

wp=0.2;ws=0.05;rp=1;rs=50;%设计巴特沃斯高通滤波器

[N4,Wc]=buttord(wp,ws,rp,rs);

[B,A]=butter(N4,Wc,'high');

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

lox1=filter(B,A,x1);%使用巴特沃斯滤波器滤除音乐信号的低频局部并对所得音乐信号做FFT变换

N1=length(lox1);

flox1=fft(lox1);

w2=2/N1*(0:

N1/2-1);

figure%画出单列音乐信号的频谱图、巴特沃斯滤波器的频率响应曲

%线和滤除低频后的音乐信号的频谱图

subplot(3,1,1);plot(w1,abs(fx1(1:

N/2)));

subplot(3,1,2);plot(w/pi,abs(Hd));

subplot(3,1,3);plot(w2,abs(flox1(1:

N1/2)));

sound(lox1,fs);%声音低,不清晰。

 

交叉组合音乐

clearall;closeall;clc

clearall;closeall;clc

[x,fs,nbits]=wavread('钢琴曲-雨的印记5s');

[y,fs,nbits]=wavread('怒放的生命-汪峰5s');

x1=x(:

1);

y1=y(:

1);

x2=x1(1:

200000)%取音乐长度

Nx2=length(x2);

y2=y1(1:

200000);

Ny2=length(y2);

x3=fft(x2);

y3=fft(y2);

w1=2/Nx2*[0:

Nx2-1];

w2=2/Ny2*[0:

Ny2-1];

 

Fx1=abs(x3);%选取第一个音乐信号的幅度和第二个音乐信号%的相位

Ay1=angle(y3);

F4=Fx1.*exp(j*Ay1);

X4=ifft(F4);

NF4=length(F4);

F5=fft(F4);

w3=2/NF4*[0:

NF4-1];

sound(real(X4),fs);

figure

subplot(3,1,1);plot(w1,abs(x3));

subplot(3,1,2);plot(w2,abs(y3));

subplot(3,1,3);plot(w3,abs(F5));

 

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

当前位置:首页 > 考试认证 > 司法考试

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

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