Seite 2 von 3

Re: EPS Dateiformat

Verfasst: 06.09.2008 17:42:00
von Christian Gründler
Roland Ziegler hat geschrieben:Da würde eher eine Lambertsche Schnittkegelprojektion verwendet werden oder oder oder. Es gibt viele Möglichkeiten.
Tja, leider :( .

Ein "vernünftiges" Verfahren setzt m.E. voraus, daß man die Umrisse der Landkreise in echten Koordinaten hat. So etwas scheint es aber zu bezahlbaren Preisen tatsächlich nicht zu geben. (Das Landesvermessungsamt von BaWü z.B. bietet die Kreisgrenzen als shape für ca. 800 Euro :wand an.)

Wenn man keine gute Grundlage hat, ist das gröbste Verfahren möglicherweise das Beste: Interpolation. Ich würde also für 4 gut identifizierbare Punkte in den Ecken der Karte die Koordinaten sowohl als x,y in Pixeln als auch als geodätische Koordinaten L,B in Länge und Breite ermitteln.

Für einen anderen Punkt mit gegebener Länge und Breite ergeben sich x und y dann durch Interpolation. Die Grundzüge sind z.B. in unter http://de.wikipedia.org/wiki/Bilineare_Filterung" target="_blank beschrieben. Dort wird ein Rechteck-Raster vorausgesetzt, das wir nicht haben; trotzdem sollte das Verfahren mit entsprechender Anpassung funkionieren.

M.f.G. Christian

Re: EPS Dateiformat

Verfasst: 06.09.2008 17:57:19
von Andreas Karg
Man könnte hergehen und die Grafik rastern. Macht man die Auflösung hoch genug, hat man alle benötigten Informationen, ohne irgendwelche EPS-Makros interpretieren zu müssen. Außerdem sollte es doch für die gegebene Aufgabenstellung reichen, einen beliebigen Punkt innerhalb des Landkreises zu treffen, um den richtigen Farbwert auszulesen. Mit diesen Toleranzen hätte man damit das von Christian vermisste Rechteckraster. :-)

Oder überseh ich was? Über Karten weiß ich nicht viel mehr als dass oben meistens Norden ist.

Re: EPS Dateiformat

Verfasst: 06.09.2008 18:15:08
von Christian Gründler
Hallo Andreas,

die Karte liegt inzwischen als Rastergrafik vor, s. Beitrag von Steffen gestern 10:08 Uhr. Das Problem ist, das Steffen die Karte nicht zum Reinklicken benutzt (dann wäre das ja einfach), sondern das Klicken in Google Maps macht und die zurückgelieferten geodätischen Koordinaten in Pixelkoordinaten seiner Karte umrechnen möchte.

M.f.G. Christian

Re: EPS Dateiformat

Verfasst: 06.09.2008 18:40:49
von Andreas Karg
Oh. Jetzt verstehe ich auch deinen Beitrag. Ich dachte, mit "Rechteck-Raster" wäre das bekannte rechteckige Pixelraster gemeint gewesen.

Re: EPS Dateiformat

Verfasst: 07.09.2008 12:16:43
von Steffen81
Christian Gründler hat geschrieben:Ich würde also für 4 gut identifizierbare Punkte in den Ecken der Karte die Koordinaten sowohl als x,y in Pixeln als auch als geodätische Koordinaten L,B in Länge und Breite ermitteln.

Für einen anderen Punkt mit gegebener Länge und Breite ergeben sich x und y dann durch Interpolation. [...]
Das hab ich alles längst getan (hatte ich ja in den früheren Beiträgen schon erwähnt).
Was nicht funktioniert ist die Umrechnung aus geodätischen Koordinaten in Gauss-Krüger. Und ich weiß nicht warum.
Wenn die Karte eine andere Projektionsart darstellt, kann ich das auch noch versuchen. Aber die Gauss-Krüger-Koordinaten müssten ja zumindest berechenbar sein.

Re: EPS Dateiformat

Verfasst: 07.09.2008 17:59:22
von Christian Gründler
Hallo Steffen,

