Fast Wavelet Transform
   HOME

TheInfoList



OR:

The fast wavelet transform is a
mathematical Mathematics is an area of knowledge that includes the topics of numbers, formulas and related structures, shapes and the spaces in which they are contained, and quantities and their changes. These topics are represented in modern mathematics ...
algorithm In mathematics and computer science, an algorithm () is a finite sequence of rigorous instructions, typically used to solve a class of specific Computational problem, problems or to perform a computation. Algorithms are used as specificat ...
designed to turn a
waveform In electronics, acoustics, and related fields, the waveform of a signal is the shape of its graph as a function of time, independent of its time and magnitude scales and of any displacement in time.David Crecraft, David Gorham, ''Electronic ...
or signal in the
time domain Time domain refers to the analysis of mathematical functions, physical signals or time series of economic or environmental data, with respect to time. In the time domain, the signal or function's value is known for all real numbers, for the cas ...
into a
sequence In mathematics, a sequence is an enumerated collection of objects in which repetitions are allowed and order matters. Like a set, it contains members (also called ''elements'', or ''terms''). The number of elements (possibly infinite) is calle ...
of coefficients based on an
orthogonal basis In mathematics, particularly linear algebra, an orthogonal basis for an inner product space V is a basis for V whose vectors are mutually orthogonal. If the vectors of an orthogonal basis are normalized, the resulting basis is an orthonormal basis ...
of small finite waves, or
wavelets A wavelet is a wave-like oscillation with an amplitude that begins at zero, increases or decreases, and then returns to zero one or more times. Wavelets are termed a "brief oscillation". A taxonomy of wavelets has been established, based on the num ...
. The transform can be easily extended to multidimensional signals, such as images, where the time domain is replaced with the space domain. This algorithm was introduced in 1989 by
Stéphane Mallat Stéphane Georges Mallat (born 24 October 1962) is a French applied mathematician, concurrently appointed as Professor at Collège de France and École normale supérieure. He made fundamental contributions to the development of wavelet theory in ...
. It has as theoretical foundation the device of a finitely generated, orthogonal
multiresolution analysis A multiresolution analysis (MRA) or multiscale approximation (MSA) is the design method of most of the practically relevant discrete wavelet transforms (DWT) and the justification for the algorithm of the fast wavelet transform (FWT). It was introd ...
(MRA). In the terms given there, one selects a sampling scale ''J'' with
sampling rate In signal processing, sampling is the reduction of a continuous-time signal to a discrete-time signal. A common example is the conversion of a sound wave to a sequence of "samples". A sample is a value of the signal at a point in time and/or spac ...
of 2''J'' per unit interval, and projects the given signal ''f'' onto the space V_J; in theory by computing the
scalar product In mathematics, the dot product or scalar productThe term ''scalar product'' means literally "product with a scalar as a result". It is also used sometimes for other symmetric bilinear forms, for example in a pseudo-Euclidean space. is an algebra ...
s :s^_n:=2^J \langle f(t),\varphi(2^J t-n) \rangle, where \varphi is the scaling function of the chosen wavelet transform; in practice by any suitable sampling procedure under the condition that the signal is highly oversampled, so : P_J x):=\sum_ s^_n\,\varphi(2^Jx-n) is the
orthogonal projection In linear algebra and functional analysis, a projection is a linear transformation P from a vector space to itself (an endomorphism) such that P\circ P=P. That is, whenever P is applied twice to any vector, it gives the same result as if it wer ...
or at least some good approximation of the original signal in V_J. The MRA is characterised by its scaling sequence :a=(a_,\dots,a_0,\dots,a_N) or, as
Z-transform In mathematics and signal processing, the Z-transform converts a discrete-time signal, which is a sequence of real or complex numbers, into a complex frequency-domain (z-domain or z-plane) representation. It can be considered as a discrete-tim ...
, a(z)=\sum_^Na_nz^ and its wavelet sequence :b=(b_,\dots,b_0,\dots,b_N) or b(z)=\sum_^Nb_nz^ (some coefficients might be zero). Those allow to compute the wavelet coefficients d^_n, at least some range ''k=M,...,J-1'', without having to approximate the integrals in the corresponding scalar products. Instead, one can directly, with the help of convolution and decimation operators, compute those coefficients from the first approximation s^.


Forward DWT

For the
discrete wavelet transform In numerical analysis and functional analysis, a discrete wavelet transform (DWT) is any wavelet transform for which the wavelets are discretely sampled. As with other wavelet transforms, a key advantage it has over Fourier transforms is temporal ...
(DWT), one computes
recursively Recursion (adjective: ''recursive'') occurs when a thing is defined in terms of itself or of its type. Recursion is used in a variety of disciplines ranging from linguistics to logic. The most common application of recursion is in mathematics ...
, starting with the coefficient sequence s^ and counting down from ''k = J - 1'' to some ''M < J'', : s^_n:=\frac12 \sum_^N a_m s^_ or s^(z):=(\downarrow 2)(a^*(z)\cdot s^(z)) and : d^_n:=\frac12 \sum_^N b_m s^_ or d^(z):=(\downarrow 2)(b^*(z)\cdot s^(z)) , for ''k=J-1,J-2,...,M'' and all n\in\Z. In the Z-transform notation: :* The downsampling operator (\downarrow 2) reduces an infinite sequence, given by its
Z-transform In mathematics and signal processing, the Z-transform converts a discrete-time signal, which is a sequence of real or complex numbers, into a complex frequency-domain (z-domain or z-plane) representation. It can be considered as a discrete-tim ...
, which is simply a
Laurent series In mathematics, the Laurent series of a complex function f(z) is a representation of that function as a power series which includes terms of negative degree. It may be used to express complex functions in cases where a Taylor series expansion c ...
, to the sequence of the coefficients with even indices, (\downarrow 2)(c(z))=\sum_c_z^. :* The starred Laurent-polynomial a^*(z) denotes the
adjoint filter In signal processing, the adjoint filter mask h^* of a filter mask h is reversed in time and the elements are complex conjugated. :(h^*)_k = \overline Its name is derived from the fact that the convolution with the adjoint filter is the adjoint op ...
, it has ''time-reversed'' adjoint coefficients, a^*(z)=\sum_^N a_^*z^. (The adjoint of a real number being the number itself, of a complex number its conjugate, of a real matrix the transposed matrix, of a complex matrix its hermitian adjoint). :* Multiplication is polynomial multiplication, which is equivalent to the convolution of the coefficient sequences. It follows that :P_k x):=\sum_ s^_n\,\varphi(2^kx-n) is the orthogonal projection of the original signal ''f'' or at least of the first approximation P_J x) onto the subspace V_k, that is, with sampling rate of 2k per unit interval. The difference to the first approximation is given by :P_J x)=P_k x)+D_k x)+\dots+D_ x), where the difference or detail signals are computed from the detail coefficients as :D_k x):=\sum_ d^_n\,\psi(2^kx-n), with \psi denoting the ''mother wavelet'' of the wavelet transform.


Inverse DWT

Given the coefficient sequence s^ for some ''M'' < ''J'' and all the difference sequences d^, ''k'' = ''M'',...,''J'' − 1, one computes recursively : s^_n:=\sum_^N a_k s^_+\sum_^N b_k d^_ or s^(z)=a(z)\cdot(\uparrow 2)(s^(z))+b(z)\cdot(\uparrow 2)(d^(z)) for ''k'' = ''J'' − 1,''J'' − 2,...,''M'' and all n\in\Z. In the Z-transform notation: :* The upsampling operator (\uparrow 2) creates zero-filled holes inside a given sequence. That is, every second element of the resulting sequence is an element of the given sequence, every other second element is zero or (\uparrow 2)(c(z)):=\sum_c_nz^. This linear operator is, in the
Hilbert space In mathematics, Hilbert spaces (named after David Hilbert) allow generalizing the methods of linear algebra and calculus from (finite-dimensional) Euclidean vector spaces to spaces that may be infinite-dimensional. Hilbert spaces arise natural ...
\ell^2(\Z,\R), the adjoint to the downsampling operator (\downarrow 2).


See also

*
Lifting scheme The lifting scheme is a technique for both designing wavelets and performing the discrete wavelet transform (DWT). In an implementation, it is often worthwhile to merge these steps and design the wavelet filters ''while'' performing the wavelet tr ...
* Fast Fourier transform


References

* S.G. Mallat "A Theory for Multiresolution Signal Decomposition: The Wavelet Representation" IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 2, no. 7. July 1989. * I. Daubechies, Ten Lectures on Wavelets. SIAM, 1992. * A.N. Akansu ''Multiplierless Suboptimal PR-QMF Design'' Proc. SPIE 1818, Visual Communications and Image Processing, p. 723, November, 1992 * A.N. Akansu ''Multiplierless 2-band Perfect Reconstruction Quadrature Mirror Filter (PR-QMF) Banks'' US Patent 5,420,891, 1995 * A.N. Akansu ''Multiplierless PR Quadrature Mirror Filters for Subband Image Coding'' IEEE Trans. Image Processing, p. 1359, September 1996 * M.J. Mohlenkamp, M.C. Pereyra ''Wavelets, Their Friends, and What They Can Do for You'' (2008 EMS) p. 38 * B.B. Hubbard ''The World According to Wavelets: The Story of a Mathematical Technique in the Making (1998 Peters) p. 184 * S.G. Mallat ''A Wavelet Tour of Signal Processing'' (1999 Academic Press) p. 255 * A. Teolis ''Computational Signal Processing with Wavelets'' (1998 Birkhäuser) p. 116 * Y. Nievergelt ''Wavelets Made Easy'' (1999 Springer) p. 95


Further reading

G. Beylkin, R. Coifman, V. Rokhlin, "Fast wavelet transforms and numerical algorithms" ''Comm. Pure Appl. Math.'', 44 (1991) pp. 141–183 {{doi, 10.1002/cpa.3160440202 (This article has been cited over 2400 times.) Wavelets Discrete transforms