加权平均法图像融合算法的原理就是:对原图像的像素值直接取相同的权值,然后进行加权平均得到融合图像的像素值,举例说比如要融合两幅图像A,B,那它们的融合后图像的像素值就是A*50%+B*50%,就这么简单。
相关代码如下:
clc;
clear all;
close all;
x=imread('lab1.bmp');
y=imread('lab2.bmp');
figure,imshow(x);
figure,imshow(y);
a=rgb2gray(x);
b=rgb2gray(y);
a=double(a);
b=double(b);
[aA,aH,aV,aD]=dwt2(a,'bior2.4'); %单级离散二维小波变换
[bA,bH,bV,bD]=dwt2(b,'bior2.4');
newA=zeros(size(aA));
newH=zeros(size(aH));
newV=zeros(size(aV));
newD=zeros(size(aD));
[m,n]=size(aA);
for i=1:m
for j=1:n
newA(i,j)=(aA(i,j)+bA(i,j))/2;
end;
end;
[m,n]=size(aH);
for i=1:m
for j=1:n
newH(i,j)=(aH(i,j)+bH(i,j))/2;
end;
end;
[m,n]=size(aV);
for i=1:m
for j=1:n
newV(i,j)=(aV(i,j)+bV(i,j))/2;
end;
end;
[m,n]=size(aD);
for i=1:m
for j=1:n
newD(i,j)=(aD(i,j)+bD(i,j))/2;
end;
end;
new=idwt2(newA,newH,newV,newD,'bior2.4'); %单级离散二维小波逆变换
new=uint8(new);
figure;
imshow(new);
title('均值')
本文介绍了一种简单的图像融合方法——加权平均法。该方法通过对两幅图像的像素值进行加权平均来获得融合图像。举例展示了如何使用MATLAB实现此方法,并通过离散二维小波变换对图像进行处理。

被折叠的 条评论
为什么被折叠?



