Jak zmierzyć zgodność między krzywymi?


11

Mam wartości (przedstawione poniżej) oczekiwanych wartości RSSI w czasie, które chciałbym porównać z moimi zmierzonymi wartościami RSSI. To, czego szukałem, to sposób kwantyfikacji, aby móc zmienić parametry i móc porównywać / kontrastować różne podejścia.

Moim zdaniem jest to trudny problem, ponieważ nie wiem, jak porównać sygnały, a jednocześnie biorę pod uwagę sygnał na dużą skalę (ogólny kształt) i na małą skalę (indywidualne fluktuacje).

Na przykład, oto wykres jednego zestawu sygnałów: RSSI vs czas

Na zdjęciu widzę, że czerwony sygnał pomiarowy z grubsza podąża za modelem, ale wykonuje też dobrą robotę, symulując niektóre z sinusoidalnych właściwości modelu (w niektórych miejscach). jakieś pomysły?

<> W odpowiedzi na komentarze pikenet (które wydają się rozsądne) wziąłem różnicę dwóch wartości i wykreśliłem abs (fft (diff)) i otrzymałem to: FFT

Nie jestem jednak pewien, co z tym zrobić. Ponieważ nie mamy żadnych rzeczywistych częstotliwości, nie jestem pewien, jak skalować oś, a jeśli tak, to jakich danych byś użył?


2
Co powiesz na obliczenie czegoś takiego jak błąd kwadratowy w różnych zakresach częstotliwości (lub rozbicie różnych na różne pasma częstotliwości)? W dolnym zakresie częstotliwości mierzy ogólne możliwości śledzenia - niezależnie od szybkich nierówności. Przy wyższej częstotliwości będzie mierzyć zdolność do śledzenia nagłych zmian niezależnie od większych błędów DC.
pikenety

OK, dodałem nowy wątek do oryginalnego postu (jako edycja), aby pokazać fft (real (diff)), ale nie jestem pewien, co z tym zrobić.
toozie21

2
Najpierw wygładziłbym oba; wtedy otrzymujesz bardzo dobrą zgodę (zakładając, że taki jest wynik, którego chcesz). PS Zawsze polecam udostępnianie danych, które wykorzystałeś do stworzenia swoich działek, abyśmy mogli łatwiej pomóc.
Emre

Jak bardzo zależy ci na dopasowaniu fazy do wyższych częstotliwości? Wydaje mi się, że możesz chcieć porównać sygnał w dziedzinie czasu bezpośrednio (po filtrze dolnoprzepustowym), a następnie porównać dziedzinę częstotliwości dla wyższych częstotliwości, prawdopodobnie patrząc tylko na wielkość i ignorując fazę.
Dan Bryant

@ toozie21 czy znasz już miejsca, w których zmieniają się właściwości sygnału? np. 8 ms, 17ms .. itd.
user13107,

Odpowiedzi:


1

Jeśli sygnały nie są wyrównane, ale masz wskazówkę, że mniej więcej „oznaczają” to samo lub odnoszą się do podobnych danych, możesz użyć algorytmu dynamicznego dopasowywania czasu (DTW) w celu uzyskania lepszej korespondencji (po prostu biorąc wartość w tej samej lokalizacji). Możesz zmierzyć RMS, MSE lub cokolwiek zechcesz, korzystając z tych korespondencji. W przypadku DTW możesz sprawdzić: http://en.wikipedia.org/wiki/Dynamic_time_warping

Dobry sposób na rozwinięcie tego pomysłu jest wykorzystany w Earth Mover Distance (EMD), który oblicza minimalny wysiłek doprowadzenia sygnałów do wyrównania, jako miarę odległości. EMD przedstawiono tutaj: http://ai.stanford.edu/~rubner/emd/default.htm

EMD daje bezpośredni dystans, który możesz wykorzystać do dalszej analizy.


0

Używam RMS wektora błędu jako miary. Ponieważ mam do czynienia ze złożonymi schematami modulacji, również wykorzystuję EVM jako miarę.


0

Prawdopodobnie połączyłbym kilka podejść. Najpierw wygładziłem oba przebiegi lub wykonałem interpolację splajnu, aby usunąć duże odchylenia. Możesz połączyć kolejny krok po korelacji krzyżowej, aby je wyrównać, zakładając, że stronniczość czasu nie ma dla ciebie znaczenia. Po uzyskaniu piku korelacji krzyżowej można nawet interpolować ten pik na kształcie paraboli, a następnie ponownie próbkować jeden kształt fali, aby dopasować go do drugiego. Obliczę wartość RMSE między dwoma przebiegami w tym punkcie i wygeneruję jedną metrykę wskazującą powoli zmieniającą się deltę.

Następnie odejmuję interpolowaną wartość od oryginału, aby odchylenia na małych skalach czasowych były znormalizowane. Stamtąd możesz spróbować zestawić je ze sobą za pomocą RMSE, a nawet obliczyć wariancję każdego z nich, aby uzyskać pojęcie, ile „szumu” masz na temat wolno zmieniającego się kształtu fali, w zależności od tego, czego potrzebujesz i co faktycznie próbujesz zmierzyć.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.