b = sgolay(k,f) b = sgolay(k,f,w) [b,g] = sgolay(...)

Description

b = sgolay(k,f) designs
a Savitzky-Golay FIR smoothing filter b. The polynomial
order k must be less than the frame size, f,
which must be odd. If k = f-1,
the designed filter produces no smoothing. The output, b,
is an f-by-f matrix whose rows
represent the time-varying FIR filter coefficients. In a smoothing
filter implementation (for example, sgolayfilt),
the last (f-1)/2 rows (each an FIR filter) are
applied to the signal during the startup transient, and the first (f-1)/2 rows
are applied to the signal during the terminal transient. The center
row is applied to the signal in the steady state.

b = sgolay(k,f,w) specifies
a weighting vector w with length f,
which contains the real, positive-valued weights to be used during
the least-squares minimization.

[b,g] = sgolay(...) returns
the matrix g of differentiation filters. Each column
of g is a differentiation filter for derivatives
of order p-1 where p is the
column index. Given a signal x of length f,
you can find an estimate of the p^{th} order
derivative, xp, of its middle value from:

Savitzky-Golay smoothing filters (also called digital smoothing
polynomial filters or least squares smoothing filters) are typically
used to "smooth out" a noisy signal whose frequency
span (without noise) is large. In this type of application, Savitzky-Golay
smoothing filters perform much better than standard averaging FIR
filters, which tend to filter out a significant portion of the signal's
high frequency content along with the noise. Although Savitzky-Golay
filters are more effective at preserving the pertinent high frequency
components of the signal, they are less successful than standard averaging
FIR filters at rejecting noise when noise levels are particularly
high. The particular formulation of Savitzky-Golay filters preserves
various moment orders better than other smoothing methods, which tend
to preserve peak widths and heights better than Savitzky-Golay.

Savitzky-Golay filters are optimal in the sense that they minimize
the least-squares error in fitting a polynomial to each frame of noisy
data.

References

[1] Orfanidis, Sophocles J. Introduction
to Signal Processing. Englewood Cliffs, NJ: Prentice Hall,
1996.