Code covered by the BSD License
 analysis(f, J, alpha, tau)% signal is first prefiltered, and then a Jlevel wavelet decomposition
 analysis(inImg, J, alpha,...% First, project the image into the four (tensor) approximation space.
 autocorr(M, alpha)% computes the autocorrelation filter A(z) for the fractional Bspline.
 autocorr(M, alpha)% computes the autocorrelation filter A(z) for the fractional Bspline.
 displayFigures (inImg, w,...% Plots the original and the reconstructed images, and the modulus of the
 displayResults(f, recon, w)% display the original and the reconstructed signal, the real and the
 exception( f )% Checks for inconsistencies.
 exception(f, J)% check and correct for inconsistency.
 filters(M, alpha, tau, flag)% sets up the multiresolution spline filters.
 filters(M, alpha, tau, tag)% Computes the analysis and synthesis filters corresponding to the
 generate.m
 generateGaborWavelets.m
 postfilter(Y, L, alpha, t...% Inverts the prefiltering operation.
 prefilter(im0, alpha, tau...% projects the image onto the four different approximation spaces used in
 projectionFilters(M, alph...% projects the signal onto the four 'matched' approximtion spaces.
 projectionFilters(M, alph...% projects the signal onto the two 'matched' approximtion spaces.
 synthesis(lowpass, w, J, ...% reconstructs the signal from the lowpass signal and the complex wavelet
 synthesis(lowpass, w, J, ...% reconstructs the image from the lowpass signals, and the complex wavelet
 demo.m
 demo.m

View all files
Multiresolution Gaborlike transforms
by
Kunal Chaudhury
11 May 2012
(Updated
14 May 2012)
Matlab implementation of the multiresolution Gabor filters in 1 and 2 dimensions.

filters(M, alpha, tau, flag) 
function [H, G] = filters(M, alpha, tau, flag)
%
% sets up the multiresolution spline filters.
% H is the lowpass filter, G is the highpass filter
% flag = 1 (analysis), and = 0 (synthesis)
%
%
nu = (0: 1: M  1) / M;
p = 0.5*(alpha+1)  tau;
q = 0.5*(alpha+1) + tau;
[A, A2] = autocorr(M, alpha);
H = sqrt(2) * ( (1+exp(2*sqrt(1)*pi*nu))/2 ).^p .* ...
( (1+exp(2*sqrt(1)*pi*nu))/2 ).^q;
G = exp(2*sqrt(1)*pi*nu) .* A .* H;
G = conj( [G(M/2+(1:M/2)) G(1:M/2)] );
if flag == 1
return;
else
H = (H .* A) ./ A2;
G = G ./(A2 .* [A(M/2+(1:M/2)) A(1:M/2)]);
end


Contact us