NMath User's Guide

TOC | Previous | Next | Index

Chapter 11. Discrete Wavelet Transforms (.NET, C#, CSharp, VB, Visual Basic, F#)

A wavelet is a wave-like oscillation, which integrates to zero and is well-localized in time. A discrete wavelet transform (DWT) is any wavelet transform for which the wavelets are discretely sampled. DWT captures both frequency and location information, an important advantage over FFT (Chapter 10).

DWTs have found engineering applications in computer vision, pattern recognition, signal filtering and perhaps most widely in signal and image compression. In 2000 the ISO JPEG committee proposed a new JPEG2000 image compression standard that is based on the wavelet transform using two Daubechies wavelets. This standard made the relatively new image decomposition algorithm ubiquitous on desktops around the world.

NMath provides classes for performing DWT using most common wavelet families, including Harr, Daubechies, Symlet, Best Localized, and Coiflet. Custom wavelets can also be created. DWT classes support both single step forward and reverse DWTs, and multilevel signal deconstruction and reconstruction. Details thresholding at any level and threshold calculations are also supported.