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

📄 coef.m

📁 多小波变换MATLAB源程序,m文件形式给出
💻 M
📖 第 1 页 / 共 2 页
字号:

elseif strcmp(flt,'bih54n')
  L=[-3/16 -5/48  1/2   1/12 11/8  0   1/2  -1/12 -3/16  5/48
     33/32  9/16 -21/8 -3/8   0    5/2 21/8 -3/8  -33/32 9/16]/sqrt(2);
  H=[0 0 0 0  1/2  1/4 -1  0   1/2 -1/4
     0 0 0 0 -3/8 -1/8  0 -1/2 3/8 -1/8]/sqrt(2);

elseif strcmp(flt,'bih34n')
  L=[0 0 1/2  3/4 1  0   1/2 -3/4
     0 0 -1/8 -1/8 0  1/2 1/8 -1/8]/sqrt(2);
  H=[0 0 -5/64  3/64  1/2  21/16 -27/32 0     1/2 -21/16 -5/64 -3/64
     0 0  1/96 -1/32 -1/6 -3/8    0    -57/16 1/6 -3/8   -1/96 -1/32]/sqrt(2);

elseif strcmp(flt,'sa4')
  L=[(32 + 8*sqrt(15))^(-1),  1/8,  (31 + 8*sqrt(15))/(8*(4 + sqrt(15))), 1/8, (31 + 8*sqrt(15))/(8*(4 + sqrt(15))), -1/8, (32 + 8*sqrt(15))^(-1), -1/8;
     (32 + 8*sqrt(15))^(-1), -1/8, -(31 + 8*sqrt(15))/(8*(4 + sqrt(15))), 1/8, (31 + 8*sqrt(15))/(8*(4 + sqrt(15))),  1/8, -1/(8*(4 + sqrt(15))),  -1/8]/sqrt(2);

  H=[-1/8, (32 + 8*sqrt(15))^(-1), 1/8, -(31 + 8*sqrt(15))/(8*(4 + sqrt(15))), 1/8, (31 + 8*sqrt(15))/(8*(4 + sqrt(15))),  -1/8, -1/(8*(4 + sqrt(15)));
     -1/8, -1/(8*(4 + sqrt(15))), -1/8, -(31 + 8*sqrt(15))/(8*(4 + sqrt(15))), 1/8, -(31 + 8*sqrt(15))/(8*(4 + sqrt(15))), 1/8, -1/(8*(4 + sqrt(15)))]/sqrt(2);

elseif strcmp(flt,'bighm2')
  L=[0,0,0,0,1,   0,   1,   0;
     0,0,0,0,8/5,-2/5,-8/5,-2/5]/sqrt(2);

  H=[3/13,-2/13,-1,    -2/13,10/13,40/13,10/13,-40/13,-1,    2/13,3/13,2/13;   
     3/2, -1,   -13/2, -1,  -4,    26,   4,     26,    13/2,-1,  -3/2,-1]/sqrt(2);

elseif strcmp(flt,'bighm6')
  L=[-1/40,1/40,1/40,-9/40,1,   -1/4,  1,    1/4,  1/40, 9/40,-1/40,-1/40;
     -1/40,1/40,1/40,-9/40,13/20,1/10,-13/20,1/10,-1/40,-9/40, 1/40, 1/40]/sqrt(2);

  H=[0,0,0,0,0,    13/40,0,   -13/40;
     0,0,0,0,1/100,1/25,-1/100,1/25]/sqrt(2);

elseif strcmp(flt,'cardbal2')
L=[0.02209708691208                 0   0.17396999725850   0.70710678118655 ...
0.66291260736239                  0  -0.17116329922036                  0 ...
0.02209708691208                  0  -0.00280669803814                  0;
0.00280669803814                  0   0.02209708691208                  0 ...
0.17116329922036   0.70710678118655   0.66291260736239                  0 ...
-0.17396999725850                  0   0.02209708691208                  0];

H=[-0.02209708691208                0  -0.17396999725850   0.70710678118655 ...
-0.66291260736239                  0   0.17116329922036                  0 ...
-0.02209708691208                  0   0.00280669803814                  0;
-0.00280669803814                  0  -0.02209708691208                  0 ...
-0.17116329922036   0.70710678118655  -0.66291260736239                  0 ...
0.17396999725850                  0  -0.02209708691208                  0];

elseif strcmp(flt,'cardbal3')
L=[0.00777141529460                  0   0.01890191323078                 0 ...
0.15346244941283   0.70710678118655   0.67249812840628                  0 ...
-0.15346244941283                  0   0.01251156586818                  0 ...
-0.00777141529460                  0   0.00319517368130                  0;
0.00319517368130                  0   0.00777141529460                  0 ...
0.01251156586818                  0   0.15346244941283   0.70710678118655 ...
0.67249812840628                  0  -0.15346244941283                  0 ...
0.01890191323078                  0  -0.00777141529460                  0];

H=[-0.00777141529460                  0  -0.01890191323078                0 ...
-0.15346244941283   0.70710678118655  -0.67249812840628                  0 ...
 0.15346244941283                  0  -0.01251156586818                  0 ...
0.00777141529460                  0  -0.00319517368130                  0;
-0.00319517368130                  0  -0.00777141529460                  0 ...
-0.01251156586818                  0  -0.15346244941283   0.70710678118655 ...
-0.67249812840628                  0   0.15346244941283                  0 ...
-0.01890191323078                  0   0.00777141529460                  0];

elseif strcmp(flt,'cardbal4')
L=[-0.00000045995944                  0  -0.00172617386509               0 ...
-0.00491803042978                  0   0.02900162132252                  0 ...
0.19092914488214   0.70710678118655   0.65255620837152                  0 ...
-0.18972126188006                  0   0.02900081607293                  0 ...
0.00310620592666                  0  -0.00172552966542                  0 ...
0.00060440146048                  0  -0.00000016104992                  0;
-0.00000016104992                  0  -0.00060440146048                  0 ...
-0.00172552966542                  0  -0.00310620592666                  0 ...
0.02900081607293                  0   0.18972126188006   0.70710678118655 ...
0.65255620837152                  0  -0.19092914488214                  0 ...
0.02900162132252                  0   0.00491803042978                  0 ...
-0.00172617386509                  0   0.00000045995944                  0];

H=[0.00000045995944                  0   0.00172617386509                0 ...
0.00491803042978                  0  -0.02900162132252                  0 ...
-0.19092914488214   0.70710678118655  -0.65255620837152                  0 ...
0.18972126188006                  0  -0.02900081607293                  0 ...
-0.00310620592666                  0   0.00172552966542                  0 ...
-0.00060440146048                  0   0.00000016104992                  0;
0.00000016104992                  0   0.00060440146048                  0 ...
0.00172552966542                  0   0.00310620592666                  0 ...
-0.02900081607293                  0  -0.18972126188006   0.70710678118655 ...
-0.65255620837152                  0   0.19092914488214                  0 ...
-0.02900162132252                  0  -0.00491803042978                  0 ...
0.00172617386509                  0  -0.00000045995944                  0];


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%   以下是平衡多重小波滤波器         %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
elseif strcmp(flt,'clbal')   %%%%     这是cl平衡多重小波,这常用来编码    %%%%%
R=[1 -1;1 1];

C11=[1/(2*sqrt(2))  -1/(2*sqrt(2)) ; sqrt(7)/(4*sqrt(2))   -sqrt(7)/(4*sqrt(2))];
C21=[1/sqrt(2)      0              ; 0                      1/(2*sqrt(2))      ];
C31=[1/(2*sqrt(2))  1/(2*sqrt(2))  ; -sqrt(7)/(4*sqrt(2))  -sqrt(7)/(4*sqrt(2))];

D11=[1/(2*sqrt(2)) -1/(2*sqrt(2))  ; -1/(4*sqrt(2))        1/(4*sqrt(2))       ];
D21=[-1/sqrt(2)    0               ; 0                     sqrt(7)/(2*sqrt(2)) ];
D31=[1/(2*sqrt(2)) 1/(2*sqrt(2))   ; 1/(4*sqrt(2))         1/(4*sqrt(2))       ];

C1=R*C11*R';C2=R*C21*R';C3=R*C31*R';
D1=R*D11*R';D2=R*D21*R';D3=R*D31*R';

L=[C1,C2,C3];
H=[D1,D2,D3];

elseif strcmp(flt,'ghmbal')  %%%%%%%%%%   这是ghm平衡多重小波   %%%%%%%%%%%%%%
R=[1 -1;1 1];

C11=[3/(5*sqrt(2))  4/5;-1/20   -3/(10*sqrt(2))];
C21=[3/(5*sqrt(2))  0  ;9/20          1/sqrt(2)];
C31=[0              0  ;9/20    -3/(10*sqrt(2))];
C41=[0              0  ; -1/20  0              ];

C1=R*C11*R';C2=R*C21*R';C3=R*C31*R';C4=R*C41*R';

D11=[-1/20           -3/(10*sqrt(2));1/(10*sqrt(2))  3/10 ];
D21=[9/20           -1/sqrt(2)      ;-9/(10*sqrt(2))  0   ];
D31=[9/20            -3/(10*sqrt(2));9/(10*sqrt(2))   -3/10];
D41=[-1/20           0              ;-1/(10*sqrt(2)) 0];

D1=R*D11*R';D2=R*D21*R';D3=R*D31*R';D4=R*D41*R';

L=[C1,C2,C3,C4];
H=[D1,D2,D3,D4];

elseif strcmp(pflt,'opt')         %% The multiwavelets is optiminal_reconstruction 
    R=(1/sqrt(2))*[1 -1 ;1 1];    %% It seems some problem
    
    C11=0.5*[1 0 ;-sqrt(3)/2 1/2];
    C21=0.5*[1 0 ; sqrt(3)/2 1/2];
    
    C1=R*C11*R';C2=R*C21*R';
    
    D11=0.5*[-1/2 -sqrt(3)/2 ; 0  -1];
    D21=0.5*[ 1/2 -sqrt(3)/2 ; 0   1];
    
    D1=R*D11*R';D2=R*D21*R';
    
    L=[C1,C2];
    H=[D1,D2];
    

end 

⌨️ 快捷键说明

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