Documentation Center

  • Trial Software
  • Product Updates

Wavelet Toolbox Release Notes


New Features, Bug Fixes

Dual-Tree Wavelet Transforms

This release introduces a new example, Dual-Tree Wavelet Transforms, which demonstrates the advantages of the dual-tree discrete wavelet transform (DWT) over the critically sampled DWT. The example illustrates the approximate shift invariance and directional selectivity of the complex dual-tree wavelet transform. These properties enable the dual-tree wavelet transform to outperform the critically sampled DWT in a number of applications.


New Features, Bug Fixes

Two-Dimensional Continuous Wavelet Transform (2-D CWT)

This release introduces the 2-D continuous wavelet transform (CWT) for images. The 2-D CWT provides information about images at specified scales, rotation angles, and positions in the plane. Applications of the 2-D CWT include:

  • Fault detection in images

  • Object recognition

  • Fringe pattern profilometry

For information on how to implement the 2-D CWT at the MATLAB® command line, see cwtft2.

To use cwtft2 in the Wavelet Toolbox™ interactive tool, enter

>> wavemenu

Then, from the Two-dimensional tools section, select Continuous Wavelet Transform 2-D. See 2-D Continuous Wavelet Transform App for more information on the 2-D CWT app.

cwtft2 supports both isotropic and anisotropic 2-D wavelets. Use isotropic wavelets to perform pointwise analysis in images or when oriented features are not relevant. Use anisotropic wavelets when your goal is to detect oriented features.

cwtft2 implements the 2-D CWT using the 2-D discrete Fourier transform. Use cwtftinfo2 to obtain the 2-D Fourier transforms of the supported analyzing wavelets.

Dual-Tree Transforms and Double-Density Transforms

This release introduces two types of 1-D and 2-D oversampled (frame) wavelet perfect reconstruction filter banks. For 1-D wavelet analysis, use dddtree to obtain the following wavelet transforms:

  • Complex dual-tree

  • Double-density

  • Complex dual-tree double-density

For 2-D wavelet analysis, use dddtree2 to obtain the following wavelet transforms:

  • Double-density

  • Real oriented dual-tree

  • Complex oriented dual-tree

  • Real oriented double-density dual-tree

  • Complex oriented double-density dual-tree

The dual-tree and double-density transforms mitigate a number of shortcomings of the critically sampled discrete wavelet transform. The double-density and dual-tree transforms achieve directional selectivity and approximate shift invariance with significantly less computational cost than the undecimated discrete wavelet transform.


Bug Fixes


Bug Fixes


New Features

Matching Pursuit

In R2012a you can decompose a 1-D signal in a dictionary of time/frequency or time/scale atoms with matching pursuit.

Representing a signal in a union of time-frequency/time-scale bases can provide sparser signal representations than attainable with any single basis. Matching pursuit uses iterative greedy algorithms to reduce the computational complexity of searching through a redundant dictionary.

Wavelet Toolbox software supports basic matching pursuit, orthogonal matching pursuit, and weak orthogonal matching pursuit at the command line with wmpdictionary and wmpalg. You can also perform matching pursuit with the interactive wavemenu tool.

You can build dictionaries using several internally supported options or provide your own custom dictionaries. See Matching Pursuit for background information and examples.


New Features, Bug Fixes, Compatibility Considerations

Fourier Transform Based Continuous Wavelet Transform GUI

In R2011b, you can compute the Fourier transform based continuous wavelet transform (CWT) and inverse CWT using the Wavelet Toolbox graphical user interface wavemenu. To access these graphical tools, enter wavemenu at the command line, and select Continuous Wavelet 1-D (using FFT).

Inverse Continuous Wavelet Transform Using Linear Scales

In R2011b, you can compute the inverse continuous wavelet transform (CWT) for a wider class of analyzing wavelets using icwtlin. icwtlin returns the inverse for CWT coefficients obtained at linearly spaced scales. icwtlin supports the output of cwtft and the output of cwt for a select number of wavelets. See icwtlin for detailed information.

MATLAB Code Generation Support for Denoising and Compression GUIs

In R2011b, you can generate MATLAB code for 1-D and 2-D discrete wavelet transforms (DWT), stationary wavelet transforms (SWT), and wavelet packet transforms. You can denoise or compress a signal or image in the GUI and export the MATLAB code to implement that operation at the command line. This approach allows you to set denoising thresholds or compression ratios aided by visualization tools and save the commands to reproduce those operations at the command line. See Generating MATLAB Code from Wavelet Toolbox GUI for examples.

Signal Reconstruction from Continuous Wavelet Transform Coefficients Demo

R2011b includes a new demo illustrating signal reconstruction using the continuous wavelet transform (CWT). The demo emphasizes the use of the CWT to analyze a signal and reconstruct a time- and scale-based approximation with select coefficients using the inverse CWT. See Signal Reconstruction from Continuous Wavelet Transform CoefficientsSignal Reconstruction from Continuous Wavelet Transform Coefficients for details.

Changes in Fourier Transform Based Continuous Wavelet Transform Defaults for Derivative of Gaussian (DOG) and Paul Wavelets

In R2011b, the default values for the smallest scale, scale increment, and number of scales have changed in cwtft for the derivative of Gaussian (DOG) and Paul wavelets. The change in the defaults also affects the Mexican hat wavelet, which is a special case of the DOG wavelet. In R2011b, the default value of the smallest scale for the Paul and DOG wavelets is 2*dt, where dt is the sampling period. The default scale increment, ds, is 0.4875. The default number of scales is fix(log2(length(sig))/ds)+1 for the Paul wavelet and max([fix(log2(length(sig))/ds),1]) for the DOG wavelets, where sig is the input signal.

Compatibility Considerations

cwtft was introduced in R2011a. In that release, the default smallest scales for the DOG and Paul wavelets are dt/8 and dt respectively, where dt is the sampling interval. The default scale increment is 0.5. The default number of scales is fix(1.5*log2(length(sig))/ds)+1 for the Paul wavelet. For DOG wavelets, the default number of scales is fix(1.25*log2(length(sig))/ds)+1, where sig is the input signal. You can obtain results in R2011b using cwtft with the DOG and Paul wavelets identical to results in R2011a with the default values. To do so, specify the smallest scale, scale increment, and number of scales in a structure or cell array. See cwtft for details.


New Features, Bug Fixes

Inverse Continuous Wavelet Transform

In R2011a, you can compute the inverse continuous wavelet transform (CWT) using an FFT-based algorithm. The inverse CWT allows you to synthesize approximations to your 1D signal based on selected scales. The inverse CWT is only supported for coefficients obtained using the FFT-based CWT. See icwtft and cwtft for details.

FFT-based Continuous Wavelet Transform

In R2011a, you can compute the continuous wavelet transform (CWT) using an FFT-based algorithm with cwtft. The CWT computed using an FFT algorithm supports the computation of the inverse CWT. See cwtft and icwtft for details. Only select wavelets are valid for use with cwtft. See cwtftinfo for a list of supported wavelets.

Pattern-adapted Wavelets for Signal Detection Demo

In R2011a there is a new demo using pattern adapted wavelets for signal detection. You can view this demo here Pattern adapted wavelets for signal detectionPattern adapted wavelets for signal detection. The Wavelet Toolbox software enables you to design admissible wavelets based on the pattern you wish to detect. Designing a valid wavelet based on your desired pattern allows you to exploit the optimality of matched filtering in the framework of the CWT. The demo illustrates this process on simulated data and human EEG recordings.


New Features, Bug Fixes

Cone of Influence for Continuous Wavelet Transform

In R2010b, you can compute the cone of influence (COI) for the continuous wavelet transform (CWT) of a signal. At each scale, the COI determines the set of CWT coefficients influenced by the value of the signal at a specified position. The COI provides an important visual aid in interpreting the CWT. By overlaying the cone of influence on the CWT image, you can determine which CWT coefficients each value of the signal affects at every scale. See conofinf for details.

Wavelet Cross Spectrum and Coherence

In R2010b, you can estimate the wavelet cross spectrum and wavelet coherence of two time series. The wavelet cross spectrum and coherence provide wavelet-based alternatives for the Fourier-based cross spectrum and coherence. These wavelet estimators are suitable for nonstationary signals. Using a complex-valued analyzing wavelet, you can also examine intervals in the time-scale plane where the two time series exhibit common phase behavior. See wcoher and the new demo Wavelet CoherenceWavelet Coherence for details.

Wavelet Packet Spectrum

In R2010b, you can compute the wavelet packet spectrum with wpspectrum. The wavelet packet spectrum provides a time-frequency analysis of a time series. The wavelet packet spectrum is useful as wavelet-based counterpart of the short-time Fourier transform.

Natural and Frequency Ordering of Wavelet Packet Terminal Nodes

In R2010b, you can order the wavelet packet transform terminal nodes by natural (Payley) or frequency (sequency) order. See otnodes for details.

Image and Signal Approximation Quality Metrics

In R2010b, you can measure the quality of your signal or image approximation using a number of widely-used quality metrics. These metrics include: the peak signal-to-noise ratio (PSNR), the mean square error (MSE), the maximum absolute error, and the energy ratio of the approximation to the original. See measerr for details.


New Features, Bug Fixes

3-D Discrete Wavelet Transform

This release adds new functions and a GUI to support the 3-D discrete wavelet transform. This new functionality lets you decompose, analyze, and display a 3-D object using a different wavelet for each dimension. The new functions are: dwt3, idwt3, wavedec3, and waverec3. A demo (wavelet3ddemo) is also included.

Nondecimated Wavelet Transform

New nondecimated wavelet transform functions support signals of arbitrary size and different extension modes. Previous functionality had two limitations: signal length had to equal a power of 2 and the only allowable extension mode was periodized. The new functions are: ndwt, indwt, ndwt2, and indwt2. A demo (ndwtdemo) is also included.

New Denoising Function

The new cmddenoise function uses interval-dependent denoising to compute the denoised signal and coefficients. This allows you to apply different denoising thresholds to different portions of the signal, which is typically nonuniform. You can also export thresholds from the GUI and use them in the cmddenoise function. The toolbox includes a denoising demo (cmddenoise).


Bug Fixes


New Features, Bug Fixes

True Image Compression Support

The new wcompress functions lets you compress 2D image data. You can also interactively compress images using the new Two-Dimensional Images Compression GUI.

New Demo

The toolbox now includes a new codepad demo on image compression.


New Features, Bug Fixes

True Color Images Support

The toolbox can now process true color images. All major toolbox GUIs and all of the 2D-oriented command line functions have been also updated and support true color images.

New Extension Modes for Continuous Wavelets

The new cwtext function lets you calculate 1D continuious wavelet parameters using extension parameters.

New Norms Calculation

The Multisignal 1D GUI and other related GUIs now include 1-norm, 2-norm, and inf-norm calculations.

Wavelet Families Display

A new function, waveletfamilies, displays all the available wavelet families and their properties.

Single Data Type Support

The swt2 and iswt2 functions now support single data types.

New Demos

The toolbox now includes the following new codepad demos:

  • Multiscale Principal Component Analysis

  • Multivariate Denoising


New Features, Bug Fixes

Importing and Exporting between GUIs and Workspace

You can now import data from the workspace to all toolbox GUIs and export data from all toolbox GUIs to the workspace. Use Import from Workspace and Export to Workspace, respectively, on the GUI's File menu.

Scalograms for Continuous Wavelet Transforms

The ability to compute scalograms of the wavelet coefficients in continuous wavelet analysis has been added as an option to the cwt function. You can also pass the structure produced by cwt directly to the new wscalogram function. Scalograms show the percentage of energy in each wavelet coefficient.

Constructing Clusters from Hierarchical Cluster Trees

You can now construct clusters from hierarchical cluster trees in multisignal analysis using the new mdwtcluster function.


New Features, Bug Fixes

1D Multisignal Analysis, Compression, and Denoising Added

The following command-line functions for 1D multisignal analysis, compression, and denoising have been added to the toolbox:


Multisignal 1D compression using wavelets.


Multisignal 1D wavelet compression scores.


Multisignal 1D compression thresholds and perf.


Multisignal 1D denoising using wavelets.


Performs Multisignal 1D thresholding.

1D Multisignal Wavelet and Clustering Added

The following command-line functions for 1D multisignal wavelets and clustering have been added to the toolbox:


Change Multisignal 1D decomposition coeffs


Multisignal 1D wavelet decomposition


Multisignal 1D wavelet reconstruction.


Multisignal 1D decomposition energy repartition

    Note   Clustering analyses require that Statistics Toolbox is installed.

Wavelet 1D Multisignal Analysis GUI Added

A graphical user interface for 1-D multisignal analysis has been added. To start this GUI, select Multisignal Analysis 1D from the wavemenu dialog.


New Features, Bug Fixes

Multivariate De-noising Added

A new command-line function (wmulden) and a new GUI (Multivariate Denoising from the wavemenu initial window) for de-noising a matrix of signals have been added. Both the function and GUI take into account the signals themselves and the correlations between the signals. A two-step process is used. First, a change of basis is performed to deal with noise spatial correlation de-noising in the new basis. Then, a principal component analysis is performed to take advantage of the deterministic relationships between the signals, leading to an additional de-noising effect.

Multiscale Principal Component Analysis Added

A new command-line function (wmspca) and a new GUI (Multiscale Princ. Comp. Analysis from the wavemenu initial window) for simplifying a matrix of signals have been added. Both the function and GUI take into account the signals themselves and the correlations between the signals. The multiscale principal component analysis mixes wavelet decompositions and principal component analysis.

New Demos

The following new demos are added:

  • Continuous and Discrete Wavelet Analysis

  • Detecting Discontinuities and Breakdown Points

  • De-Noising Signals and Images

  • Data Compression using 2D Wavelet Analysis

  • Image Fusion

  • Detecting Self-Similarity

  • Wavelet Packets: Decomposing the Details


No New Features or Changes


No New Features or Changes


No New Features or Changes

Compatibility Summary

ReleaseFeatures or Changes with Compatibility Considerations
R2011bChanges in Fourier Transform Based Continuous Wavelet Transform Defaults for Derivative of Gaussian (DOG) and Paul Wavelets
Was this topic helpful?