Jacket's Wavelets


LOCAL

ROBUST WAVELET-BASED ASSESSMENT OF SCALING WITH APPLICATIONS

WavmatND: A MATLAB Package for Non-Decimated Wavelet Transform and its Applications

CHARACTERIZING EXONS AND INTRONS BY REGULARITY OF NUCLEOTIDE STRINGS

DENOISING BY BAYESIAN MODELING IN THE DOMAIN OF DISCRETE SCALE MIXING 2D COMPLEX WAVELET TRANSFORMS

LAMBDA NEIGHBORHOOD WAVELET SHRINKAGE

WAVELET SHRINKAGE WITH DOUBLE WEIBULL PRIORS

DENSITY ESTIMATION WHEN DATA ARE SIZE-BIASED: WAVELET-BASED MATLAB TOOLBOX

LPM: Bayesian Wavelet Thresholding based on Larger Posterior Mode

Hunting for Dominant Straight-Line Features in Nanoscale Images Using Wavelets

BLFDR and BaFDR: Bayesian Wavelet Thresholding based on False Discovery Rate

THE WAVELETS PUZZLE

WAVELET MATRIX IN MATLAB

AN OPEN PROBLEM OR EASY EXERCISE?

A NICE 2D DATA TO NOISE/DENOISE

Here is a 2D data set free to use for tasks of image wavelet processing. This is a 3072 x 2048 (3.2MB, jpg) digital photo of von Klaus. Von Klaus is a two year old purebreed [AKC WR021286/04] Doberman Pinscher var. Warlock born in Marietta, Georgia. Although he looks quite intimidating, von Klaus is a gentle, playful, and devoted dog. The big (> 6 megapixel) JPG photo is imported to MATLAB using klaus.m m-file and 6 gray scale images of various dimensions are made. Here are all the 6 as an EPS file. (>11MB)

BOOTSTRAPPING WAVELETS

LOCAL WAVELET RESEARCH PAPERS

WAVELETS AND STATISTICS: A REPOSITORY OF MANUSCRIPTS

This page was doemant from 1999. Since some good folks wanted their paper linked -- I decided to keep this page updated!

MINICOURSE IN MILANO WAVELETS AND SELF-SIMILARITY: THEORY AND APPLICATIONS

December, 14-17, 2004 at Consiglio Nazionale delle Ricerche Istituto di Matematica Applicata e Tecnologie Informatiche (Milano Department - formerly CNR-IAMI)

BAMS-LP (Bayesian Adaptive Multiresolution Shrinker of Log Periodogram)

The matlab files that implement the BAMS-LP shrinker and a few examples of its use are zipped into archive BAMSP.zip . The software is tested with MATLAB6.5. The the theory behind the software and a paper describing Bayesianly induced wavelet shrinkage of Log-Periodogram, can be found HERE in the PDF format.

Some ADDONS for WaveLab Module


Discrete Complex Orthogonal Wavelet Transformation

Here is some history. We started these m-files when Jean-Marc Lina from University of Montreal was visiting Duke University. At that time JML, being a complex wavelet guru, guided Gaby Katul and me how to do forward complex DISCRETE wavelet transformation. We originally used complex filters from Lina's papers and then discovered that Barry G. Sherlock now at UNC-Charlotte made an m-function a la Donoho's MakeONFilter.m for producing Daubechies complex filters. Getting into the complex wavelet domain was easy compared to returning back to the ``time'' domain. We made an m-file for inverse transformation but it was less than perfect...(a nice way to say it did not work as it was supposed to). Claudia Angelini, a bright graduate student visiting GaTech from Napoli's CNR, took a look at our pluses and minuses and fixed the inverse transform in a second. So here they are: FWTC_PO.m will mimic FWT_PO with complex filters and return the complex discrete wavelet transformation, two vectors [re, im] for the real and immaginary parts. IWTC_PO.m will get you back from the complex wavelet domain to the space of original discrete data. Finally, complex Daubechies wavelet filters are made by Sherlock's MakeCONFilter.m. To make Complex tools work just add FWTC_PO.m, IWTC_PO.m, and MakeCONFilter.m to ~/wavelab/Orthogonal/.

2-D Continuous Wavelet Transformations

In the Spring of 2001 Xiaoming Huo and myself team-taught a graduate course on wavelets at GaTech. We had about 15 graduate students coming from various Tech's departments. Heejong Yoo, graduating PhD student from ECE, was an excellent programmer interested in implementing 2D Continuous Wavelet Transformation in his class-project. The idea came from commercial software Crit-tech Psilets 3.0; we decided to make a free clone! The theory behind the transformation is trivial: One (listably) multiplies the 2D object with the sampled fixed level 2D wavelet in the Fourier domain and then Fourier-inverts the product! Heejong's project is a standalone MATLAB program (no wavelab needed) with an excellent GUI. Zipped directory with all files needed to run the CWT2D is Project.zip and the PPT presentation of the project is: Cont2DWT.ppt . Only 2D Mexican hat is available right now. If you prefer the Wavelab environment, than you can add the function CWT2.m to ~/wavelab/Continuous/

3-D Discrete Wavelet Transformation (Orthogonal, Tensor Product)

This pair of transformations naturally generalizes WaveLab's FWT2_PO.m and IWT2_PO.m. This is a part of wavelet-project of Vicki Yang, gifted graduate student at ISyE who took a course on wavelets with me. She was interested in wavelet processing of 3-D signals with applications.
The forward and inverse transformations are: FWT3_PO.m, for transforming the data to the wavelet domain, and IWT3_PO.m, for inverse-transforming the data back to the time domain. The function needed here is cubelength.m that is a 3-D counterpart of Donoho's quadlength.m utilized by the 2D pair. You will see that transforms are conceptually and algorithmically easy, and it would be quite starightforward to construct FWT4_PO, FWT5_PO, ... and their inverses. Now, both FWT3_PO and IWT3_PO transformations act on 3D data sets and such objects are difficult to visualize. We made several data related programs.
(i) Make3DData.m will make 3D ball with inscribed octahedron. Both bodies the ball and the octahedron are inscribed in a cube of (dyadic) side N. The noise can be added to both boundaries and interiors of objects.
(ii) DDD2Movie.m will make a movie from the 3D object taking frames along the dimension of choice. This is handy for viewing the 3D objects via their 2D cuts.
(iii) A small script test3d.m will take a 64 x 64 x 64 noisy object, view it, transfer it to the wavelet domain, view it again, threshold the object, view it, return the thresholded object to the original domain, and view it. For some misterious reasons, DDD2Movie.m will show the movie itself while recording, and built-in matlab function movie will show the movie twice! Be ready to watch the objects 4 x 3 = 12 times... To make 3D tools work just add FWT3_PO.m, IWT3_PO.m, and cubelength.m to ~/wavelab/Orthogonal/

A New Extended MakeONFilter, MakeONFilterExt.m.

This extension is final project in an undergraduate wavelet research course submitted by graduating ISyE student, Daphne Lai. Daphne added more Daubechies', Symmlets, and Coiflets, as well as some new filters. All added filters are numerically stable.

Dyad-like 2-D Tools

Standard WaveLab m-function dyad.m extracts particular level in the discrete wavelet transformation. If, for example, n=2^J, and the Discrete Wavelet Transfirmation is WT, the finest level is indexed by dyad(J-1), and extracted from WT as WT(dyad(J-1)). I needed dyad-like tools for 2-D wavelet transformations. A simple generalization is dyad2.m and it needs in addition to dyad.m the `complement' function dyadc.m . The following matlab script shows use of dyad2:

 >> pict = MakeImage('StickFigure',128);
 >> wf = MakeONFilter('Haar',1);
 >> wpict = FWT2_PO(pict, 5, wf);
 >> [diagx, diagy] = dyad2(6,'d');
 >> diag_det = wpict(diagx, diagy);
 >> imagesc(diag_det)

Some Shortcomings of WaveLab.

There is one problem with FWT_PO.m and its inverse in WaveLab that needs a fix! The problem propagates to other transformations, notably 2D, etc. It is well known that any scaling filter H=(h_0, ... ,h_N) can be matched with many quadrature mirror filters -- high pass counterparts G. ``Wavelet polygamy -- one father and many mothers.'' For example $g_n = (-1)^{n+x} h_{y - n},$ where $x=0,1$ and $y$ is arbitrary integer, is a valid QM wavelet filter. And not all the wavelet bases share the same ``proper'' translation and sign of G defined by $x$ and $y$ Not all H filters start with $h_0$! For example, proper start for Coiflet 1 (6 tap filter) is $h_{-2}.$ WaveLab does not allow for such flexibility. And although the reconstructions are perfect, the wavelet domain objects are circularly shifted. For example, if a period of a SINE function is sampled and transformed by wavelet transformation of depth 3 (log(n)-L=3), the resulting transformation should result in scaling coefficients that are degraded SINE function. This example shows that improper filter alignment causes smooth-part SINE to shift. To see this, please run the exercise under WaveLab. One may ask, why should we care when the reconstruction is perfect? The proper alignment is critical, because of simulational aspects of wavelets. Often one starts with the wavelet domain, feeds the empty levels with (simulated) coefficients and reconstructs. And if the alignment is not proper various problems and anomalies can occur. This could be an interesting project for a devoted grad student! Please take a look for an excellent solution of this alignment problem by UviWave software from University of Vigo. Unusual procedure is MirrorFilt.m. In it the high pass filter G is formed as
	g = -( (-1).^(1:length(h)) ) .* h;
This leads to an orthogonal transformation, but more common filter g is obtained by
        g = - reverse( (-1).^(1:length(h))  .* h );
In my version of Wavelab I modified MirrorFilt.m.

Daubechies-Lagarias Algorithm in Matlab

Calculate the value of \phi_{jk}(x_0) or \psi_{jk}(x_0) at ANY point x_0 for ANY orthonormal basis at ANY precision without going through Mallat's algorithm. The blurb DL.pdf describes the algorithm. The matlab programs used are: MakePollen1.m, MakePollen2.m, Phijk.m, Psijk.m, and m-script DLtest.m.

Linear Regression Estimator where the kernel is the defined by wavelets...Soon!


FWT2_POE and IWT2_POE for Rectangular Images of Dyadic Sides

In 2-D tensor product wavelet transformations, traditionally the inputs are square images of a dyadic side. Since performing the 2-D transformation amounts to subsequent application of 1-D transformations on rows and columns of an image, the restriction to square dimensions is inessential. Here are slight extensions of standard wavelab's FWT2_PO.m and IWT2_PO.m, the functions: FWT2_POE.m and IWT2_POE.m . The pair FWT2_POE, IWT2_POE will do the 2-D wavelet transformation and its inverse on rectangular images with dyadic sides. The m-file quadlength.m needed by FWT2_PO.m and IWT2_PO.m should be replaced by pow2length.m . All three files should reside in ...\Wavelab\Orthogonal\ directory. Now, take a look how the rectangular Lena ( lena21.eps or lena21.pdf) looks in the wavelet domain, ( lena21w.eps or lena21w.pdf). Data file is lena21.mat. The choice of size 256 x 512, rather than more interesting 512 x 256 or quite exciting 1024 x 256, was made by flipping a coin;).

FWT_PO and inverse for inputs of ANY SIZE

Planned...

Practical Hints on Running WaveLab (when the names collide).

Many soon to be posted, stay tuned...

Wavelet-history Curiosity

A wavelet-history curiosity I found interesting. Chapter 4 spanning 70 pages of the book ``Time Series Analysis and Applications'' by Enders A. Robinson is titled: Wavelet Composition of Time Series. The curios thing is that the book is published in 1981!!! Robinson's wavelets indeed have some of the wavelet spirit. A quote from page 84:
``...The wavelets arrive in succession, and each wavelet eventually dies out. The wavelets all have the same basic form and shape, but the strength or impetus of each wavelet is random and uncorrelated with the strength of the other wavelets...
...Despite the foreordained death of any individual wavelet, the time-series does not die. The reason is that a new wavelet is born each day to take the place of the one that does die. On any given day, the time-series is composed of many living wavelets, all of a different age,-some young, others old.''

The chapter then formally describes the theory and practice of Robinson's atomic decompositions.
Reference: Robinson, Enders (1981). Time Series Analysis and Applications. Houston, Goose Pond Press 628p. Library of Congress Catalog 81-81825

A kind note from Laurent Duval: I am not esp. surprised since i consider Robinson (at least partly) as a geophysicist. One of the early mention i found in geophysics is: N. Ricker, A note on the determination of the viscocity of shale from the measurement of the wavelet breadth, Geophysics, Society of Exploration Geophysicists, vol. 06, pp. 254-258, 1941. See for instance: http://www.laurent-duval.eu/siva-wits-where-is-the-starlet.html The word wavelet has gone through a chain: wavelet (geophysics) -> ondelettes (geophysics) -> wavelet (as we know it). Even earliest spurs are in Huygens.


Les Houches Center of Physics
PHYSICS - SIGNAL - PHYSICS
On the links between nonlinear physics and information sciences
September 8-13, 2002

INFO On the links between nonlinear physics and information sciences

CALL FOR PAPERS

Journal Applied Stochastic Models in Business and Industry [Wiley InterScience ISSN 1524-1904, http://www.interscience.wiley.com ] is considering a special issue on Wavelets and Other Multiscale Methods: Theory and Applications. Contributions for the Special Issue that are good balance of theory and applications of wavelets and other multiscale methods in industry, finance, and applied sciences are invited. Ascii Text

Napoli Wavelet School, Spring 2001

Poster

BAMS Bayesian Adaptive Multiresolution Smoother; Matlab Demo Program; needs WaveLab Software

bams.m uses function bayesrule.m

Supporting Manuscript

  • 00-06 Brani Vidakovic and Fabrizio Ruggeri
    BAMS Method: Theory and Simulations

    See also the implementation by Antoniadis, A., Bigot, J. & Sapatinas, T.

    BAMS: Matlab Front End (No Wavelab Necessary)

    Dr Bin Shi, my former graduate student, made a simple front-end that demonstrates BAMS shrinkage in MATLAB. As of now, the only signal is doppler and, as tradditionally done, the standard normal noise is added to the rescaled signal to achieve desired SNR. The programs below should be on MATLAB's path and Wavelab is not needed.

    Wavelets in Statistics Week at CNR-IAMI, Milano

    Eight Lectures!

    STATISTICS 294, ISDS, Duke University, Fall 1999 Statistics in Time/Scale and Time/Frequency Models

    BOOK: STATISTICAL MODELING BY WAVELETS,

    by Brani Vidakovic, Wiley Series in Probability and Statistics; ISBN: 0471293652, pp. 381.

    VOLUME: BAYESIAN INFERENCE IN WAVELET BASED MODELS, Springer-Verlag, Lecture Notes in Statistics 141.

    (ISBN 0-387-98885-8)

    ('97, '98 ) Statistics 294 at ISDS, Duke

    Workshop on Wavelets in Statistics at Duke University (October 12-13, 1997)

    Ondellettes et statistique: 10 années d'histoire invited talk at Canadian Undergraduate Mathematics Conference Also the Abstract .

    Three Case Studies A talk at NSF-CBMS Conference ``Wavelet Analysis as a Tool for Computational and Harmonic Analysis,''

    Gabriel Katul on TURBULENCE and Wavelets.

    BAYES and WAVELETS (A Review)

    Wavelets for Kids (A tutorial written in December 1994)

    Nice Data Sets, S+ Wavelet Programs, etc.

    Miscellanea


    L I N K S

    WAVELET APPLETS (Need Java-enabled browser)

    LINKS TO SOME NICE AND INFORMATIVE WAVELET PAGES:

    FTP SITES

    BIBLIOGRAPHIES ON WAVELETS