Smoothing filter

From SubSurfWiki
Jump to: navigation, search

Filters are simple mathematical operators which, when convolved with well logs or seismic or interpretation data, emphasize some aspect of the data, and de-emphasize others. For example, a common step in seismic horizon interpretation is to apply a filter that reduces the high spatial frequencies in the data, which are mostly attributable to noise, and emphasizes the lower frequencies. This is a smoothing filter.

This article describes the general method, and gives some specific examples of smoothing filters and their results.

Linear filters

Examples of linear kernels.

On any digital image or seismic horizon, linear filters work by convolution with a moving window called a kernel. The input pixel is at the centre of the kernel. The non-zero part of the kernel is called the support of the filter. Most filters have a square support, though some are rectangular or circular. Some examples of kernels are shown here.

Linear filters operate in the same way on every input pixel, applying the same weights to the same pixels in the support. They are consequently very fast, but not sensitive to the character of the data, smoothing everything equally. This is their biggest weakness for geophysical applications, since faults and channel margins, say, are smoothed along with noise and picking artifacts.

Examples include the mean and Gaussian filters.

Non-linear filters

Edges are important in human perception, and it is usually desirable to preserve their sharpness. Many non-linear filters are edge-preserving, hence their importance in image processing. I think they are relatively under-utilized by interpreters.

Non-linear filters preserve edges because they are adaptive. Not every pixel in the support contributes to the output. The pixels that do contribute are selected by some statistical criterion, usually something to do with how similar the pixels are either to each other or to the input pixel. The advantage of this is that noisy pixels contribute less to the output pixel, and edges are preserved or even enhanced.

Examples include:

Choosing a filter

The following table is from Hall (2007[1]). + indicates good suitability, and ++ indicates excellent suitability.

  Type Random noise Spiky noise Edges preserved Comments
Mean Linear +     Gaussian is a better choice
Gaussian Linear +     Less affected by spikes than mean
Conservative Non-linear   + + Only removes very sparse spikes
Trimmed mean Non-linear ++ ++   Best if edges not present or not wanted
Mode Non-linear + + + Only use on discrete or class attributes
Median Non-linear ++ ++ + Good all-rounder
SNN Non-linear ++ ++ ++ Best all-rounder
Kuwahara Non-linear + ++ ++ Enhances edges, but use median filter first


  1. Hall, M (2007). Smooth operator: smoothing seismic horizons and attributes. The Leading Edge 26 (1), January 2007, p16-20. doi:10.1190/1.2431821