matlab 小波分析--高通滤波器和低通滤波器

(一)

%加载一个尺度滤波器
load db8;

w=db8;

figure
subplot(4,2,1);
stem(w);
title('原尺度滤波器');
%计算4个滤波器
[Lo_D,Hi_D,Lo_R,Hi_R]=orthfilt(w);

subplot(4,2,3);
stem(Lo_D);
title('分解低通滤波器');
xlabel('尺度');
ylabel('分解低通效果');

subplot(4,2,4);
stem(Hi_D);
title('分解高通滤波器');
xlabel('尺度');
ylabel('分解高通效果');

subplot(4,2,5);
stem(Lo_R);
title('重构低通滤波器');
xlabel('尺度');
ylabel('重构低通效果');

subplot(4,2,6);
stem(Hi_R);
title('重构高通滤波器');
xlabel('尺度');
ylabel('重构高通效果');


%检查双正交性
df=[Lo_D;Hi_D];
rf=[Lo_R;Hi_R];
id=df*df'

%高频和低频
fftld=fft(Lo_D);
ffthd=fft(Hi_D);
freq=[1:length(Lo_D)]/length(Lo_D);
subplot(4,2,7);
plot(freq,abs(fftld));
title('低通:转换模量');
xlabel('尺度');
ylabel('低通模量');
subplot(4,2,8);
plot(freq,abs(ffthd));
title('高通:转换模量');
xlabel('尺度');
ylabel('高通模量');

matlab 小波分析--高通滤波器和低通滤波器_第1张图片 

 

(二)

%计算与bior3.5相关联的分解滤波器DF和重构滤波器RF
[Rf,Df]=biorwavf('bior3.5');

%计算所需要的4个滤波器
[Lo_D,Hi_D,Lo_R,Hi_R]=biorfilt(Df,Rf);

x=randn(1,500); %添加随机噪声
[a,d]=dwt(x,Lo_D,Hi_D);  %利用一维小波函数进行重构
xrec=idwt(a,d,Lo_R,Hi_R);  %利用一维小波函数进行逆重构

erro=x-xrec;

%高频和低频
fftld=fft(Lo_D);
ffthd=fft(Hi_D);
freq=[1:length(Lo_D)]/length(Lo_D);
figure
subplot(2,2,1);
plot(freq,abs(fftld),freq,abs(ffthd));
title('分解:滤波器变换模型');
xlabel('系数');
ylabel('分解效果');


fftlr=fft(Lo_R);
ffthr=fft(Hi_R);
freq=[1:length(Lo_R)]/length(Lo_R);

subplot(2,2,2);
plot(freq,abs(fftlr),freq,abs(ffthr));
title('重构:滤波器变换模型');
xlabel('系数');
ylabel('分解效果');


subplot(2,1,2);
plot(freq,abs(fftlr.*fftld+ffthd.*ffthr));
title('双正交情况');
xlabel('|fft(Lo_R)fft(Lo_D)+fft(Hi_R)fft(Hi_D)|=2');
ylabel('变换');

 

 matlab 小波分析--高通滤波器和低通滤波器_第2张图片

(三)

%计算与bior3.5相关联的分解滤波器DF和重构滤波器RF
[Rf,Df]=biorwavf('bior3.5');

%计算所需要的4个滤波器
[Lo_D,Hi_D,Lo_R,Hi_R]=biorfilt(Df,Rf);

figure
subplot(2,2,1);
stem(Lo_D);
title('分解低通滤波器');
xlabel('滤波器系数');
ylabel('分解效果');

subplot(2,2,2);
stem(Hi_D);
title('分解高通滤波器');
xlabel('滤波器系数');
ylabel('分解效果');

subplot(2,2,3);
stem(Lo_R);
title('重构低通滤波器');
xlabel('滤波器系数');
ylabel('重构效果');

subplot(2,2,4);
stem(Hi_R);
title('重构高通滤波器');
xlabel('滤波器系数');
ylabel('重构效果');

 

matlab 小波分析--高通滤波器和低通滤波器_第3张图片 

你可能感兴趣的:(matlab 小波分析--高通滤波器和低通滤波器)