Geokoordinaten Näherungswert finden

Neue Frage »

marki007 Auf diesen Beitrag antworten »
Geokoordinaten Näherungswert finden
Hallo
Wie kann ich die Näherungshöhe aus vier umliegenden bekannten Höhenkorrekturen (Kilometerraster) finden.

Für die Höhenkorrektur gibt es in einem Kilometerraster die Korrekturhöhen (Geoid).
Die gesuchte Höhenkorrektur für meine aktuelle Position (innerhalb dieses Kilometerraster) soll einen Mittelwert/Interpolation oder was auch immer sein.

Ein Mittelwert aller 4 umliegenden bekannten Punkte finde ich ein falscher Ansatz (wäre am einfachsten). Ich denke je näher mein gesuchter Punkt einem bekannten Korrekturpunkt ist, desto "stärker" soll er das Resultat beeinflussen/bewerten, als der Punkt der am weitesten weg ist.

Hoffe ich konnte das einigermasse erklären, was ich suche.
Das ganze soll in eine Software einfliessen (Python).

Danke schon mal für eure Tips

marki
Steffen Bühler Auf diesen Beitrag antworten »
RE: Geokoordinaten Näherungswert finden
Willkommen im Matheboard!

Dazu habe ich mal hier was geschrieben:
Fläche an einer Position um bestimmten Wert verschieben

Viele Grüße
Steffen
marki007 Auf diesen Beitrag antworten »
RE: Geokoordinaten Näherungswert finden
Hallo
@Steffen Bühler: Danke für die Antwort und den Link.

Habe mir das mal angeschaut. Leider aber noch nicht begriffen. Mit etwas mehr Zeitinvestition und den Grundlagen der Ebenengleichung würde ich das ev. begreifen. Bzw. könnte spez. Fragen stellen, was genau ich nicht verstehe.
Und ob das im Endeffekt das ist was ich suche, kann ich auch erst danach beurteilen.
Mein Ziel ist ja auch nicht mathematisch was zu lernen. Ich brauche für ein Problem eine Lösung. Wenn ich dabei was lerne - ist ja als Nebeneffekt toll. Freude

Gibt es ev. gem. meinem gesuchten Vorhaben Formel/Zahlenbeispiele?

Gibt es vielleicht andere Wege?

Zu meinem Thema habe ich folgenden Textausschnitt gefunden:
"mit biquadratischer Methode interpoliert"
Dazu aber auch nicht viel gefunden wie das geht oder falsch danach gesucht.

Danke!

marki
Gualtiero Auf diesen Beitrag antworten »
RE: Geokoordinaten Näherungswert finden
Zitat:
Original von marki007

Ich denke je näher mein gesuchter Punkt einem bekannten Korrekturpunkt ist, desto "stärker" soll er das Resultat beeinflussen . . .


Diese Notwendigkeit, Beobachtungen/Messergebnisse zu reihen, heißt in der Geodäsie "Gewichtung".
In diesem Beispiel steht die Bedeutung der jeweiligen Messergenisse, die sie auf das Endergenis haben, in umgekehrtem Verhältnis zur Entfernung.

Einfaches Beispiel

code:
1:
2:
3:
4:
Ziel     Messergebnis   Entferfnung  Reziprokwert
Punkt1   367.70         10m          1/10
Punkt2   367.73         45m          1/45

S: Reziprokwert der Summe der Reziprokwerte; hier: 90/11

Endergebnis: 367.70 · S · (1/10) + 367.73 · S · (1/45) = 367.705454 . . .
marki007 Auf diesen Beitrag antworten »

Hallo

@Gualtiero: Freude Vielen Dank für diesen Hinweis: Sieht gut aus, ist einfach, einleuchtend und das Bauchgefühl mit nicht (mehr) allzuviel mathematischem Flair ist auch gut. Mit ein paar realen Werten meinerseits getestet.
Werde das mal so in meiner Software integrieren.

Falls jemand noch Hinweis oder Bemerkungen zu meinem Thema, das ich in dem Zusammenhang aufgeschnappt habe, hat - wäre interessant.
"mit biquadratischer Methode interpoliert"
Weiss nicht ob die Geoid-Höhen damit gefunden wurden (das Kilometernetz) oder ob gemeint ist, dass innerhalb dieses Netzes gesuchte Punkte wie meiner gefunden werden kann . Ev. auch beides...

Danke und Grüsse
marki
Steffen Bühler Auf diesen Beitrag antworten »

