多光谱图像和全色图像基于小波变换以及IHS变换的像素级融合—附上代码
%读多光谱图像----------------------------------------------
ms=imread('bbb1.bmp');
%IHS变化-------------------------------------------------
IHS=rgb2hsv(ms); %将RGB变换到IHS空间,生成的IHS图像中,1通道对应H,2通道对应S,3通道对应I
%读全色图像-----------------------------------------------
pan=imread('bbb0.bmp');
%替换I------------------------------------------------------
PIHS=rgb2hsv(pan);
%figure,imshow(IHS(:,:,3));
%figure,imshow(PIHS(:,:,3));
a=IHS(:,:,3)*256;
b=PIHS(:,:,3)*256;
a=double(a)/256;
b=double(b)/256;
[c1,s1]=wavedec2(a,2,'sym4');
sizec1=size(c1);
for I=1:sizec1(2);
c1(I)=1.2*c1(I);
end
[c2,s2]=wavedec2(b,2,'sym4');
c=c1+c2;
c=0.5*c;
s=s1+s2;
s=0.5*s;
IHS(:,:,3)=waverec2(c,s,'sym4');
%IHS(:,:,3)=PIHS(:,:,3);
%逆IHS变换,构建融合图象---------------------------------------
fusion=hsv2rgb(IHS);
%显示-----------------------------------------------------
figure,imshow(ms);
title('低分辨率图像');
figure,imshow(pan);
title('高分辨率图像');
figure,imshow(fusion);
title('IHS融合后图像');

浙公网安备 33010602011771号