Matroids Matheplanet Forum Index
Moderiert von Fabi Dune ligning
Mathematik » Lineare Algebra » Finden von Kontrollpunkten eines B-Splines um eine Funktion zu approximieren
Druckversion
Druckversion
Antworten
Antworten
Autor
Universität/Hochschule Finden von Kontrollpunkten eines B-Splines um eine Funktion zu approximieren
rcpfuchs
Neu Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 05.12.2014
Mitteilungen: 1
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Themenstart: 2014-12-05


Hallo zusammen,

ich gehe gerade eine Doktorarbeit durch und bin da auch eine Stelle gestoßen, bei der ich nicht ganz weiterkomme. Es geht um uniform cubic B-Splines, um damit eine Funktion zu approximieren.

<math>B(t+j+3)=1/6
\begin{pmatrix}
1& t & t^2 & t^3
\end{pmatrix}
\begin{pmatrix}
1 & 4 & 1 & 0 \\
-3 & 0 & 3 & 0 \\
3 & -6 & 3 & 0 \\
-1 & 3 & -3 & 1
\end{pmatrix}
\begin{pmatrix}
c_j \\ c_{j+1} \\ c_{j+2} \\ c_{j+3}
\end{pmatrix}
</math>

Die Formel an sich sieht ja schon komisch aus, da hier die Argumente t und j sozusagen zusammengefasst werden. Da folgendes definiert wird <math>0 \leq t < 1</math> und <math>0 \leq j < n-3</math> kann man sich ja für eine Eingabe wie <math>B(5.67)</math> ausrechnen, dass <math>t = 0.67</math> und <math>j = 5-3 = 2</math> sein muss. <math>n</math> steht übrigens für die Anzahl der Kontrollpunkte des B-Spline.

Die Funktion <math>B</math> ist an dieser Stelle sozusagen für Werte aus <math>[3,n]</math> definiert.

Es erschließt sich mir, dass t zwischen 0 und 1 liegt und mit j dann die Kontrollpunkte ausgewählt werden, die dann schlussendlich zur Interpolation genommen werden.

Jetzt kommen wir zu dem, was ich gerne wissen möchte. Angenommen ich habe eine Menge von Werten x und dazugehörige Werte y. Nun möchte ich die Kontrollpunkte <math>c_i</math> so bestimmen, dass die Funktion <math>B</math> bei Eingabe von einem Wert aus x den dazugehörigen Wert y liefert und dazwischen interpoliert.

Was ich bisher dazu weiß, ist dass die Sache als LGS geschrieben werden kann:

<math>Ac=y</math> und dann als <math>(A^TA)^{-1}A^Ty=c</math> gelöst werden kann, wobei <math>c</math> sind die Kontrollpunkte und <math>y</math> die Sollwerte sind.

Die Frage ist, wie muss ich A bestimmen.

In der Arbeit steht, dass <math>A</math> so definiert ist:
<math>
A = [B_i^3(j)]_{i=0,..,n}^{j=x_i,...,x_m}
</math>

Was genau dieses <math>B_i^3</math> ist wird nicht erwähnt, es ist aber wahrscheinlich, dass es sich dabei um ein Bernsteinpolynom handelt.

Sollte das so sein wäre <math>B_{i}^k = {k \choose i}\, t^i\, (1-t)^{k-i}</math>

An dieser Stelle komme ich aber zu einem Problem, da in <math>A</math> das k des Bernsteinpolynoms immer 3 ist, i jedoch von 0 bis n geht. Für i = 12 zum Beispiel würde ich etwas wie <math>{3 \choose 12}</math>, was ja nicht definiert ist.

Vielleicht kann mir jemand von euch auf die Sprünge helfen und die fehlenden Puzzleteile/Verknüpfungen finden?




Eine Notiz zu diese Forumbeitrag schreiben Notiz   Profil  Quote  Link auf diesen Beitrag Link
rcpfuchs wird per Mail über neue Antworten informiert.
Neues Thema [Neues Thema] Antworten [Antworten]    Druckversion [Druckversion]

 


Wechsel in ein anderes Forum:
 Suchen    
 
All logos and trademarks in this site are property of their respective owner. The comments are property of their posters, all the rest © 2001-2020 by Matroids Matheplanet
This web site was originally made with PHP-Nuke, a former web portal system written in PHP that seems no longer to be maintained nor supported. PHP-Nuke is Free Software released under the GNU/GPL license.
Ich distanziere mich von rechtswidrigen oder anstößigen Inhalten, die sich trotz aufmerksamer Prüfung hinter hier verwendeten Links verbergen mögen.
Lesen Sie die Nutzungsbedingungen, die Distanzierung, die Datenschutzerklärung und das Impressum.
[Seitenanfang]