Sowohl mit meiner Methode als auch mit der biquadratischen Interpolation bekommst Du eine Funktion f(x,y). Da kannst Du dann für x und y beliebige Koordinaten eingeben und bekommst die zugehörige gesuchte Höhenkorrektur.

In meinem Fall ist das die Ausgleichsebene für die gegebenen vier Punkte. Mit dreien wäre eine Ebene ja exakt beschrieben, mit vieren ist sie überbestimmt, und man muss sie optimal dazwischenlegen.

Im anderen Fall ist es keine Ebene, sondern ein Paraboloid. Hier setzt man mit neun Punkten an, Dein Kilometerraster bekommt also noch eine Unterteilung, so dass 3*3 bekannte Punkte entstehen (die Zwischenpunkte werden über Dreisatz ermittelt). Mit diesen 9 Punkten ergeben sich 9 Gleichungen für die 9 Unbekannten, die hier als Koeffizienten benötigt werden. Mag schwieriger sein, ist aber vielleicht für einen Geoiden passender. Obwohl die Krümmung innerhalb eines Quadratkilometers wohl eher verschwindend ist...

Formeln und Zahlenbeispiele können wir gerne zusammen durchrechnen. Am besten mit realistischen Werten.
 
 
marki007 Auf diesen Beitrag antworten »

Hallo
Ja das mit Paraboloid tönt auch gut, wenn es auch etwas kompliziert scheint im Moment. In Zusammenhang mit Geoiden wird ja glaub auch das angewandt.

Mit konktreten Zahlen durchrechnen ist eine gute Idee.

Habe aber gerade festgestellt, dass es zwei verschiedenen Korrekturtabellen gibt. Eine ist in Längen- Breitengraden mit Korrekturhöhe die andere habe ich (noch) nicht gefunden - verm. in Schweizerkoordinatenformat (mit welchen ich nach der Transformation von WGS84 nach CH1903+ rechne).

Wenn ich hier Klarheit habe melde ich mich gerne nochmal mit konkreten Zahlen um ein Beispiel durchzurechnen.
Denn Distanzen in Breitengraden oder in Schweizerkoordinaten berechnen sich ja anders.

Bis dann - Merci.
marki
rumar Auf diesen Beitrag antworten »
RE: Geokoordinaten Näherungswert finden
Ich denke, dass es erforderlich (oder doch wenigstens sehr nützlich) wäre, zu wissen, was für eine Art von Fläche da als "Idealfläche" vorausgesetzt werden soll. Soll es einfach um lineare Interpolation gehen (dabei wäre die "Idealfläche" eine Ebene, oder soll etwas anderes angestrebt werden ?

Für hügeliges Gelände kann kaum eine Methode wirklich sinnvolle Werte liefern.
marki007 Auf diesen Beitrag antworten »

Hallo zusammen

Danke schon mal für eure netten Gedanken und Hilfen Freude

Zitat:
Original von rumar
was für eine Art von Fläche da als "Idealfläche" vorausgesetzt werden

Das ist eine berechtigte Frage. Das kann ich auch nicht genau sagen. Es geht um die Schweiz und die ist tatsächlich hügelig / ja eher bergig :-)

Noch kurz warum ich überhaupt sowas brauche:
Es geht um eine GNSS-Empfänger-Software welche die ellipsoidische Höhe in eine "Gebrauchshöhe" transformiert. Ziel ist eine möglichst hohe Genauigkeit (Vermessung). In der Lage sind es bereits 1-2cm Genauigkeit, in der Höhe happert es noch verwirrt . Ich rechne am Ende mit 3-4cm Genauigkeit. Da es im Gesamtsystem mehrere Fehlerquellen gibt, möchte ich jede so klein wie möglich halten.

Deswegen trotzdem mal vorab (bis ich mir sicher bin welches System, siehe mein letzter Post) ein paar realistische Zahlen.

code:
1:
2:
3:
4:
5:
6:
7:
8:
Raster:
Lat,         Lon,       h-Korr[m], Dist.[km]
45.97500000, 7.65833333, 54.738, 0.15944320408586207
45.97500000, 7.66666667, 54.734, 0.6415516577720164
45.97500000, 7.65000000, 54.741, 0.6845805601620002
45.98333333, 7.65833333, 54.727, 0.7690463035353017

Gesuchter Punkt z.B. 45.97642, 7.65862 Matterhorn

Lat/Lon im 30" Raster, h-Korr Geoidhöhe, Distanz zum gesuchten Punkt.

In diesem Beispiel sieht Mann, dass im Raster die max. Differenz 54.741 - 54.727 ist, also 14mm. Denke mein Gesuchter Punkt kann max. diesen Fehler haben?!

