Was Sie hier sehen, ist ein Graph der Beschleunigung auf der vertikalen Achse (oder von Kopf bis Fuß) einer gehenden Person.Algorithmus zur Erkennung von Sägezähnen wie timeSeries
Ich möchte eine zuverlässige Methode zur Umsetzung dieses Bewegungsmuster zu erkennen und keine Schritte zu zählen.
Wie wir sofort bemerken können, entspricht jeder Schritt einer Spitze und Dip von der mittleren 10-10,5 ms^2 Linie.
Früher wollte ich auf einer Schwellenerkennung basierten Mechanismus, aber das ergab sehr schlechte Ergebnisse, weil es einige Variablen sind:
- Wenn die Person langsamer läuft oder schneller die Kurve in der Zeit erweitern würde Achse
- Wenn eine Person, die Schritte leichter oder schwerer dann sind die Spikes und Dips kleiner bzw. größer
jedoch in allen Fällen das Muster immer noch die gleiche ist, die eine Spitze und tauchen in fast regelmäßigen Abständen ist
, was der beste vernünftige Algorithmus ist dieses Muster mit hinreichender Genauigkeit und Rechenzeit
auf http://dsp.stackexchange.com fragen Überlegen Sie, ob Sie eine Antwort nicht hier . – m69
Ich würde mit einem Peak-Detektor beginnen. – user3386109
Ich würde mit einer FFT der Autokorrelationsfunktion beginnen, um ein Leistungsspektrum zu erhalten, und dann den Peak finden. Fast sicher wird die Frequenz des Peaks sein, was Sie wollen. Wenn Sie den Spitzenwert mit dem Durchschnittswert vergleichen, erhalten Sie eine gute Schätzung der Zuverlässigkeit des Spitzenwerts. – Gene