# Connexions

You are here: Home » Content » Calculation of the Discrete Wavelet Transform

### Recently Viewed

This feature requires Javascript to be enabled.

# Calculation of the Discrete Wavelet Transform

Module by: C. Sidney Burrus. E-mail the author

Although when using the wavelet expansion as a tool in an abstract mathematical analysis, the infinite sum and the continuous description of tRtR are appropriate, as a practical signal processing or numerical analysis tool, the function or signal f(t)f(t) in Equation 1 is available only in terms of its samples, perhaps with additional information such as its being band-limited. In this chapter, we examine the practical problem of numerically calculating the discrete wavelet transform.

## Finite Wavelet Expansions and Transforms

The wavelet expansion of a signal f(t)f(t) as first formulated in (Reference) is repeated here by

f ( t ) = k = - j = - f , ψ j , k ψ j , k ( t ) f ( t ) = k = - j = - f , ψ j , k ψ j , k ( t )
(1)

where the {ψj,k(t)}{ψj,k(t)} form a basis or tight frame for the signal space of interest (e.g., L2L2). At first glance, this infinite series expansion seems to have the same practical problems in calculation that an infinite Fourier series or the Shannon sampling formula has. In a practical situation, this wavelet expansion, where the coefficients are called the discrete wavelet transform (DWT), is often more easily calculated. Both the time summation over the index kk and the scale summation over the index jj can be made finite with little or no error.

The Shannon sampling expansion [8], [6] of a signal with infinite support in terms of sinc(t)=sin(t)t(t)=sin(t)t expansion functions

f ( t ) = n = - f ( T n ) sinc ( π T t - π n ) f ( t ) = n = - f ( T n ) sinc ( π T t - π n )
(2)

requires an infinite sum to evaluate f(t)f(t) at one point because the sinc basis functions have infinite support. This is not necessarily true for a wavelet expansion where it is possible for the wavelet basis functions to have finite support and, therefore, only require a finite summation over kk in Equation 1 to evaluate f(t)f(t) at any point.

The lower limit on scale jj in Equation 1 can be made finite by adding the scaling function to the basis set as was done in (Reference). By using the scaling function, the expansion in Equation 1 becomes

f ( t ) = k = - f , φ J 0 , k φ J 0 , k ( t ) + k = - j = J 0 f , ψ j , k ψ j , k ( t ) . f ( t ) = k = - f , φ J 0 , k φ J 0 , k ( t ) + k = - j = J 0 f , ψ j , k ψ j , k ( t ) .
(3)

where j=J0j=J0 is the coarsest scale that is separately represented. The level of resolution or coarseness to start the expansion with is arbitrary, as was shown in  Chapter: A multiresolution formulation of Wavelet Systems in (Reference), (Reference), and (Reference). The space spanned by the scaling function contains all the spaces spanned by the lower resolution wavelets from j=-j=- up to the arbitrary starting point j=J0j=J0. This means VJ0=W-WJ0-1VJ0=W-WJ0-1. In a practical case, this would be the scale where separating detail becomes important. For a signal with finite support (or one with very concentrated energy), the scaling function might be chosen so that the support of the scaling function and the size of the features of interest in the signal being analyzed were approximately the same.

This choice is similar to the choice of period for the basis sinusoids in a Fourier series expansion. If the period of the basis functions is chosen much larger than the signal, much of the transform is used to describe the zero extensions of the signal or the edge effects.