Gruss
Marki
Steffen Bühler Auf diesen Beitrag antworten »

Gut, damit haben wir vier Raumpunkte:



Es wundert mich zwar, dass dreimal derselbe x-Wert auftaucht, das ist dann ja kein Quadrat, sondern eher ein Dreieck, aber die Methode funktioniert trotzdem.

Wir suchen nun eine Ebene, die diese vier Punkte optimal nähert. Sie hat die Gleichung


Die Summe der quadrierten Abweichungen von der Höhe ist dann



Diese Summe soll also so klein wie möglich werden.

Das Ableiten nach a, b und c ist nicht schwer, das Auflösen der entstehenden drei Gleichungen nach a, b und c auch nicht. Es ergibt sich hier


Wenn man nun die Matterhorn-Koordinaten in f(x,y) eingibt, erhält man für die Höhenkorrektur den Wert 54,736.
marki007 Auf diesen Beitrag antworten »

...wollte gerade ein Bild einstellen um die Punkte grafisch zu sehen, welche auch eine Erklärung der 3 selben x-Koordinaten zeigt.

kriege aber folgende Fehlermeldung:
Dein Posting beinhaltet eine URL. URLs dürfen aber nur registrierte User oder User mit ausreichend Beiträgen posten. Entferne also die URL aus deinem Post, oder registriere dich.

also registriert bin ich und das ist möglich, dass ich zu wenig Beiträge erfasst habe geschockt

wie kann ich Bild einstellen? Ist auf einem Server hochgeladen...
Equester Auf diesen Beitrag antworten »

Links werden in den ersten 10(?) Beiträgen nicht akzeptiert. Es gibt da zu viel Spam.

Ohnehin wäre es cool, wenn du Bilder stets auf dem Server hochlädst. So können wir sicherstellen, dass der Link nicht stirbt und die Aufgabe nachvollziehbar bleibt. Also bitte Bild runterladen (Screenshot?) und intern hochladen.

Wink
marki007 Auf diesen Beitrag antworten »

@Equester: Danke für den Hinweis

Hier noch ein Bild der Koordinatenpunkte.
Hieraus sieht man, warum es 3 mal die selbe x-Koordinate ist. Hab da zufällig ein interessanter Punkt gewählt um zu sehen, dass es ja nicht zwingend in einem Quadrat liegen muss.
Das Kriterium der umliegenden Punkte ist - die kürzeste Distanz.

Stimmt es dann so trotzdem?

[attach]49541[/attach]
marki007 Auf diesen Beitrag antworten »

Nach der Methode mit der "Gewichtung" der Punkte ala Post:Gualtiero erhält man etwa das selbe Resultat: 54.7364m
Steffen Bühler Auf diesen Beitrag antworten »

Mit mehr Kommastellen ergibt sich für die Ausgleichsebenen-Methode der Wert 54,735849.

Bei der Biquadrat-Methode bin ich nicht sicher, was passiert, wenn die Basispunkte nicht gleichmäßig auf einem Quadrat verteilt sind. Jedenfalls muss die Funktion

gefunden werden. Neun Gleichungen, neun Unbekannte.
rumar Auf diesen Beitrag antworten »
RE: Geokoordinaten Näherungswert finden
Nachdem ich den Kartenausschnitt gesehen habe, muss ich sagen, dass dein Unterfangen wohl absolut hoffnungslos ist:
Wie willst du durch irgendwelche Interpolationsmethode eine extrem wilde Gebirgsgegend (ausgerechnet beim Matterhorn) vernünftig modellieren ?
Das geht doch einfach nicht.
Steffen Bühler Auf diesen Beitrag antworten »

Mal ein einfaches Rechenbeispiel zur biquadratischen Interpolation:

Wir haben ein Quadrat mit den Eckpunkten (0|0), (0|1), (1|0) und (1|1). Drei Eckpunkte sollen nun die Höhe Null haben, der im Ursprung die Höhe 1. Somit also (0|0|1), (0|1|0), (1|0|0) und (1|1|0).

Nun könnte man mit diesen vier Punkten nach der beschriebenen Gewichtungmethode eine bilineare Interpolation durchführen. Für die biquadratische Interpolation brauchen wir aber noch mehr Stützpunkte. Die finden wir "zwischen" den gegebenen vier, also bei (0.5|0), (1|0.5), (0.5|1), (0|0.5) und dann noch der in der Mitte (0.5|0.5).

Jetzt brauchen wir die Höhen dieser Zwischenpunkte. Die ergeben sich aus den gemittelten Höhen der jeweiligen Nachbarpunkte: (0.5|0|0.5), (1|0.5|0), (0.5|1|0), (0|0.5|0.5), (0.5|0.5|0.5).

