Suavização de curvas para dados ruidosos: explorando a filtragem Savitzky-Golay
Na busca pela análise de conjuntos de dados, o desafio de suavizar curvas ruidosas surge para aumentar a clareza e descobrir padrões subjacentes. Um método particularmente eficaz para esta tarefa é o filtro Savitzky-Golay.
O filtro Savitzky-Golay opera sob a suposição de que os dados podem ser aproximados localmente por uma função polinomial. Ele aproveita a regressão de mínimos quadrados para ajustar um polinômio especificado a uma pequena janela de pontos de dados e, posteriormente, emprega o polinômio para estimar o valor no centro da janela. Este processo é aplicado iterativamente, movendo a janela ao longo da série de dados, permitindo o ajuste ideal de cada ponto em relação aos seus vizinhos.
Para conjuntos de dados que apresentam pequenas variações de ruído, como o exemplo fornecido na pergunta, um O filtro Savitzky-Golay provou ser altamente eficaz. Ao especificar o tamanho da janela e a ordem do polinômio, pode-se adaptar o filtro para se adequar às características dos dados.
Em Python, o filtro Savitzky-Golay está prontamente disponível na biblioteca SciPy. O trecho de código a seguir ilustra sua implementação:
import numpy as np
import matplotlib.pyplot as plt
from scipy.signal import savgol_filter
x = np.linspace(0, 2*np.pi, 100)
y = np.sin(x) np.random.random(100) * 0.2
yhat = savgol_filter(y, 51, 3) # window size 51, polynomial order 3
plt.plot(x,y)
plt.plot(x,yhat, color='red')
plt.show()
A curva suavizada resultante fornece uma representação mais clara da função senoidal subjacente, destacando a eficácia do filtro Savitzky-Golay na mitigação de ruído e melhorando a visibilidade de características salientes.
Concluindo, o filtro Savitzky-Golay oferece uma abordagem versátil e adaptável para suavizar curvas ruidosas, tornando-o uma ferramenta valiosa para análise de dados em diversas disciplinas científicas e de engenharia.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3