This is documentation for Mathematica 8, which was
based on an earlier version of the Wolfram Language.
View current documentation (Version 11.1)

ContinuousWaveletTransform

ContinuousWaveletTransform
gives the continuous wavelet transform of a list of values .
ContinuousWaveletTransform
gives the continuous wavelet transform using the wavelet wave.
ContinuousWaveletTransform
gives the continuous wavelet transform using noct octaves with nvoc voices per octave.
ContinuousWaveletTransform
gives the continuous wavelet transform of sampled sound.
  • Properties of the ContinuousWaveletData cwd can be found using cwd["prop"]. A list of available properties can found using cwd["Properties"].
  • The resulting wavelet coefficients are arrays of the same dimensions as the input data.
  • The possible wavelets wave include:
MorletWavelet[...]Morlet cosine times Gaussian
GaborWavelet[...]complex Morlet wavelet
DGaussianWavelet[...]derivative of Gaussian
MexicanHatWavelet[...]second derivative of Gaussian
PaulWavelet[...]Paul wavelet
  • The default value for noct is given by , where is the length of the input.  »
  • The default value for nvoc is 4.
  • The continuous wavelet transform of a function is given by .
  • The continuous wavelet transform of a uniformly sampled sequence is given by .
  • The scaling parameter is given by equal-tempered scale where is the octave number, the voice number, and the smallest wavelet scale.
  • The following options can be given:
PaddingNonehow to extend data beyond boundaries
SampleRateAutomaticsamples per unit
WaveletScaleAutomaticsmallest resolvable scale
WorkingPrecisionMachinePrecisionprecision to use in internal computations
  • Padding pads the input data to the next higher power of 2 to reduce boundary effects. The settings for Padding are the same as for the padding argument used in ArrayPad.
Compute a continuous wavelet transform using MexicanHatWavelet:
Plot the coefficients:
Perform an inverse continuous wavelet transform:
Transform a sampled Sound object:
Plot a scalogram:
Compute a continuous wavelet transform using MexicanHatWavelet:
In[1]:=
Click for copyable input
Out[1]=
Plot the coefficients:
In[2]:=
Click for copyable input
Out[2]=
Perform an inverse continuous wavelet 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]=
Plot a scalogram:
In[3]:=
Click for copyable input
Out[3]=
Compute a continuous wavelet transform:
Show all the voices for the 8^(th) octave:
Use Normal to get all wavelet coefficients explicitly:
Also use All as an argument to get all coefficients:
Use to find out what wavelet coefficients are available:
Extract specific coefficient arrays:
Extract several wavelet coefficients corresponding to the list of wavelet index specifications:
Extract all coefficients whose wavelet indexes match a pattern:
WaveletScalogram gives a time scale representation of wavelet coefficients:
More voices per octave increases the scale resolution:
Higher number of octaves gives a wider spectrum of scale range:
A single frequency shows up as a horizontal band at the equivalent scale:
Multiple frequencies show up as multiple bands at the equivalent scales:
Sinusoid with linearly increasing frequency:
Wavelet transform gives a good time localization of features:
Higher frequencies are resolved at lower octaves and lower frequencies at higher octaves:
Resolve time and frequency features of a signal:
Use GaborWavelet to perform a continuous wavelet transform:
There is an inverse relationship between scale values and frequency values:
Find pairs of that resolve frequencies 20 Hz and 70 Hz:
Verify using a WaveletScalogram:
Compute the wavelet transform using different wavelet families:
A narrow wavelet function will have good time and scale resolution:
A broad wavelet function will have poor time and scale resolution:
Use different families of wavelets to capture different features:
Speech analysis using ContinuousWaveletTransform:
The orange patches correspond to the words "You will return safely to Earth":
Extract octaves 5 and 6:
The settings for Padding are the same as the methods for ArrayPad, including :
:
:
:
:
:
:
Padding has no effect on the length of wavelet coefficients:
Padding pads the input data to the next higher power of 2 to reduce boundary effects:
Boundary effects at the start:
Boundary effects at the end:
WaveletScale indicates the smallest resolvable scale used for the transform:
The scales used are given as with wavelet scale, octave, and voice:
For lists, the Automatic value of SampleRate is set to 1:
Explicitly set the sample rate:
For Sound data, the Automatic value of SampleRate is extracted from the Sound data object:
SampleRate is used for normalizing wavelet transform coefficients:
By default, WorkingPrecision->MachinePrecision is used:
Use higher-precision computation:
Real wavelet functions can be used to isolate peaks or discontinuities:
Complex wavelets can be used to capture oscillatory behavior:
Amplitude of wavelet coefficients:
Phase of wavelet coefficients:
ContinuousWaveletTransform can be used to filter frequencies:
Filter the cosine with frequency :
Perform InverseContinuousWaveletTransform on a thresholded data object:
The final filtered signal:
Identify musical notes using a scalogram:
Generate a sequence of pitches corresponding to an equal-tempered scale at 300 Hz:
Compute frequencies resolved corresponding to octaves and voices:
Find pairs of that resolve frequencies 300 Hz:
The default value for octave is given by :
Default value of voices is 4:
Low-frequency data is resolved at higher octaves:
Based on the length of input data, the Automatic setting for octaves resolved 8 octaves:
Increase the number of octaves to resolve the low-frequency component:
Scalogram of a Zeta function:
New in 8