matlab图像融合代码,图像融合+源代码+matlab
【实例简介】
【实例截图】
【核⼼代码】
⼩波融合代码:
%%  ⼩波变换图像融合
[imA,map1]
= imread('A.tif');
M1 =
double(imA) / 256;
[imB,map2]
= imread('B.tif');
M2 =
double(imB) / 256;
zt=
4;
wtype =
'haar';
%    M1 - input image A
%    M2 - input image B
%    wtype使⽤的⼩波类型
%    Y  -
fused image
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%  ⼩波变换的绝对值⼤的⼩波系数,对应着显著的亮度变化,也就是图像中的显著特征。所以,选择绝对值⼤的⼩波系数作为我们需要的⼩波系数。
%%  低频部分系数采⽤⼆者求平均的⽅法
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
[c0,s0] =
wavedec2(M1, zt, wtype);%多尺度⼆维⼩波分解
[c1,s1] =
wavedec2(M2, zt, wtype);%多尺度⼆维⼩波分解
%%  取绝对值⼤的⼩波系数,作为融合后的⼩波系数
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
KK =
size(c1);
Coef_Fusion
= zeros(1,KK(2));
Temp =
zeros(1,2);
Coef_Fusion(1:s1(1,1))
= (c0(1:s1(1,1)) c1(1:s1(1,1)))/2;
%处理⾼频系数
MM1 = c0(s1(1,1) 1:KK(2));
MM2 = c1(s1(1,1) 1:KK(2));
mm = (abs(MM1)) > (abs(MM2));
Y  =
(mm.*MM1) ((~mm).*MM2);
Coef_Fusion(s1(1,1) 1:KK(2)) = Y;
%处理⾼频系数end
%重构
Y = waverec2(Coef_Fusion,s0,wtype); %显⽰图像
subplot(2,2,1);imshow(M1);
colormap(gray);
title('
input image A ');
axis
square
subplot(2,2,2);imshow(M2);
colormap(gray);
title('
input image B ');源代码大电影
axis
square
subplot(223);imshow(Y,[]);
colormap(gray);
title('
fused image '); axis
square;

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。