PiefLab: Matlab algorithms for wavelet noise reduction
Version 3.1.1, released November 2009
Key words: Wavelet, threshold, GCV (generalized cross validation),
MRF (Markov Random Fields), inverse problem
General Description
PiefLab is a collection of Matlab procedures that runs without any additional
toolbox. It can be integrated into
WaveLab, but it also
stands on its own, i.e. it provides its own procedures for wavelet transforms.
Features
PiefLab has several routines for:
-
Wavelet transforms: fast and undecimated, (bi)orthogonal, 1D, 2D. Special
attention was paid to fast implementation through Matlab blass routines and
polyphase implementation of filter banks.
-
Noise reduction by wavelet thresholding, including threshold assessment by
minimum MSE, minimum SURE, minimum GCV.
-
Bayesian correction of threshold selections for images (and other 2D structers)
using a geometrical prior.
-
NEW in version 1.2.1: CVS - Conditional Variance Stabilisation for Poisson
intensities, including a Bayesian model within this framework.
It also includes routines for Fisz-wavelet transforms (Fryzlewicz,
Nason). Some of the test routines require that you download software from
Theofanis
Sapatinas' collection of Poisson Wavelet Denoising Software.
See the related paper on Poisson intensity estimation:
M. Jansen: Multiscale Poisson data smoothing, JRSSb, 68(1), pages
27-48, 2006.
-
NEW in version 2.1.1: Continuous unbalanced Haar transform for change point
detection.
-
NEW in version 3.1.1: Iterative soft- and hard-thresholding with variable
thresholds for inverse problems
-
NEW in version 3.1.1: SURE/Mallow's Cp and GCV for hard thresholding
-
Versions 2.1.1 and beyond will gradually add more features on second generation
wavelets.
Installation
-
Download the tar-file to your favorite directory.
-
unwrap the tar-file. In Unix/Linux this is done by: tar xvf pieflab.tar . This
creates a directory PiefLab with subdirectories.
-
cd PiefLab and edit the startup.m file to adapt it to your specific path. This
startup file sets the Matlab path, thereby giving access to all .m-files in the
subdirectories.
-
starting Matlab in PiefLab should now make all .m-files available
-
Alternatively, you can work with this zip file
Getting started
-
You can download several
test images
-
Type `help PiefLab' (mind the capitals!) after having started Matlab in the
PiefLab-directory. The answer will be a list of .m-files and subdirectories.
Browse through this list by typing `help ' (omitting the
extension `.m').
-
The subdirectory PiefLab/Tests has several test procedures (mainly with images)
-
The command `gcvdemo' starts a very simple demonstration of GCV threshold
estimation. See PiefLab/Tests/GCVdemo.
New versions to be released
The current version contains a startup file that sets a matlab path containing
quite a few folders as yet nonexistent. These folders/subdirectories are part
of a major extension planned for the somehow near future (depending on your
definition of "near" - it should be understood in the research world
interpretation, that is, taking into account unforeseen slower progress,
administration, teaching, and other stuff)
Copyright
This software is copyrighted material. Permission is
granted to use and modify this software for research, under the following
conditions:
-
Research in or financed by weapon or tobacco industry is excluded without
any exception from the use of this software.
-
Any commercial use without explicit permission is strictly forbidden.
-
All research papers presenting results which are (partly) based on this
software should include in their bibliography one or more references to the
corresponding papers. Check
this list of
papers.
-
All redistributions of this software, even if modified or compiled or
translated into a different programming language or binary code, should
mention the origin of the software and include these copyright instructions.
This software comes as it is. No guarantee whatsoever is given. The author
cannot be held responable for any misunderstanding, incorrect use, false
scientific conclusions or other problems following this software.
Users are welcome to report any bug to
(maarten.jansen-AT-cs.kuleuven.be)
Origin and pronunciation of the word PiefLab
The name PiefLab is derived from the word piefjes, pronounced as "peef-yes",
which
is a funny dutch translation for wavelets. Consequently, PiefLab is pronounced
as "peef-lab". It's definitely not "pie-flap" ;-)
This page is maintained by
Maarten Jansen
(maarten.jansen-AT-cs.kuleuven.be)
URL: http://www.cs.kuleuven.be/~maarten/software/pieflab.html
Last update: April 2009