MATLAB实现Brovey图像融合

Posted junjunjun123

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MATLAB实现Brovey图像融合相关的知识,希望对你有一定的参考价值。

function BF=Brovey_fuse(Hyperspectral_image,High_resolution_image)
x0=imread(Hyperspectral_image); %高光谱影像
[a,b,c]=size(x0);
x=double(x0)/255; 
y=imread(High_resolution_image); %高分辨率灰度影像
y1=double(y)/255;     
xx=zeros(a,b,c);
p=zeros(a,b,c);
for f=1:a
    for e=1:b
        xx(f,e)=x(f,e,1)+x(f,e,2)+x(f,e,3);   
        p(f,e,1)=x(f,e,1)*y1(f,e)/xx(f,e);
        p(f,e,2)=x(f,e,2)*y1(f,e)/xx(f,e);
        p(f,e,3)=x(f,e,3)*y1(f,e)/xx(f,e);
    end
end
BF=uint8(round(p*255));
%imshow(BF);

 

以上是关于MATLAB实现Brovey图像融合的主要内容,如果未能解决你的问题,请参考以下文章