DSPRelated.com
Savitzky Golay Filter

Savitzky Golay Filter

Josef Hoffmann
TimelessIntermediate

The Savitzky-Golay filter is a mathematical smoothing filter that is often used in signal processing. It was first described in 1964 by Abraham Savitzky and Marcel Golay. The filter uses a polynomial regression over a series of values to find a smoothed value. One advantage of the Savitzky-Golay filter is that, unlike other smoothing filters, high-frequency components are not simply cut off, but are included in the calculation. As a result, the filter shows excellent properties with regard to the relative maxima, minima and scatter. In this article, the principle of the Savitzky Golay filter is explained and accompanied with MATLAB scripts. Two simple examples will be examined and provided with meaningful representations of the results to help understand these filters. The MATLAB function sgolay and its parameters are also explained and applied so that you can better understand this function and use it for your own applications.


Summary

This article explains the theory and practical use of the Savitzky–Golay filter, showing how polynomial least-squares regression is used to produce smoothed samples while preserving peaks and derivatives. It includes MATLAB scripts and two worked examples that demonstrate parameter selection, boundary handling, and comparative results versus basic smoothing filters.

Key Takeaways

  • Describe the mathematical derivation of the Savitzky–Golay filter and how polynomial regression yields convolution coefficients.
  • Implement the Savitzky–Golay filter in MATLAB using the provided scripts and apply it to example signals.
  • Select window length and polynomial order with an understanding of the trade-offs between smoothing and feature preservation.
  • Compare SG filter performance to moving-average and simple low-pass approaches, including effects on peaks, derivatives, and noise.

Who Should Read This

Intermediate DSP engineers, researchers, or graduate students working on smoothing, derivative estimation, peak detection, or similar signal-processing tasks who use MATLAB and want practical implementations.

TimelessIntermediate

Topics

Filter DesignMATLAB/SimulinkStatistical Signal Processing

Related Documents