INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Datenreihen unterschiedlicher Länge normieren / interpolieren?



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

11.06.2010, 20:01 (Dieser Beitrag wurde zuletzt bearbeitet: 14.06.2010 09:14 von dimitri84.)
Beitrag #9

dimitri84 Offline
Astronaut
*****


Beiträge: 1.496
Registriert seit: Aug 2009

2020 Developer Suite
2009
DE_EN

53562
Deutschland
Datenreihen unterschiedlicher Länge normieren / interpolieren?
' schrieb:Meine Überlegung die unterschiedlich langen EMG-Daten (unterschiedliche Anzahl EMG-Werte) von Messzyklen gleicher Bewegungen (z.B. Doppelschritt) miteinander vergleichbar zu machen, indem man diese auf die selbe Anzahl EMG-Werte interpoliert (siehe meine ursprüngliche Fragestellung) kann nicht zu richtigen Ergebnis führen, da ja es keinen allgemeingültigen Algorithmus zur Bestimmung der fehlenden Stützstellen gibt. Sad
Dass es keinen allgemeingültigen Algorithmus gibt, ist (finde ich) erstmal kein KO-Kriterium. Die viel entscheidendere Frage ist nicht "wie interpoliere ich", sondern "gibt es überhaupt eine Indikation dafür"?

Zitat:Da bleibt uns wohl nur das in der EMG-Fibel von Peter Konrad auf Seite 36f beschriebene Konzept der Zeitnormalisierung, um unterschiedliche Messzyklen gleicher Bewegungsabläufe miteinander vergleichen zu können.
Du hast mir immer noch nicht verraten wie/was du vergleichen willst.

Zitat:Werden bei der oben genannten Zeitnormalisierung eine unterschiedliche Anzahl EMG-Werte (Zeitstempel) auf jeweils 100 Intervalle (=100%) gelegt? Damit würden sämtliche EMG-Werte ab dem jeweiligne Onset bis zum Ende der Muskelaktivität erfasst. Zum Beispiel:

Messzyklus 1: von Zeitstempel 1123 bis 3213 => 2090 EMG-Werte => 1% = Gleitener Mittelwert von jeweils 21 EMG-Werte oder RMS, etc
Messzyklus 2: von Zeitstempel 3567 bis 5678 => 2111 EMG-Werte => 1% = Gleitener Mittelwert von jeweils 21 EMG-Werte oder RMS, etc
Messzyklus 3: von Zeitstempel 5800 bis 8002 => 2202 EMG-Werte => 1% = Gleitener Mittelwert von jeweils 22 EMG-Werte oder RMS, etc
Messzyklus 4: von Zeitstempel 8323 bis 10325 => 2002 EMG-Werte => 1% = Gleitener Mittelwert von jeweils 20 EMG-Werte oder RMS, etc

Oder werden bei Zeitnormalisierung ausgehend von einem repräsentativen Messzyklus die Anzahl relevanter Zeitstempel bestimmt (z.B. 2300 = 100% => 1% = Gleitener Mittelwert von jeweils 23 EMG-Daten oder RMS, etc)? Von allen anderen zu vergleichenden Messzyklen werden dann 2300 EMG-Werte ab dem Onset genommen.
Dann noch eher Variante 1. Ich hätte es aber nochmal anders gemacht: Einfach mit dem VI von oben alle Zyklen auf die Anzahl des längsten Arrays raufgesampelt. Da muss man sich halt überlegen wie das neue dt berechnet wird ...

Zitat:Damit würden jedoch EMG-Werte bei noch aktivem Muskel nicht erfasst bzw. "Null-Werte" bei schon ruhendem Muskel mit in den Vergleich einbezogen, oder?
Wenn man bei dem Beispiel von oben bleibt dann hätte man in der Tat immer etwas Ruhetonus mit dabei. Ob das ein Problem ist, kommt drauf an was man vergleicht.

Zitat:Zum Vergleich der Korrelation, des integrieren EMG
Was vergleicht man denn beim integrierten EMG-Signal? Ich behaupte der interessanteste Parameter dabei ist nicht Min/Max/Mean, sondern der Grad der Reproduzierbarkeit. D.h. wie ähnlich sehen sich die Zyklen. Dann aber muss die unterschiedliche Dauer (=Länge) der Muskelativität mit berücksichtigt werden und darf nicht künstlich rausgerechnet werden. Daher habe ich mich dafür entschieden einfach gleich lange Intervalle auszuschneiden. Es stimmt, dass man so ein bisschen Ruhetomus mit aufschnappt bzw. Muskelaktivität abschneidet. Es ist eben ein bioelektrisches Signal mit hohem stochastischen Anteil, da darf man nicht so zimperlich sein. Ich habe mich in Zusammenarbeit mit einem Institut für Bewegungsanalyse dazu entschieden unter anderem den Korrelationskoeffizienten zu benutzen, um die Reproduzierbarkein zu quantifizieren:
   
   
   

Zitat:oder Analyse-Parameter des Totalen Leistungsspektrums (siehe EMG-Fibel, Seite 40) sind aus meiner Sicht Zyklen gleicher Länge notwendig, oder?
Sind wir immer noch bei dem Beispiel von oben? ~2000 Samples = 0,5 oder 1 Sekunde? Und davon willst du die Spektren vergleichen? Was willst du da sehen?

Man kann das machen, und zwar kann man so Muskelermüdung zeigen. Auf Grund vom Umschalten von Fast-Twitch-Fasern auf Slow-Twitch-Fasern und auf Grund von metabolistischen Prozessen (Ansammlungen von Elektrolyten im extrazellulären Raum) sinkt die Muskelfaserleitgeshwindigkeit und damit auch die Mittenfrequenz des Spektrums. Das passiert aber nicht innerhalt von 0,5-1 Sekunde. Da musst du größere Intervalle nehmen und eine wirklich belastende Tätigkeit aufnehmen. Eine stetig sinkende Mittenfrequenz hinzubekommen ist nicht so einfach. Das Messsytsem muss eine hohe Qualität haben (großer Frequnezbereich 5-500Hz ohne Notchfilter), die Muskelbelastung musst sehr hoch sein (2-5 Minuten richtig ans Limit gehen) und die Intervalle müssen groß genug sein (5 bis ~30 Sekunden).

Hier ein paar Bilder. Auswerteprogramm hab ich mit MATLAB damals geschreiben:
(Aufnahme von mir selbst)
   

(Aufnahme von einem Kumpel, der sich richtig ausgepowert hat)
   
Das war meine beste Aufnahme. Nicht nur, dass die Mittenfrequenz stetig sinkt, auch die Amplitude des RMS-Signals steigt. In der Literatur wird das damit begründet, dass das zentrale Nervensystem immer mehr motorische Einheiten rekrutiert. Das hab ich nur einmal so hinbekommen.

Hier hab' ich das mal Zusammen mit NIRS (Nahinfrarotspektroskotpie; Sauerstoffsättigung)
   
   

Die FFT Funktionen (ob MATLAB oder LabVIEW oder sonstwas) brauchen dabei nicht exakt gleich lange Arrays (auch wenn die bei mir gleich lang sind). Die machen sowieso Zero Padding bis zur nächsten 2er Potenz. (Außer man benutzt Excel für die FFT ... Wacko)

Bei Frequenzuntersuchungen darf man auf keinen Fall interpolieren!! Begründung siehst du in meinen vorigen Beiträgen. Durch Interpolieren manipulierst du den Frequenzgehalt in fast schon willkürlicher Art und Weise.


Gruß dimitri


Edit: Mit DAQ hat das Thema aber nicht wirklich zu tun Bernd.

„Sag nicht alles, was du weißt, aber wisse immer, was du sagst.“ (Matthias Claudius)
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Nachrichten in diesem Thema
Datenreihen unterschiedlicher Länge normieren / interpolieren? - dimitri84 - 11.06.2010 20:01

Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Event Taste lange gedrückt hansi9990 1 2.799 17.02.2019 12:55
Letzter Beitrag: hansi9990
  Lange Ladezeit eines Projektes - sucht den Example Finder SPS-Fuzzi 0 2.909 21.06.2016 09:17
Letzter Beitrag: SPS-Fuzzi
  String nach Array mit fester Länge jan_1 18 10.175 22.04.2016 12:49
Letzter Beitrag: Lucki
  extrem lange Windows Startdauer nach RTE + DAQ installation I3erry 1 3.251 11.11.2015 14:47
Letzter Beitrag: jg
  Unterschiedlicher Verfahren, um Messwerte zu speichern und zu plotten Hasenfuss 1 2.797 02.07.2015 15:58
Letzter Beitrag: GerdW
  Messgeräte mit unterschiedlicher Abtastrate PatrickK 10 7.594 06.10.2014 14:25
Letzter Beitrag: jg

Gehe zu: