MATLAB 图像融合评价算法


function laplacian(ori_A,ori_B)
path(path,'FusionEvaluation/')
%Ori_A = imread('clockA_tif2bmp (256x256).BMP');
%Ori_B = imread('clockB_tif2bmp (256x256).BMP');
ori_A = imread('clockA.BMP');
ori_B = imread('clockB.BMP');
ori_A=rgb2gray(ori_A);
ori_B=rgb2gray(ori_B);
A_a = double(ori_A)/255;
B_b = double(ori_B)/255;
[p1,q1] = size(ori_A);
[p2,q2] = size(ori_B);
if(p1~=p2||q1~=q2)
    error('The size of image A and image B must be the same......');
end
F = fuse_lap(A_a,B_b,4,1,3);
%%
F=F*255;
F(F<0)=0;
disp('拉普拉斯指标:')
F(F>255)=255;
F=round(F);
%%
grey_level=256;
Criteria=Evaluation(double(ori_A),double(ori_B),F,grey_level);
disp(Criteria)
figure,imshow(F-double(ori_A),[])
F_DWT = fuse_dwb(A_a,B_b,4,1,3);
F_DWT=F_DWT*255;
F_DWT(F_DWT<0)=0;
disp('离散小波变换指标:')
F_DWT(F_DWT>255)=255;
F_DWT=round(F_DWT);
%%
grey_level=256;
Criteria=Evaluation(double(ori_A),double(ori_B),F_DWT,grey_level);
disp(Criteria)
figure,imshow(F_DWT-double(ori_A),[])
F_CON = fuse_con(A_a,B_b,4,1,3);


F_CON=F_CON*255;
F_CON(F_CON<0)=0;
disp('Contrast Pyramid变换指标:')
F_CON(F_CON>255)=255;
F_CON=round(F_CON);
%%
grey_level=256;
figure,imshow(F_CON-double(ori_A),[])
Criteria=Evaluation(double(ori_A),double(ori_B),F_CON,grey_level);
disp(Criteria)

F_SIH = fuse_sih(A_a,B_b,4,1,3);

F_SIH=F_SIH*255;
F_SIH(F_SIH<0)=0;
disp('FSD Pyramid变换指标:')
F_SIH(F_SIH>255)=255;
F_SIH=round(F_SIH);
%%
grey_level=256;
figure,imshow(F_SIH-double(ori_A),[])
Criteria=Evaluation(double(ori_A),double(ori_B),F_SIH,grey_level);
disp(Criteria)


  • 3
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值