Mit diesen neun Punkten gehen wir jetzt in die Paraboloidgleichung
.

Also:



















Dieses 9*9-LGS lässt sich mit den üblichen Methoden lösen. Es ergibt sich:











Und somit lautet die Funktiion:



Hier ist ein Ausschnitt der Funktion grafisch dargestellt:
[attach]49549[/attach]

Man erkennt schön den Ursprungspunkt auf Höhe Eins sowie die drei anderen Eckpunkte auf Höhe Null.

Viele Grüße
Steffen
Hausmann Auf diesen Beitrag antworten »
RE: Geokoordinaten Näherungswert finden
Zitat:
Original von rumar Das geht doch einfach nicht.

Auch von mir die laienhafte Frage: Wozu der Aufwandverwirrt

Durch Satellitensignale kann man recht genau räumliche Positionen ermitteln und
damit zusammenhängend auch empirisch die Erdoberfläche plus markanter Punkte.

Entfernungen und Höhen brauchen irgendein Modell dieser Oberfläche und damit
könnte man (meine naive Vorstellung) ein Stückchen Alpen darstellen - je nach
Anforderung. Wozu aber aus einigen wenigen Punkten eine Fläche modellieren?
marki007 Auf diesen Beitrag antworten »

Danke euch allen für die Inputs. Toll.

Die Frage über Sinn und Unsinn ist berechtig.
Leider bin ich auch eher Laie in diesem Zusammenhang. Jedoch geht es nicht darum aus 4 Punkten ein Geländeoberflächenmodell zu finden um das in der Tat bergige Matterhorngebiet darzustellen. Es geht um die Geoidhöhe innerhalb dieser vier Punkte zu finden. Und nicht die absolute Höhe eines Punktes. Diese liefert anschliessend das GNSS mit der Geoidhöhe korrigiert um präzisere Höhenwerte zu erhalten. Wenn ich es richtig verstanden habe, hat das Geoid nicht sehr "ruppige" Oberflächen. In der Schweiz sind das von min. bis max. nur etwa 10 Meter (Matterhorn hin oder her ;-)) Darum macht eine Berechnung, glaube ich schon Sinn. Wie aufwendig die Berechnung sein soll ist fraglich. Ich denke trotz einfachen Methoden gute Resultate zu erhalten. In der Regel liefert das GNSS die Höhe bezogen auf den Ellipsoid welcher weite Regionen sehr gut beschreibt, aber für lokale genaue Höhen zu ungenau ist.

Was auch ziemlich sicher ist, dass die grössten Ungenauigkeiten im Höhenmesssystem mit GNSS nicht in dieser gesuchten Berechung liegen.

Ich hoffe ich konnte euch mit diesen Zeilen etwas verwirren Hammer

Vielleich kann es ein Kenner der Materie besser beschreiben und uns aufklären...
marki007 Auf diesen Beitrag antworten »

Hallo allerseits

Herzlichen Dank allen, vorallem @Steffen Bühler Gott

Da wir doch schon verschiedene Lösungen diskutiert haben hier. Habe ich mich entschieden mal alle Varianten zu verstehen bzw. mindestens so her zu kriegen, dass ich mit konkreten Zahlen in meiner Software (Python) rechnen kann. Danach kann ich mit ein paar konkreten Beispielen rechnen und mich am Ende für eine Variante entscheiden.

Vorgängig habe ich dann noch zu den einelnen Posts fragen (separat).
marki007 Auf diesen Beitrag antworten »

Frage zum Post vom Steffen Bühler vom 05.08.2019 09:43
Link zum Post

wenn ich das durchrechne mit den Werten a ~ -1.28, b ~ -0.42, c ~ 116.8 - komme ich auf ein Resultat von 54.7335. Das Resultat von Steffen ist: Wert 54.736 bzw. 54.735849. Liegt das an den "wenigen" Kommastellen von a, b, c. Wesswegen da ja das ~ steht??? Oder rechne ich falsch?

und ja:
Zitat:
Das Ableiten nach a, b und c ist nicht schwer, das Auflösen der entstehenden drei Gleichungen nach a, b und c auch nicht

ist nicht schwer aber schon ewig nicht mehr gemacht keine Ahnung mehr verwirrt ist das einfach erklärt oder muss ich zuerst selber forschen???
Steffen Bühler Auf diesen Beitrag antworten »

In der Tat brauchst Du mehr Kommastellen für a, b und c, wenn das Ergebnis genauer sein soll.

