how can I implement image fusion algorithm by using curvelet transform?

Image fusion is the process of combining two images to form only one image which should contain information of both the images.

Respuestas (1)

surya mahajan
surya mahajan el 9 de Feb. de 2020
clearall;
closeall;
%%
[filename filepath]=uigetfile('*.jpg','select the input chromatic image');
filedir1=strcat(filepath,'\',filename);
[filename filepath]=uigetfile('*.jpg','select the input spectral image');
filedir2=strcat(filepath,'\',filename);
im1=imresize(imread(filedir1),[512,512]);
im2=imresize(imread(filedir1),[512,512]);
figure,imshow(im2);
title('inputimage 1-chromatic');
figure,imshow(im2);
tittle('input image 2-multi spectral');
no_of_level=3;
curve_wavelet_2d=CURVELET_PROCESS(im1,1,no_of_level);
for k3=1:3
curve_wavelet_3d=CURVELET_PROCESS(im2(:,:,k3),1,no_of_level);
end
%%
fork5=1:3
curv_coeff=curve_wavelet_3d{k5};
fork6=1:lenght(curv_coeff)-2
tmp_coeff=curv_coeff{k6};
tmp_2dcoeff=curve_wavelet_2d{k6};
for k7=1:length(tmp_coeff)
coeff3d=temp_coeff{k7};
coeff2d=tmp_2dcoeff{k7};
locl=find(coeff2d<1);
coeff3d(locl)=coeff2d(locl);
res..coeff3{k7}=coeff3d;
end
res..coeff2{k6}=res_coeff3;
res_coeff3=[];
end
res_coeff2{k6+1}=curv_coeff{k6+1};
res_coeff2{k6+2}=curv_coeff{k6+2};
final..res..coeff{k5}=res_coeff2;
end
fork10=1:3
imgx=INVERSE_CURVELET_PROCESS(FINAL_RES_COEFF{K10});
imgout(:,:,k10)=imgx;
end
figure,imshow(uint8(imgout));
tittle('resultimage');
%%
resout=uint8(imgout);
for km=1:3
disp(strcat('band--',num2str(km)))
mseerroe=mean(mean(im2(:,:,km)-uint8(imgout(:,:,km))).^2));
MSE_VAL=mseerroe
PSNR_VAL=20*log10(255/mseerroe)
ENTROPY_VAL=entropy_func(double(resout(:,:,km)))
f1img=im2(:,:,km);
f2img=resout(:,:,km);
corrval=xcorr(f1img(:),f2img(:));
CROSS_CORRELATION=max(corrval)
[fx,fy]=gradient(double(resout(:,:,km)));
AVERAGE_GRADIENT_VAL=mean(mean(mean(sqrt((fx.^2+fy.^2)/2))))
UIQI=UniversalImageQualityIndex(double(im2(:,:,km)),double(resout(:,:,km)))
end

2 comentarios

could find CURVELET_PROCESS and INVERSE_CURVELET_PROCESS functions anywhere
defination of curvelet and inverse curvelet fuction is missing

Iniciar sesión para comentar.

Categorías

Más información sobre Denoising and Compression en Centro de ayuda y File Exchange.

Preguntada:

el 19 de Nov. de 2013

Comentada:

el 3 de Ag. de 2021

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by