You are here

Wavelet decompose

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 1
Rate this item!

This plugin losslessly decomposes a layer of an image into layers of wavelet scales. This means that you can edit the image on different detail scales (frequencies). The trivial recomposition of the image can be done by GIMP's layer modes so you can see the results of your modifications instantly. Among the applications are retouching, noise reduction, and enhancing global contrast.

Wavelet scales

An image can be transformed into a set of wavelet scales. There are detail scales and one residual. The detail scales contain the image details of a their scale size. This means that scale 1 contains only image details of the smallest scale. Scale 2 details are larger and scale 3 details even larger (and so on). This image illustrates this:

This plugin computes these scales losslessly and creates a new layer for each one. The recomposition is the addition of all scales which is done by GIMP using the grain merge layer mode. You can then paint the scales with your favourite tool, using (128,128,128) as neutral colour (for the details, not the residual). Values below neutral darken, values above lighten. The most straightforward thing to do is to use the paintbrush tool with the neutral colour and use different brushes and opacities. That way you erase details.

Skin retouching

The problem with skin retouching is retaining skin detail but erasing spots and such. However, one might want to keep freckles in the face (see image below). Achieving this is very difficult when operating in the normal image space. The skin details such as pores and hair are very small, spots and pimples are larger. If you erase the larger spots (with an airbrush for example) you hide the skin details inside it. With wavelets you decompose the image into scales of different detail size. To state it simply: One scale will contain the skin details like pores, other scales contain spots. They are rather nicely separated. Look at the image with the wavelet scales above. The first scale contains pores and freckles (it's a small image indeed) and the second and third one the spots. The problem is not separating the details from the spots anymore but finding out in which scales they lie. This image (taken by +psv) has been edited using wavelet decomposition. One could have erased the freckles easily, but this natural face is beautiful because of them.

Noise reduction

The human eye easily distinguishes noise from image detail. Computers cannot. By decomposing the image into wavelet scales you can decide for yourself which parts are erased and you get the most high quality result. For example in image regions which are out of focus you know there can't be any image details on the pixel size (they are just blurred). So you can pick a brush and erase wavelet scales 1 and 2 in such places. Image details of greater size are untouched by this as you will notice.

Local contrast

If you change the residual scale instead of the detail scales you can change the brightness of the image or global contrast without affecting local contrast. This means that you can get image details back out of dark image areas in full local contrast. This works for overexposed areas as well. However clipped image details (beyond white or black) cannot be restored.

wavelet-decompose-0.1.2.tar.gz17.65 KB
GIMP Version: 
Code License: 


I have written a tutorial on how I use Wavelet Decompose here: there are lots of photos and a video to watch as well.

I looked around for a bit, and besides the great example here (my wife is also very freck-ly), there were not many walk-throughs on a method for using these to retouch skin.

So I went ahead and wrote one (and just saw Nils post below):

Getting Around in GIMP - Skin Retouching (Wavelet Decompose).

Hopefully this will be helpful to others who stumble into this incredible plugin!

I also agree with Nils below - the results are so far beyond what you can get without it, this will definitely be the de-facto standard for skin manipulations (and already is for me)!

I have been trying for long to get this plugin into my workflow. It has been tough going since I have moved on to the 64 bit Windows 7 Gimp 2.7.1. I have finally been able to compile it in my environment. Now my workflow is back to my original workflow!!

So I am ecstatic again. :)

Thanks for the plugin.


I´ve been using this precious plugin for quite a while now. Mainly on retouching potraits. But I discover it for more and more purposes, for example "cleaning" stains on carpets or floors.... My workflow has become so addicted to frequency seperation that I would switch to PS if there wasn´t this precious plugin for GIMP. I wonder why it hasn´t been integrated in Gimp´s UI yet such as the stamp tool etc.
Besides I am confident it is at least as good as PS on what it has to offer on "frequency separation". There is a great video on this subject. Although its showing PS, the basics are the same. You can do the same with this plugin.
And thank you Marco for this great great plugin.

This filter is revolutionary, and fabulous illustration – thank you!

For more spectacular illustrations of what you can do with these wavelet techniques (remove wrinkles, restore damaged art), and also how to do it by hand (if you want to play with the nuts and bolts), see the following articles:

These are by Iain Fergusson.

For more technical background, see Wikipedia: Wavelet Transform.

Wavelets are most often discussed and used in sharpening, noise reduction (as Marco has also implemented), and compression, but as this demonstrates, transforming to wavelet space allows incredible manipulation, erasing or cloning/duplicating detail at some scales, while preserving it at others.

The results are so superior to what can be achieved without wavelets that I expect this technique (and related) will become the standard tool for image retouching.

I cannot praise this highly enough – thanks again Marco!

I love this plugin having used it before.

I know that I could use Gimp 32bit, but are there any binaries for 64 bit Windows 7?

Just hoping that someone may have already done it. If not, I might just set up the toolchain to go ahead and try to compile it on Win 7.


Help me! When i try to execute the file wavalet.exe i recive this replay:-"the program can't start because libgimp-2.0-0.dll is missing from your computer. Try reinstalling the program to fix this problem.". But i have just downloaded gimp three hours ago! What's it means? Thanks till now.

Are you clicking on the exe ?
That is not a installer but the plugin, to work has to be moved in one of the gimp plugin folder, and then has to be called from the Gimp menu (is in the Filters menu )

I dont'know how to install in my pc (windows xp) these two plug-in and how have i to do to open or to find them when i open gimp? These two plug in are very interesting. Thank you for some pieces of advice. Luigi

Hy Skylight you may found the windows version of both plugin (exactly of all 3, also wavelet denoise is available) here click in the thumb to get to the pages there download button is at the left of the image, and a " how to install and use " file is included. Sorry if is not listed here but the developer should have forget to add the link for the windows binary, and he is the only that may edit the first message. (or maybe was added but in a another page of this list, not sure now ) about you other questions the comment under the images, in the link i gave you, and the instrutions contained contains all answers Then you will need only to download unzip, and browse the content


Subscribe to Comments for "Wavelet decompose"