<< Chapter < Page | Chapter >> Page > |
We saw in a previous section an example of a scaling function and we outlined how to construct (also called the mother wavelet) starting from (the father wavelet). Suppose now we have at our disposal and In fact, it is sufficient for our purpose to know the value of these functions at dyadic points We would like to compute in an efficient way the wavelet representation described in Homogeneous and inhomogeneous representation of f , that is, we would like to have a fast algorithm to compute the wavelet coefficients.
We will still use the relationship between the functions spaces and to find a fast wavelet transform (FWT). We start by recalling that, since both the scaling function and the wavelet are in and since is generated by there exist two sequences and such that
for all On the other hand, we know that and as we consider the orthogonal case, it follows immediately that :
These two equations [link] and [link] can be combined into a single formula:
which is called the “decomposition relation” of and
Note that, in the bi-orthogonal case there are four sequences in instead of two (denoted here by and ): we have two sequences for the 2-scales relations [link] , [link] , and two others for the decomposition relations [link] , [link] . In the following algorithm, we drop the normalisation constant. Suppose that we want to decompose as a sum of wavelets and that we have computed, or are given, the inner products of with where is the finest scale we can work on. We denote these inner products by Now, our task is to compute and where
By combining [link] , [link] and [link] , we get (see [link] ):
Observe that both and are obtained from by “moving average” schemes, using the decomposition sequence as “weights”, with the exception that these moving averages are sampled only at the even integers. This is called downsampling.
In the orthogonal case, the reconstruction algorithm follows easily from the relationships:
which gives:
Hence is obtained from and by two moving average.
In the previous section, we assumed that we knew the coefficients
The question to ask is: how to compute these coefficients ? In Mallat's algorithm (see [link] ), we consider that the finestscale is constituted by the observations themselves. To use the MRA presented above, these observations must be taken at equispaced points, i.e. we can write that
Moreover, we assume that (the number of observations) is a power of 2 : with denoting the finest level.
Mallat's algorithm is based on the fact that, as tends to infinity, the support of tends to become smaller and smaller. We have:
Hence Mallat considered that we can compute as:
The starting point of this algorithm is thus extremely simple: we just take as value for the whole set of observations. Thereafter, having constructed the filters (or, equivalently, having constructed and ), we can compute a fast wavelet transform using the algorithm presented in the previous section.
Notification Switch
Would you like to follow the 'Multiresolution analysis, filterbank implementation, and function approximation using wavelets' conversation and receive update notifications?