The choice of a finite upper limit for the scale jj in Equation 1 is more complicated and usually involves some approximation. Indeed, for samples of f(t)f(t) to be an accurate description of the signal, the signal should be essentially bandlimited and the samples taken at least at the Nyquist rate (two times the highest frequency in the signal's Fourier transform).

The question of how one can calculate the Fourier series coefficients of a continuous signal from the discrete Fourier transform of samples of the signal is similar to asking how one calculates the discrete wavelet transform from samples of the signal. And the answer is similar. The samples must be “dense" enough. For the Fourier series, if a frequency can be found above which there is very little energy in the signal (above which the Fourier coefficients are very small), that determines the Nyquist frequency and the necessary sampling rate. For the wavelet expansion, a scale must be found above which there is negligible detail or energy. If this scale is j=J1j=J1, the signal can be written

f ( t ) k = - f , φ J 1 , k φ J 1 , k ( t ) f ( t ) k = - f , φ J 1 , k φ J 1 , k ( t )
(4)

or, in terms of wavelets, Equation 3 becomes

f ( t ) k = - f , φ J 0 , k φ J 0 , k ( t ) + k = - j = J 0 J 1 - 1 f , ψ j , k ψ j , k ( t ) . f ( t ) k = - f , φ J 0 , k φ J 0 , k ( t ) + k = - j = J 0 J 1 - 1 f , ψ j , k ψ j , k ( t ) .
(5)

This assumes that approximately fVJ1fVJ1 or equivalently, f-PJ1f0f-PJ1f0, where PJ1PJ1 denotes the orthogonal projection of ff onto VJ1VJ1.

Given f(t)VJ1f(t)VJ1 so that the expansion in Equation 5 is exact, one computes the DWT coefficients in two steps.

1. Projection onto finest scale: Compute f,φJ1,kf,φJ1,k
2. Analysis: Compute f,ψj,kf,ψj,k, j{J0,...,J1-1}j{J0,...,J1-1} and f,φJ0,kf,φJ0,k.

For J1J1 large enough, φJ1,k(t)φJ1,k(t) can be approximated by a Dirac impulse at its center of mass since φ(t)dt=1φ(t)dt=1. For large jj this gives

2 j f ( t ) φ ( 2 j t ) d t f ( t ) δ ( t - 2 - j m 0 ) d t = f ( t - 2 - j m 0 ) 2 j f ( t ) φ ( 2 j t ) d t f ( t ) δ ( t - 2 - j m 0 ) d t = f ( t - 2 - j m 0 )
(6)

where m0=tφ(t)dtm0=tφ(t)dt is the first moment of φ(t)φ(t). Therefore the scaling function coefficients at the j=J1j=J1 scale are

c J 1 ( k ) = f , φ J 1 , k = 2 J 1 / 2 f ( t ) φ ( 2 J 1 t - k ) d t = 2 J 1 / 2 f ( t + 2 - J 1 k ) φ ( 2 J 1 t ) d t c J 1 ( k ) = f , φ J 1 , k = 2 J 1 / 2 f ( t ) φ ( 2 J 1 t - k ) d t = 2 J 1 / 2 f ( t + 2 - J 1 k ) φ ( 2 J 1 t ) d t
(7)

which are approximately

c J 1 ( k ) = f , φ J 1 , k 2 - J 1 / 2 f ( 2 - J 1 ( m 0 + k ) ) . c J 1 ( k ) = f , φ J 1 , k 2 - J 1 / 2 f ( 2 - J 1 ( m 0 + k ) ) .
(8)

For all 2-regular wavelets (i.e., wavelets with two vanishing moments, regular wavelets other than the Haar wavelets—even in the MM-band case where one replaces 2 by MM in the above equations, m0=0m0=0), one can show that the samples of the functions themselves form a third-order approximation to the scaling function coefficients of the signal [2]. That is, if f(t)f(t) is a quadratic polynomial, then

c J 1 ( k ) = f , φ J 1 , k = 2 - J 1 / 2 f ( 2 - J 1 ( m 0 + k ) ) 2 - J 1 / 2 f ( 2 - J 1 k ) . c J 1 ( k ) = f , φ J 1 , k = 2 - J 1 / 2 f ( 2 - J 1 ( m 0 + k ) ) 2 - J 1 / 2 f ( 2 - J 1 k ) .
(9)

Thus, in practice, the finest scale J1J1 is determined by the sampling rate. By rescaling the function and amplifying it appropriately, one can assume the samples of f(t)f(t) are equal to the scaling function coefficients. These approximations are made better by setting some of the scaling function moments to zero as in the coiflets. These are discussed in Section: Approximation of Scaling Coefficients by Samples of the Signal .

Finally there is one other aspect to consider. If the signal has finite support and LL samples are given, then we have LL nonzero coefficients f,φJ1,kf,φJ1,k. However, the DWT will typically have more than LL coefficients since the wavelet and scaling functions are obtained by convolution and downsampling. In other words, the DWT of a LL-point signal will have more than LL points. Considered as a finite discrete transform of one vector into another, this situation is undesirable. The reason this “expansion" in dimension occurs is that one is using a basis for L2L2 to represent a signal that is of finite duration, say in L2[0,P]L2[0,P].

When calculating the DWT of a long signal, J0J0 is usually chosen to give the wavelet description of the slowly changing or longer duration features of the signal. When the signal has finite support or is periodic, J0J0 is generally chosen so there is a single scaling coefficient for the entire signal or for one period of the signal. To reconcile the difference in length of the samples of a finite support signal and the number of DWT coefficients, zeros can be appended to the samples of f(t)f(t) or the signal can be made periodic as is done for the DFT.

## Periodic or Cyclic Discrete Wavelet Transform

If f(t)f(t) has finite support, create a periodic version of it by

f ˜ ( t ) = n f ( t + P n ) f ˜ ( t ) = n f ( t + P n )
(10)

where the period PP is an integer. In this case, f,φj,kf,φj,k and f,ψj,kf,ψj,k are periodic sequences in kk with period P2jP2j (if j0j0 and 1 if j<0j<0) and

d ( j , k ) = 2 j / 2 f ˜ ( t ) ψ ( 2 j t - k ) d t d ( j , k ) = 2 j / 2 f ˜ ( t ) ψ ( 2 j t - k ) d t
(11)
d ( j , k ) = 2 j / 2 f ˜ ( t + 2 - j k ) ψ ( 2 j t ) d t = 2 j / 2 f ˜ ( t + 2 - j ) ψ ( 2 j t ) d t d ( j , k ) = 2 j / 2 f ˜ ( t + 2 - j k ) ψ ( 2 j t ) d t = 2 j / 2 f ˜ ( t + 2 - j ) ψ ( 2 j t ) d t
(12)

where =<k>P2j=<k>P2j (kk modulo P2jP2j) and l{0,1,...,P2j-1}l{0,1,...,P2j-1}. An obvious choice for J0J0 is 1. Notice that in this case given L=2J1L=2J1 samples of the signal, f,φJ1,kf,φJ1,k, the wavelet transform has exactly 1+1+2+22++2J1-1=2J1=L1+1+2+22++2J1-1=2J1=L terms. Indeed, this gives a linear, invertible discrete transform which can be considered apart from any underlying continuous process similar the discrete Fourier transform existing apart from the Fourier transform or series.

There are at least three ways to calculate this cyclic DWT and they are based on the equations Equation 25, Equation 26, and Equation 27 later in this chapter. The first method simply convolves the scaling coefficients at one scale with the time-reversed coefficients h(-n)h(-n) to give an L+N-1L+N-1 length sequence. This is aliased or wrapped as indicated in Equation 27 and programmed in dwt5.m in Appendix 3. The second method creates a periodic c˜j(k)c˜j(k) by concatenating an appropriate number of cj(k)cj(k) sections together then convolving h(n)h(n) with it. That is illustrated in Equation 25 and in dwt.m in Appendix 3. The third approach constructs a periodic h˜(n)h˜(n) and convolves it with cj(k)cj(k) to implement Equation 26. The Matlab programs should be studied to understand how these ideas are actually implemented.

Because the DWT is not shift-invariant, different implementations of the DWT may appear to give different results because of shifts of the signal and/or basis functions. It is interesting to take a test signal and compare the DWT of it with different circular shifts of the signal.

Making f(t)f(t) periodic can introduce discontinuities at 0 and PP. To avoid this, there are several alternative constructions of orthonormal bases for L2[0,P]L2[0,P][1], [4], [5], [3]. All of these constructions use (directly or indirectly) the concept of time-varying filter banks. The basic idea in all these constructions is to retain basis functions with support in [0,P][0,P], remove ones with support outside [0,P][0,P] and replace the basis functions that overlap across the endpoints with special entry/exit functions that ensure completeness. These boundary functions are chosen so that the constructed basis is orthonormal. This is discussed in Section: Time-Varying Filter Bank Trees . Another way to deal with edges or boundaries uses “lifting" as mentioned in Section: Lattices and Lifting.

## Filter Bank Structures for Calculation of the DWT and Complexity

Given that the wavelet analysis of a signal has been posed in terms of the finite expansion of Equation 5, the discrete wavelet transform (expansion coefficients) can be calculated using Mallat's algorithm implemented by a filter bank as described in Chapter: Filter Banks and the Discrete Wavelet Transform and expanded upon in   Chapter: Filter Banks and Transmultiplexers . Using the direct calculations described by the one-sided tree structure of filters and down-samplers in Figure: Three-Stage Two-Band Analysis Tree allows a simple determination of the computational complexity.

If we assume the length of the sequence of the signal is LL and the length of the sequence of scaling filter coefficients h(n)h(n) is NN, then the number of multiplications necessary to calculate each scaling function and wavelet expansion coefficient at the next scale, c(J1-1,k)c(J1-1,k) and d(J1-1,k)d(J1-1,k), from the samples of the signal, f(Tk)c(J1,k)f(Tk)c(J1,k), is LNLN. Because of the downsampling, only half are needed to calculate the coefficients at the next lower scale, c(J2-1,k)c(J2-1,k) and d(J2-1,k)d(J2-1,k), and repeats until there is only one coefficient at a scale of j=J0j=J0. The total number of multiplications is, therefore,

Mult = L N + L N / 2 + L N / 4 + + N Mult = L N + L N / 2 + L N / 4 + + N
(13)
= L N ( 1 + 1 / 2 + 1 / 4 + + 1 / L ) = 2 N L - N = L N ( 1 + 1 / 2 + 1 / 4 + + 1 / L ) = 2 N L - N
(14)

which is linear in LL and in NN. The number of required additions is essentially the same.

If the length of the signal is very long, essentially infinity, the coarsest scale J0J0 must be determined from the goals of the particular signal processing problem being addressed. For this case, the number of multiplications required per DWT coefficient or per input signal sample is

Mult/sample = N ( 2 - 2 - J 0 ) Mult/sample = N ( 2 - 2 - J 0 )
(15)

Because of the relationship of the scaling function filter h(n)h(n) and the wavelet filter h1(n)h1(n) at each scale (they are quadrature mirror filters), operations can be shared between them through the use of a lattice filter structure, which will almost halve the computational complexity. That is developed in Chapter: Filter Banks and Transmultiplexers and [10].

## The Periodic Case

In many practical applications, the signal is finite in length (finite support) and can be processed as single “block," much as the Fourier Series or discrete Fourier transform (DFT) does. If the signal to be analyzed is finite in length such that

f ( t ) = 0 t < 0 0 t > P f ( t ) 0 < t < P f ( t ) = 0 t < 0 0 t > P f ( t ) 0 < t < P
(16)

we can construct a periodic signal f˜(t)f˜(t) by

f ˜ ( t ) = n f ( t + P n ) f ˜ ( t ) = n f ( t + P n )
(17)

and then consider its wavelet expansion or DWT. This creation of a meaningful periodic function can still be done, even if f(t)f(t) does not have finite support, if its energy is concentrated and some overlap is allowed in Equation 17.

Periodic Property 1: If f˜(t)f˜(t) is periodic with integer period PP such that f˜(t)=f˜(t+Pn)f˜(t)=f˜(t+Pn), then the scaling function and wavelet expansion coefficients (DWT terms) at scale JJ are periodic with period 2JP2JP.

If f ˜ ( t ) = f ˜ ( t + P ) then d ˜ j ( k ) = d ˜ j ( k + 2 j P ) If f ˜ ( t ) = f ˜ ( t + P ) then d ˜ j ( k ) = d ˜ j ( k + 2 j P )
(18)

This is easily seen from

d ˜ j ( k ) = - f ˜ ( t ) ψ ( 2 j t - k ) d t = f ˜ ( t + P n ) ψ ( 2 j t - k ) d t d ˜ j ( k ) = - f ˜ ( t ) ψ ( 2 j t - k ) d t = f ˜ ( t + P n ) ψ ( 2 j t - k ) d t
(19)

which, with a change of variables, becomes

= f ˜ ( x ) ψ ( 2 j ( x - P n ) - k ) d x = f ˜ ( x ) ψ ( 2 j x - ( 2 j P n + k ) ) d x = d ˜ j ( k + 2 j P n ) = f ˜ ( x ) ψ ( 2 j ( x - P n ) - k ) d x = f ˜ ( x ) ψ ( 2 j x - ( 2 j P n + k ) ) d x = d ˜ j ( k + 2 j P n )
(20)

and the same is true for c˜j(k)c˜j(k).

Periodic Property 2: The scaling function and wavelet expansion coefficients (DWT terms) can be calculated from the inner product of f˜(t)f˜(t) with φ(t)φ(t) and ψ(t)ψ(t) or, equivalently, from the inner product of f(t)f(t) with the periodized φ˜(t)φ˜(t) and ψ˜(t)ψ˜(t).

c ˜ j ( k ) = f ˜ ( t ) , φ ( t ) = f ( t ) , φ ˜ ( t ) c ˜ j ( k ) = f ˜ ( t ) , φ ( t ) = f ( t ) , φ ˜ ( t )
(21)

and

d ˜ j ( k ) = f ˜ ( t ) , ψ ( t ) = f ( t ) , ψ ˜ ( t ) d ˜ j ( k ) = f ˜ ( t ) , ψ ( t ) = f ( t ) , ψ ˜ ( t )
(22)

where φ˜(t)=nφ(t+Pn)φ˜(t)=nφ(t+Pn) and ψ˜(t)=nψ(t+Pn)ψ˜(t)=nψ(t+Pn).

This is seen from

d ˜ j ( k ) = - f ˜ ( t ) ψ ( 2 j t - k ) d t = n 0 P f ( t ) ψ ( 2 j ( t + P n ) - k ) d t = 0 P f ( t ) n ψ ( 2 j ( t + P n ) - k ) d t d ˜ j ( k ) = - f ˜ ( t ) ψ ( 2 j t - k ) d t = n 0 P f ( t ) ψ ( 2 j ( t + P n ) - k ) d t = 0 P f ( t ) n ψ ( 2 j ( t + P n ) - k ) d t
(23)
d ˜ j ( k ) = 0 P f ( t ) ψ ˜ ( 2 j t - k ) d t d ˜ j ( k ) = 0 P f ( t ) ψ ˜ ( 2 j t - k ) d t
(24)

where ψ˜(2jt-k)=nψ(2j(t+Pn)-k)ψ˜(2jt-k)=nψ(2j(t+Pn)-k) is the periodized scaled wavelet.

Periodic Property 3: If f˜(t)f˜(t) is periodic with period PP, then Mallat's algorithm for calculating the DWT coefficients in (Reference) becomes

c ˜ j ( k ) = m h ( m - 2 k ) c ˜ j + 1 ( m ) c ˜ j ( k ) = m h ( m - 2 k ) c ˜ j + 1 ( m )
(25)

or

c ˜ j ( k ) = m h ˜ ( m - 2 k ) c j + 1 ( m ) c ˜ j ( k ) = m h ˜ ( m - 2 k ) c j + 1 ( m )
(26)

or

c ˜ j ( k ) = n c j ( k + P n ) c ˜ j ( k ) = n c j ( k + P n )
(27)

where for Equation 27

c j ( k ) = m h ( m - 2 k ) c j + 1 ( m ) c j ( k ) = m h ( m - 2 k ) c j + 1 ( m )
(28)

The corresponding relationships for the wavelet coefficients are

d ˜ j ( k ) = m h 1 ( m - 2 k ) c ˜ j + 1 ( m ) = m h ˜ 1 ( m - 2 k ) c j + 1 ( m ) d ˜ j ( k ) = m h 1 ( m - 2 k ) c ˜ j + 1 ( m ) = m h ˜ 1 ( m - 2 k ) c j + 1 ( m )
(29)

or

d ˜ j ( k ) = n d j ( k + 2 j P n ) d ˜ j ( k ) = n d j ( k + 2 j P n )
(30)

where

d j ( k ) = m h 1 ( m - 2 k ) c j + 1 ( m ) d j ( k ) = m h 1 ( m - 2 k ) c j + 1 ( m )
(31)

These are very important properties of the DWT of a periodic signal, especially one artificially constructed from a nonperiodic signal in order to use a block algorithm. They explain not only the aliasing effects of having a periodic signal but how to calculate the DWT of a periodic signal.

## Structure of the Periodic Discrete Wavelet Transform

If f(t)f(t) is essentially infinite in length, then the DWT can be calculated as an ongoing or continuous process in time. In other words, as samples of f(t)f(t) come in at a high enough rate to be considered equal to cJ1(k)cJ1(k), scaling function and wavelet coefficients at lower resolutions continuously come out of the filter bank. This is best seen from the simple two-stage analysis filter bank in Section: Three-Stage Two-Band Analysis Tree . If samples come in at what is called scale J1=5J1=5, wavelet coefficients at scale j=4j=4 come out the lower bank at half the input rate. Wavelet coefficients at j=3j=3 come out the next lower bank at one quarter the input rate and scaling function coefficients at j=3j=3 come out the upper bank also at one quarter the input rate. It is easy to imagine more stages giving lower resolution wavelet coefficients at a lower and lower rate depending on the number of stages. The last one will always be the scaling function coefficients at the lowest rate.

For a continuous process, the number of stages and, therefore, the level of resolution at the coarsest scale is arbitrary. It is chosen to be the nature of the slowest features of the signals being processed. It is important to remember that the lower resolution scales correspond to a slower sampling rate and a larger translation step in the expansion terms at that scale. This is why the wavelet analysis system gives good time localization (but poor frequency localization) at high resolution scales and good frequency localization (but poor time localization) at low or coarse scales.

For finite length signals or block wavelet processing, the input samples can be considered as a finite dimensional input vector, the DWT as a square matrix, and the wavelet expansion coefficients as an output vector. The conventional organization of the output of the DWT places the output of the first wavelet filter bank in the lower half of the output vector. The output of the next wavelet filter bank is put just above that block. If the length of the signal is two to a power, the wavelet decomposition can be carried until there is just one wavelet coefficient and one scaling function coefficient. That scale corresponds to the translation step size being the length of the signal. Remember that the decomposition does not have to carried to that level. It can be stopped at any scale and is still considered a DWT, and it can be inverted using the appropriate synthesis filter bank (or a matrix inverse).

## More General Structures

The one-sided tree structure of Mallet's algorithm generates the basic DWT. From the filter bank in Section: Three-Stage Two-Band Analysis Tree , one can imagine putting a pair of filters and downsamplers at the output of the lower wavelet bank just as is done on the output of the upper scaling function bank. This can be continued to any level to create a balanced tree filter bank. The resulting outputs are “wavelet packets" and are an alternative to the regular wavelet decomposition. Indeed, this “growing" of the filter bank tree is usually done adaptively using some criterion at each node to decide whether to add another branch or not.

Still another generalization of the basic wavelet system can be created by using a scale factor other than two. The multiplicity-M scaling equation is

φ ( t ) = k h ( k ) φ ( M t - k ) φ ( t ) = k h ( k ) φ ( M t - k )
(32)

and the resulting filter bank tree structure has one scaling function branch and M-1M-1 wavelet branches at each stage with each followed by a downsampler by MM. The resulting structure is called an MM-band filter bank, and it too is an alternative to the regular wavelet decomposition. This is developed in Section: Multiplicity-M (M-band) Scaling Functions and Wavelets .

In many applications, it is the continuous wavelet transform (CWT) that is wanted. This can be calculated by using numerical integration to evaluate the inner products in (Reference) and (Reference) but that is very slow. An alternative is to use the DWT to approximate samples of the CWT much as the DFT can be used to approximate the Fourier series or integral [7], [9], [11].

As you can see from this discussion, the ideas behind wavelet analysis and synthesis are basically the same as those behind filter bank theory. Indeed, filter banks can be used calculate discrete wavelet transforms using Mallat's algorithm, and certain modifications and generalizations can be more easily seen or interpreted in terms of filter banks than in terms of the wavelet expansion. The topic of filter banks in developed in Chapter: Filter Banks and the Discrete Wavelet Transform and in more detail in Chapter: Filter Banks and Transmultiplexers .

## References

1. Cohen, Albert and Daubechies, Ingrid and Vial, Pierre. (1993, December). Wavelets on the Interval and Fast Wavelet Transforms. Applied and Computational Harmonic Analysis, 1(1), 54–81.
2. Gopinath, R. A. and Burrus, C. S. (1992, May). On the Moments of the Scaling Function. In Proceedings of the IEEE International Symposium on Circuits and Systems. (Vol. 2, p. 963–966). ISCAS-92, San Diego, CA
3. Gopinath, R. A. and Burrus, C. S. (1995, March). Factorization Approach to Unitary Time-Varying Filter Banks. [Also a Tech Report No. CML TR-92-23, Nov. 1992]. IEEE Transactions on Signal Processing, 43(3), 666–680.
4. Herley, Cormac and Kovačević, Jelena and Ramchandran, Kannan and Vetterli, Martin. (1992, October 4–6,). Time-Varying Orthonormal Tilings of the Time-frequency Plane. In Proceedings of the IEEE Signal Processing Society's International Symposium on Time–Frequency and Time–Scale Analysis. (p. 11–14). Victoria, BC, Canada
5. Herley, Cormac and Kovačević, Jelena and Ramchandran, Kannan and Vetterli, Martin. (1993, December). Tilings of the Time-frequency Plane: Consturction of Arbitrary Orthogonal Bases and Fast Tiling Algorithms. [Special issue on wavelets]. IEEE Transactions on Signal Processing, 41(12), 3341–3359.
6. Marks II, R. J. (1991). Introduction to Shannon Sampling and Interpolation Theory. New York: Springer-Verlag.
7. nd R. G. Barniuk, D. L. Jones. (1991). Efficient Approximation of Continuous Wavelet Transforms. Electronics Letters, 27(9), 748–750.
8. Papoulis, Athanasios. (1977). Signal Analysis. New York: McGraw-Hill.
9. Rioul, Olivier and Duhamel, P. (1992, March). Fast Algorithms for Discrete and Continuous Wavelet Transforms. [Special issue on wavelets and multiresolution analysis]. IEEE Transactions on Information Theory, 38(2), 569–586.
10. Vaidyanathan, P. P. (1992). Multirate Systems and Filter Banks. Englewood Cliffs, NJ: Prentice-Hall.
11. Vrhel, M. J. and Lee, C. and Unser, M. (1997, March). Fast Continuous Wavelet Transform: A Least-Squares Formulation. Signal Processing, 57(2), 103–120.

## Content actions

PDF | EPUB (?)

### What is an EPUB file?

EPUB is an electronic book format that can be read on a variety of mobile devices.

My Favorites (?)

'My Favorites' is a special kind of lens which you can use to bookmark modules and collections. 'My Favorites' can only be seen by you, and collections saved in 'My Favorites' can remember the last module you were on. You need an account to use 'My Favorites'.

| A lens I own (?)

#### Definition of a lens

##### Lenses

A lens is a custom view of the content in the repository. You can think of it as a fancy kind of list that will let you see content through the eyes of organizations and people you trust.

##### What is in a lens?

Lens makers point to materials (modules and collections), creating a guide that includes their own comments and descriptive tags about the content.

##### Who can create a lens?

Any individual member, a community, or a respected organization.

##### What are tags?

Tags are descriptors added by lens makers to help label content, attaching a vocabulary that is meaningful in the context of the lens.

| External bookmarks