Ellipse-Fitting
Der
Ellipse-Fitting
Name J-Ell-Fi ist ein Akronym und steht für Java-Ellipse-Fitting - Ellipsenausgleichung. Das Programm ist in der Lage, die unbekannten Parameter einer ebenen und räumlichen Ellipse anhand einer gegebenen Messreihe zu approximieren (L2-Norm). Geschätzt werden:
- Mittelpunkt [X/Y] bzw. [X/Y/Z],
- Große Halbachse,
- Kleine Halbachse,
- Drehwinkel und ggf.
- Regressionsebene
Dem Nutzer stehen drei verschiedene mathematische Modelle zur Verfügung. Es besteht die Möglichkeit, die Parameterschätzung direkt durch die allg. Ellipsengleichung durchzuführen, vgl. [Nitschke, 2005]. Eine mögliche Verdrehung wird durch eine zweidimensionale Rotationsmatrix berücksichtigt.
Als zweites ist eine Minimierung zu den Brennpunkten möglich. Diese beiden Verfahren sind durch ein Gauß-Helmert-Modell, vgl. [Niemeier, 2002], realisiert. Fehlende Ellipsenparameter werden durch die gefundenen nachträglich bestimmt.
Die dritte Möglichkeit ist eine Kombination aus den ersten beiden Methoden. Hier wird mithilhe eines Gauß-Markov-Modell mit Restriktionen, siehe [Jäger et al., 2005], eine Lösung bestimmt.
Bei der räumlichen Regressionsellipse werden zusätzlich die Parameter der Regressionsebene mitbestimmt.
sf.net Die Bestimmung der Ellipsenparameter der 3D-Ellipse erfolgt in mehreren Teilschritten. Zunächst wird eine Regressionsebene, die sich durch die gegebenen Punkte ergibt, bestimmt. Ein Quaternionen, welches sich aus dem normierten Normalenvektor dieser Ebene und der Z-Achse ergibt, überführt die Punkte in eine zur XY-Ebene parallelen Lage. Die Ellipsenparameter werden, wie oben beschrieben, ermittelt und mithilfe des konjugiertem Quaternions der Ausgangszustand hergestellt. Die Berechnungsgrundlage für die Quaternionrotation stammt aus [Kuipers, 2002].
Für die Ausgleichung sind gute Näherungswerte zwingend notwendig. Die Applikation versucht diese zu schätzen, jedoch ist gerade bei ungleichmäßiger Verteilung der Punkte, selbst Hand an zu legen. Die Messreihe liest J-Ell-Fi aus einer freidefinierbaren CSV-Datei ein.
Dieses Projekt wird freundlicherweise von sourceforge.net* mit Speicherplatz unterstützt.
Es kann nicht garantiert werden, dass J-Ell-Fi - Ellipsenausgleichung vollfunktionsfähig ist, alle durchgeführten Tests verliefen jedoch zufriedenstellend!
J-Ell-Fi - Ellipsenausgleichung unterliegt den Bestimmungen der GNU-GPL* und darf im Sinne dieser Lizenz verändert und weitergegeben werden!
Die Software J-Ell-Fi - Ellipsenausgleichung benötigt die JAVA Laufzeitumgebung 1.6 oder höher. Diese kann kostenlos unter java.com* bezogen werden. Dem Downloadpaket liegen Beispieldateien bei, mit denen J-Ell-Fi - Ellipsenausgleichung JAVA getestet werden kann.
Aktuelle Version herunterladen: Ellipse-Fitting von downloads.sourceforge.net
Weiterführende Links
- Java
- JavaScript
- PHP
- Plugin