WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Hüllkurve über Messdatenreihe

 

Futsal

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.08.2015, 13:20     Titel: Hüllkurve über Messdatenreihe
  Antworten mit Zitat      
Hallo,

ich bin ein ziemlicher Matlab-Neuling und bin bei der Auswertung einer Studienarbeit auf ein Problem gestoßen.

Ich habe 10 Datensätze zum Thema Gelenkwinkel-Verlauf bei einer bestimmten Bewegung. Nun soll ein Bewegungsmuster definiert werden und hierzu eine Hüllkurve um die Graphen gelegt werden. Leider habe ich keine Ahnung wie ich das anstellen soll. Kann mir jemand helfen?

Danke!

Knie Flexion Pass (vicon).jpg
 Beschreibung:
Beispiel der Graphen

Download
 Dateiname:  Knie Flexion Pass (vicon).jpg
 Dateigröße:  32.59 KB
 Heruntergeladen:  479 mal


Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 13.08.2015, 14:14     Titel: Re: Hüllkurve über Messdatenreihe
  Antworten mit Zitat      
Hallo Futsal,

Die Frage ist noch sehr allgemein. Wir wissen nicht, in welchem Format die Daten vorliegen. Wenn sie alle die gleichen X-Werte haben und in einer Matrix vorliegen, wird ein einfach min und max die Hüllkurve ergeben.

Hast Du schon mal "Hüllkurve Matlab" im Netz gesucht?

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.08.2015, 15:00     Titel:
  Antworten mit Zitat      
Hallo Jan,

ja das habe ich schon probiert, aber bin leider zu keiner Lösung gekommen.

Die Daten liegen in einer Excelltabe vor, diese ist jedoch sehr komplex, sodass die einzelnen Datenreihen unter und nicht nebeneinander stehen. Die Einzelnen Graphen wurden gestaucht/gestreckt, geknüpft an Bestimmte Ereignisse. Daher sind x-Werte nun nicht mehr identisch.

Gibt es eine andere Möglichkeit?
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 13.08.2015, 16:10     Titel:
  Antworten mit Zitat      
Hallo,

Zitat:
ja das habe ich schon probiert, aber bin leider zu keiner Lösung gekommen.

Es ist immer aufregend, solche vagen Erklärungen zu lesen. Ich würde gerne helfen, aber ohne den Code zu kennen und ohne Erklärung was "zu keiner Lösung gekommen" bedeutet, kann man einfach keine Ratschläge für Verbesserungen geben.
Bitte poste also den Code und erkläre, was nicht wie gewünscht läuft.

Zitat:
Die Daten liegen in einer Excelltabe vor,

Und ist das Diagramm auch mit Excel erzeugt worden?
Wenn nicht, wuirden die Daten ja bereits importiert und liegen dann ja gerade nicht mehr als Excel-Tabelle vor, sondern in einem Daten-Format in Matlab. Bitte beschreibe dieses Datenformat oder beschäftige Dich zunächst mal damit, wie man die Daten aus Excel importiert. Denn dies ist ja ein Matlab-Forum, kein Excel-Forum.

Zitat:
Die Einzelnen Graphen wurden gestaucht/gestreckt, geknüpft an Bestimmte Ereignisse. Daher sind x-Werte nun nicht mehr identisch.

Das ist sehr merkwürdig: Ein Strecken/Stauchen wird doch normalerweise gerade dazu verwendet, die daten auf die gleichen X-Werte zu bekommen. Wurde das über eine Interpolation gemacht? Wenn ja, wie?

Zitat:
Gibt es eine andere Möglichkeit?

Bevor wir nach einer anderen Möglichkeit suchen, lasse uns doch erstmal klären, warum Du meinst, dass MIN/MAX nicht die richtige Lösung ist.
Ich arbeite seit 1999 in der Bewegungsanalyse und wir konnten die Hüll-Kurven immer so bestimmen. Das ist recht einfach und ich könnte Dir bestimmt einen hilfreichen Tipp geben, wenn ich wüsste, wie Deine Daten in Matlab vorliegen.
Hast Du 10 Vektoren mit X-Werten und 10 mit Y-Werten? Stehen die als Felder in einem Strukt oder in einem Cell-Array? Oder gibt es einen X-Vektor und die Y-Werte stehen in einer Matrix?

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
daNnyTigA
Forum-Anfänger

Forum-Anfänger


Beiträge: 22
Anmeldedatum: 27.05.15
Wohnort: ---
Version: 2014b/2015a
     Beitrag Verfasst am: 13.08.2015, 16:55     Titel:
  Antworten mit Zitat      
Meinst du Parallelkurven?

https://de.wikipedia.org/wiki/Parallelkurve

Wenn ja, leider nicht ganz so einfach zu berechnen...
Private Nachricht senden Benutzer-Profile anzeigen
 
Futsal

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 14.08.2015, 12:50     Titel:
  Antworten mit Zitat      
Hallo Jan,

ich habe das mit min/max mal ausprobiert, und es liefert an sich das gewünschte Ergebnis! Danke schonmal für den Tip! Smile

Allerdings habe ich es mit den Orginal-Daten gemacht, da ich nicht wirklich weiß wie ich bei meinen gestreckten/gestauchten Daten vorgehen soll.

Die Rohdaten wurden in Matlab inportiert und ich habe dann die gewünschten Spalten/Zeilen als Variablien definiert. Ich habe also für jeden Versuch eine Variable mit 320 Werten (1,6sek bei einer Aufnahmefrequenz von 200Hz).

Code:
x=data (1:320,2);
a=data (1:320,9);

wobei x die Zeit ist und a der erste Versuch.

Um die Daten zu strecken/stauchen wurde nun das erste Minimum als fiktiver 0 Punkt festgelegt und das Maximum als 100 %. Leider wusste ich schon hier nicht wirklich wie man das macht und bin etwas kreativ geworden, und habe die x-Werte angepasst:

Code:
xa=(x-0.425)*100/(0.62-0.425)


mit 0.425 als x-Wert des Min und 0.62 als Max.
So bin ich mit jedem Versuch vorgegangen. Und habe anschließen geplottet (xa,a,xb,b...usw.)


Hier gibt es sicherlich eine deutlich bessere intelligentere Lösung...

Nun weiß ich nicht wie ich die neuen Werte in eine Matrix bringe, um anschließend die Hüllkurve mit min/max zu bestimmen.

Das Problem liegt also nicht unbedingt in der Hüllkurve selbst, sondern eher schon einen Schritt früher.

Pass Extension-Flexion im Kniegelenk (Vicon).jpg
 Beschreibung:
gestauchte/gestreckte Werte
Die x-Achse wurde nachträglich angepast: 0% enstpr. -150
und 100% enstpr. 236

Download
 Dateiname:  Pass Extension-Flexion im Kniegelenk (Vicon).jpg
 Dateigröße:  33.79 KB
 Heruntergeladen:  501 mal
 
Maxx_BMT
Forum-Fortgeschrittener

Forum-Fortgeschrittener



Beiträge: 75
Anmeldedatum: 09.10.13
Wohnort: Ilmenau
Version: R2011a, R2016a
     Beitrag Verfasst am: 14.08.2015, 13:42     Titel:
  Antworten mit Zitat      
Meinst du jetzt tatsächlich eine Hüllkurve oder eher einen Mittelwert aller Kurven (eine Hüllkurve kenn ich persönlich eher bei Signalen z.B. in einer Amplitudenmodulation)? Da kannst du dann noch die Standardabweichung berechnen, damit du dann noch eine schöne Fehlerabschätzung machen kannst, in welchem Bereich deine Kurven erwartungsgemäß liegen.

Bete Grüße,
Maxx_BMT
_________________

Mathematik ist ein geistreicher Luxus. - Friedrich der Große
Private Nachricht senden Benutzer-Profile anzeigen
 
Futsal

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 14.08.2015, 14:57     Titel:
  Antworten mit Zitat      
Nein hier geht es tatsächlich um eine Hüllkurve, die den Maximalen bzw. Minimalen Verlauf der Kurve angeben soll.
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 16.08.2015, 00:19     Titel:
  Antworten mit Zitat      
Hallo Futsal,

Statt die Werte der Zeit zu strecken, kann Du auch Messwerte interpolieren.
Code:
x=data (1:320,2);
a=data (1:320,9);

time = 0:100;
aTime = interp1(1:320, a, linspace(1, 320, 101));

plot(time, aTime);

Danach haben alle Kurven die gleiche Anzahl von Werten und man kann sie einfach in eine Matrix packen. Danach ist Min und MAx direkt auf diese Matrix anwendbar.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2025 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.