声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1328|回复: 1

[小波] 根据小波变化的原理自己编写的的程序。

[复制链接]
发表于 2014-12-22 11:46 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
%% 采用小波变换原理进行小波变换(滤波器系数矩阵第一行长度始终是2)
clear;
clc
y=[1:10]
T=10; % 信号长度
n=1:T;
%% 选用db2
wavelet='db2';
[Lo_D,Hi_D,Lo_R,Hi_R] = wfilters(wavelet);
%% 1.离散序列小波变换的矩阵分解表示
   h0=Lo_D(end:-1:1);%形成低通滤波器系数矩阵
   h1=Hi_D(end:-1:1);%形成高通滤波器系数矩阵
   H00=zeros(13,16);
   H10=zeros(13,16);
     for i=1:13
          H00(i,i:i+3)=h0;
      end
            for i=1:13
          H10(i,i:i+3)=h1;
            end
  %第零层到第一层分解
H01=H00(2:2:end,4:13);%对系数矩阵行列分别进行删除
H11=H10(2:2:end,4:13);
a1=H01*y';%第一层近似系数
d1=H11*y';%第一层细节系数
%第一层到第二层分解
H02=H01(1:4,1:6);%对系数矩阵行列分别进行删除(4*6 )
H12=H11(1:4,1:6);
a2=H02*a1;%第二层近似系数
d2=H12*a1;%第二层细节系数
%第二层到第三层分解
H03=H01(1:3,1:4);%对系数矩阵行列分别进行删除
H13=H11(1:3,1:4);
a3=H03*a2;%第三层近似系数
d3=H13*a2;%第三层细节系数  
%% 1.离散序列小波变换的矩阵重构表示
%用第一层系数进行重构(第零层到第一层分解滤波器系数矩阵的转置)
G01=H01';
G11=H11';
x00=G01*a1;
y01=G11*d1;
y1=x00'+y01'

%% 用第二层系数进行重构
%第二层系数重构第一层系数
G02=H02';
G12=H12';
a11=G02*a2;
d11=G12*d2;
a1=a11+d11;
%第一层系数重构第零层系数(原始信号)
G01=H01';
G11=H11';
x02=G01*a1;
y02=G11*d1;
y2= x02'+y02'
% %  
  %% 第二层重构第零层(原始信号)
   g0=Lo_R(end:-1:1);%形成低通滤波器系数矩阵
   g1=Hi_R(end:-1:1);%形成高通滤波器系数矩阵
   G11=H11';
   G01=H01';
   G02=H02';
   G12=H12';
%    G12=G11(:,2:2:end);
%   G12=[G12 zeros(length(G12),1)]
%    G02=G01(:,2:2:end);
%   G02=[G02 zeros(length(G02),1)]
% z01=G02*a2+G12*d2
% z11=G11*d1
x01=G01*G02*a2+G01*G12*d2+G11*d1
Q=[G01*G02,G01*G12, G11]
Confi=[a2;d2;d1]
D=cond(Confi); %求矩阵Gck的条件数
s=Q* Confi

评分

1

查看全部评分

回复
分享到:

使用道具 举报

发表于 2014-12-27 21:24 | 显示全部楼层
给力, 学习
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-12-26 04:52 , Processed in 0.100158 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表