Differenze tra il filtraggio e il livellamento della regressione polinomiale?


14

Quali sono le differenze tra il filtro passa-basso classico (con un IIR o FIR) e il "smoothing" mediante regressione polinomiale localizzata di grado N / e / o interpolazione (nel caso di upsampling), in particolare nel caso in cui N sia maggiore di 1 ma inferiore al numero locale di punti utilizzati nell'adattamento di regressione.


+1 Ottima domanda, mi hai battuto. :-) AFAIK usando N = 2 corrisponde al filtro 'classico' lineare che conosciamo, ma potrei sbagliarmi su questo.
Spacey,

2
ricostruzione sincera vs interpolazione spline: cnx.org/content/m11126/latest "l'interpolazione spline è più liscia dell'interpolazione sinc. Questo perché il supporto delle spline cardinali è più compatto di quello della funzione sinc."
endolito

Risposte:


10

Sia il filtro passa basso che il livellamento della regressione polinomiale potrebbero essere visti come approssimazioni di una funzione. Tuttavia, i mezzi per farlo sono diversi. La domanda chiave da porre qui è "Riesci a fare uno in termini di altro?" e la risposta breve è "non sempre", per ragioni che sono spiegate di seguito.

Durante il livellamento mediante filtro, l'operazione del tasto è una convoluzione in cui , che nel dominio della frequenza si traduce in dove indica la trasformata di Fourier discreta (e l'inverso). La trasformata discreta di Fourier (ad es. ) offre un'approssimazione di come somma delle funzioni trigonometriche. Quando è un filtro passa-basso, viene mantenuto un numero inferiore di componenti a bassa frequenza e le variazioni improvvise in vengono smussate. Questo imposta il filtro passa-basso nel contesto dell'approssimazione della funzione usando le funzioni trigonometriche come funzioni di basey = F - 1 ( F ( x ) F ( h ) ) F F - 1 F ( x ) x h xy(n)=x(n)h(n)y=F-1(F(X)F(h))FF-1F(X)XhX, ma vale la pena rivisitare la formula di convoluzione per notare che durante il filtraggio, y (n) (l'output del filtro) dipende da e da una somma ponderata dei campioni passati di (la ponderazione qui determinata dal "forma" di ). (considerazioni analoghe valgono per i filtri IIR ovviamente con l'aggiunta di valori passati di )x h y ( n )X(n)Xhy(n)

Quando si esegue il livellamento con un polinomio di grado n , tuttavia, l'output dell'interpolante dipende solo da e da una miscela di (diverse) funzioni di base (chiamate anche monomi ). Quali sono queste diverse funzioni di base? È una costante ( ), una linea (X(n)un'0X0 ), una parabola ( a 2 x 2 ) e così via (fare riferimentoa questoper una bella illustrazione). Di solito, tuttavia, quando si ha a che fare con campioni equidistanti nel tempo e per motivi di precisione, ciò che viene utilizzato èla forma del polinomio di Newtonun'1Xun'2X2. Il motivo per cui sto citando questo è perché attraverso ciò è facile vedere che quando si esegue l'interpolazione lineare è possibile costruire un kernel filtro che restituisca una somma ponderata linearmente di campioni disponibili, proprio come un polinomio di interpolazione di ordine basso userebbe le "linee" per interpolare tra due campioni. Ma a livelli più alti, i due metodi di approssimazione restituirebbero risultati diversi (a causa delle differenze nelle funzioni di base).

Come ho scritto sopra, non tenere conto dei valori passati di non è rigoroso. Questo è un punto sottile. Perché di solito, quando si costruisce un polinomio, i valori al di fuori dell'intervallo dato ("passato" e "futuro" di un segnale) non vengono considerati. È tuttavia possibile includerli fissando i derivati ​​ai bordi dell'intervallo. E se questo viene fatto ripetutamente (come una finestra scorrevole non sovrapposta), in modo efficace, i "campioni passati" di x (n) verrebbero presi in considerazione. (Questo è il trucco che usano le spline e in effetti esiste un'espressione di convoluzione per l' interpolazione bicubica . Tuttavia, si noti qui che l'interpretazione di x è diversa quando si parla di splineX(n)X -nota il punto sulla normalizzazione-)

Il motivo per cui alcune volte si utilizza il filtro come interpolazione, ad esempio nel caso di "Interpolazione sincrona", è perché ha senso anche dal punto di vista fisico. La rappresentazione idealizzata di un sistema a banda limitata (ad es. Un amplificatore (lineare) o una lente in un sistema ottico ) nel dominio del tempo è l'impulso sincero. La rappresentazione nel dominio della frequenza di un impulso sinc è un "impulso" rettangolare. Pertanto, con pochissime ipotesi, ci aspettiamo che un valore mancante sia più o meno vicino ai suoi vicini (ovviamente, entro certi limiti). Se questo è stato eseguito con un polinomio di ordine n (per n più elevato), in un certo senso "fissiamo" il modo in cui un valore mancante è correlato ai suoi vicini che potrebbe non essere sempre realistico (perché i valori di pressione sonora di un il fronte d'onda che colpisce un microfono deve essere riparato per avere la forma di una ad esempio? Presuppone su come si comporta la sorgente sonora che potrebbe non essere sempre vero. Si prega di notare che non implica alcuna idoneità di uno schema di interpolazione dal punto di vista psicofisico qui, che comporta l'elaborazione del cervello (vedi ricampionamento di LanczosX3per esempio). Sto parlando rigorosamente dei vincoli imposti dall'interpolazione quando si cerca di "indovinare" valori oggettivamente mancanti.

Non esiste un "metodo migliore" universale, praticamente dipende dal problema di interpolazione con cui ci si trova di fronte.

Spero che questo possa essere d'aiuto.

PS (Anche i manufatti generati da ciascuno dei due metodi di approssimazione sono diversi, vedi ad esempio il fenomeno di Gibbs e il sovradimensionamento , sebbene il sovradimensionamento sia "dall'altra parte" della tua domanda.)


+1 Risposta eccellente. Alcuni follow-up: 1) Accenni di non tenere conto dei valori passati di x [n] in adattamento polinomiale, tuttavia, non è questo un punto controverso basato su ciò che hai detto sul fatto che x [n] sia comunque una somma di seno / coseno? (Valori passati presi in considerazione o meno, questo vale ancora). 2) Sono un po 'confuso dall'interpretazione fisica di qualcosa che è "limitato dalla banda" in questo caso. Non è tutto limitato alla banda? Cioè, passerà determinate frequenze e attenuerà altre? Qual è un esempio fisico di un sistema non bandlimited? Grazie.
Spacey,

