二维小波分解源码程序 - matlab算法设计 - 谷速源码
下载频道> 资源分类> matlab源码> 算法设计> 二维小波分解源码程序

标题:二维小波分解源码程序
分享到:

所属分类: 算法设计 资源类型: 文件大小: 1.22 KB 上传时间: 2016-01-28 21:28:38 下载次数: 12 资源积分:1分 提 供 者: xiaopeng2 二维小波分解源码程序
内容:
二维小波分解源码程序,程序员在编程的过程中可以参考学习使用,希望对IT程序员有用,此源码程序简单易懂、方便阅读,有很好的学习价值!
%  此程序实现多小波分解2-D图像
%  Implementation.m
 
 
clc;clear
 
%  对称反对称多小波滤波器组(P0,P1,P2,P3;Q0,Q1,Q2,Q3.)
P0= [0.4075    0.0415
     0.0415    0.4075]/sqrt(2);
 
P1=[0.0925    0.9075
    0.9075    0.0925]/sqrt(2);
S=[1 0;0 -1];
A=[0 1;1 0];
 
P2=S*P1*S;
P3=S*P0*S;
Q0=(-1)*P3*A;
Q1=(+1)*P2*A;
Q2=(-1)*P1*A;
Q3=(+1)*P0*A;
 
%  下载测试图像
load wbarb;
D=1;
NN=length(X);  %  图像大小
 
T=1;  %  分解层数
 
%  构造多小波变换矩阵
for i=1:T
    
    %  每一层的有效矩阵长度
    N=NN/(2^(i-1));
    
    %  L(低通矩阵);
    A1=[P0,P1,P2,P3,zeros(2,N-4*2)];
    C1=A1;
    B1=A1;
    for i=1:N/4-1
        B1=circshift(B1.',4).';
        C1=[C1;B1];
    end;
 
    %  H(高通矩阵);
    A2=[Q0,Q1,Q2,Q3,zeros(2,N-4*2)];
    C2=A2;
    B2=A2;
    for i=1:N/4-1
        B2=circshift(B2.',4).';
        C2=[C2;B2];
    end;
    
    %  Combine(低通和高通矩阵合并)
    C=[C1;C2];
    
    %  最终矩阵生成(多层)
    D=D*sparse([eye(NN-N,NN-N),zeros(NN-N,N);zeros(N,NN-N),C].');
end;
 
%  多小波正变换
woman1=D'*X*D;
 
%  多小波正变换
woman2=D*woman1*D';
 
%  显示
figure(1);
image(woman1)
colormap(map)
title('分解')
figure(2);
image(woman2)
colormap(map)
title('重构')
 
%  正交性验证
norm(eye(NN,NN)-D'*D)
norm(eye(NN,NN)-D*D')
 

文件列表(点击上边下载按钮,如果是垃圾文件请在下面评价差评或者投诉):

二维小波分解源码程序/
二维小波分解源码程序/code/
二维小波分解源码程序/code/Implementation.m

关键词: 二维 源码 程序

Top_arrow
回到顶部
联系方式| 版权声明| 招聘信息| 广告服务| 银行汇款| 法律顾问| 兼职技术| 付款方式| 关于我们|
网站客服网站客服 程序员兼职招聘 程序员兼职招聘
沪ICP备19040327号-3
公安备案号:沪公网安备 31011802003874号
库纳格流体控制系统(上海)有限公司 版权所有
Copyright © 1999-2014, GUSUCODE.COM, All Rights Reserved