PixInsight Noise Reduction Example
Wavelets + SGBNR (2/4)



::Index  <Prev  >Next

1. Original Image: Fornax Dwarf by Daniel Verschatse

2. Small-Scale Noise: Multiscale Noise Reduction

2.1 Wavelet Layers Preview

2.2 Noise Reduction with ATrousWaveletTransform

3. Large-Scale Noise: SGBNR

3.1 SGBNR Mask

3.2 SGBNR Parameters

4. Final Evaluation of Noise Reduction Results



2. Small-Scale Noise: Multiscale Noise Reduction

The image shows a considerable amount of noise at high spatial frequencies. This is more clearly seen by inspecting a small crop at twice its actual size:

Small-scale noise is quite uniformly distributed. In addition, some hot and cold pixels are also present as superposed impulsional noise.

Multiscale noise reduction can be applied very efficiently in PixInsight LE to deal with noise at small scales. The appropriate tools are the ATrousWaveletTransform process and its standard interface, the À Trous Wavelets processing window. If you haven't done so far, we suggest you to take the time to read the documentation sections on wavelets processing before going on.

We'll use the standard 3x3 Linear Interpolation scaling function and the Linear 1 scaling sequence. These are default working options for the À Trous Wavelets processing window.

The first step is defining a preview on an interesting area of the image. It's a good idea to include both relatively bright and dark areas in the preview area, as well as objects of a wide variety of types. Of course, you may define as many previews as you need on the same image to try a processing strategy on relevant areas.


2.1 Wavelet Layers Preview

We start by investigating the contents of several wavelet layers. The preview mode of the À Trous Wavelets window can be used for this task. Below is a screenshot with the À Trous Wavelets window as has been used to preview the different wavelet layers in this example. Note the active Preview option. Since we are working with a grayscale image, the Use luminance option is ignored; however, for noise reduction on color images, the "Use luminance" option must be disabled, to allow for reduction of noise in both the luminance and chrominance of the image.

Note that the À Trous Wavelets window, when working in preview mode, generates inverted images. This has been done intentionally this way to protect you from applying a process in preview mode unadvertedly. The small track bar below the Preview check box can be used to increase contrast of the previewed wavelet layer, if necessary.

With the window in preview mode, by selecting the five wavelet layers in sequence (four detail layers plus residual), we can identify the image structures contained by each individual layer. The results of this analysis can be verified on the following mouseover figure.

[mouseover: original crop, zoomed 2:1]
[mouseover: preview of scale of 1 pixels]   [2 pixels]   [3 pixels]   [4 pixels]   [residual layer]

It is self-evident that the first wavelet layer contains most high-frequency noise. Most impulsional noise features (hot and cold pixels) are also described by this layer.

The second layer has also some relatively high-frequency noise, but obviously at a higher scale. There are also a few bright impulsional features that persist in the second layer. For example, look at the top right corner of the previous figure, on the scale of two pixels, compare it with the scale of one pixel, and verify that those bright things are not present on higher scales.

Looking at the third and fourth layers, at scales of three and four pixels, respectively, we still can see some larger noise structures, particularly on sky background areas. This is what we call large-scale noise. PixInsight includes quite powerful weapons to fight against this kind of noise, so just don't care about it for now.

Finally, the residual layer appears very smooth and doesn't seem to include any noise.


2.2 Noise Reduction with ATrousWaveletTransform

From the above observations, removing the first layer from the inverse wavelet transform seems a pretty good idea. Let's see how this works. To continue, we must disable the preview mode by clicking the Preview check box of the À Trous Wavelets window. Then, we can disable a wavelet layer by just double-clicking on its first colum, on the layer parameters summary. When a layer is disabled a red 'x' icon is shown instead of a green check mark. After disabling the first wavelet layer, things look like this:

The next mouseover figure compares the original image versus the result of disabling the first wavelet layer.

[mouseover: original crop vs. layer 1 disabled, zoomed 2:1]

Noise at a very small scale has been removed. However, star edges are a bit softened. Besides the fact that this slight softening effect can be desirable sometimes at such small scales, we could avoid it by using multiscale noise reduction parameters instead of just disabling a wavelet layer. But, for our purposes, we can be happy with our results so far: layer one disabled is our choice.

Layer two now. Of course we cannot just disable it. The reason is quite obvious: it contains many significant structures. If we'd disable this layer, many small stars and some bright edges just would disappear. We definitely need something more refined here: noise reduction parameters.

Note the noise reduction Amount (0.5), number of iterations (n = 2), and filter size (k = 5) parameters used for the second layer. Instead of a single strong noise reduction iteration, we prefer applying two iterations with a smaller amount; this helps a bit in preserving detail. We recommend you to try using more than one iteration, especially for critical or difficult images.

To compensate for the slight softening effect caused by the noise reduction process, a small bias value has also been used (+0.05). This helps preserving stellar edges. Below is a mouseover comparison where you can evaluate all that.

[mouseover: original crop, zoomed 2:1]
[mouseover: layer 1 disabled]
[mouseover: layer 1 disabled + layer 2 noise reduction]

The first noise reduction step (disable layer #1) is the most efficient, since it removes virtually all high-frequency noise from the image. Noise reduction for the second layer is a much more subtle step, but it facilitates things for the next phase: noise removal at larger scales with the SGBNR algorithm.



::Index  <Prev  >Next