Auch wenn die Ableitungsregeln schnell erklärt wären, würde ich Dir doch eher ein CAS wie z.B. Geogebra ans Herz legen. Kostet nichts und erledigt so lästige Sachen schnell und bequem.

Auch unser hauseigener Differenzierer kann hier nützlich sein. Da wird zwar grundsätzlich nach der Variablen x abgeleitet, aber das sollte kein Problem sein. Gib da mal (k1*x+k2*b+c-k3)^2 ein, das müsste schon weiterhelfen.
marki007 Auf diesen Beitrag antworten »

Hallo miteinander

Den Hinweis mit CAS und GEOGEBRA habe ich mal angesehen und wauw - hätten wir fürher solche Hilfen gehabt, wäre Mathe. vermutlich auch einfacher und vorallem verständlicher/anschaulicher gewesen und hätte wohl auch noch Spass gemacht.
Nun Geogebra ist toll, aber auch hier fehlt mir das Wissen und Handling damit umzugehen und muss mich einarbeiten genau wie bei dem Problem, welches wir hier diskutieren.
Also eine Gleichung mit zwei unbekanten Big Laugh


Fragen zum Post von 08.08.2019 11:21 Steffen Bühler, Lösung der biquadratischen Interpolation:
Eine "dumme" Frage. Das ganze wurde mit den Raum-Koordinaten (0|0|1), (0|1|0), (1|0|0), (1|1|0) durchgerechnet. Am Ende erhalten wir die Funktion f(x,y).
Wenn ich jetzt andere Koordinaten habe, muss ich das jedesmal neu rechnen oder gilt die "End-Funktion" jetzt für all meine individuellen gesuchten Höhen?
Hätte ich Geogebra "schon" im Griff könnte ich mir diese Frage wohl selber beantworten.

Darum Anschlussfrage. Gibt es die Möglichkeit diese Aufgabe "als Arbeit/Datei" für Geogebra weiter zu geben/bekommen?

Eine weitere Frage zum CAS mit den 9 Gleichungen und 9 unbekannten. Etwas Handarbeit ist schon noch nötig in den Lösungschritten? Oder? Also ich kann nicht einfach die 9 Gleichungen eingeben und mit einem einzigen Befehl die 9 Gl. lösen?
Habe mal das vorgehen in einem Tutorial mit 2 Gleichungen und 2 unbekannten nachvollzogen...

Danke und Grüsse euch
Steffen Bühler Auf diesen Beitrag antworten »

Zitat:
Original von marki007
Wenn ich jetzt andere Koordinaten habe, muss ich das jedesmal neu rechnen oder gilt die "End-Funktion" jetzt für all meine individuellen gesuchten Höhen?

Nein, die musst Du für andere Koordinaten neu bestimmen. Daher hatte ich auch statt der fixen Zahlen die drei Variablen verwendet, so kannst Du ganz allgemein ausdrücken und das in einen Python-Algorithmus gießen.

Zitat:
Original von marki007
Gibt es die Möglichkeit diese Aufgabe "als Arbeit/Datei" für Geogebra weiter zu geben/bekommen?

Von mir leider nicht, ich persönlich verwende Geogebra nicht sehr oft. Vielleicht können da andere aushelfen.

Zitat:
Original von marki007
Also ich kann nicht einfach die 9 Gleichungen eingeben und mit einem einzigen Befehl die 9 Gl. lösen?

Doch, das läuft mit Matrizenrechnung auf einen Schlag. Ein 3*3-Beispiel steht in unserem Workshop. Du musst lediglich die Inverse der 9*9-Matrix bestimmen und den Ergebnisvektor damit multiplizieren. Und Python bietet bestimmt die entsprechenden Matrix-Algorithmen an.
marki007 Auf diesen Beitrag antworten »

Danke @Steffen Bühler

Ich denke es wäre eine gute/hilfreiche Sache für mich, wenn ich den kompletten Lösungsweg der biquadratischen Interpolation wie ihn Steffen Bühler als Rechenbeispiel beschrieben hat, in Geogebra hätte.
Gibt es jemanden der mir dabei hilft oder es als "Datei" zur Verfügung stellen kann? Da Geogebra noch Neuland ist.

Oder auch direkt in der Programmiersprache Python, wie ich es im Endeffekt brauche.
Kennt sich in diesem Zuammenhang noch jemand hier mit Python aus? Ich denke um das zu lösen, ist die Python-Bibliothek "sympy" mein Freund und Helfer???

Danke und grüsse euch
Neue Frage »
Antworten »



Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »