LiftingWaveletTransform

LiftingWaveletTransform[data]
gives the lifting wavelet transform (LWT) of an array of data.

LiftingWaveletTransform[data,wave]
gives the lifting wavelet transform using the wavelet wave.

LiftingWaveletTransform[data,wave,r]
gives the lifting wavelet transform using r levels of refinement.

LiftingWaveletTransform[image,]
gives the lifting wavelet transform of an image.

LiftingWaveletTransform[sound,]
gives the lifting wavelet transform of sampled sound.

Details and OptionsDetails and Options

  • LiftingWaveletTransform gives a DiscreteWaveletData object.
  • Properties of the DiscreteWaveletData dwd can be found using dwd["prop"], and a list of available properties can be found using dwd["Properties"].
  • The data can be a rectangular array of any depth.
  • By default, input image is converted to an image of type .
  • The resulting wavelet coefficients are arrays of the same depth as the input data.
  • The possible wavelets wave include:
  • BiorthogonalSplineWavelet[]B-spline-based wavelet
    CDFWavelet[]Cohen-Daubechies-Feauveau wavelet
    CoifletWavelet[]symmetric variant of Daubechies wavelets
    DaubechiesWavelet[]the Daubechies wavelets
    HaarWavelet[]classic Haar wavelet
    ReverseBiorthogonalSplineWavelet[]B-spline-based wavelet (reverse dual and primal)
    SymletWavelet[]least asymmetric orthogonal wavelet
  • The default is HaarWavelet[].
  • With higher settings for the refinement level r, larger scale features are resolved.
  • With refinement level r, LiftingWaveletTransform internally pre-pads data so that each dimension is a multiple of . The padding values used for pre-padding are given by the setting of the Padding option.  »
  • With refinement level Full, r is given by TemplateBox[{{{InterpretationBox[{log, _, DocumentationBuild`Utils`Private`Parenth[2]}, Log2, AutoDelete -> True], (, n, )}, +, {1, /, 2}}}, Floor].
  • The default levels of refinement r are given by , where is the integer factorization of the length of data. For multi-dimensional data, the same computation is done for each dimension and the resulting minimum refinement level is used.  »
  • The tree of wavelet coefficients at level consists of coarse coefficients and detail coefficients , with representing the input data.
  • The dimensions of and are given by , where is given by 2^r TemplateBox[{{l, /, {2, ^, r}}}, Ceiling], where is the input data dimension.  »
  • The following options can be given:
  • MethodAutomaticmethod to use
    Padding"Periodic"how to extend data beyond boundaries
    WorkingPrecisionMachinePrecisionprecision to use in internal computations
  • The settings for Padding include for periodic repetition of the dataset in each dimension and for constant padding.
  • With the setting Method->"IntegerLifting", integer data will transform to integer coefficients, in which case input image data of type is converted to type .
  • InverseWaveletTransform gives the inverse transform.

ExamplesExamplesopen allclose all

Basic Examples  (3)Basic Examples  (3)

Compute a lifting wavelet transform using the HaarWavelet:

In[1]:=
Click for copyable input
Out[1]=

Use Normal to view all coefficients:

In[2]:=
Click for copyable input
Out[2]=

Transform an Image object:

In[1]:=
Click for copyable input
Out[1]=

Use to extract coefficient images:

In[2]:=
Click for copyable input
Out[2]=

Compute the inverse transform:

In[3]:=
Click for copyable input
Out[3]=

Transform a sampled Sound object:

In[1]:=
Click for copyable input
Out[1]=
In[2]:=
Click for copyable input
Out[2]=
In[3]:=
Click for copyable input
Out[3]=
Introduced in 2010
(8.0)