Package smile.wavelet

Class DaubechiesWavelet

java.lang.Object
smile.wavelet.Wavelet
smile.wavelet.DaubechiesWavelet

public class DaubechiesWavelet extends Wavelet
Daubechies wavelets. The Daubechies wavelets are a family of orthogonal wavelets defining a discrete wavelet transform and characterized by a maximal number of vanishing moments for some given support.

In general the Daubechies wavelets are chosen to have the highest number A of vanishing moments, (this does not imply the best smoothness) for give n support width N = 2A, and among the 2A?1 possible solutions the one is chosen whose scaling filter has extremal phase. The wavelet transform is also easy to put into practice using the fast wavelet transform. Daubechies wavelets are widely used in solving a broad range of problems, e.g. self-similarity properties of a signal or fractal problems, signal discontinuities, etc.

The Daubechies wavelets are not defined in terms of the resulting scaling and wavelet functions; in fact, they are not possible to write down in closed form.

Daubechies orthogonal wavelets D2-D20 (even index numbers only) are commonly used. The index number refers to the number N of coefficients. Each wavelet has a number of zero moments or vanishing moments equal to half the number of coefficients. For example, D2 (the Haar wavelet) has one vanishing moment, D4 has two, etc. A vanishing moment limits the wavelet's ability to represent polynomial behaviour or information in a signal. For example, D2, with one moment, easily encodes polynomials of one coefficient, or constant signal components. D4 encodes polynomials with two coefficients, i.e. constant and linear signal components; and D6 encodes 3-polynomials, i.e. constant, linear and quadratic signal components. This ability to encode signals is nonetheless subject to the phenomenon of scale leakage, and the lack of shift-invariance, which arise from the discrete shifting operation during application of the transform. Sub-sequences which represent linear, quadratic (for example) signal components are treated differently by the transform depending on whether the points align with even- or odd-numbered locations in the sequence. The lack of the important property of shift-invariance, has led to the development of several different versions of a shift-invariant (discrete) wavelet transform.

  • Constructor Details

    • DaubechiesWavelet

      public DaubechiesWavelet(int n)
      Constructor. Create a Daubechies wavelet with n coefficients. n = 4, 6, 8, 10, 12, 14, 16, 18, or 20 are supported. For n = 4, D4Wavelet can be used instead.
      Parameters:
      n - the number of wavelet coefficients.