GPS-Koordinaten in 2D-Karte eintragen - oder Workaround.

  • hi leute.
    ich hab 215 Orte, die ich in eine Reliefkarte eintragen möchte. Ich habe mir die GPS-Koordinaten dazu geladen um diese dann auf die Karte zu projizieren (vllt. schon falsch abgebogen). Ach ja witzige Anekdote, hatte zwischendurch mal ChatGPT gefragt, ob er anhand von PLZ und Ortsnamen diese Punkte auf einer Landkarte eintragen könnte:

    zurück zum Thema: ich habe mir dann mit python ein svg erstellt, dass ich dann über die Karte legen wollte. Ergebnis war ernüchternd. Es sind wohl zu viele Ungenauigkeiten bei meiner Umrechnung. Versuch hier:

    Jetzt habe ich einen weiteren zweifelhaften, aber möglichen Ansatz gefunden, indem ich die Punkte plotte und mir dann die 2D-x,y-pixel mit PixelSearch() suche. und das ganze in einem Macro laufen lasse: (der kleine rote Kreis)


    Daher vorab Frage an Euch:
    Übershe ich eine viel einfachere Lösung/Tool/App?
    Lohnt es sich die GPS-2D-Umrechnung zu verfeineren LatExactCalc? (hat da jmd Erfahrung)?

    Anmerkung: ich hab natürlich versucht auch die Punkte manuell auf eine Karte zu schieben, aber ich bekomme keine große Karte wo ich die Ortschaften sehe und diese später ausblenden kann - sonst wäre ich schon fertig :) monetäre Lösungen wie mapcode usw kommen für mich nicht in Frage.

    Ich weiß, ist sehr weit vom Schuss (auch im Offtopic) aber wo wenn nicht hier finde ich jemand der überhaupt weiß von was ich spreche :theke:

    Einmal editiert, zuletzt von UPIA (16. Dezember 2025 um 15:11)

  • Hui - wo fängt man da an?
    Fangen wir mal so an: Was sind "GPS-Koordinaten"?
    Hier muss man zwischen zwei Begriffen unterscheiden:

    1. Bezugssystem: Die Grundlage für ein Koordinatensystem. Dies gibt (bei globalen Bezugssytemen) an, wie das System gegenüber der Erde gelagert ist, wie es sich mathematisch verhält usw. Unter anderem sind das die Parameter eines Rotationsellipsoiden (quasi als Modell der Erdform) sowie dessen Lage und Ausrichtung in Bezug zur Erde. Bekannt wären hier z.B. WGS84 (das von GPS) oder ETRS89 (das amtliche System in Deutschland).
    2. Koordinatensystem: Mathematisches System, welches definiert wie der Bezug von Zahlendarstellungen auf eine Lage im Raum (oder Ebene,...) definiert ist. Klassisch wäre hier das ebene kartesische Koordinatensystem (x,y), das räumliche kartesische Koordinatensystem (x,y,z), geographische Koordinaten (Breitengrad, Längengrad), Polarkoordinaten (Winkel, Strecke) aber auch projektive Koordinaten wie z.B. die Gauß-Krüger-Koordinaten oder UTM-Koordinaten (Rechtswert, Hochwert).

    Wenn du nun also sagst, dass du "GPS-Koordinaten" vorliegen hast, dann kann man sicherlich davon ausgehen, dass sie sich auf das Bezugssystem WGS84 beziehen. Die wirklich wichtige Frage ist jedoch: Welches Koordinatensystem? Koordinaten im WGS84 kann man im Grunde beliebig angeben. Sind es geographische Koordinaten? oder doch UTM? Bei der internen Berechnung selbst werden auch häufig räumliche kartesische Koordinaten verwendet. Das ist wichtig, weil wir ja den Brückenschlag zur Karte brauchen.

    Gehen wir jetzt einfach mal davon aus, du hast geographische Koordinaten - also Längen und Breitenangaben. Diese Koordinatenangaben beziehen sich auf die Oberfläche eine Rotationsellipsoiden. Also eine nichtebene, gekrümmte Fläche. Deine Karte ist jedoch lediglich zweidimensional und flach. Und wenn man sie als Pixelansammlung betrachtet, dann ist deren Koordinatensystem ein ebenes kartesisches Koordinatensystem. Aber wie geschah die Zuordnung von der eigentlich gekrümmten Form auf der Erde hin zur zweidimensionalen Karte? Und hier sind wir im großen Gebiet der Projektion und Abbildungsgeometrien.

    Wie dir sicherlich bewusst ist, gibt es nur eine Erde - aber zig unterschiedliche Darstellungsarten von ihr als Karte. Das hängt damit zusammen, dass man die gekrümmte Erdoberflächenform nicht verzerrungsfrei auf eine zweidimensionale Karte pressen kann. Daher gibt es zig verschiedene Projektionsarten die alle bestimmte Vor- und Nachteile haben und daher je nach Zweck unterschiedlich sind. Manche sind Winkeltreu, was die Navigation erleichtert, manche sind Streckentreu, was Messungen in der Karte erleichtert, manche sind Flächentreu, was Größenvergleiche ermöglicht usw. Wichtig: Keine Projektion erfüllt alle diese Anforderungen gleichzeitig!

    Das heißt für dich: Damit du von deinen globalen Koordinaten in deine Kartenkoordinaten kommst, brauchst du die Information welche Projektion deiner Karte denn zugrunde lag.
    Ohne diese Information kannst du keine rein geometrische Umrechnung durchführen.
    Es gibt nur eine einzige Projektionsart bei der du nahezu 1:1 von geographischen Koordinaten in die Pixel übertragen kannst (da dort sowohl Längen- als auch Breitengrade linear abgebildet werden): Die Rektangularprojektion (auch "Plattkarte" genannt). Wenn du das vorliegen hast, dann wäre es sehr einfach machbar: Du brauchst nur Koordinatenursprung und den Maßstab (also wieviele Pixel sind ein Grad im Bild).

    Wenn du diese Information nicht vorliegen hast aber dennoch eine Umrechnung haben willst, dann müsste man eine Transformation rechnen. Hierfür braucht es aber Koordinatenpaare. Sprich: Punkte deren Koordinaten in deinen "GPS-Koordinaten" bekannt sind, als auch deren Pixelposition im Zielbild.
    Bei hinreichender Anzahl derartiger Koordinatenpaare berechnet man sich dann die Parameter für eine Transformation und kann sich dann mit dieser "Formel" die Koordinaten von einem ins andere System rüberrechnen. Je nach Verzerrung des Zielsystems kann das entweder rechenaufwendiger werden oder mit einem höheren Genauigkeitsverlust einhergehen.

    Also zusammengefasst: Was genau hast du für Koordinaten? Kennst du die Projektionsart deiner Zielkarte? Hast du eventuell Bekannte Punkte deren GPS-Koordinaten du kennst und deren Pixelposition im Zielbild bekannt ist?

  • Ich habe den Fundstellen in einem Buch ein Zeitalter und eine PLZ-Ort zugeordnet. Das war der Anfang um es darzustellen. Es gibt einen Bezahlservice, wo ich das mit Mapcode erledigen kann (teuer und entspricht nicht dem was ich möchte). Dann hab ich mir über die PLZ-Ort die GPS gezogen.

    Du hast die Komplexität gut erklärt. Ich hatte die Geographische Ansicht aus der ich die Koordinaten hatte als Hintergrund (Bild 2). Das Latitüdenproblem in der Umrechnung hatte ich erwartet (Y-Achse verzerrt), aber irgendwie passt auch die X-Achse nicht.
    Ich habe über einen Referenzpunkt gerechnet - mal unten links (0,0)*, dann zentral um die Latitüdenverzerrung zu verringern. Würde ich mehrere Referenzpunkte (z.b. ein Raster) wählen und immer zum nächsten prüfen, wäre ich wohl genauer. aber da will ich auch nicht in die Kartographie einsteigen.
    *bei GPS ist ja der Breitengrad oben größer im gegensatz zum image

    Hahaha. je mehr ich grüble, desto mehr lacht mich der Ansatz mit dem roten Punkt aus der UTM-Karte wieder in die UTM-Karte an.

    Aber ja, das ist mein Dilemma. Bekomme ich das in python überhaubt ausreichend genau hin. Vor 50 Jahren hätte ich eine Karte gemalt und Schnipsel ausgeschnitten und mit der Polaroid dokumentiert. Heut zu tage stell ich mich irgendwie blöd an :party1:

  • Bekomme ich das in python überhaubt ausreichend genau hin.

    In Python bekommt man das noch gut hin.
    Es gibt zig Bibliotheken für Python um z.B. Karten darzustellen, geographische Berechnungen durchzuführen usw.
    Da ist im Grunde schon alles implementiert.
    Man muss halt die richtige Bibliothek finden und diese entsprechend verwenden.
    Hier habe ich allerdings keinen aktuellen Überblick mehr.
    Ich hatte früher mal matplotlib dafür verwendet aber das ist nicht unbedingt hierauf spezialisiert.
    Plotly, Folium und Cartopy habe ich noch im Kopf - aber wie gesagt: Da fehlt mir ein aktueller "Marktüberblick".
    Für sowas würde ich persönlich schnell QGIS anschmeißen oder eine kleine Webseite in Leaflet erstellen.

    *bei GPS ist ja der Breitengrad oben größer im gegensatz zum image

    Ne - GPS betrifft ja nur die Koordinaten und deren mathematische Formatierung. Und Breitengrade haben nunmal immer den gleichen Abstand (nämlich Grad-Schritte).
    Was du höchstwahrscheinlich meinst ist die Kartenprojektion des Bildes und wie du es beschreibst klingt es stark nach einer Mercatorprojektion.
    Das wiederum hat rein gar nichts mit GPS zu tun.
    Jedes Bezugssystem welches man über Mercator abbildet wird in der Darstellung "dickere" Breitenabstände hin zu den Polen haben.

  • *das bezog sich nur auf die wahl der lage des referenzpunktes, damit ich zunächst mal nicht mit negativen koordinaten zu tun habe.

    die berechnung ist auf alle fälle der richtige weg. aber für eine seite grafik war der aufwand jetzt schon enorm. egal, ich lass das mal sacken.
    immer noch offen für Alternativen!

    EDIT:
    während einer tasse tee ließ ich mal den rudimentären bot nach roten punkten suchen und das sieht schon mal sehr viel besser aus. ich muss das nur noch skalieren.
    für das projekt reicht mir der schlenker. ich benötige aber immer noch für die Zukunft eine Lösung mit GPS auf 2D (wenn mgl UTM).

    Einmal editiert, zuletzt von UPIA (16. Dezember 2025 um 19:32)

  • ich benötige aber immer noch für die Zukunft eine Lösung mit GPS auf 2D (wenn mgl UTM)

    Das ist im Grunde kein Problem.
    Aber man muss sich hierbei ganz klar sein was man genau für Systeme meint.
    Nochmal: Was ist mit "GPS" gemeint? WGS84 mit geographischen Koordinaten?
    Was ist mit "UTM" gemeint? UTM ist erstmal nur eine Projektion die man auf beliebige Bezugssysteme packen kann.

    Für eine Koordinatentransformation muss man daher wissen, welches Bezugssystem und dann welcher Streifen der UTM-Projektion das Zielsystem ist.
    Beispiel: Das amtliche Bezugssystem in Deutschland ist ETRS89.
    Amtliche Koordinatenreferenzsysteme gibt es jedoch primär zwei: Einmal ETRS89 UTM32 N (für den westlichen Teil Deutschlands) und ETRS89 UTM33 N (für den östlichen Teil Deutschlands).
    Das muss man also genau wissen bevor man umrechnet. Nur "UTM" ist schlicht nichtssagend.

    Wenn man das dann weiß, dann gibt es zig Tools zum Transformieren zwischen verschiedenen Koordinatenreferenzsystemen.
    Wenn man Online-APIs wie die von MapTiler verwendet, dann bekommt man das auch gut in AutoIt integriert (hierfür brauchst du noch die JSON-UDF und einen API-Key von MapTiler) :


    Dann hast du zwischen zwei Koordinatenreferenzsystemen transformiert.
    Aber eigentlich bist du da ja noch nicht am Ziel - oder?
    So wie ich dich verstanden habe möchtest du auf dieser Basis Pixel in einer Karte ansprechen.
    Es fehlt dir also immer noch eine Konvertierung von deinen transformierten Koordinaten in den Bildraum.
    Je nach Genauigkeitsanforderung reicht hierfür evtl. schon aus die UTM-Koordinaten zu verschieben und zu skalieren.
    Aber es muss halt noch getan werden.

    4 Mal editiert, zuletzt von AspirinJunkie (17. Dezember 2025 um 13:06)

  • Wow. okay also mit GPS meinte ich Geographische Koordinaten (Lon, Lat) dezimal (WGS84). Mit UTM zone 32N (das ist das Zielformat / Backgroundkartenformat).
    woher hast du das script? mir fehlen 2 au3: JSON.au3, BinaryCall.au3 musste ich erst suchen - und funktionieren nicht richtig (_JSON_Parse($sResponse) Unknown Function Name)...
    woher zieht man sich diese au3's offiziell, wenn man sie nicht aus irgendeinem Forum-post nimmt?
    Bis dato teste ich nochmal mein Pythonscript gegen den Online-Umrechner :)

  • okay, hab jetzt die richtigen libs. und läuft.
    ich habe inzwischen die richtigen formeln für das umrechnen in python gefunden (wie du auch schon gesagt hattest).
    nur ist die lib dafür irgendwie in pyproj versteckt. und ich schaffe es nicht das pyproj modul zu installieren mit den 9-Jahre alten Anleitungen im Netz

    Edit: So also an dieser Stelle 1000Dank für das astreine Script. Habe alle Daten damit konvertiert! Muss die Tage mal schauen wie ich die ins Bild bekomme und wie das ausschaut.
    Das "Projekt" muss ich zeittechnisch jetzt erstmal parken.

    Einmal editiert, zuletzt von UPIA (17. Dezember 2025 um 16:24)

  • Vielleicht hilft dieser Link weiter.

    Individuelle Deutschlandkarte erstellen


    dort kann man in einen "Kartenrohling" Orte seiner Wahl eintragen lassen...

    Frohe Weihnachten

    Peter

    Hinweise auf Suchmaschinen finde ich überflüssig - wer fragt hat es nicht gefunden oder nicht verstanden. Die Antwort gibt sich oftmals schneller als der Hinweis auf Dr. Goggle & Co.

    Ab 19-10-22 ergänzt um:

    Die Welt wird nicht bedroht von den Menschen, die böse sind, sondern von denen, die das Böse zulassen. (Frei nach Albert Einstein)