📄 iwt2dscl.m
字号:
function i=iwt2dscl(w,wavfile,reflect,nscales)
%$Id: iwt2dscl.m,v 1.1.1.1 2000/10/16 09:30:40 mattb Exp $
%===========================================================================
% Matt Bowers - University of Bath
%
% Copyright (c) 1996
%===========================================================================
%
% Performs am multi-scale 2D reverse wavelet transform.
%
% Arguements:
% w matrix of transform coefficients
% wavfile full path of wavelet .wav file
% reflect =0 for wrapround edge treatment (any wavelet)
% =1 for reflection (symmetrical wavelets only)
% nscales number of scales to be performed
%
% Returns: floating point reconstructed image matrix
%
%===========================================================================d
[c_c c_u c_c_min c_c_max c_u_min c_u_max] =readwav(wavfile); % Read in wavelet
[H_zero F_zero H_one F_one] = mkfilt(c_c,c_u, c_c_min, c_c_max, c_u_min, c_u_max); % Construct analysis
% and synthesis filter
% from wavelet
if reflect % Set 'edge' to specify edge treatment
if rem(length(H_zero),2) % Odd or even length wavelet?
% disp('Odd reflect')
edge=1; %odd
else
% disp('Even reflect')
edge=2; %even
end
else
edge=0; % Wrapround
end
[img_y img_x]=size(w); % Image size
if rem(img_x,2) % Check even size
error('Odd size image in x')
end
if rem(img_y,2) % Check even size
error('Odd size image in y')
end
%disp(['Reverse 2D-wavelet transform, nscales=' num2str(nscales)])
i=w;
img_x=img_x/(2^(nscales-1)); % Set to smallest scale
img_y=img_y/(2^(nscales-1)); % Set to smallest scale
for scale=1:nscales % Loop for scales
% disp([' Scale=' num2str(scale)])
[lpfx hpfx is2x]=imkindex(img_x,c_c_min,c_c_max,c_u_min,c_u_max,edge); % Create indexing mx's
[lpfy hpfy is2y]=imkindex(img_y,c_c_min,c_c_max,c_u_min,c_u_max,edge); % Create indexing mx's
i(1:img_y,1:img_x)=iwt2d(i(1:img_y,1:img_x),lpfy,hpfy,is2y,lpfx,hpfx,is2x,F_zero,F_one); % Reverse wavelet transform
img_x=img_x*2; % Next scale size
img_y=img_y*2; % Next scale size
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -