|
Anwendung des Gauß-Newton-Verfahrens: Ellipsenfit |
|
- Eine schöne Anwendung des Gauß-Newton-Verfahrens ist die
Aufgabe der Bestimmung einer Ellipse, die eine gegebene Anzahl von
Punkten im R2 im Sinne der Methode der
kleinsten orthogonalen Abstände am besten approximiert.
- Dabei wird die Fehlerquadratsumme nach dem Prinzip der orthogonalen
Regression bestimmt. D.h. die Summe der Quadrate der Abstände der Punkte
senkrecht auf die Ellipse wird minimiert.
- Die Fußpunkte der Lote auf die Ellipse sind dabei ebenfalls
unbekannt (!) und gehen in die Minimierung ein. Es entsteht ein
nichtlineares Problem mit vielen Unbekannten, das wir hier
jedoch mit einem Standardprogramm aus der Elib des ZIB Berlin (nlscon) lösen.
|
|
|
Die Eingaben |
|
- Hier ist ein numerisches Experiment vorbereitet: eine Ellipse wird
vorgegeben und diskret ausgewertet. Die erhaltenen Punkte werden
mit Zufallszahlen gestört und dann wird eine Ellipse zurückgerechnet.
Einzugeben sind die Halbachsen a,b der Originalellipse. Wichtig:
a >= 0.001·b und b >= 0.001·a !
- Drehung der Originalellipse gegenüber dem Koordinatensystem in Grad.
- Verschiebung des Zentrums der Originalellipse aus dem Ursprung.
- Um Datenpunkte auf der Originalellipse zu erzeugen, muß ein
Winkelbereich eingegeben werden, in dem diese Punkte auf der Ellipse bestimmt
werden. Wichtig: Dieser Bereich sollte nicht zu klein sein !
(Es ist x-x0=a*cos(phi), y-y0=b*sin(phi) im gedrehten Koordinatensystem).
- Anzahl m der zu bestimmenden Datenpunkte. Wichtig: m <= 50 !
- Fehlerlevel level, mit dem die Punkte auf der Originalellipse gestört
werden sollen. Wichtig: level <= sqrt(a**2+b**2) !
Zu den gestörten Datenpunkten wird dann wieder eine Ellipse bestimmt,
die diese Datenpunkte möglichst gut "fittet".
- Nach Belieben können Verschiebungsvektor und Matrix einer
quadratischen Form vorgegeben werden, die eine "Startellipse"
definiert.
|
|
|
Die Ausgaben |
|
- Auswertungsstatistik und Abschlußmeldung des Programmes NLSCON, mit
dem die Berechnung durchgeführt wird.
Die zurückgerechneten Parameterwerte.
- Eine Graphik, die die gestörten Daten, die Fußpunkte auf der
Ellipse und die berechnete Ellipse wiedergibt.
|
|
|
Was ist interessant ? |
|
- Was passiert bei einem zu kleinen Winkelbereich ? Warum ?
- Wie verhält sich das Programm bei einer Startellipse, die
außerhalb der Originalellipse liegt ?
|
|
|
|
|
|
|