⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fuse_dwb.m

📁 描述混沌现象的判断及其使用MATLAB对该过程的仿真的程序源码
💻 M
字号:
function Y = fuse_dwb(M1, M2, zt, ap, mp)%Y = fuse_dwb(M1, M2, zt, ap, mp) image fusion with DWT, Wavelet is DBSS(2,2)%%    M1 - input image A%    M2 - input image B%    zt - maximum decomposition level%    ap - coefficient selection highpass (see selc.m) %    mp - coefficient selection base image (see selb.m) %%    Y  - fused image   %    (Oliver Rockinger 16.08.99)% check inputs [z1 s1] = size(M1);[z2 s2] = size(M2);if (z1 ~= z2) | (s1 ~= s2)  error('Input images are not of same size');end;% define filters, padd with zeros due to phase distortionsh1 = [-1 2 6 2 -1 0 0]   / (4*sqrt(2));g1 = [0 0 -2 4 -2 0 0]   / (4*sqrt(2));h2 = [0 0 0 2 4 2 0]     / (4*sqrt(2));g2 = [0 -1 -2 6 -2 -1 0] / (4*sqrt(2));% cells for selected imagesE = cell(3,zt);% loop over decomposition depth -> analysisfor i1 = 1:zt   % calculate and store actual image size   [z s]  = size(M1);   zl(i1) = z; sl(i1)  = s;    % image A  Z1 = dec(conv2(es(M1, 7, 1), g1, 'valid'),2);  A1 = dec(conv2(es(Z1, 7, 2), g1','valid'),1);  A2 = dec(conv2(es(Z1, 7, 2), h1','valid'),1);  Z1 = dec(conv2(es(M1, 7, 1), h1, 'valid'),2);  A3 = dec(conv2(es(Z1, 7, 2), g1','valid'),1);  A4 = dec(conv2(es(Z1, 7, 2), h1','valid'),1);  % image B  Z1 = dec(conv2(es(M2, 7, 1), g1, 'valid'),2);  B1 = dec(conv2(es(Z1, 7, 2), g1','valid'),1);  B2 = dec(conv2(es(Z1, 7, 2), h1','valid'),1);  Z1 = dec(conv2(es(M2, 7, 1), h1, 'valid'),2);  B3 = dec(conv2(es(Z1, 7, 2), g1','valid'),1);  B4 = dec(conv2(es(Z1, 7, 2), h1','valid'),1);   % select coefficients and store them  E(1,i1) = {selc(A1, B1, ap)}; 	E(2,i1) = {selc(A2, B2, ap)}; 	E(3,i1) = {selc(A3, B3, ap)};   % copy input image for next decomposition stage  M1 = A4;    M2 = B4;  end;% select base coefficients of last decompostion stageA4 = selb(A4,B4,mp);% loop over decomposition depth -> synthesisfor i1 = zt:-1:1  % undecimate and interpolate (rows)  A4 = conv2(es(undec(A4,1), 3, 2), h2', 'valid');     A3 = conv2(es(undec(E{3,i1},1), 3, 2), g2', 'valid');   A2 = conv2(es(undec(E{2,i1},1), 3, 2), h2', 'valid');   A1 = conv2(es(undec(E{1,i1},1), 3, 2), g2', 'valid');   % undecimate and interpolate (columns)    A4 = conv2(es(undec(A4+A3,2), 3, 1), h2, 'valid');  A2 = conv2(es(undec(A2+A1,2), 3, 1), g2, 'valid');    % add images and select valid part   A4 = A4 + A2;  A4 = A4(5:5+zl(i1)-1,5:5+sl(i1)-1);end;% copy imageY = A4;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -