Ansatz Freie Stationierung ohne Helmert Transformation (Geodäsie/Vermessung)
jiargei, Sunday, 03.03.2013, 20:24 (vor 4283 Tagen)
Hej Kollegen!
Ich bin auf der Suche nach einem Ansatz für den Ausgleich einer Freien Stationierung, wie er beispielsweise im Tachymeter der Firma Le..a Geo.....ms implementiert ist. Ich möchte kein Fertiges Programm hierzu verwenden, da ich diesen Algorythmus gerne in in ein bestehendes (selbstgeschriebenes) Python Programm einbetten möchte! Ich habe mich bereits in einem Ansatz versucht, jedoch bin ich mir nicht sicher, ob ich den so stehen lassen kann.
Dabei sollen nicht die Koordinatendifferenzen ausgeglichen werden, sondern direkt die Beobachtungen, also Strecke und Winkel.
In der Vermessungssoftware Geosi_NET kann man im Ausgleich zwischen 3D und getrenntem Lage- Höhenausgleich wählen. Welcher wird in der Praxis eher angewandt?
Für hilfreiche Infos bin ich sehr dankbar
Gruß Jürgen
Ansatz Freie Stationierung ohne Helmert Transformation
MichaeL , Bad Vilbel, Monday, 04.03.2013, 10:44 (vor 4282 Tagen) @ jiargei
Hallo,
jedoch bin ich mir nicht sicher, ob ich den so stehen lassen kann.
Wir auch nicht, wenn Du Deinen Code nicht zeigst oder zumindest beschreibst...
Dabei sollen nicht die Koordinatendifferenzen ausgeglichen werden, sondern direkt die Beobachtungen, also Strecke und Winkel.
Das macht keinen Unterschied, ob man die Rohdaten oder die daraus abgeleiteten Koordinaten nutzt, sofern man das stoch. Modell korrekt aufstellt vgl. Lösler, M., Eschelbach, C.: Konzept zur Realisierung eines Prototypen zur sachgerechten Auswertung von polaren Beobachtungen. Allgemeine Vermessungs-Nachrichten (AVN), Vol. 7, S. 249-258, 2012.
In der Vermessungssoftware Geosi_NET kann man im Ausgleich zwischen 3D und getrenntem Lage- Höhenausgleich wählen. Welcher wird in der Praxis eher angewandt?
Beides, je nach Anwendungsfall. Welchen hast Du?
Schöne Grüße
Micha
--
applied-geodesy.org - OpenSource Least-Squares Adjustment Software for Geodetic Sciences
Ansatz Freie Stationierung ohne Helmert Transformation
Jürgen , Monday, 04.03.2013, 12:10 (vor 4282 Tagen) @ MichaeL
Hej Micha!
Danke für deine rasche Antwort!
Wir auch nicht, wenn Du Deinen Code nicht zeigst oder zumindest beschreibst...
Ich habe den Ansatz aus dem Ausgleichungsskriptum der TU Wien (Navratil (2006) Ausgleichungsrechnung 1)
#
# vs = - dx/sd*x1 - dy/sd*y1 - dz/sd*z1
# + dx/sd*x2 + dy/sd*y2 + dz/sd*z2 - l
#
# vz = - dx*dz/sh/sd**2*x1 + dy*dz/sh/sd**2*y1 + sh/sd**2*z1
# + dx*dz/sh/sd**2*x2 - dy*dz/sh/sd**2*y2 + sh/sd**2*z2 - l
#
# vR = dy/sd**2*x1 - dx/sd**2*y1
# - dy/sd**2*x2 + dx/sd**2*y2 + Ori - l
#
Das macht keinen Unterschied, ob man die Rohdaten oder die daraus abgeleiteten Koordinaten nutzt, sofern man das stoch. Modell korrekt aufstellt vgl. Lösler, M., Eschelbach, C.: Konzept zur Realisierung eines Prototypen zur sachgerechten Auswertung von polaren Beobachtungen. Allgemeine Vermessungs-Nachrichten (AVN), Vol. 7, S. 249-258, 2012.
Danke für den Tipp mit dem Paper!
Ich möchte nicht die Verbesserungen für die Koordinatendifferenzen, sondern die Beobachtungen ausgleichen, damit ich sehe, welche Beobachtung Fehler verursacht bzw. um diese Gleichung aus dem Gleichungssystem zu eliminieren (Redundanz-1). Sofern ich Koordinatendifferenzen ausgleiche, bekomme ich da nicht mehr oder weniger einen ausgleich für eine Trafo?
Beides, je nach Anwendungsfall. Welchen hast Du?
Ich habe den 3D Fall behandelt. Jedoch weiß ich nicht, welcher Fall in der Praxis eher angewendet wird. Ich weiß, dass hierbei der Anwendungsfall berücksichtigt wird, aber ich möchte (erstmal) streng die Freie Stationierung behandeln.
Ansatz Freie Stationierung ohne Helmert Transformation
MichaeL , Bad Vilbel, Monday, 04.03.2013, 12:50 (vor 4282 Tagen) @ Jürgen
Hi Jürgen,
Ich habe den Ansatz aus dem Ausgleichungsskriptum der TU Wien (Navratil (2006) Ausgleichungsrechnung 1)
Okay, dann hast Du doch eine Quelle, der Du sicher vertrauen kannst, oder? Grundsätzlich ist die Ausgleichung einer freien Stationierung nichts anderes als eine normale Netzausgleichung mit mehreren Standpunkten. Insofern passen die allg. Formeln auch für Deinen Spezialfall.
Ich möchte nicht die Verbesserungen für die Koordinatendifferenzen, sondern die Beobachtungen ausgleichen, damit ich sehe, welche Beobachtung Fehler verursacht bzw. um diese Gleichung aus dem Gleichungssystem zu eliminieren (Redundanz-1). Sofern ich Koordinatendifferenzen ausgleiche, bekomme ich da nicht mehr oder weniger einen ausgleich für eine Trafo?
Wenn Du auf Beobachtungsbasis arbeitest, bekommst Du direkt die Verbesserungen der Messwerte. Rechnest Du zunächst die polaren Elemente in Koordinaten um, beziehen sind Deine Verbesserungen auf diese Koordinaten. Soweit ist das schon korrekt aber man kann auch die Verbesserungen jeweils zurückrechnen (polar -> kartesisch und umgedreht). Das ist also kein Argument für bzw. gegen die eine Methode.
Es gibt mMn. eigentlich nur einen Unterschied zw. beiden Varianten. Bei der Koordinatenmethode benötigst Du immer ein polares Tripel, um die Koordinaten zu bestimmen. Liegen nicht alle drei polaren Beobachtungen vor, weil bspw. ein Ziel nur per Richtungsmessungen gemessen wurde (bspw eine Kirche), kannst Du die Koordinaten zu einem Anschlußpunkt nicht bestimmen und diesen direkt in der Trafo berücksichtigen.
Die Transformation hat den Vorteil, dass es direkte (nicht-iterative) Lösungsverfahren gibt. Man benötigt also keine Näherungswerte!
Ich habe den 3D Fall behandelt.
Okay, dass hast Du gemacht; die Frage bezog sich auf Deine Anwedung bzw. Problemstellung. Wo bzw. in welchem Kontext willst Du Dein Programm einsetzen. Oder ökonomisch gefragt: Wie lautet Deine Zielgruppe?
Jedoch weiß ich nicht, welcher Fall in der Praxis eher angewendet wird.
Das hängt von der zu lösenden Aufgabe ab. Wenn man im amtlichen Festpunktfeld arbeitet, hat man meist keine Höhe. 3D macht also keinen Sinn. In der Messtechnik sieht es anders aus. Lasertracker-Daten werden fast ausschließlich als 3D Koordinaten über eine Bündelausgleichung verknüpft.
Schöne Grüße
Micha
--
applied-geodesy.org - OpenSource Least-Squares Adjustment Software for Geodetic Sciences
Ansatz Freie Stationierung ohne Helmert Transformation
jiargei, Monday, 04.03.2013, 16:55 (vor 4282 Tagen) @ MichaeL
Hej Micha,
nochmals Danke für deine Antwort!
Okay, dann hast Du doch eine Quelle, der Du sicher vertrauen kannst, oder? Grundsätzlich ist die Ausgleichung einer freien Stationierung nichts anderes als eine normale Netzausgleichung mit mehreren Standpunkten. Insofern passen die allg. Formeln auch für Deinen Spezialfall.
Hast du Literaturempfehlungen für mich, wo ich explizit den Ansatz für den Netzausgleich nachlesen kann? Mein Spezialfall passiert bei jeder Freien Stationierung eines "Leica Tachymeters" .... Ist mir klar, dass es theoretisch ein Spezialfall, in der Praxis jedoch der Normalfall ist.
Wenn Du auf Beobachtungsbasis arbeitest, bekommst Du direkt die Verbesserungen der Messwerte. Rechnest Du zunächst die polaren Elemente in Koordinaten um, beziehen sind Deine Verbesserungen auf diese Koordinaten. Soweit ist das schon korrekt aber man kann auch die Verbesserungen jeweils zurückrechnen (polar -> kartesisch und umgedreht). Das ist also kein Argument für bzw. gegen die eine Methode.
Es gibt mMn. eigentlich nur einen Unterschied zw. beiden Varianten. Bei der Koordinatenmethode benötigst Du immer ein polares Tripel, um die Koordinaten zu bestimmen. Liegen nicht alle drei polaren Beobachtungen vor, weil bspw. ein Ziel nur per Richtungsmessungen gemessen wurde (bspw eine Kirche), kannst Du die Koordinaten zu einem Anschlußpunkt nicht bestimmen und diesen direkt in der Trafo berücksichtigen.
Genau dieser Unterschied macht es aus, warum ich die Beobachtungen verwende und nicht Koordinaten...
Die Transformation hat den Vorteil, dass es direkte (nicht-iterative) Lösungsverfahren gibt. Man benötigt also keine Näherungswerte!
Näherungswerte sind bei der klassischen freien Stationierung nicht das Problem. Hm, immer diese Spezialfälle!!!
Ich würde gerne deinen Code für den Netzausgleich übernehmen und in ein Python-Modul packen. Du hast dein Programm JAG3D mit GPL/GNU lizensiert... Falls es also für dich kein Problem darstellt, sag mir bitte, wie ich den Code-Teil lesbar machen kann, wo der Ausgleich abgehandelt wird.
Literaturempfehlungen hast du etwa auch für mich?
Gruß, Jürgen
Ansatz Freie Stationierung ohne Helmert Transformation
MichaeL , Bad Vilbel, Monday, 04.03.2013, 18:16 (vor 4282 Tagen) @ jiargei
Hallo,
Hast du Literaturempfehlungen für mich, wo ich explizit den Ansatz für den Netzausgleich nachlesen kann?
Es gibt ein paar Bücher, die ich Dir empfehlen kann.
dass es theoretisch ein Spezialfall, in der Praxis jedoch der Normalfall ist.
Ich kenne einige Büros, die diese Rechnung im Innendienst erst machen und draußen überhaupt nicht stationieren. Sie lassen also ihre Messwerte von einer Netzausgleichung vollständig - und nicht Standpunktweise wie es das Programm im Instrument macht - auswerten.
Ich würde gerne deinen Code für den Netzausgleich übernehmen und in ein Python-Modul packen. Du hast dein Programm JAG3D mit GPL/GNU lizensiert... Falls es also für dich kein Problem darstellt, sag mir bitte, wie ich den Code-Teil lesbar machen kann, wo der Ausgleich abgehandelt wird.
Bei sf.net unter http://sourceforge.net/projects/javagraticule3d/files/JAG3Dv3.4/JAG3Dv3.4.2013/JAG3Dv3.4.20130228/. Im Ordner src liegt dann der Quellcode.
Gruß Micha
--
applied-geodesy.org - OpenSource Least-Squares Adjustment Software for Geodetic Sciences
Ansatz Freie Stationierung ohne Helmert Transformation
Jürgen Friedrich , Günselsdorf, Österreich, Sunday, 30.06.2013, 22:27 (vor 4163 Tagen) @ MichaeL
Hej Micha!
Lange ist es her, aber ich habe noch offene Fragen, bei denen du mir vielleicht behilflich sein kannst!
Nochmal zur Anwendung, über die wir schon einmal geschrieben hatten:
Konkret möchte ich TPS-Geräte ansteuern, und diese in bestimmten Zeitintervallen auf Spiegel messen lassen - also mehr oder weniger ein GeoMonitoring.
Zwischendurch sollen eine andere Spiegel-"Gruppe" - Fixpunkte - angemessen werden, um die Station neu zu berechnen!
Die freie Stationierung hierfür möchte ich 3D über die Beobachtungen, NICHT die Koordinaten ausgleichen.
Hast du hierfür einen Ansatz bzw. bestimmte Literatur, die du mir hierfür empfehlen könntest? Deine Auswahl an Büchern ist zwar toll, jedoch kostet mich ein Vermögen, wenn ich die alle lesen möchte!
Ich habe derzeit einen Ansatz, der eigentlich für einen 2D Ausgleich gut funktioniert. Jedoch sobald nur mehr 2 Punkte vorhanden sind, ist er nicht mehr stabil genug - Niemeier hat hierzu etwas erwähnt in Buch "Ausgleichungsrechnung".
Mir scheint, du bist der Literatur sehr gut vertraut und es würde mir sehr helfen, wenn ich meine Suche auf konkrete Lösungsansätze zu Geodätischen Ausgleichsproblemen - speziell 3D Ausgleich über Beobachtungen, Freie Stationierung.
Zu deinem JAG3D Source-Code - irgendwie check ich das nicht, von deiner Seite herunter zu laden! Gibt es da einen neuen Link, den zu online stellen könntest? Vielleicht finde ich darin etwas, was mir weiterhelfen könnte.
Danke und noch schönen Sonntag Abend!
Ansatz Freie Stationierung ohne Helmert Transformation
MichaeL , Bad Vilbel, Monday, 01.07.2013, 20:13 (vor 4163 Tagen) @ Jürgen Friedrich
Hi Jürgen,
Lange ist es her, aber ich habe noch offene Fragen, bei denen du mir vielleicht behilflich sein kannst!
Sicher, dafür ist das Forum ja gedacht.
Konkret möchte ich TPS-Geräte ansteuern, und diese in bestimmten Zeitintervallen auf Spiegel messen lassen - also mehr oder weniger ein GeoMonitoring.
Okay. Soweit habe ich das auch schon laufen gehabt bzw. läuft auch aktuell. Zur Netzauswertung - wir haben mehr als nur einen Standpunkt - haben wir im übrigen auch JAG3D integriert.
Zwischendurch sollen eine andere Spiegel-"Gruppe" - Fixpunkte - angemessen werden, um die Station neu zu berechnen!
... und um ggf. die Orientierungsunbekannte zu verifizieren.
Die freie Stationierung hierfür möchte ich 3D über die Beobachtungen, NICHT die Koordinaten ausgleichen.
Okay. Die Koordinaten der Anschlußpunkte hast Du aber, oder? Sind das Festpunkte oder sollen das nur Datumspunkte (also Neupunkte) sein?
Hast du hierfür einen Ansatz bzw. bestimmte Literatur, die du mir hierfür empfehlen könntest?
Ich weiß nicht genau, was Du suchst. Die Beobachtungsgleichungen findest Du u.a. unter 7.6.2 Anmerkungen zum funktionalen Modell. Dort sind auch alle Ableitungen zu finden. Ist es das, was Du benötigst oder suchst Du etwas anderes?
Deine Auswahl an Büchern ist zwar toll, jedoch kostet mich ein Vermögen,
Ich habe sie nicht alle auf einmal gekauft.
Ich habe derzeit einen Ansatz, der eigentlich für einen 2D Ausgleich gut funktioniert. Jedoch sobald nur mehr 2 Punkte vorhanden sind, ist er nicht mehr stabil genug
Habe ich das richtig verstanden: Wenn Du mehr als 2 Punkte hast, ist es instabil? Eigentlich sollte ja genau das Gegenteil der Fall sein. Ich würde im Moment sagen, dass da ein Fehler enthalten ist. Kannst Du einen Beispieldatensatz (Anschlußkoordinaten, Strecken und Winkel) zur Verfügung stellen?
Zu deinem JAG3D Source-Code - irgendwie check ich das nicht, von deiner Seite herunter zu laden! Gibt es da einen neuen Link, den zu online stellen könntest? Vielleicht finde ich darin etwas, was mir weiterhelfen könnte.
Das Projekt und der Quellcode liegen bei sf.net. Im SVN kannst Du auch die einzelnen Dateien (Quellcode) ansehen, ohne diesen runterzuladen bspw. die Klasse für 2D-Strecken.
Schöne Grüße
Micha
--
applied-geodesy.org - OpenSource Least-Squares Adjustment Software for Geodetic Sciences
Ansatz Freie Stationierung ohne Helmert Transformation
Jürgen Friedrich , Günselsdorf, Tuesday, 02.07.2013, 22:12 (vor 4161 Tagen) @ MichaeL
Hej Micha!
... ein GeoMonitoring.
Okay. Soweit habe ich das auch schon laufen gehabt bzw. läuft auch aktuell. Zur Netzauswertung - wir haben mehr als nur einen Standpunkt - haben wir im übrigen auch JAG3D integriert.
Bin leider auf keiner Universität tätig, hab es aber über einen ehemaligen Kollegen geschafft, den Artikel zu bekommen! Bist du noch in Onsala bzw. Göteborg? Wenn, bitte richte dem Rüdiger schöne Grüße vom Jürgen Friedrich aus! Er war mein DA-Betreuer! Was für ein Zufall...
Aber du hast JAG3D dazu verwendet, ein Monitoring zu betreiben? Klingt auf jeden Fall voll interessant, auch der Artikel ist super!
... und um ggf. die Orientierungsunbekannte zu verifizieren.
Der Ansatz des Augleichs der freien Stationierung über Beobachtungen (Richtung, VertikalWinkel, Schrägdistanz) führt gezwungenermaßen dazu, auch die Orientierung zu bestimmen und sie somit auch zu kontrollieren!
Okay. Die Koordinaten der Anschlußpunkte hast Du aber, oder? Sind das Festpunkte oder sollen das nur Datumspunkte (also Neupunkte) sein?
Wie gesagt, es gibt eine Gruppe "Fixpunkte", das sind die Anschlußpunkte und eben "Verformungspunkte" das sind meine Neu- bzw. Datumspunkte. Signifikanz für eine Verformung etc. werden gesondert behandelt.
Ich weiß nicht genau, was Du suchst. Die Beobachtungsgleichungen findest Du u.a. unter 7.6.2 Anmerkungen zum funktionalen Modell. Dort sind auch alle Ableitungen zu finden. Ist es das, was Du benötigst oder suchst Du etwas anderes?
Navratil kenne ich gut, dessen Ansatz hab ich auch gelesen. Auch verwendet, aber ich habe mir die A-Matrix über die ersten Ableitungen zusammengestellt - Die Ableitungen über "diff(f(x),x)" erhalten.
Habe ich das richtig verstanden: Wenn Du mehr als 2 Punkte hast, ist es instabil? Eigentlich sollte ja genau das Gegenteil der Fall sein. Ich würde im Moment sagen, dass da ein Fehler enthalten ist. Kannst Du einen Beispieldatensatz (Anschlußkoordinaten, Strecken und Winkel) zur Verfügung stellen?
Bei eben genau 2 Punkten geht die Freie Stationierung eben NICHT mehr auf und liefert ein inkorrektes Ergebnis. Ich habe zwecks Kontrolle diese Messungen mit JAG3D kontrolliert, da kam aber auch nichts gutes dabei heraus! Ich bin derzeit nicht im Büro, aber sobald ich dazu komme, kann ich die das JAG3D File schicken. Bei dem Testbeispiel erzeugt anscheinend ungünstige Bedingungen.
Danke für deine rasche Antwort!
lG Jürgen
Ansatz Freie Stationierung ohne Helmert Transformation
MichaeL , Bad Vilbel, Wednesday, 03.07.2013, 16:20 (vor 4161 Tagen) @ Jürgen Friedrich
Hejsan,
Aber du hast JAG3D dazu verwendet, ein Monitoring zu betreiben?
Wir haben mehrere Komponenten zusammengestellt und JAG3D für die Netzausgleichung benutzt. Die Sensoransteuerung ist natürlich kein Bestandteil von JAG3D. Hierfür haben wir in Java über GeoCOM eine Lösung realisiert, die dann aber direkt in die DB von JAG3D die Daten abgelegt hat, sodass wir ohne Umformatierungen direkt die Daten prozessieren konnten.
Bei eben genau 2 Punkten geht die Freie Stationierung eben NICHT mehr auf und liefert ein inkorrektes Ergebnis. Ich habe zwecks Kontrolle diese Messungen mit JAG3D kontrolliert, da kam aber auch nichts gutes dabei heraus!
Okay, hier müsste ich das Projekt bzw. die Eingangdaten mal sehen, um das zu beurteilen.
Danke für deine rasche Antwort!
Kein Problem. Wie schon angedeutet, kann ich im Moment nicht ganz nachvollziehen, wo Du Probleme hast. Deiner Schilderung zur Folge nutzt Du die gezeigten Formeln um die Jacobimatrix A aufzustellen. Der Rest ist dann ja nur noch Formsache...
hej då
Micha
--
applied-geodesy.org - OpenSource Least-Squares Adjustment Software for Geodetic Sciences