1 完成语音信号的读取,加噪声及频谱分析
clear all;clc;
[x,Fs,bits]=wavread('ding.wav');
%sound(x,Fs,bits);
t=0:length(x)-1;
x=x(:,2)';
zs=0.05*cos(2*pi*10000*t/Fs);
x_zs=x+zs;
%sound(x,Fs,bits);
subplot(2,1,1);
pinpu(x,Fs);title('原始信号频谱');xlabel('频率(Hz)');
subplot(2,1,2);
pinpu(x_zs,Fs);title('加噪信号频谱');xlabel('频率(Hz)');
2 选取滤波器指标,完成线性相位FIR滤波器设计,观察滤波器幅度响应和相位响应特点,并检查设计出来的滤波器是否满足技术指标;将加噪声前及去噪后语音的时域和频域信号进行对比显示
clear all;clc;
[x,Fs,bits]=wavread('ding.wav');
sound(x,Fs,bits);
t=0:length(x)-1;
x=x(:,1)';
zs=0.05*cos(2*pi*10000*t/Fs);
x_zs=x+zs;
sound(x_zs,Fs,bits);
%blackman FIR filter
%确定窗的形状及窗的长度
fs=4000;fp=3500;
ws=fs/Fs*2*pi;
wp=fp/Fs*2*pi;
deltaw=ws-wp;
N0=ceil(2*pi*5.5/deltaw);
N=N0+mod(N0+1,2)
%由理想频率响应,求其单位冲激响应
wc=(ws+wp)/2;
hd=ideal_lp(wc,N);
%计算数字滤波器的单位冲激响应
wn=wc/pi;
windows=blackman(N);
n=N-1;
b=fir1(n,wn,windows);
[H,w]=freqz(b,1); %b即为h(n)
[db,mag,pha,grd,w1]=freqz_m(b,1);
%检测衰减特性:
dw=2*pi/1000; %dw为频率分辨率
Rp=-(min(db(1:wp/dw+1))) %检验通带波动
As=-round(max(db(ws/dw+1:501))) %检验最小阻带衰减不满足技术指标%作图
dbH=20*log10((abs(H)+eps)/max(abs(H)));
subplot(2,2,1);stem(0:n,hd);title('理想脉冲响应');
xlabel('n');ylabel('hd(n)');
subplot(2,2,2);stem(0:n,windows);title('窗函数特性');
xlabel('n');ylabel('wd(n)');
subplot(2,2,3);stem(0:n,b);title('实际脉冲响应');
xlabel('n');ylabel('h(n)');
subplot(2,2,4);plot(w/pi,dbH);title('幅度频率响应');
xlabel('频率:单位\pi');ylabel('H(e^{j\omega})');
%处理信号
x_windows_lp=conv(x_zs,b);
sound(x_windows_lp,Fs,bits);
%时域分析
figure(2)
subplot(3,1,1);stem(x);
title('原始信号'); subplot(3,1,2); stem(x_zs);
title('加噪信号'); subplot(3,1,3); stem(x_windows_lp);
title('滤波后信号');
%频域分析
figure(3)
subplot(3,1,1);pinpu(x,Fs);
title('原始信号频谱');xlabel('频率(Hz)');
subplot(3,1,2);pinpu(x_zs,Fs);
title('加噪信号频谱');xlabel('频率(Hz)');
subplot(3,1,3);pinpu(x_windows_lp,Fs);
title('滤波后信号频谱');xlabel('频率(Hz)');
pinpu.m
function pinpu(x,Fs)
f=abs(fftshift(fft(x)));
w=linspace(-Fs/2,Fs/2,length(x)); plot(w,f);
axis([0,max(w),min(f), max(f)]);
滤波器特性:
N = 243 Rp = 0.0025 As = 68
50
100
150
200
250
-0.1
-0.0500.050.10.150.2
0.250.30.35理想脉冲响应
n
h d (n )
050100
150200250
0.2
0.4
0.6
0.81
窗函数特性
n
w d (n )
50
100
150
200
250
-0.1
-0.0500.050.10.15
0.2
0.250.3
0.35实际脉冲响应
n
h (n )
00.10.20.3
0.40.50.60.70.80.91
-200
-150-100-50
050
幅度频率响应
频率:单位π
H (e j ω)
语音的时域显示
00.51
1.52
2.5x 10
4
-0.2
-0.100.10.2原始信号
频率(Hz)00.51
1.52
2.5x 10
4
-0.4
-0.200.20.4加噪信号
频率(Hz)00.51
1.52
2.5x 10
4
-0.2
-0.100.10.2滤波后信号
频率(Hz)
语音的频域显示
2000
4000
6000
8000
10000
100
200300400500原始信号频谱
频率(Hz)
2000
4000
6000
8000
10000
100
200300400500加噪信号频谱
频率(Hz)
2000
4000
6000
8000
10000
100
200300400500滤波后信号频谱
频率(Hz)