📄 wt2dscl_original.m
字号:
function w=wt2dscl(i,wavfile,reflect,nscales)
%$Id: wt2dscl.m,v 1.1.1.1 2000/10/16 09:30:40 mattb Exp $
%===========================================================================
% Matt Bowers - University of Bath
%
% Copyright (c) 1996
%===========================================================================
%
% Performs multi-scale 2D forward wavelet transform
%
% Arguements:
% i image matrix to transform
% 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:
% w matrix of floating point transform coefficients
%
%===========================================================================
[c_c c_u c_c_min c_c_max c_u_min c_u_max] =readwav(wavfile); % Read wavelet file
[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 filters
if reflect % Set edge to specify edge handling
if rem(length(H_zero),2) % Odd or even length wavelet?
% disp('Odd reflect')
edge=1;
else
% disp('Even reflect')
edge=2;
end
else
edge=0; % Else wraparound
end
[img_y img_x]=size(i); % Image size
if rem(img_x,2) % Check even
error('Odd size image in x')
end
if rem(img_y,2) % Check even
error('Odd size image in y')
end
%disp(['Forward 2D-wavelet transform, nscales=' num2str(nscales)])
w=i;
for scale=1:nscales % Loop for scales
if rem(img_x,2) % Check for even size
error(['Odd size in x at scale' num2str(scale)])
end
if rem(img_y,2) % Check for even size
error(['Odd size in y at scale' num2str(scale)])
end
% disp([' Scale=' num2str(scale)])
[lpfx hpfx]=mkindex(img_x,c_c_min,c_c_max,c_u_min,c_u_max, edge); % Create indexing matrices
[lpfy hpfy]=mkindex(img_y,c_c_min,c_c_max,c_u_min,c_u_max, edge); % Create indexing matrices
w(1:img_y,1:img_x)=wt2d(w(1:img_y,1:img_x),lpfy,hpfy,lpfx,hpfx,H_zero,H_one); % 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 + -