You are here

Wavelet denoise

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

The wavelet denoise plugin is a tool to reduce noise in each channel of an image separately. The default colour space to do denoising is YCbCr which has the advantage that chroma noise can be reduced without affecting image details. Denoising in CIELAB (L*a*b*) or RGB is available as an option. The user interface allows colour mode and preview channel selection. The denoising threshold can be set for each colour channel independently.


  • User interface with preview is available.
  • Amount of denoising for each channel is selectable.
  • Possibility to denoise YCbCr or CIELAB channels instead of RGB exists.
  • Noise profiling is done.
  • Conversion from RGB to YCbCr and RGB to CIELAB is lossless.
  • Preview is capable of displaying one single channel only if desired.
  • Processing time is reasonably fast (around 20 seconds for a 10 Megapixel image) and independent from the amount of denoising applied.
  • User interface in multiple languages is available.


The wavelet denoise plugin for The GIMP reduces noise in an image using the algorithm copied and altered from the UFRaw program [Udi Fuchs] (which inherited the algorithm from dcraw [Dave Coffin]). Instead of denoising all RGB channels at once, the plugin implementation allows to denoise the RGB channels in dividually and - even more useful - to denoise the YCbCr or CIELAB channels individually. The colour model conversions are nearly lossless as the internal calculations are done in floating point numbers and rounding errors are avoided. Because the algorithm implements a wavelet filtering it runs quite fast.


This is part of a picture taken with the Nikon D80 DSLR camera at ISO 1600 in
RAW format. The face is lit by two candles and a colour temperature setting of
2500 K was used. The file was opened with the UFRaw plugin.

The goal is not to reduce all noise. The unpleasant part is the chroma noise
which appears only when shooting the camera in RAW mode at a high ISO speed. As
you can see the colour (chroma) noise is almost completely gone in the second picture and the luminance noise is slightly reduced. If you look closely at the face you will notice that the image details have not been altered much, the sharpness is almost the same.

Note that this is just the result of a uniform application of the filter on the unprocessed image. Masking the filter effect with a selection is possible which could improve the result even more.


This plug-in runs on multiple platforms:

  • Linux

    The plugin can easily be compiled from sources but be aware that some Linux distributions provide packages:

    • Ubuntu: Install the package 'gimp-plugin-registry'.
    • ArchLinux: Install the package 'gimp-plugin-wavelet-denoise'.
    • Debian: Install the package 'gimp-plugin-registry'.
  • Windows

    There exists a pre compiled binary for the plugin here. (Thank you Francois C.!)

  • Mac OS X

    'Gimp on OS X' provides a complete Gimp distribution which includes the plugin. You can download it here. (Thanks, Simone!)

What's new in version 0.3

The most significant changes are the introduction of noise profiling and internationalization.

  • Noise profiling is done.
  • Internationalization is possible now, several translations exist.
  • New slider "Softness" (which replaces the old "Detail" slider, but is completely different from it) to control the thresholding mechanism.
  • Introduction of the CIELAB (L*a*b*) colour space.
  • Reorganisation of source files and new installation routine via Makefiles.

What's new in version 0.2

There are several changes that have been made to improve the plugin.

  • The denoising is done on linear data now. The sRGB gamma of approximately 2.
    2 is compensated.
  • The interface has been reorganized
  • A 'Detail' slider has been added which affects the thresholds dependency on
    noise frequency.
  • Tool-tips have been added.
  • The single channel preview can now be displayed in colour.
  • There is a 'Reset' button which resets the currently selected channel tempor
    arily (during the time the button is pressed).
  • Normal reset buttons have been added.
  • The size of the dialog is saved now after it is closed.
  • The default thresholds are all zero now.
  • The progress bar was fixed and tweaked.

Apart from that minor other changes have been made.


The plugin is distributed under the General Public License (GPL).

GIMP Version: 
Code License: 


Maybe not automatically...

  • If you type 'which gimptool-2.0' does it give you the gimp-2.7 path? The Makefile is using gimptool to copy the binary. If you have another version of Gimp installed, it may interfere here. Setting the PATH variable or changing the Makefile may help then.
  • Copy the binary by hand into the directory /opt/gimp-2.7/... Run 'make install' anyway to install the translation files.

I'm not sure whether the plugin runs with gimp-2.7 at all.

Have fun trying and report your results here please!

After changing @gimptool-2.0 to actual gimptool path in Makefile user and global install sections installation passed. Making the same with Makefile from po directory made po files installed, but the displayed language is English.

Note: wavelet-decompose used deprecated procedure 'gimp-image-add-layer' instead of new 'gimp-image-insert-layer', which is said by gimp warning dialog.

Most recent for windows here

Note that are all you must click on the file to install

This is fantastic, thank you for sharing your work. It would be helpful (for a great many judging by the google searches I did) if your install file included details of the packages needed to install this plugin. On Fedora 12 I had to add the 'gettext' package and 'plugin development tools'. After that works as well, if not better than any other de-noiser I have used.

Is it possible to download Wavelet denoise via macports, so I can get automaticly updates when you are improving your plugin?

Hi everyone Edit: Version 0.3.1 released. Changes - Added Estonian and Polish translations Version 0.3 released. Canges since beta2: - Dialog window now in landscape aspect. - Russian translation added. - Menu entry now translated. - make uninstall stuff now available. Additional changes since 0.2.1: - Noise profiling introduces. - Replacement of 'Detail' for 'Softness' slider. - CIELAB colour space added. - Enhanced reading-writing speed. - New build system (make && make install) - Translateable - Italian and German translations. Have fun! marcor

This plug-in is licensed under GPLv2 and does not have the "or any later version" clause. This causes problems once GIMP switches to GPLv3+ and LGPLv3+.

The same applies to the code that has been taken from UFRaw. The UFRaw author has already been made aware of this problem,  you should update the copied code as soon as the license there is changed, too.

This is really great. I tried many combinations of other filters but the effect of this filter is really professional. Smooth control over RGB threshold makes it great. Thanks mate for your nice job, this is really valuable plug-in for every one.

This is just amazing. Version 0.2 works great, but I'd love to see a windows 0.3 build available made. I'd be happy to test on my machine (Win XP) and provide feedback Let me know! The GIMP community really appreciates your amazing work. Matt

Hello everybody I just released the 0.3-beta version of the wavelet denoise plugin. There are significant changes and it works better than ever. I'm not sure how the changes affect building on windows and that's why there is only the beta available now. Tell me what you think about it! If you speak another language than English and want the plugin translated, please do so and send me the .po file! I will include it! German is already available.


Subscribe to Comments for "Wavelet denoise"