1) Non sono sicuro di aver capito completamente cosa intendi, ma mi riferivo alle differenze tra ottenere l'output dalla convoluzione e dall'adattamento polinomiale. 2) In alcuni casi, segnali e sistemi sono trattati nello stesso framework. Teoricamente ci sono segnali che non sono limitati dalla banda ( en.wikipedia.org/wiki/… ) come il rumore (veramente) bianco ( en.wikipedia.org/wiki/White_noise ). Un ottimo trattamento è disponibile in Segnali e sistemi di Oppenheim e Willsky. Ho usato il termine qui per stabilire la connessione tra bandlimit-> sinc
A_A

Ok, ho riscritto la mia domanda - solo per essere sicuro: 1) Più polinomio di ordine superiore usiamo, più "distorto" siamo nel forzare relazioni tra punti, che potrebbero non adattarsi alla realtà fisica, sì? (Di più non è sempre meglio in questo caso.) 2) Per quanto riguarda la limitazione della banda - Sono solo curioso di sapere perché lo diciamo, perché OGNI Banda di sistema non è limitata, in quanto accetta solo determinate frequenze e attenua altre? Grazie.
Spacey,

Mi dispiace che sia sfuggito alla mia attenzione. Per queste domande specifiche: 1) Non necessariamente. Nell'esempio dato mi riferivo alle restrizioni imposte dalla "forma" dei monomi. 2) Segnali e sistemi aiuteranno molto. Si dice che certe cose siano esatte poiché le applicazioni di ingegneria usano un sottoinsieme di matematica che in un altro campo potrebbe avere un ottimo uso per segnali limitati non di banda (come il processo casuale veramente uniforme (rumore bianco) collegato sopra).
A_A

2

Bella domanda e risposte illuminanti. Volevo condividere alcune intuizioni come segue. Esistono basi polinomiali ortogonali anche come le basi polinomiali di Legendre (in contrasto con le basi monomiali) che sono più stabili nell'adattare polinomi di grado superiore. Poiché le basi sincere utilizzate nella formula di interpolazione di Shannon (che in effetti può anche essere vista come un'operazione di convoluzione e quindi un'operazione di filtraggio) sono basi ortogonali per uno spazio di Hilbert bandlimited, le basi polinomiali ortogonali possono servire ad approssimare una classe più ampia di funzioni non nel bandlimited spazio insieme ad avere il potere dell'ortogonalità con loro.

Il filtro polinomiale (non interpolazione) è presente anche nella letteratura chimica dal 1960. Una buona nota di lezione sulla rivisitazione di questo argomento è stata scritta da R.Schafer intitolata What is Savitzky-Golay Filter, link: http: // www-inst. eecs.berkeley.edu/~ee123/fa12/docs/SGFilter.pdf

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.