# ContinuousWaveletTransform

ContinuousWaveletTransform[{x1,x2,}]

gives the continuous wavelet transform of a list of values xi.

ContinuousWaveletTransform[data,wave]

gives the continuous wavelet transform using the wavelet wave.

ContinuousWaveletTransform[data,wave,{noct,nvoc}]

gives the continuous wavelet transform using noct octaves with nvoc voices per octave.

ContinuousWaveletTransform[sound,]

gives the continuous wavelet transform of sampled sound.

# Details and Options  • ContinuousWaveletTransform gives a ContinuousWaveletData object.
• 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 wave is .
• 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.
• For each scale , the ContinuousWaveletTransform computes the wavelet coefficients .
• The following options can be given:
•  Padding None how to extend data beyond boundaries SampleRate Automatic samples per unit WaveletScale Automatic smallest resolvable scale WorkingPrecision MachinePrecision precision 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.
• InverseContinuousWaveletTransform gives the inverse transform.

# Examples

open allclose all

## Basic Examples(2)

Compute a continuous wavelet transform using MexicanHatWavelet:

Plot the coefficients:

Perform an inverse continuous wavelet transform:

Transform a sampled Sound object:

Plot a scalogram:

## Scope(18)

### Basic Uses(6)

Compute a continuous wavelet transform:

Show all the voices for the 8 octave:

Use Normal to get all wavelet coefficients explicitly:

Also use All as an argument to get all coefficients:

Use "IndexMap" 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:

### Time and Scale Features(4)

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 {oct,voc} that resolve frequencies 20 Hz and 70 Hz:

Verify using a WaveletScalogram:

### Wavelet Families(6)

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:

MexicanHatWavelet (default):

### Sound(2)

ContinuousWaveletTransform works on Sound as input:

Speech analysis using ContinuousWaveletTransform:

The orange patches correspond to the words "You will return safely to Earth":

Extract octaves 5 and 6:

## Options(9)

The settings for Padding are the same as the methods for ArrayPad, including "Periodic":

"Reversed":

"ReversedNegation":

"Reflected":

"ReflectedDifferences":

"ReversedDifferences":

"Extrapolated":

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:

### SampleRate(3)

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:

### WaveletScale(1)

WaveletScale indicates the smallest resolvable scale used for the transform:

The scales used are given as with wavelet scale, octave, and voice:

### WorkingPrecision(2)

By default, is used:

Use higher-precision computation:

## Applications(4)

### Identify Features(2)

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:

### Filter Frequencies(2)

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 {oct,voc} that resolve frequencies 300 Hz:

## Properties & Relations(1)

The default value for octave is given by :

Default value of voices is 4:

## Possible Issues(1)

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:

## Neat Examples(1)

Scalogram of a Zeta function: