The Book That Actually Made Wavelets Click

Most people who try to learn wavelet transforms either drown in math proofs or bounce off because nobody explains what you'd actually use it for in a real engineering job. A Wavelet Tour Of Signal Processing by Stephane Mallat is different. It starts from the intuition and builds the math backward into existence, which is how your brain actually learns it. I have this dog-eared on my desk because I keep coming back to it when I need to clean up sensor data. The core idea is that signals live at multiple scales. A plain Fourier transform smears everything across one frequency axis and tells you nothing about when events happen. A wavelet lets you zoom in on a spike at 3 milliseconds and separately examine the low-frequency hum around it. Mallat frames this through multiresolution analysis, which is just a formal way of saying you can decompose a signal into coarse approximations and fine detail components, then reconstruct it losslessly if you keep all the pieces.

Why A Wavelet Tour Of Signal Processing Matters For Practitioners

There are dozens of wavelet textbooks. This one sticks around because it connects the linear algebra directly to denoising, compression, and feature extraction. The three main applications you will encounter in practice are thresholding-based noise removal, singular value analysis for anomaly detection, and sparse representation for compression. Mallat shows how these are all the same operation viewed from different angles. That unification is why the book still gets cited twenty years after publication. I tried switching to a different text on wavelets once because someone recommended it. I lasted three chapters. The alternative book treated wavelets as pure harmonic analysis and never showed me how to go from a Daubechies filter bank to an actual denoised EEG signal. Mallat does that. The denoising chapter alone covers hard thresholding, soft thresholding, universal thresholds, and visualSURE-SURE estimation. You can implement the basic version in a weekend. Here is the practical workflow I use most often. Take your discrete wavelet transform with pywt in Python, pick a decomposition level based on your sampling rate and signal length, apply soft thresholding to the detail coefficients at every level except the final approximation, then reconstruct. The threshold value matters more than anyone admits. Don't just use the universal threshold sigma times sqrt(2 log N). Compute the median absolute deviation of the finest detail coefficients and multiply by 1.4826 to estimate sigma empirically. That adjustment usually improves the signal-to-noise ratio by two to four decibels on real sensor data compared to the textbook formula.

I ran into a specific problem last year with a vibration dataset from a motor monitoring rig. The sampling rate was 50 kHz, and I was trying to isolate bearing defects around 2.4 kHz from background machinery noise. Standard bandpass filtering introduced phase distortion that smeared the transient impacts I needed to count. I applied a maximal overlap discrete wavelet transform using a Symlet-8 filter at decomposition level 9, thresholded the details above level 5 with a Stein-style adaptive threshold, and reconstructed without downsampling. The impact trains became clear enough that I could auto-detect individual defect hits without manual inspection. The MODWT was critical here because the regular DWT shifted the transients slightly due to the circular padding at the edges, and those shifts destroyed the timing precision I needed for fault frequency calculations. That edge case taught me something I wish had been more obvious from the book. Wavelet denoising is not a silver bullet. It fails predictably in three situations. First, signals with non-stationary transients that do not align with your wavelet basis functions will produce artifacts at the edges. Use symmetric padding or periodized transforms instead of zero-padding. Second, high-amplitude noise spikes can dominate the threshold calculation and mask weaker but important features. Truncate your coefficient distribution before estimating sigma if you suspect impulsive interference. Third, multivariate signals like triaxial accelerometer data require you to treat each channel separately or use a vector wavelet transform. Processing each axis independently with the same threshold tends to create directional bias in the reconstructed signal. The compression angle is worth mentioning because it is where most people first encounter wavelets, even if they do not realize it. JPEG2000 uses a variant called CDF 9/7 biorthogonal wavelets. Mallat explains the lifting scheme in a way that makes you understand why that particular filter pair was chosen. If you are implementing compression yourself rather than using a library, skip the generic Haar wavelet and use coiflets or symlets. Haar introduces visible block artifacts at low bitrates because its rectangular time-frequency localization is too coarse for natural signals.

Get the Full Details

Учебники A Wavelet Tour of Signal Processing 3rd - купить с доставкой ...
Учебники A Wavelet Tour of Signal Processing 3rd - купить с доставкой ...

Another counter-intuitive point that took me longer than it should have to accept: more decomposition levels do not always mean better denoising. Beyond a certain level, you are separating signal from signal, not signal from noise. The detail coefficients at very coarse levels often contain the actual low-frequency structure you want to preserve. I used to decompose all the way down and then wonder why my denoised signal lost its trend. The fix is to identify the energy concentration point in your coefficient tree and stop decomposing there. A scree plot of coefficient energy versus level usually makes this obvious within seconds. If you are working in Python, the pywt library covers almost everything in the book. MATLAB users should look at the Wavelet Toolbox, though its defaults are overly conservative on threshold selection. R has the wmtsa package, which is closer to the mathematical treatment in Mallat but has worse documentation. None of these implementations match the MODWT convenience I get from pywt's mollet function for the translation-invariant version. The second edition added chapters on curvelets and ridgelets, which are useful if you work with imaging data or seismic signals. The original edition remains sufficient for one-dimensional signal processing. I prefer the third edition because it expands the sparsity framework and connects wavelets more directly to modern compressed sensing ideas, but the earlier editions are free to read on Mallat's website if you do not want to buy it. The PDF is well-formatted and the figures render cleanly.

Download links float around the internet for older editions, and I am not going to link them here. The author's official page at the École Polytechnique has the third edition available through Springer if you need the latest version with updated code examples. Buy it if your employer will reimburse it. Your lab budget covers it faster than you spend time reinventing the thresholding steps yourself. The book assumes you know basic linear algebra and some signal processing from a undergraduate course. If Fourier transforms feel rusty, spend a week on Oppenheim and Schafer before opening Mallat. Trying to read the multiresolution analysis chapter while simultaneously relearning the discrete Fourier transform will slow you down significantly. The mathematical prerequisites are modest but they are real. You need to be comfortable with inner products, orthonormal bases, and filter banks. Everything else follows from those three concepts. My general rule for getting value out of A Wavelet Tour Of Signal Processing is to implement every algorithm as you read it. The denoising code takes about two hundred lines in Python. The threshold selection routines take another hundred. When you have written them yourself, the book stops being a reference and becomes a manual you actually understand. Reading it passively will leave you able to quote definitions but unable to pick a wavelet for a new problem without looking it up.

There are gaps in the book that you should know about upfront. It barely covers complex wavelets, which are essential for phase-preserving analysis and seismic interpretation. It does not address deep learning hybrids, which is fair because those did not exist in meaningful form when the third edition was finalized. It also assumes you care about exact reconstruction, which is not always true in modern applications where approximate sparsity is acceptable. If you need complex wavelets specifically, pair this with the papers by Selesnick on the dual-tree complex wavelet transform. The MRMT framework he developed extends what Mallat covers and handles directionality in two dimensions much better. Wavelet methods have been largely supplemented by deep learning in some domains, but they have not been replaced. In medical signal processing, industrial condition monitoring, and geophysics, wavelet denoising and feature extraction remain standard because they are interpretable and require far less training data than neural approaches. A well-tuned wavelet pipeline can produce clinically usable results from a few hundred seconds of recorded data. A neural network would need thousands of labeled examples to match that performance on the same task. The practical takeaway is that Mallat's book gives you the foundation and the remaining chapters give you the tools. Start with Chapters 1 through 4 for the core theory. Then move to Chapter 7 on orthogonal wavelet packets if your signals have frequency content that does not align with standard dyadic decompositions. The wavelet packet transform lets you choose the best basis for your data rather than accepting the default tree structure, and that flexibility matters when you are dealing with modulated signals or communications waveforms.

[PDF] A Wavelet Tour of Signal Processing by Stephane Mallat, 2nd ...
[PDF] A Wavelet Tour of Signal Processing by Stephane Mallat, 2nd ...

I keep coming back to this book because it treats the reader as someone who wants to solve problems, not someone who wants to prove theorems. The exercises are reasonable. The worked examples use real data. The code snippets are concise enough to paste into a notebook and modify. If you are serious about signal processing and have been avoiding wavelets because they seemed too mathematical, start here and work through the denoising chapters first. Everything else builds on that foundation.