www.gusucode.com > 图像融合程序大全源码程序 > 图像融合程序大全/重要程序/小波new/xiaobo2.m

    %load e:\black.mat
[A,M]=imread('21.jpg')
whos;
X1=A;
map1=M;
%subplot(2,2,1);
image(X1);
%colormap(map1);
%title('原图像1');%画出原图1
axis square
p=imhist(X1(:));
% remove zero entries in p
p(p==0)=[];
% normalize p so that sum(p) is one.
p=p./numel(X1);
Entropy1=-sum(p.*log2(p));

%load e:\goss.mat
[A,M]=imread('12.jpg')
whos;
X2=A;
map2=M;
%subplot(2,2,2);
image(X2);
colormap(map2);
%title('原图像2');
axis square %画出原图2
p=imhist(X2(:));
% remove zero entries in p
p(p==0)=[];
% normalize p so that sum(p) is one.
p=p./numel(X1);
Entropy2=-sum(p.*log2(p));

X11=X1(:,:,1);
X12=X1(:,:,2);
X13=X1(:,:,3);
X21=X2(:,:,1);
X22=X2(:,:,2);
X23=X2(:,:,3);%把3维的图像分成3个2维的

[c1,s1]=wavedec2(X11,2,'sym4');
% sizec1=size(c1);
% for I=1:sizec1(2)
%  c1( I )=1.2*c1( I );
% end
[c2,s2]=wavedec2(X21,2,'sym4');
% c=c1+c2;
% c=0.5*c;
c=c2;
s=s1;
xx1=waverec2(c,s,'sym4');%对图像进行重构

[c1,s1]=wavedec2(X12,2,'sym4');
[c2,s2]=wavedec2(X22,2,'sym4');
c=c1;
s=s1;
xx2=waverec2(c,s,'sym4');

[c1,s1]=wavedec2(X13,2,'sym4');
[c2,s2]=wavedec2(X23,2,'sym4');
c=c2;
s=s1;
xx3=waverec2(c,s,'sym4');

xx0(:,:,1)=xx1;
xx0(:,:,2)=xx2;
xx0(:,:,3)=xx3;
X3=uint8(xx0);%把图像联合起来,转化成标准格式

%subplot(2,2,3);
image(X3);
colormap(map1);
title('小波融合后的图像');
%axis square   %融合后的图像
p=imhist(X3(:));
% remove zero entries in p
p(p==0)=[];
% normalize p so that sum(p) is one.
p=p./numel(X1);
Entropy3=-sum(p.*log2(p));