Wavelet Toolbox    

One-Dimensional Local Thresholding for De-noising Using the Graphical Interface

  1. From the MATLAB prompt, type
  1. The Wavelet Toolbox Main Menu appears.

  1. Click the SWT De-noising 1-D menu item.

The discrete stationary wavelet transform de-noising tool for one-dimensional signals appears.

  1. Load data.
  1. From the File menu, choose the Load Signal option.

    When the Load Signal dialog box appears, select the MAT-file nblocr1.mat, which should reside in the MATLAB directory toolbox/wavelet/wavedemo. Click the OK button. The noisy blocks signal with two change points in the noise variance located at positions 200 and 600, is loaded into the SWT De-noising 1-D tool.

  1. Perform signal decomposition.
  1. Select the db1 wavelet from the Wavelet menu and select 5 from the Level menu, and then click the Decompose Signal button. After a pause for computation, the tool displays the stationary wavelet approximation and detail coefficients of the decomposition.

    Accept the defaults of Fixed form soft thresholding and Unscaled white noise. Click the De-noise button.

    The result is quite satisfactory, but seems to be oversmoothed when the signal is irregular.

    Select hard for the thresholding mode instead of soft, and then click the De-noise button.

    The result is not satisfactory. The de-noised signal remains noisy before position 200 and after position 700. This illustrates the limits of the classical de-noising strategies. In addition, the residuals obtained during the last trials clearly suggest to try a local thresholding strategy.

  1. Generate interval-dependent thresholds.
  1. Click the Int. dependent threshold Settings button located at the bottom of the thresholding method frame. A new window titled Int. Dependent Threshold Settings for figure ... appears.

    Click the Generate button. After a pause for computation, the tool displays the default intervals associated with adapted thresholds.

    Three intervals are proposed. Since the variances for the three intervals are very different, the optimization program easily detects the correct structure. Nevertheless, you can visualize the intervals proposed for a number of intervals from 1 to 6 using the Select Number of Intervals menu (which replaces the Generate button). Using the default intervals automatically propagates the interval delimiters and associated thresholds to all levels.

De-noise with interval-dependent thresholds..   

  1. Click the Close button of the Int. Dependent Threshold Settings for ... window. When the Update thresholds dialog box appears, click Yes. The SWT De-noising 1-D main window is updated. The sliders located to the right of the window control the level and interval dependent thresholds. For a given interval, the threshold is indicated by yellow dotted lines running horizontally through the graphs on the left of the window. The red dotted lines running vertically through the graphs indicate the interval delimiters. Next click the De-noise button.

    The result is quite satisfactory, but some unpleasant coefficients remain.

Modifying Interval Dependent Thresholds. .   The thresholds can be increased to keep only the highest values of the wavelet coefficients at each level. Do this by dragging the yellow lines directly on the graphs on the left of the window, or using the View Axes button (located at the bottom of the screen near the Close button), which allows you to see each axis in full size. Another way is to edit the thresholds by selecting the interval number located near the sliders and typing the desired value.

  1. Note that you can also change the interval limits by holding down the left mouse button over the vertical dotted red lines, and dragging them.

    You can also define your own interval dependent strategy. Click the Int. dependent threshold settings button. The Int. Dependent Threshold Settings for ... window appears again. We shall explore this window for a little while. Click the Delete button, so that the interval delimiters disappear. Double click the left mouse button to define new interval delimiters; for example at positions 300 and 500 and adjust the thresholds manually. Each level must be considered separately using the Level menu for adjusting the thresholds. The current interval delimiters can be propagated to all levels by clicking the Propagate button. So click the Propagate button. Adjust the thresholds for each level, one by one. At the end, click the Close button of the Int. Dependent Threshold settings for ... window. When the Update thresholds dialog box appears, click Yes. Then click the De-noise button.

    Note that

    1. By double-clicking again on an interval delimiter with the left mouse button, you delete it.
    2. You can move the interval delimiters (vertical red dotted lines) and the threshold levels (horizontal yellow dotted lines) by holding down the left mouse button over these lines and dragging them.
    3. The maximum number of interval delimiters at each level is 10.

Some Examples of De-noising with Interval Dependent Thresholds.

From the File menu, choose the Example AnalysisNoisy Signals - Dependent Noise Variance option. The proposed items contain, in addition to the usual information, the "true" number of intervals. You can then experiment with various signals for which local thresholding is needed.

For example, choose the last item, which is a real-world electrical signal. The entire process performed on steps 4, 5, 8, 9, and 10 is demonstrated.


  One-Dimensional Variance Adaptive Thresholding of Wavelet Coefficients Importing and Exporting Information from the Graphical Interface