Wavelet Toolbox |
Syntax
XFUS = wfusimg(X1,X2,WNAME,LEVEL,AFUSMETH,DFUSMETH) [XFUS,TXFUS,TX1,TX2] = wfusimg(X1,X2,WNAME,LEVEL,AFUSMETH,DFUSMETH) wfusimg(X1,X2,WNAME,LEVEL,AFUSMETH,DFUSMETH,FLAGPLOT)
Description
The principle of image fusion using wavelets is to merge the wavelet decompositions of the two original images using fusion methods applied to approximations coefficients and details coefficients (see Zeeuw and Misiti et al.).
XFUS = wfusimg(X1,X2,WNAME,LEVEL,AFUSMETH,DFUSMETH) returns the fused image XFUS obtained by fusion of the two original images X1 and X2. Each fusion method, defined by AFUSMETH and DFUSMETH, merges in a specific way detailed below, the decompositions of X1 and X2, at level LEVEL and using wavelet WNAME.
Matrices X1 and X2 must be of the same size and should be associated with indexed images on a common colormap (see wextend
to resize images).
AFUSMETH and DFUSMETH define the fusion method for approximations and details, respectively.
[XFUS,TXFUS,TX1,TX2] = wfusimg(X1,X2,WNAME,LEVEL,AFUSMETH,DFUSMETH) returns in addition to matrix XFUS, three objects of the class WDECTREE associated with XFUS, X1, and X2 respectively (see @WDECTREE). wfusimg(X1,X2,WNAME,LEVEL,AFUSMETH,DFUSMETH,FLAGPLOT) alos plots the objects TXFUS,TX1, and TX2.
Fusmeth denotes AFUSMETH or DFUSMETH. Available fusion methods are
max
', 'min
', 'mean
', 'img1
', 'img2
' or 'rand', which merges the two approximations or details structures obtained from X1 and X2 elementwise by taking the maximum, the minimum, the mean, the first element, the second element, or a randomly chosen element
For the description of these options and the corresponding parameter paramMETH, see wfusmat
.
Examples
The following two examples examine the process of image fusion -- the first one merges two different images leading to a new image and the second restores an image from two fuzzy versions of an original image.
% Example 1: Fusion of two different images % Load two original images: a mask and a bust load mask; X1 = X; load bust; X2 = X; % Merge the two images from wavelet decompositions at level 5 % using db2 by taking two different fusion methods % fusion by taking the mean for both approximations and details XFUSmean = wfusimg(X1,X2,'db2',5,'mean','mean'); % fusion by taking the maximum for approximations and the % minimum for the details XFUSmaxmin = wfusimg(X1,X2,'db2',5,'max','min'); % Plot original and synthesized images colormap(map); subplot(221), image(X1), axis square, title('Mask') subplot(222), image(X2), axis square, title('Bust') subplot(223), image(XFUSmean), axis square, title('Synthesized image, mean-mean') subplot(224), image(XFUSmaxmin), axis square, title('Synthesized image, max-min') % Example 2: Restoration by fusion of fuzzy images % Load two fuzzy versions of an original image load cathe_1; X1 = X; load cathe_2; X2 = X; % Merge the two images from wavelet decompositions at level 5 % using sym4 by taking the maximum of absolute value of the % coefficients for both approximations and details XFUS = wfusimg(X1,X2,'sym4',5,'max','max'); % Plot original and synthesized images colormap(map); subplot(221), image(X1), axis square, title('Catherine 1') subplot(222), image(X2), axis square, title('Catherine 2') subplot(223), image(XFUS), axis square, title('Synthesized image')
The synthesized image is a restored version of good quality of the common underlying original image.
See Also
References
Zeeuw, P.M. (1998), "Wavelet and image fusion," CWI, Amsterdam, march 1998, http:/www.cwi.nl/~pauldz/
Misiti, M.; Y. Misiti, G. Oppenheim, J.-M. Poggi (2003), "Les ondelettes et leurs applications," Hermes.
wfilters | wfusmat |
© 1994-2005 The MathWorks, Inc.