2012-04-29 13 views
7

ho due set di dati (t, Y1) e (t, Y2). Questi set di dati sono visivamente identici, ma il loro è un ritardo di tempo o uno spostamento di magnitudo. Voglio trovare la somiglianza tra le due curve (che danno il punteggio di somiglianza 1 per le curve di circa simili e 0 per le curve non simili). Alcune curve sembrano essere diverse a causa dell'oscillazione nei dati. quindi, sto cercando il metodo per trovare la somiglianza tra le curve. Ho già provato il comando gradiente in Matlab per trovare la pendenza della curva ad ogni passo temporale e confrontarla. ma non mi sta dando risultati soddisfacenti. per favore qualcuno mi suggerisce il metodo per trovare la somiglianza tra le curve.come trovare la somiglianza tra due curve e il punteggio di somiglianza?

Grazie in anticipo

enter image description here

risposta

3

Questa risposta presuppone che il Y1 e Y2 sono segnali piuttosto che curve. Quest'ultimo vorrei provare a parametrizzare con POLYFIT.

Se davvero lo stesso aspetto, ma sono spostati nel tempo (e non avvolto intorno) allora si può:

y1n=y1/norm(y1); 
y2n=y2/norm(y2); 
normratio=norm(y1)/norm(y2); 
c=conv2(y1n,y2n,'same'); 
[val ind]=max(c); 

ind indicherà il tempo di spostamento e normratio la differenza di grandezza. Entrambi possono essere utilizzati come elementi per la vostra somiglianza metrica. Presumo, tuttavia, che i segnali in realtà varino di più rispetto al timeshift o alla grandezza, nel qual caso una sorta di parametrazione del segnale potrebbe essere una scelta migliore e quindi costruire una metrica su quei parametri.

Senza sapere nulla circa i vostri dati Vorrei per prima cosa provare con AR (supponendo cose come tipico come FFT o PRINCOMP non funzionerà).

+0

Cosa intendi con "(e non avvolto)"? –

3

Per la misurazione dei dati di serie somiglianza tempo, una soluzione tradizionale è DTW (DTS Warpping)

0
  1. Kolmongrov Smirnov test (kstest2 funzione in Matlab)
  2. Chi Quadrato prova
  3. per misurare la somiglianza c'è una misura chiamata MIC: coefficiente di informazioni Maximal. Quantifica le informazioni condivise tra 2 dati o curve.