Ich habe Werte (unten dargestellt) der erwarteten RSSI-Werte über die Zeit, die ich mit meinen gemessenen RSSI-Werten vergleichen möchte. Was ich suchte, war eine Möglichkeit, es zu quantifizieren, damit ich Parameter ändern und verschiedene Ansätze vergleichen / gegenüberstellen kann.
Es ist ein schwieriges Problem in meinem Kopf, weil ich nicht weiß, wie ich die Signale vergleichen und dennoch die großen (Gesamtform) und kleinen (individuellen Schwankungen) Signale berücksichtigen soll.
Hier ist zum Beispiel eine Darstellung eines Satzes von Signalen:
Auf dem Bild kann ich sehen, dass das rote Messsignal ungefähr dem Modell folgt, aber es kann auch einige der sinusförmigen Eigenschaften des Modells (an einigen Stellen) in Ordnung simulieren. Irgendwelche Gedanken?
<> Als Antwort auf die Kommentare von Pichenettes (die vernünftig erscheinen) habe ich einen Unterschied zwischen den beiden Werten genommen und die Bauchmuskeln (fft (diff)) aufgezeichnet und Folgendes erhalten:
Ich bin mir allerdings nicht sicher, was ich davon halten soll. Da wir keine tatsächlichen Frequenzen haben, bin ich mir nicht sicher, wie ich die Achse skalieren soll. Wenn ja, welche Metrik würden Sie verwenden?
quelle
Antworten:
Wenn die Signale nicht ausgerichtet sind, Sie jedoch eine Ahnung haben, dass sie mehr oder weniger dasselbe "bedeuten" oder auf ähnliche Daten verweisen, können Sie den DTW-Algorithmus (Dynamic Time Warping) verwenden, um eine bessere Korrespondenz zu erhalten (und dann einfach die Wert am selben Ort). Mithilfe dieser Entsprechungen können Sie RMS, MSE oder was auch immer Sie möchten messen. Für DTW möchten Sie möglicherweise Folgendes überprüfen: http://en.wikipedia.org/wiki/Dynamic_time_warping
Eine gute Möglichkeit, diese Idee auszuarbeiten, ist die Erdbewegungsentfernung (Earth Mover Distance, EMD), bei der der minimale Aufwand für die Ausrichtung der Signale als Entfernungsmaß berechnet wird. EMD wird hier vorgestellt: http://ai.stanford.edu/~rubner/emd/default.htm
EMD gibt Ihnen eine direkte Entfernung, die Sie für die weitere Analyse verwenden können.
quelle
Ich verwende den Effektivwert des Fehlervektors als Maß. Da ich mich mit komplexen Modulationsschemata beschäftige, verwende ich auch EVM als Maß.
quelle
Ich würde wahrscheinlich ein paar Ansätze kombinieren. Zuerst würde ich beide Wellenformen glätten oder eine Spline-Interpolation durchführen, um die großen Variationen zu entfernen. Möglicherweise möchten Sie einen weiteren Schritt nach dem einer Kreuzkorrelation kombinieren, um sie auszurichten, vorausgesetzt, die Zeitverschiebung spielt für Sie keine Rolle. Sobald Sie den Kreuzkorrelationspeak erhalten haben, können Sie diesen Peak sogar auf einer Parabelform interpolieren und dann eine Wellenform erneut abtasten, um sie an die andere anzupassen. Ich würde den RMSE zwischen den beiden Wellenformen an diesem Punkt berechnen und eine Metrik erzeugen, die das sich langsam ändernde Delta angibt.
Danach würde ich den interpolierten Wert vom Original subtrahieren, damit die Abweichungen auf kleinen Zeitskalen normalisiert werden. Von dort aus können Sie versuchen, sie gegeneinander zu rMSE oder sogar nur eine Varianz von jeder zu berechnen, um eine Vorstellung davon zu bekommen, wie viel "Rauschen" Sie über die sich langsam ändernde Wellenform haben, je nachdem, was Sie benötigen und was Sie tatsächlich versuchen messen.
quelle