Preview of WaveLab .800
by David Donoho
Thomas P.-Y. Yu
We are currently putting together a new version of WaveLab.
On top of being Matlab 5 compatible, this new version will
also include the following new directories:
- Books/WaveTour, Figures from the book A Wavelet Tour of Signal
Processing by Stephane Mallat
- Papers/Median, Figures from the paper
Transforms''based on Median-Interpolation by David L. Donoho &
Thomas P.-Y. Yu
- Papers/Correl, Figures from the paper
Estimators for Data with Correlated Noise
by Iain M. Johnstone & Bernard W. Silverman
- Papers/RiskAnalysis, Figures from the paper
Exact Risk Analysis of
by J. S. Marron, Sudesna Adak, Iain M. Johnstone, M. H. Neumann & P. Patil
Jonathan Buckheit, Shaobing Chen,
from WaveLab's workouts on the Continuous Wavelet Transform
David Donoho, Iain Johnstone,
Jeffrey Scargle, NASA-Ames
Please Register Now
If you have been using WaveLab and have not registered,
please do so as soon as possible.
We intend to communicate with our base of users through e-mail and would
like our mailing lists to be as accurate as possible.
Changes from WaveLab .600
In addition to fixing some bugs, adding new datasets, adding many new wavelet
filters, and including some new functions in the existing directory structure,
WaveLab .701 has added eight new directories:
- Continuous, Continuous Wavelet Transform Tools
- Meyer, Periodic Meyer Wavelet Transform Tools
- Stationary, Stationary Wavelet Transform Tools
- Symmetric, Bi--Orthogonal Wavelet Transform Tools
- Wigner, Time-Frequency Distribution Tools
- Papers/SpinCycle, Figures from Translation-Invariant De-Noising
- Papers/VillardDeLans, Figures from WaveLab and Reproducible Research
- Workouts/MultiFractal, Workouts for the Continuous Wavelet Transform
WaveLab .701 is a library of MATLAB routines for wavelet analysis, wavelet-
packet analysis, cosine-packet analysis and matching pursuit. The library
is available free of charge over the Internet. Versions are provided for
Macintosh, UNIX and Windows machines.
WaveLab has been used in teaching courses in adapted wavelet analysis at
Stanford and at Berkeley. It is the basis for wavelet research by the authors,
and may be used to reproduce the figures in their published articles, and
to redo those figures with variations in the parameters.
WaveLab has over 800 files which are documented, indexed and cross- referenced
in various ways. MATLAB .mex files are used extensively to increase throughput,
and "fat" mex files are provided with the Macintosh version so
Power Macintosh users may take advantage of the increased speed of their
In addition to routines implementing basic wavelet transforms for finite
data sets (both periodic transforms and boundary-corrected transforms),
wavelet-packet analysis, cosine-packet analysis and matching pursuit, the
library contains scripts which the authors believe will assist in learning
the practical aspects of wavelet analysis:
WaveLab also offers:
- Scripts that reproduce the figures in the authors' published articles,
including the de-noising articles of Donoho and Johnstone.
- ``Workouts'' that give a quick guide to wavelets (1-d and 2-d); wavelet
analysis; wavelet synthesis; wavelet and cosine packets, including the Coifman-Wickerhauser
best-basis methodology; matching pursuit; and applications such as data
expansion, progressive data transmission, image compression, speech segmentation,
de-noising, fast matrix multiplication in wavelet bases, etc.
- A library of datasets that are easily accessible to the user. Besides
artificial signals that have scientific or pedagogical appeal, real data
ranging from an image of Ingrid Daubechies to a recording by Enrico Caruso
- A point-and-click browser that allows the user to select data, perform
various transforms or de-noising operations, and then see the results without
using the MATLAB command-line interface.
- Extensive documentation, including on-line documentation for each
function, Contents files for each subdirectory, a Reference Manual,
an Architecture Guide and an overview document, About WaveLab,
that introduces the software to a first-time user.
Currently WaveLab is supported on MacOS 7.x, Window 3.x, and all
UNIX plaforms under Matlab 4.x. We are porting WaveLab
to Window 95 and to Matlab 5.
- Binary Download the archive WaveLab0701.tar.Z to, for example, /tmp
- Uncompress the archive
- Decide where you want the WaveLab directory to reside. It will have
a number of subdirectories and occupy >2 MB disk space
- cd to the place you want the directory to reside
- ``tar xvf <WaveLabTarFile>'', where <WaveLabTarFile> should
be the absolute pathname of the WaveLab.tar archive as you have obtained
it by binary FTP .
After you de-tar the file for your machine, you should have the following
- Edit the file WavePath.m, put the lines:
WAVELABPATH = '<AbsolutePathNameforWaveLabMainDirectory>';
PATHNAMESEPARATOR = '<YourMachinesPathSeparator>';
in the appropriate place (this will be evident). Here Friend has been set
by the MATLAB command: Friend = computer;
- In your Home directory, in the matlab subdirectory, put a copy of
startup.m and of WavePath.m
- cd to WaveLab/MEXSource
- Type ``installMEX'' to compile and install the .mex files. If you
have an older version of MATLAB, this command may yield compilation errors;
in this case try ``installMEX.old'' instead. If problems persist, we have
of pre-compiled MEX files for the most common machine architectures.
After downloading the appropriate library for your machine, unpack using
uncompress and tar, and move the binary files to the locations within the
WaveLab directory indicated by the installMEX scripts.
- Compare the output of ``ls -R WaveLab'' with Documentation/WLFiles.m
to see if you have all the files
- Compare the output of the MATLAB path functions with the list above
to see if you have all the paths.
- Binary Download the file WaveLab0701.sea.hqx to your Macintosh
- UnBinHex the file, creating a self-extracting archive
- Double-click on the self-extracting archive and install it in the
``Toolbox'' folder of your Matlab 4.1 folder
- Using from the Mac Finder, determine if you have any files named startup.m
(besides the one contained in WaveLab/) in the hierarchy rooted at Matlab.
If you don't, skip to step 6
- If you do have more than one startup.m file, copy the contents of
the startup.m in Matlab/Toolbox/WaveLab to the startup.m file, and rename
the one if Matlab/Toolbox/WaveLab
- Edit WavePath.m if your Matlab directory has a different pathname
reference than the one supplied at the top of this file
- Binary download the file wlab0701.zip to your PC
- cd to your toolbox folder in the Matlab folder
- ``pkunzip -d wlab0701.zip''
After you unzip you should have the following subdirectory structure:
- ``copy c:\matlab\toolbox\wavelab\wavepath.m c:\matlab\bin''
- Create a startup file in c:\matlab\bin which runs wavepath at startup
- To check that you have every file that you should, look at doc\wlfiles.txt.
See if everything is there!
- Check that while in matlab, the ``path'' function returns a list that
looks like the one above.
- There is a small problem with the WaveLab path in the PC version.
Two Papers directories, Adapt and MEntSeg, will not be added to the path
at startup. We believe this is a problem with the current PC version of
MATLAB, not WaveLab, and hope that through contact with the MathWorks, Inc.,
we can figure out how to make the path behave properly in the near future.
These two directories are not essential to the operations of WaveLab.
Click on a highlighted title below to spawn a postscript viewer in which
you can read or print the document:
- About WaveLab gives a general overview of the WaveLab software
- The WaveLab Reference Manual contains a reference page for
each WaveLab function and dataset, organized according to the WaveLab subdirectory
structure. There is also a chapter on the data structures used by WaveLab,
and an alphabetic index of all functions (postscript,
The version .701 manual is 348 pages. We have a four-page per sheet of
version (processed with psnup) as well (postscript,
- The WaveLab Architecture Guide is a systems-level overview
of WaveLab. It provides details on how WaveLab is constructed and maintained
After downloading, please register
your software so we may communicate with you.
Last modified 24-Mar-96 (jon)