Image Smoothing Using Stationary Wavelet Transform
This Demonstration illustrates the use of Mathematica's StationaryWaveletTransform and WaveletThreshold to reduce unwanted texture or noise in images.
This Demonstration performs a three-level stationary wavelet transform using the classic Haar wavelet. Two techniques are used to reduce unwanted texture and noise, while trying to keep the main features relatively well defined: (1) wavelet threshold, and (2) mixing different parts of the fluctuations at different levels. The one-level fluctuation is mostly ignored, the two-level fluctuation is partly used, and the three-level fluctuation is fully used. Then a smoothed variation of the original image is synthesized from the manipulated wavelet data using an inverse wavelet transform. Finally, additional sharpening is applied outside the wavelet transform.
The threshold function, threshold level, and other parameters are selected for this specific image. Generally, based on the image noise and texture characteristics, some functions and threshold levels might work better than others. The integrated wavelet analysis and image processing workflow in Mathematica 8 make it easy to experiment with such problems.