In statistics and image processing, to smooth a data set is to create an approximating function that attempts to capture important patterns in the data, while leaving out noise or other fine-scale structures/rapid phenomena. In smoothing, the data points of a signal are modified so individual points higher than the adjacent points (presumably because of noise) are reduced, and points that are lower than the adjacent points are increased leading to a smoother signal. Smoothing may be used in two important ways that can aid in data analysis (1) by being able to extract more information from the data as long as the assumption of smoothing is reasonable and (2) by being able to provide analyses that are both flexible and robust.[1] Many different algorithms are used in smoothing.
Smoothing may be distinguished from the related and partially overlapping concept of curve fitting in the following ways:
In the case that the smoothed values can be written as a linear transformation of the observed values, the smoothing operation is known as a linear smoother; the matrix representing the transformation is known as a smoother matrix or hat matrix.[citation needed]
The operation of applying such a matrix transformation is called convolution. Thus the matrix is also called convolution matrix or a convolution kernel. In the case of simple series of data points (rather than a multi-dimensional image), the convolution kernel is a one-dimensional vector.
One of the most common algorithms is the "moving average", often used to try to capture important trends in repeated statistical surveys. In image processing and computer vision, smoothing ideas are used in scale space representations. The simplest smoothing algorithm is the "rectangular" or "unweighted sliding-average smooth". This method replaces each point in the signal with the average of "m" adjacent points, where "m" is a positive integer called the "smooth width". Usually m is an odd number. The triangular smooth is like the rectangular smooth except that it implements a weighted smoothing function.[2]
Some specific smoothing and filter types, with their respective uses, pros and cons are:
Algorithm | Overview and uses | Pros | Cons |
---|---|---|---|
Additive smoothing | used to smooth categorical data. | ||
Butterworth filter | Slower roll-off than a Chebyshev Type I/Type II filter or an elliptic filter |
|
|
Chebyshev filter | Has a steeper roll-off and more passband ripple (type I) or stopband ripple (type II) than Butterworth filters. |
|
|
Digital filter | Used on a sampled, discrete-time signal to reduce or enhance certain aspects of that signal | ||
Elliptic filter | |||
Exponential smoothing |
|
||
Kalman filter |
|
Estimates of unknown variables it produces tend to be more accurate than those based on a single measurement alone | |
Kernel smoother | The estimated function is smooth, and the level of smoothness is set by a single parameter. | ||
Kolmogorov–Zurbenko filter |
|
|
|
Laplacian smoothing | algorithm to smooth a polygonal mesh.[4][5] | ||
Local regression also known as "loess" or "lowess" | a generalization of moving average and polynomial regression. |
|
|
Low-pass filter |
|
||
Moving average |
|
|
|
Ramer–Douglas–Peucker algorithm | decimates a curve composed of line segments to a similar curve with fewer points. | ||
Savitzky–Golay smoothing filter |
|
||
Smoothing spline | |||
Stretched grid method |
|
{{cite book}}
: CS1 maint: multiple names: authors list (link)