Filtro Savitzky-Golay


Un filtro Savitzky-Golay es un filtro digital que se puede aplicar a un conjunto de puntos de datos digitales con el fin de suavizar los datos, es decir, aumentar la precisión de los datos sin distorsionar la tendencia de la señal. Esto se logra, en un proceso conocido como convolución , ajustando subconjuntos sucesivos de puntos de datos adyacentes con un polinomio de bajo grado mediante el método de mínimos cuadrados lineales . Cuando los puntos de datos están igualmente espaciados, una solución analíticaa las ecuaciones de mínimos cuadrados se pueden encontrar, en forma de un solo conjunto de "coeficientes de convolución" que se pueden aplicar a todos los subconjuntos de datos, para dar estimaciones de la señal suavizada (o derivados de la señal suavizada) en el punto central de cada subconjunto. El método, basado en procedimientos matemáticos establecidos, [1] [2] fue popularizado por Abraham Savitzky y Marcel JE Golay , quienes publicaron tablas de coeficientes de convolución para varios polinomios y tamaños de subconjuntos en 1964. [3] [4] Algunos errores en las tablas se han corregido. [5] El método se ha ampliado para el tratamiento de datos bidimensionales y tridimensionales.

El artículo de Savitzky y Golay es uno de los artículos más citados en la revista Analytical Chemistry [6] y está clasificado por esa revista como uno de sus "10 artículos seminales" diciendo que "se puede argumentar que los albores de la ciencia analítica controlada por computadora instrumento se puede rastrear hasta este artículo". [7]

Los datos consisten en un conjunto de puntos { x j , y j }, j = 1, ..., n , donde x j es una variable independiente e y j es un valor observado. Se tratan con un conjunto de m coeficientes de convolución, C i , según la expresión

Los coeficientes de convolución seleccionados se muestran en las tablas a continuación . Por ejemplo, para suavizar mediante un polinomio cuadrático de 5 puntos, m = 5, i = −2, −1, 0, 1, 2 y el j -ésimo punto de datos suavizado, Y j , viene dado por

donde, C −2 = −3/35, C −1 = 12/35, etc. Existen numerosas aplicaciones de suavizado, que se realizan principalmente para hacer que los datos parezcan menos ruidosos de lo que realmente son. Las siguientes son aplicaciones de diferenciación numérica de datos. [8] Nota Al calcular la n -ésima derivada, se puede aplicar un factor de escala adicional de a todos los puntos de datos calculados para obtener valores absolutos (consulte las expresiones para , a continuación, para obtener más detalles).

Un filtro de promedio móvil se usa comúnmente con datos de series de tiempo para suavizar las fluctuaciones a corto plazo y resaltar tendencias o ciclos a más largo plazo. A menudo se usa en el análisis técnico de datos financieros, como precios de acciones, rendimientos o volúmenes de negociación. También se utiliza en economía para examinar el producto interno bruto, el empleo u otras series temporales macroeconómicas.


Animación que muestra la aplicación del suavizado, pasando por los datos de izquierda a derecha. La línea roja representa el polinomio local que se utiliza para ajustar un subconjunto de datos. Los valores suavizados se muestran como círculos.
(2) Curva de titulación (azul) para ácido malónico y 2da derivada (verde). La parte en el cuadro azul claro se amplía 10 veces.
(3) Lorentziano sobre línea base exponencial (azul) y 2da derivada (verde)
(4) Suma de dos Lorentzianos (azul) y 2da derivada (verde)
(5) Cuarta derivada de la suma de dos lorentcianos
Efecto del suavizado en puntos de datos con ruido no correlacionado de desviación estándar unitaria
Transformada de Fourier de la función de suavizado cuadrático/cúbico de 9 puntos