Analyse, Modellierung und Programmierung des Geige-spielens an ...
Analyse, Modellierung und Programmierung des Geige-spielens an ...
Analyse, Modellierung und Programmierung des Geige-spielens an ...
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
9. Trajektoriengenerierung<br />
aus 9.1.1 bestätigt wurden. Vielmehr bef<strong>an</strong>den sich sämtliche Fehler in den Bereichen der<br />
Aktionsübergänge, z. B. Streichen ↔Abfahrt, was darauf schließen lässt, dass die einzelnen<br />
aktionsbedingten Trajektorienstücke nicht reibungslos <strong>an</strong>ein<strong>an</strong>der gereiht werden<br />
konnten. Allerdings traten diese Fehler nur sehr vereinzelt <strong>und</strong> ohne erkennbares Schema<br />
auf, was eine Fehlerursache aufgr<strong>und</strong> fehlerhafter Algorithmen nicht gerade untermauert.<br />
Hinsichtlich dieser Fakten soll folgend eine Glättung der wenigen Sprünge in der<br />
Trajektorie durch eine nachträgliche Interpolation betroffener Stellen diesen Missst<strong>an</strong>d<br />
beseitigen.<br />
Ziel war es dabei, Stetigkeit der Kurve bis zur ersten Ableitung zu gar<strong>an</strong>tieren. Zu diesem<br />
Zwecke wird die Trajektorie <strong>an</strong> den sprunghaften Stellen aufgetrennt <strong>und</strong> geeignete<br />
Zwischenwerte eingeführt. Folgen<strong>des</strong> Schema wird hierbei <strong>an</strong>gew<strong>an</strong>dt, wobei der Sprung<br />
hier zwischen i <strong>und</strong> i+1 <strong>an</strong>genommen wird:<br />
Diff ges = P i − P i+1 (9.4)<br />
Diff vorher = P i − P i−1 ; Diff nacher = P i+2 − P i+1 (9.5)<br />
△Diff = Diff nacher − Diff vorher (9.6)<br />
Diff mittel = (Diff vorher + Diff nacher )<br />
(9.7)<br />
2<br />
n Pneu =<br />
Diff ges<br />
∣ + 2<br />
Diff mittel<br />
∣ , n ɛ N (9.8)<br />
d Diff<br />
di<br />
= △Diff<br />
n Pneu + 1<br />
(9.9)<br />
Die P kennzeichnen hierbei die Werte <strong>des</strong> Trajektorienvektors jeder einzelnen Zeile in<br />
der i-ten Spalte. Durch n Pneu ist nun die Anzahl der einzufügenden Punkte bek<strong>an</strong>nt<br />
während mit d Diff<br />
di<br />
die Änderungsrate mit steigenden i definiert wird. Folgend wird die<br />
die Trajektorie um n-Werte verlängert <strong>und</strong> die entsprechenden neuen Werte eingefügt:<br />
△P i+x = Diff vorher + d Diff<br />
di<br />
· x, x = 1...n Pneu (9.10)<br />
P i+x = P i+x−1 + △P i+x (9.11)<br />
Anzumerken sei hierbei, das sich diese Methode der Sprungglättung nur auf einzelne<br />
Sprünge, nicht aber auf kontinuierlich fehlerhaften Trajektorien <strong>an</strong>wenden lässt. Die nachfolgenden<br />
Tests dieser Interpolation 2 lieferten sehr gute Ergebnisse.<br />
9.1.3. Erweiterte Interpolationsmethoden<br />
Die in 9.1.2 beschriebenen Interpolationsmethoden liefern für die meisten Trajektorien<br />
ausreichend gute Ergebnisse bezüglich der Stetigkeit der Kurve. Dennoch konnte gezeigt<br />
werden, dass bei sehr komplexen Trajektoriengenerierungen, i.d.R. durch Nutzung der<br />
2 Nachzulesen in sprung_glaettung / Sprung_Glaettung_VII.m<br />
63