vielleicht habe ich mich nicht klar genug ausgedrückt. Mein Vorschlag ist, daß Du für 4 gut identifizierbare Punkte auf der Karte, z.B.
  • die Westecke von Borkum
  • die Ostspitze von Rügen
  • einen Punkt bei Basel (die Grenze um Riehen ist wirklich markant)
  • und die Südostecke Bayerns
sowohl die Pixelkoordinaten in Deiner Karte als auch Länge/Breite aus GoogleMaps ermittelst. Für einen beliebigen anderen Punkt in Deutschland lassen sich dann aus seiner Länge und Breite die Pixelkoordinaten auf der Karte durch Interpolation ermitteln.

Gauß-Krüger brauchst Du dafür nicht, weil das von mir vorgeschlagene Verfahren überhaupt keine Annahme über die Projektion der Karte trifft. Es ist sicherlich nicht das exakteste. Aber wenn man nicht weiß welche Kartenprojektion zu Grunde liegt, bringt es nichts, erst frei Schnauze eine Annahme über die Projektion zu treffen und dann exakt danach zu rechnen. Dies insbesondere deswegen nicht, weil die Auflösung sowieso nur bei knapp 400 Meter pro Pixel liegt.
Aber die Gauss-Krüger-Koordinaten müssten ja zumindest berechenbar sein.
Sind sie. Aber wenn die Karte auf irgendeiner anderen Projektion beruht, nützt Dir Gauß-Krüger garnix.

Ich habe irgendwann mal gelernt, daß die Komplexität des gewählten Berechnungsverfahrens der Qualität der Basisinformationen angemessen sein sollte. Wenn Du eine Karte in großem Maßstab und bekannter Projektion hast, lohnt eine genaue Berechnung. Andernfalls ist eine grobe Näherung wahrscheinlich genausogut wie eine exakte Berechnung unter unzutreffenden Annahmen. Und noch etwas: lineare Interpolation ist vom numerischen Aufwand her deutlich einfacher als das, was Du bisher versucht hast; die Wahrscheinlichkeit, irgendwo einen Fehler zu machen und dann völlig daneben zu liegen, ist also deutlich geringer.

M.f.G. Christian

Re: EPS Dateiformat

Verfasst: 08.09.2008 12:06:45
von Steffen81
Die Berechnung der Gauß-Krüger-Koordinaten scheint jetzt zu funktionieren. Man sollte eben bedenken, dass die Winkelfunktionen für die Argumente das Bogenmaß verlangen, andere Bestandteile der Gesamtberechnung das jedoch Gradmaß. :wand

Als Referenzpunkte habe ich Folgende gewählt:
  • 8.424221, 55.050039 - Nordspitze Sylts
  • 10.200241, 47.276504 - südlichste Punkt Deutschlands
  • 5.867443, 51.050366 - westlichster Punkt Deutschlands
  • 15.029333, 51.273518 - östlichster Punkt Deutschlands
Mit Gauß-Krüger-Projektion kommt für diese vier Punkte Folgendes dabei raus: Karte (die roten Punkte am Rand). Das funktioniert also nicht gut.

Und jetzt kommts:
Die vereinfachende Annahme von Christian, einfach direkt die Differenz des Gradmaß ins Verhältnis zur Pixelhöhe bzw. -breite zu setzen liefert das bisher das beste Ergebnis. ;(
...wenn auch nicht in jedem Bereich der Karte.

Re: EPS Dateiformat

Verfasst: 08.09.2008 12:18:39
von Andreas Karg
Wenn die Ergebnisse nach Christians Methode nicht richtig sind, ist das Bild einfach nicht groß genug gerastert. Das Ergebnis dürfte dann stimmen, wenn die mögliche Fehlerstreuung durch die Vereinfachung in Pixeln gerechnet kleiner ist als die Größe des kleinsten Landkreises auf der Karte.

Re: EPS Dateiformat

Verfasst: 08.09.2008 13:03:27
von Steffen81
Nun ja, 83% der Punkte liegen nicht innerhalb der Karte. Das dürfte nicht an der Rastergröße liegen, sondern an der nicht korrekten Projektion.

Re: EPS Dateiformat

Verfasst: 08.09.2008 13:38:59
von Christian Gründler
Steffen81 hat geschrieben:Die vereinfachende Annahme von Christian, einfach direkt die Differenz des Gradmaß ins Verhältnis zur Pixelhöhe bzw. -breite zu setzen liefert das bisher das beste Ergebnis. ;(
...wenn auch nicht in jedem Bereich der Karte.
Hallo Steffen,

soll ich das so verstehen, daß Du aus der Länge den x-Wert und aus der Breite den y-Wert ermittelst? in dieser Form wird das bei einer Kegelprojektion nicht funktionieren.

M.f.G. Christian

Re: EPS Dateiformat

Verfasst: 08.09.2008 13:58:07
von Steffen81
Ja, ich berechne die Pixelwerte (x,y) jetzt einfach so:

Code: Alles auswählen

x = Breite_Pixel * (Long - Long_West) / Breite_Grad
y = Höhe_Pixel * (Lat_Nord - Lat) / Höhe_Grad
Die Ergebnisse sind bisher die genauesten. Je nähe man scheinbar nach Südosten "projeziert", umso ungenauer wird die Projektion auf die Karte.

Wie sollte ich das Ganze denn unter Annahme eine Kegelprojektion berechnen?

Re: EPS Dateiformat

Verfasst: 08.09.2008 14:35:42
von Christian Gründler
Hallo Steffen!
Wie sollte ich das Ganze denn unter Annahme eine Kegelprojektion berechnen?
Garnicht. Mein Vorschlag ist doch ganz brutal:
  • vergiß die Projektion
  • suche vier klar identifizierbare Punkte in der NW-, NO-, SW- und SO-Ecke Deutschlands und ermittele deren Koordinaten als Länge/Breite und x/y
  • Ermittele für andere geodätische Koordinaten die Pixelkoordinaten durch Interpolation zwischen den vier "Stützstellen".
Möglicherweise ist das nicht genau genug, aber besser eine grobe Näherung als eine "exakte" Berechnung unter nicht verifizierbaren Annahmen.

M.f.G. Christian

Re: EPS Dateiformat

Verfasst: 08.09.2008 14:50:31
von Steffen81
Na das habe ich doch gemacht. Wie gesagt: Bisher das beste Ergebnis, aber funktioniert nicht für alle richtig gut.

Re: EPS Dateiformat

Verfasst: 08.09.2008 17:56:54
von Christian Gründler
Steffen81 hat geschrieben:Na das habe ich doch gemacht. Wie gesagt: Bisher das beste Ergebnis, aber funktioniert nicht für alle richtig gut.
Hallo Steffen,

versuch das mal bitte mit folgendem Verfahren:

Referenzpunkte
  1. eine Ecke von Wangeroog
  2. die Oder-Neiße-Grenze am Südrand des Stettiner Haffs
  3. die Südwestecke Deutschlands bei Basel
  4. die Südostecke Bayerns.
Anders als bei meinem ursprünglicher Vorschlag liegen dann nicht nur die Punkte 3 und 4, sondern auch die Punkte 1 und 2 in etwa jeweils auf dem gleichen Breitengrad. (Exakt gleicher Breitengrad ist nicht erforderlich.)

Gegeben sind also die geografische Koordinaten (Li,Bi) und die Kartenkoordinaten (xi,yi). Für einen neuen Punkt mit den geografischen Koordinaten (L,B) sollen die Kartenkoordinaten berechnet werden.

Als erstes ermitteln wir den Punkt, in dem der Meridian L die Verbindungslinie von P1 nach P2 schneidet:

B11 = B1+(L-L1)/(L2-L1)*(B2-B1)
x11 = x1+(L-L1)/(L2-L1)*(x2-x1)
y11 = y1+(L-L1)/(L2-L1)*(y2-y1)

Ähnlich ermitteln wir den Punkt, in dem der Meridian die Verbindungslinie von P3 nach P4 schneidet:

B12 = B3+(L-L3)/(L4-L3)*(B4-B3)
x12 = x3+(L-L3)/(L4-L3)*(x4-x3)
y12 = y3+(L-L3)/(L4-L3)*(y4-y3)

Durch Interpolation auf dem Meridian ergibt sich für den neuen Punkt dann

x = x11+(B-B11)/(B12-B11)*(x12-x11)
y = y11+(B-B11)/(B12-B11)*(y12-y11)

Wie groß sind jetzt die Abweichungen? Und vor allem: ist da ein System zu erkennen?

M.f.G. Christian

Re: EPS Dateiformat

Verfasst: 08.09.2008 23:36:57
von Max Senft
Hi!

Die ganze Diskussion erinnert mich irgendwie stark an die phpBB-Karte die es mal hier im Zusi-Forum gab. Bei der gabs die selben Probleme mit der Genauigkeit, falls ihr euch dran erinnert. Hier waren auch ungenau erstellte Projektionen der entsprechenden Karte schuld. Da hilfts wohl nur die Karte aus Rohdaten selbst zu rendern und sich die entsprechenden Faktoren zur Umrechnung mit auszugeben (*an die automatische ZusiSK denk*)...

Ich nehme ja mal irgendwie an, dass Google Maps oder OpenStreeMap das gleiche machen...

Grüße
Max

Re: EPS Dateiformat

Verfasst: 09.09.2008 08:42:48
von Roland Ziegler
Als Einschub:

Google Maps, MS Virtual Earth, Yahoo Maps und auch Open Street Map sind sogenannte Kachelkartendienste. Sie basieren auf Satelliten-/Luftbildern und auf Vektorkarten.

Für Vektorkarten gibt es verschiedene Datenformate. Lange Zeit dominierend und aus der Zeit vor XML stammend ist das ESRI Shape-Format. Dort werden alle Koordinaten als geografisch und in Dezimalgrad gespeichert. GPX, das XML-Austauschformat in der GPS-Welt und 10 Jahre jünger, macht es genauso.

Die Zielprojektion der Kachelkarten ist die gewöhnliche Mercatorprojektion mit Kugel, die sich den Effekt zunutze macht, dass die zylindrische Abwicklung der Erde auf diese Weise ein Quadrat ergibt, wenn man die Polkappen weglässt.

Daraus lässt sich der Quadtree ableiten, den wir an anderer Stelle schon behandelt haben.

Re: EPS Dateiformat

Verfasst: 09.09.2008 13:46:33
von Steffen81
Max Senft hat geschrieben:Da hilfts wohl nur die Karte aus Rohdaten selbst zu rendern und sich die entsprechenden Faktoren zur Umrechnung mit auszugeben
Und eben die Daten habe ich ja gar nicht. Ich nutze die Karte (die Farben der Landkreise) als Datenquelle. Um die Darstellung der Punkte auf der Karte geht es mir hierbei gar nicht. Ich weiß, die Methode ist etwas unorthodox, aber sie funktioniert. Die Daten aus Tabellen/Datenbanken zu lesen scheitert daran, dass mir entweder die Daten so nicht vorliegen oder es kein hinreichend genaues Matchingkriterium gibt. Daher dieser, etwas andere Weg.

Wenn ich ähnliche Karten, in welchem Format auch immer, mit anderen Daten bekomme, kann ich relativ schnell auch diese mit der Methode einlesen.
Christian Gründler hat geschrieben:versuch das mal bitte mit folgendem Verfahren:
Ok, diese Punkte liegen in etwa auf demselben Längengrad. Jetzt weiß ich, warum du andere wolltest als ich sie gewählt hatte. ;D
Christian Gründler hat geschrieben:Wie groß sind jetzt die Abweichungen? Und vor allem: ist da ein System zu erkennen?
Die Ergebnisse sehen noch etwas besser aus. 98.92% der Punkte werden nun auf die Karte projiziert.
Der westlichste Punkt Deutschlands (westlich von deinen P1, P2) wird 5km zu weit südlich projeziert. Der südlichste Punkt Deutschlands, aber auch die Nordspitze Sylts wird ca. 2km zu weit nördlich projeziert. Im äußersten Osten scheint es sehr exakt zu sein. Das mag auch daran liegen, dass deine Referenzpunkte P3 und P4 sehr weit im Osten liegen.
Da ich auf der Karte nur Landkreise und Farben sehen kann, ist es in der Mitte der Karte schwer zu sagen, wie exakt das ganze funktioniert.

Danke für die Ideen und Hinweise!

Re: EPS Dateiformat

Verfasst: 09.09.2008 16:12:58
von Christian Gründler
Steffen81 hat geschrieben:Der westlichste Punkt Deutschlands (westlich von deinen P1, P2) wird 5km zu weit südlich projeziert. Der südlichste Punkt Deutschlands, aber auch die Nordspitze Sylts wird ca. 2km zu weit nördlich projeziert. Im äußersten Osten scheint es sehr exakt zu sein. Das mag auch daran liegen, dass deine Referenzpunkte P3 und P4 sehr weit im Osten liegen.
Hallo Steffen,

hast Du die Punkte anders numeriert, oder ist das ein Tippfehler: bei mir liegen P1/P3 im Westen und P2/P4 im Osten, und darauf sind auch meine Formeln abgestimmt. Außerdem: hast Du für P4 einen Punkt bei Passau gewählt? Ich hatte an einen Punkt bei Berchtesgaden gedacht (etwa gleiche Breite wie Basel). Ob das wirklich einen Unterschied macht weiß ich allerdings nicht.

Wenn Punkte mit mittlerer Länge zu weit nördlich projiziert werden und ein Punkt ganz im Westen zu weit südlich, scheint mir das ein Hinweis auf eine Kegelprojektion zu sein, wie Roland ja schon für möglich gehalten hat. Da funktioniert lineare Interpolation natürlich nicht exakt.

Schade, ich hatte auf eine geringere Abweichung gehofft. Jetzt könnte man natürlich versuchen, das Ergebnis durch irgendwelche Annahmen zu verbessern, aber so richtig wissenschaftlich wäre das nicht. (Mein Verfahren ist offensichtlich auch nicht so doll, aber es kommt immerhin ohne unbewiesene Annahmen aus.)

M.f.G. Christian

Re: EPS Dateiformat

Verfasst: 09.09.2008 16:56:00
von Steffen81
Christian Gründler hat geschrieben:hast Du die Punkte anders numeriert, oder ist das ein Tippfehler
Sorry, war ein Tippfehler. Ich habe das so gemacht wie bei dir, und...
Christian Gründler hat geschrieben:hast Du für P4 einen Punkt bei Passau gewählt? Ich hatte an einen Punkt bei Berchtesgaden gedacht (etwa gleiche Breite wie Basel). Ob das wirklich einen Unterschied macht weiß ich allerdings nicht.
Zunächst ja, weil ich zunächst dachte, dass zwei Punkte auf dem gleichen Längengrad erstrebenswert wären. Der Gedanke im Hinterkopf hat dann auch zu der falschen Aussage in meinem letzten Beitrag geführt.

Das heißt im Klartext: Die Punkte liegen da, wo du es vorgeschlagen hattest:
  1. Im Westen, 26486 Wangerooge - 7.852695, 53.785411 - x: 424, y:413
  2. Hafengasse 81, 17375 Altwarp - 14.268608, 53.739185 - x: 1668, y:394
  3. Am Rheinpark 2, 79576 Weil am Rhein - 7.591205, 47.591034 - x: 334, y: 2440
  4. An der Seeklause 45, 83471 Schönau am Königssee - 12.98656, 47.587325 - x: 1530, y: 2424
Ich hatte zunächst befürchtet, dass extrapolierte Punkte schlechter projeziert werden, aber vermutlich werden sie sogar besser geschätzt als interpolierte mit größerem Abstand zu den Referenzpunkten. Daher hatte ich meine Referenzpunkte auch am Kartenrand gewählt, aber die berücksichtigten die Erdkrümmung leider nicht.

Ich gebe mich mit den Ergebnissen vorerst zufrieden. Aufwand und Nutzen sollten ja noch in einem vernünftigen Verhältnis stehen. Danke nochmal für die Hilfe.
Die Technik, so an Daten zu gelangen werde ich ggf. wiederholt nutzen. Sie ist nur begrenzt zuverlässig aber in so manchem Fall die einzige oder zumindest die noch bessere Alternative.

Re: EPS Dateiformat

Verfasst: 09.09.2008 16:57:18
von Max Senft
Hi,

AFAIK gibts die Landkreise auch in OpenStreetMap. Allerdings bin ich mir spontan nicht über die Möglichkeiten bewusst genau diese Vektoren zu "exportieren". Natürlich gibts ganz Deutschland als Dateidownload, aber das bringt einem erstmal ja nichts.

Ist allerdings eventuell eine andere Möglichkeit?

Grüße
Max