一、双树复小波变换简介

1999年, Kingsbury提出了双树复小波变换。随后, 2005年, Seles nick等设计出了双树复小波变换的分解重构算法,这一算法的提出,使得双树复小波变换能够应用于信号分析和图像处理等领域。与小波变换不同,双树复小波变换具有近似位移不变性、数据冗余有限及方向选择性良好等特点,可以反映图像在六个方向上的分辨率变化。图2.4展示了多贝西小波和复数小波的分解示意图。

【图像融合】基于matlab双树复小波变换像素级图像融合【含Matlab源码 2024期】_开发语言


图2.4多贝西小波与复数小波分解示意图

可以看出,多贝西小波只有一个维度的分解。复数小波则有实部和虚部两个维度。双树复小波变换每个维度使用两棵树,每个树都有短的低通滤波器和高通滤波器,以合成单个线性相位复合低通、高通滤波器对。两棵树中的过滤器正好是时间相反的。图2.5为一维双树复小波变换过程:

图中树A、树B分别表示复数小波变换的实部和虚部,部和虚部,↓2代表隔点采样,h(x)和h(x)分别表示树A的低通滤波器和高通滤波器,其对应的尺度函数及小波函数分别为:

【图像融合】基于matlab双树复小波变换像素级图像融合【含Matlab源码 2024期】_图像处理_02


g.(x)和gi(x)则分别表示树B的低通滤波器和高通滤波器,其对应的尺度函数及小波函数分别为:

【图像融合】基于matlab双树复小波变换像素级图像融合【含Matlab源码 2024期】_高通滤波_03


那么,一维的双树复小波可以由下式表示:

e(t) =c, (t) +i eg(t) ·(2.3)

二维的双树复小波变换需要用到二维小波。对图像进行分解时,双树复小波变换先沿着行方向分解,再对得到的结果进行列方向的分解,最终得到一个低频子带和六个代表不同方向的高频子带,这六个方向分别为:±15°,±45°,±75°。之后,得到的低频子带依然可以进行再分解。因此,若图像经过K次双树复小波变换分解后,将有6K+1个不同的子带,分别为6K个高频子带和一个低频子带。

【图像融合】基于matlab双树复小波变换像素级图像融合【含Matlab源码 2024期】_matlab_04


图2.6图像的二层DT CWT分解示意图

二、部分源代码

clear all; close all; home;
% User selection (1,2,3,…)
J = 6; % number of decomposition levels used in the fusion[Faf,Fsf] = FSfarras; % first stage filters
[af,sf] = dualfilt1; % second stage filters% images to be fused
im1 = double(imread(‘saras91.jpg’));
im2 = double(imread(‘saras92.jpg’));
figure; subplot(121);imshow(im1,[]); subplot(122); imshow(im2,[]);% image decomposition
w1 = cplxdual2D(im1,J,Faf,af);
w2 = cplxdual2D(im2,J,Faf,af);% Image fusion process start here
for j=1:J % number of stages
for p=1:2 %1:real part & 2: imaginary part
for d1=1:2 % orientations
for d2=1:3
x = w1{j}{p}{d1}{d2};
y = w2{j}{p}{d1}{d2};
D = (abs(x)-abs(y)) >= 0;
wf{j}{p}{d1}{d2} = D.*x + (~D).y; % image fusion
end
end
end
end
for m=1:2 % lowpass subbands
for n=1:2
wf{J+1}{m}{n} = 0.5(w1{J+1}{m}{n}+w2{J+1}{m}{n}); % fusion of lopass subbands
end
end% fused image
imf = icplxdual2D(wf,J,Fsf,sf);
figure; imshow(imf,[]);
function [af, sf] = dualfilt1% Kingsbury Q-filters for the dual-tree complex DWT
%
% USAGE:
% [af, sf] = dualfilt1
% OUTPUT:
% af{i}, i = 1,2 - analysis filters for tree i
% sf{i}, i = 1,2 - synthesis filters for tree i
% note: af{2} is the reverse of af{1}
% REFERENCE:
% N. G. Kingsbury, “A dual-tree complex wavelet
% transform with improved orthogonality and symmetry
% properties”, Proceedings of the IEEE Int. Conf. on
% Image Proc. (ICIP), 2000
% See dualtree
%
% WAVELET SOFTWARE AT POLYTECHNIC UNIVERSITY, BROOKLYN, NY
% http://taco.poly.edu/WaveletSoftware/% These cofficients are rounded to 8 decimal places.
af{1} = [
0.03516384000000 0
0 0
-0.08832942000000 -0.11430184000000
0.23389032000000 0
0.76027237000000 0.58751830000000
0.58751830000000 -0.76027237000000
0 0.23389032000000
-0.11430184000000 0.08832942000000
0 0
0 -0.03516384000000
];af{2} = [
0 -0.03516384000000
0 0
-0.11430184000000 0.08832942000000
0 0.23389032000000
0.58751830000000 -0.76027237000000
0.76027237000000 0.58751830000000
0.23389032000000 0
-0.08832942000000 -0.11430184000000
0 0
0.03516384000000 0
];sf{1} = af{1}(end👎1, 😃;
sf{2} = af{2}(end👎1, 😃;

三、运行结果

【图像融合】基于matlab双树复小波变换像素级图像融合【含Matlab源码 2024期】_小波变换_05


【图像融合】基于matlab双树复小波变换像素级图像融合【含Matlab源码 2024期】_开发语言_06

四、matlab版本及参考文献

1 matlab版本
2014a

2 参考文献
[1] 李梦萦.基于双树复小波变换和稠密SIFT描述子的多焦距图像融合[D].吉林大学

3 备注
简介此部分摘自互联网,仅供参考,若侵权,联系删除