⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 vs.txt

📁 对给出的两个声音信号文件进行频谱分析
💻 TXT
字号:
两个声音信号文件进行时域分析和频谱分析的matlab程序:
clear;
clc;
[w1,fs1,bits1]=wavread('PK_SE00.wav');  
figure(1)
subplot(2,1,1);
plot(w1(:,1))
title('原始声音信号')
y1=fft(w1,1024);  % 对声音信号做1024点的FFT变换
yy1=abs(y1);
f1=fs1*(0:512)/1024;
subplot(2,1,2);
plot(f1,yy1(1:513))
title('原始声音信号的频谱')

[w2,fs2,bits2]=wavread('PK_SE00p.wav');  % 读取声音文件
figure(2)
subplot(2,1,1);
plot(w2(:,1))
title('受干扰后的声音信号');
y2=fft(w2,1024);
yy2=abs(y2);
f2=fs2*(0:512)/1024;
subplot(2,1,2);
plot(f2,yy2(1:513))
title('受干扰后声音信号的频谱');
低通滤波器来把噪声滤除,程序如下:
N=60;  %  设计滤波器的阶数
Wn=3400/12000;
hn=fir1(N-1,Wn);  %  设计FIR低通滤波器
hw=fft(hn,1024);
figure(3)
plot(f2,20*log10(abs(hw(1:513))))
title('低通滤波器');
grid

ha=fft(hn,1024);
hx=abs(ha).*(y2');  %  对信号进行FIR低通滤波
ihx=ifft(hx);  %  对滤波后的信号进行FFT逆变换
figure(4)
subplot(2,1,1);
plot(ihx(1:512))
title('低通滤波后的声音信号');

hyy=ha.*y2';
subplot(2,1,2);
plot(f2,abs(hyy(1:513)))
title('低通滤波后声音信号的频谱');

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -