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 ?
 

Das Eingabeformular

 
 

Zurück: Nichtlineare Gleichungssysteme

 
Back to the top!

08.01.2009