Wave atoms are a recent addition to the repertoire of mathematical transforms of computational harmonic analysis. They come either as an orthonormal basis or a tight frame of directional wave packets, and are particularly well suited for representing oscillatory patterns in images. They also provide a sparse representation of wave equations, hence the name wave atoms.

What sets them apart from other transform architectures like wavelets or curvelets is that they obey the scaling law

     support size ~ sqrt(wavelength)

while retaining an isotropic aspect ratio. As a result, wave atoms precisely interpolate between Gabor (fixed support size) and wavelets (support size ~ wavelength).

Wave atoms have a sharp frequency localization that cannot be obtained from filterbank-based wavelet packets. In 2002, Lars Villemoes presented an elegant alternative 1D wave packet design with proper time-frequency localization, that we have built upon and expanded into what has become the Matlab WaveAtom toolbox. The software now includes several variants of the transform: 1D, 2D, and 3D; orthobasis and two different tight frames including shift-invariant; periodized and mirror-extended at image edges. A C++ version is also available.

Enjoy, and please email us with your feedback.

Laurent Demanet and Lexing Ying.