Georeferenzierung einer gescannten topographischen Karte --- Bilder bekommen Koordinaten Ergänzungen zum Handbuch Kapitel 19 Seite 9 oder Online Vorbemerkung: Ziel dieser Abhandlung ist es, zu zeigen, wie eine gescannte Karte für die Darstellung in einem View des DierckeGIS mit einer sogenannten Weltdatei georeferenziert wird. D.h. diese Rasterkarte kann als Hintergrund bzw. Vorlage für die Digitalisierung von eigenen Geometrien benutzt werden. Die Darstellung im View hängt von der Projektion ab, d.h. es sind verschiedene Arten von Weltdateien möglich. Hier werden zwei Arten vorgestellt: eine Weltdatei, für deren Berechnung die Abstände der Pixel in Metern relevant sind, und eine zweite, die geographischen Koordinaten benutzt. Zitat aus der ArcView Dokumentation S. 141 ArcView für Fortgeschrittene :...Rasterdaten stellen neben den Vektordaten (z.b. [Arcview] Shape-Dateien, [ArcInfo] Coverages) die wichtigsten Datengruppen für Geographische Informationssysteme (GIS) dar. Mit ArcView GIS können Sie auf eine Reihe unterschiedlicher Rasterformate direkt zugreifen und diese als Thema in einen View laden. Bei den Rasterdaten interessieren uns v.a. die Images, im weiteren Verlauf auch Bilder genannt, die Raumbezug haben, also ein graphisches Abbild der Erdoberfläche darstellen. Luftbilder, Satellitenbilder oder gescannte Karten sind Beispiele dafür. Raumbezug allein reicht aber meist nicht aus, um Bilder in der Geodatenverarbeitung sinnvoll einsetzen zu können. Bilder müssen sich auch auf ein Koordinatensystem beziehen. Wenn dieser Koordinatenbezug nicht von vornherein gegeben ist, muss er hergestellt werden. ArcView [das Diercke GIS] biete eingeschränkte Möglichkeiten, unter bestimmten Voraussetzungen, die Bildkoordinaten in Weltkoordinaten zu transformieren. Diesen Vorgang nennt man Georeferenzierung. Struktur von Bildern Bilddaten enthalten räumliche Informationen, die in einer regelmäßigen Matrix von Zeilen und Spalten organisiert sind. Jede Zelle in dieser Matrix, auch Pixel genannt, enthält einen numerischen Wert, der eine bestimmte geographische Information darstellt. Attributtabellen zu Bildern gibt es nicht. Im Gegensatz dazu werden bei Vektordaten die geometrischen Informationen in Form von XY-Koordinaten abgespeichert. Die beschreibenden Dachinformationen werden in mehr oder weniger umfangreichen Attributtabellen abgelegt... Folgerung: Wenn man die Informationen eines Bildes (z.b. einer gescannten Karte) mit einem GIS nutzen will (z.b. in Form von logischen oder räumlichen Abfragen), muß man die Daten per Digitalisieren in Vektordaten umwandeln. Damit der Raumbezug erhalten bleibt, müssen die Bilder vorher georeferenziert werden.
Vorbereitung: Ein Ausschnitt aus der Karte L2330 wurde in der Auflösung 300 dpi (dots per inch) mit einem Microtek Scanmaker X6 gescannt und mit Ulead PhotoImpact 4.2 im Format einer jpeg Datei in mittlerer Qualität als rz_scan.jpg gespeichert. 1. Weg: Weltdatei mit Metern als Karteneinheit Damit das Bild georeferenziert im View erscheint, muß es zu dem Bild eine Datei namens rz_scan.jpgw (oder *.jgw) geben. Diese ASCII Datei ist die sogenannte Weltdatei, sie setzt sich aus den folgenden Zeilen A bis F zusammen: 4.233333333 0.0 0.0-4.233333333 45887.69 6687211.92 A B C D E F Die Dimension eines Pixels in Karteneinheiten in der X-Richtung. Drehausdruck für die Zeile. Drehausdruck für die Spalte. Die Dimension eines Pixels in Karteneinheiten in der Y-Richtung. Die X-Koordinate des Zentrums des Pixels oben links in Karteneinheiten. Die Y-Koordinate des Zentrums des Pixels oben links in Karteneinheiten. überarbeitete Abbildung aus der Arcview Hilfe Die Einträge B und C sind dann gleich null, weil die einzuscannende Karte genau in W-O Richtung justiert wurde. Dies fällt leichter, wenn auf der Karte ein Gitternetz wie bei der 50.000er mit Quadraten von 1km Kantenlänge eingezeichnet sind. Ansonsten muß man das Bild mit dem Bildbearbeitungsprogramm leicht drehen. Die Projektion ist nicht in der Lage schräg eingescannte Bilder korrekt auf die Erdkugel zu plazieren! Der Scan sollte daher unbedingt genau nach Norden ausgerichtet werden!!!!! (Zitat aus Kapitel 19 des Online-Handbuchs: Hinweis: Diercke GIS dreht (verzerrt) die Bilder nicht, wenn sie in Weltkoordinaten umgewandelt werden. Enthalten die Georeferenz-Informationen Drehausdrücke ungleich 0, berechnet Diercke GIS für das Bild eine größere geographische Ausdehnung, um die Drehung zu berücksichtigen; das Bild wird jedoch einfach in diese größere Ausdehnung plaziert, ohne es zu drehen. Dies funktioniert deshalb am besten, wenn das Bild keine Drehung oder nur eine sehr geringe Drehung aufweist.)
Die Zeilen A und D lassen sich aus dem Maßstab der Originalkarte (hier 1:50.000), der Scanauflösung (hier 300 dpi) und der Karteneinheit des Views, in dem die gescannte Karte dargestellt werden soll (hier Meter) bestimmen: zum Maßstab: 1:50.000 bedeutet: 1cm entspricht 500m 1 Inch = 2,54 cm d.h. beim Maßstab 1: 50.000 entspricht 1 Inch 2,54*500m = 1270m zur Scanauflösung: 300 dpi = 300 Pixel (Punkte) pro Inch d.h. 1 Pixel ist 1270/300 m 4,233333m lang. Also muß für B der Wert 4,233333 eingetragen werden. In D muß die Größe des Pixels von oben nach unten mit einem negativen Vorzeichnen abgeben werden. Mit diesen Angaben kann man sicherstellen, daß die im View zu messenden Entfernungen korrekt sind. Schwieriger ist die genaue Lage des linken oberen Pixels in den Karteneinheiten anzugeben (F und E). Denn dies hängt auch von der für die im View verwendeten Projektion der Daten ab, die im View angezeigt werden. Für Deutschland liegen von ESRI Daten über Städte, Gemeinden, Straßen,... im Maßstab von 1:500.000 vor. (CDROM: ArcDeutschland 500) Diese Daten sind projiziert, d.h. die Koordinaten liegen nicht in Längen- und Breitengrad vor. Statt dessen wurde die Lambertsche Schnittkegelprojektion mit dem Bessel Ellipsoid verwendet (1. Standardparallele 48 40 ; 2. Standardparallele 53 40, Zentralmeridian 10 ). Im Diercke GIS erscheinen daher beim Laden dieser Themen eher unverständliche Koordinaten, die sich nicht einfach aus der Blattkarte herleiten lassen. Da mir keine Informationen über die mathematischen Hintergründe zu dieser Projektion vorliegen, schlage ich für die Bestimmung der Koordinaten ein Probierverfahren vor: Tragen Sie die Koordinaten in die Weltdatei, die Sie per Maus für die linke obere Ecke vermuten. Speichern Sie die Weltdatei und laden das so georeferenzierte Bildthema im Diercke GIS. Falls die gescannte Karte nicht mit den übrigen Karten harmonisiert, verändern Sie die Koordinaten. Ganz perfekt gelingt einem das sicherlich nicht, da die ESRI Daten aufgrund des Maßstabs viel zu ungenau sind.
2. Weg: Weltdatei mit geographischen Koordinaten: Man kann die Karte aber auch anhand der geographischen Koordinaten georeferenzieren, was für die beim Diercke GIS mitgelieferten digitalen Karten sinnvoller ist. Vorbereitung: Ein Ausschnitt aus der Karte L2330 wurde in der Auflösung 300 dpi (dots per inch) mit einem Microtek Scanmaker X6 gescannt und mit Ulead PhotoImpact 4.2 als jpeg Datei in mittlerer Qualität unter dem Namen L2330.jpg gespeichert. Das Worldfile zur Datei L2330.jpgw hat unter Verwendung geographischer Koordinaten folgende Einträge: 0.0000641414 0.0 0.0-0.0000381381 10.7 53.8 A B C D E F Die Dimension eines Pixels in Karteneinheiten in der X-Richtung. Drehausdruck für die Zeile. Drehausdruck für die Spalte. Die Dimension eines Pixels in Karteneinheiten in der Y-Richtung. Die X-Koordinate des Zentrums des Pixels oben links in Karteneinheiten. Die Y-Koordinate des Zentrums des Pixels oben links in Karteneinheiten. L2330.jpgw (Anm.: Vom Ausschnitt ist die Datei nahezu identisch mit der RZ_scan.jgw. Die Projektionen sind jedoch unterschiedlich! Die Namen wurden geändert, um Verwechslungen zu vermeiden.) E und F müssen bei dieser Weltdatei in geographischen Koordinaten angegeben werden: östliche Länge 10 42 und nördliche Breite: 53 48 Die Angaben müssen allerdings in Dezimalbrüche umgerechnet werden: 10 42 =10+ 42/60 = 10,7 bzw. 53 48 = 53+48/60 = 53,8 Ebenfalls muß man die Dimension für A und D ebenfalls in Grad angeben. Am Beispiel von A sei dies hier erklärt: Aus zwei markanten Punkten der Karte (gut geeignet sind die Kreuzpunkte der Längen- und Breitenkreise) entnimmt man: Der Abstand von den zwei gewählten Punkten auf demselben Breitenkreis (Punkte P und Q) beträgt 5 Bogenminuten. 5 =5/60 =1/12 (=0,083333 ) In der Karte haben die Punkte den Abstand 11cm. 11 cm sind in der gescannten Karte aufgrund der Auflösung von 300 dpi mittels 11/2,54*300 = 1299 Pixel dargestellt. Also ist ein Pixel 1/(12*1299) lang = 0,0000641. (Werte nicht gerundet) Formel: Länge eines Pixels = Bogenmaß*2,54/(Kartenabstand*Auflösung) Für die Dimension von D folgt entsprechend, wenn man zwei Punkte (Punkte P und R) auf demselben Meridian mit dem Abstand von 5 Bogenminuten wählt: 5 =5/60 =1/12 In der Karte haben die Punkte den Abstand 18,5cm. 18,5 cm sind in der gescannten Karte aufgrund der Auflösung von 300 dpi mittels 18,5/2,54*300 2185 Pixel dargestellt.
Also ist ein Pixel 1/(12*2185) lang = 0,0000381. (Werte nicht gerundet) Da die Länge des Pixels von Nord nach Süd angegeben werden soll, trägt man in die Weltdatei den Wert mit einem negativen Vorzeichen ein: - 0.0000381381. Die Einträge B und C sind auch hier gleich null, weil die einzuscannende Karte genau in W-O Richtung justiert wurde (siehe oben). Die Überprüfung der Weltdatei kann wie folgt stattfinden: 1. Man sucht markante Punkte (z.b. wieder Kreuze von Meridianen und Breitenkreisen), liest die Koordinaten im Diercke GIS ab und vergleicht diese mit denen der Originalkarte. 2. Wenn als Abstandseinheit für den View Kilometer eingetragen ist, kann man bekannte Entfernungen nachmessen. Bei 50.000 Karten mit einem UTM-Gitternetz beträgt die Kantenlänge eines Gitterquadrats 1km. Als digitale Karten kann man im View mit dieser georeferenzierten Karte die von Westermann mitgelieferten Daten oder das neue Europa-Datenpaket verwenden. Aufgrund der von ESRI verwendeten Projektion lassen sich die ESRI Daten nicht im selben View darstellen. Zur einfachen Erstellung der Weltdatei für gescannte Karten habe ich das Programm Georef geschrieben (siehe unten).
Ansicht von Ratzeburg mit einer der geographischen Koordinaten georeferenzierter Karte, zusätzlich werden Themen des Europa-Datenpaketes angezeigt. Das auf Basis der gescannten Karte, die hier als Thema L2330.jpg im Inhaltsverzeichnis (TOC) des Views erscheint, digitalisierte Thema1.shp dient nur der Veranschaulichung: Die Punkte liegen auf den Eckpunkten des Gitternetzes, das in dieser Projektion als Rechteck erscheint. Der Abstand zwischen dem grünen und roten sowie zwischen dem roten und blauem Punkte beträgt jeweils 1km. Der rote Punkt hat die Koordinaten 10,76 Ost und 53,71 Nord (also: 10 45 36 O 53 42 36 N).
Georeferenzierungstool Georef V1.0 für gescannte Karten für Windows 95/98: Eingabe von: 1. Angabe bzw. Auswahl per Klicken des Dateinamens der gescannten Karte 2. Scanauflösung (diese können Sie über das Bildbearbeitungsprogramm erfragen bzw. einstellen) 3. Koordinaten des Punktes links oben in der gescannten Karte 4. Koordinaten der Referenzierungspunkte P, Q, R in der gescannten Karte, (für diese muß gelten: P und Q liegen auf demselben Breitenkreis und P und R liegen auf demselben Meridian (Längenhalbkreis). 5. Abstand der Punkte P und Q in der Karte in cm 6. Abstand der Punkte P und R in der Karte in cm
Ergänzung zum Programm Georef V1.0: Entfernung zweier Punkte auf der Erdkugel und in der Karte: Zur Zeit muß der Anwender relativ viele Dinge eintragen (s.o.) Die Schritte 4 und 5 könnten theoretisch wegfallen, wenn man statt dessen den Maßstab der gescannten Karte abfragt. Diese Angaben sind notwendig, weil die Breitenkreis nach Norden hin immer kleineren Durchmesser annehmen und weil - je nach Kartenprojektion - die Meridiane gesteckt dargestellt werden können. Ein Beispiel dazu: Während in der 50.000er Karte zu Ratzeburg (L2330) 5 von West nach Ost in der Karte mit 11cm dargestellt werden, sind dies in der 50.000er Karte zu Braunschweig (L3728) etwa 11,4cm. Aber in beiden Karten werden 5 von Nord nach Süd mit 18,5 cm dargestellt. Aus den Koordinaten kann man aber auch die Entfernung in der Karte berechnen lassen: In meinem Referendariat habe ich ein Referat über Trigonometrie auf der Kugel gehalten, aus dem ich nun kurz den mathematischen Hintergrund darstellen möchte: Die beiden Punkte A und B bilden mit dem Pol P das sogenannte Poldreieck. Für A(x 1 y 1 ) und B (x 2 y 2 ) ergibt sich im Dreieck PAB nach dem Seitenkosinussatz wie folgt ein Abstand im Bogenmaß e: cos e = cos(90 x1 ) * cos(90 x2 ) + sin(90 x1 ) *sin(90 x2 ) * cos( y2 y1) cos e = sin x1 sin x2 + cos x1 * cos x2 * cos( y2 y1) D.h. die Punkte Saarbrücken Ensheim (7 7 E 49 13 N) und Melbourne (144 58 E 37 48 S) haben den Abstand: cos e = sin(49,22 ) *sin( 37,8 ) + cos(49,22 ) *cos( 37,8 ) *cos( 137,85 ) =-0,8467 e = InvCos(-0,8467) = 147,86 Anhand der durch den Vergleich zu einer Kugel mit gleichem Volumen genäherten Länge des Erdradius (R = 6371,024km) folgert man: e AB = * 2πR 16440km 360 Die Anwendung auf unser Problem soll ein Beispiel aus der 50.000er Karte zu Ratzeburg zeigen (L2330): Zu den Punkten P(53 48 10 42 ), Q(53 48 10 50 ) und R(53 40 10 42 ) sollen die Abstände zwischen den Punkten P und Q sowie zwischen P und R in Bogenmaß gemessen werden. Anm.: Der Abstand in Grad auf dem nördlichen Breitenkreis (53 48 ) beträgt 5. Da der Breitenkreis aber kein Großkreis ist und die kürzeste Entfernung zwischen zwei Kugelpunkten auf einem Kreisbogen e eines Großkreises, wird die Rechnung zu einem anderen Ergebnis kommen. Ein Großkreis ist eine Schnittebene durch zwei Kugelpunkte P und Q und den Mittelpunkt M einer Kugel. 1. Abstand von P und Q in Bogenmaß auf dem Großkreis: cos e = sin(53,75 )sin(53,75 ) + cos(53,75 ) *cos(53,75 ) *cos(10,83333 10,75 ) = 0,999999630178546049842263302633089
(Taschenrechner von Win98 mit wissenschaftlicher Ansicht und Genauigkeit) e = 0,0492758012056341286525176315780354 (vgl. mit oben: e 5 ) e AB = * 2πR = 5,47923974101168824156512552878419 km 5,5km 360 Da bei 1:50.000 1km auf der Karte mit 2cm dargestellt wird, würde die Entfernung zwischen P und Q in einer abstandstreuen Karte entsprechend 2*e = 10,9584794820233764831302510575684 cm sein. D.h. aufgrund dieser Formel könnte der Abstand zweier Punkte in der Karte berechnet werden (ohne Berücksichtigung der Projektion...). Aber: Wenn man den Abstand mit einem Lineal messen würde, würde man sicherlich 11cm, d.h. 5,5km angeben. Fraglich ist nun das weitere Vorgehen: - entweder Berechnung des Kartenabstandes in cm aus den Koordinaten der Punkte P, Q und R (und anschließende Umrechnung, wie breit ein Pixel der gescannten Karte ist) wie oben dargestellt... ODER - der Anwender des Programms Georef muß die Koordinaten der Referenzierungspunkte und deren (in der Karte) gemessenen Abstand in cm angeben! Da auf beiden Wegen Rundungsfehler auftreten werden, weil entweder ungenau abgelesen wird, oder die Projektion nicht berücksichtigt wird und die Software runden muß, halte ich den Weg, bei dem die Karte vermessen wird auch aus didaktischen Überlegungen heraus für sinnvoller. Auch bei anderen einzuscannenden Bildern wie Luftbildern oder Satellitenaufnahmen kann der Anwender am Original die Entfernungen markanter Punkte messen (und deren Koordinaten aus einer topographischen Karte ablesen).
################################################################### ABER: Wenn die Luftbilder schon digital wie zum Beispiel das wsiearth.tif vorliegen, kann man das Programm Georef zur Zeit noch nicht einsetzen! Man kann zwar die Auflösung (96 dpi) per Bildbearbeitungsprogramm erfassen und die Lage der Referenzierungspunkte im Vergleich mit einer Detailkarte (Diercke Atlas oder Diercke GIS) angeben, da aber das Original nicht vorliegt, kann man natürlich darauf keine Entfernungen zwischen diesen Punkten messen. Dazu müßte man vielleicht ein zweites Programm schreiben, das die Bilder lädt und in einem Fenster darstellt, so daß der Benutzer auf die Punkte klickt, deren Koordinaten angibt und das Programm den Pixelabstand mißt und mit dem Abstand im Bogenmaß nach dem Seitenkosinussatz (s.o.) berechnet. Idee per Bildbearbeitung: Punkt Diercke Atlas geographische Koordinaten Pixelkoordinaten im Bild Nähe S. 190 40 Nord 120 West 1679 1390 Reno USA Nähe S. 177 40 Nord 140 Ost 8905 1390 Akita Japan Nähe S. 180/181 39 Süd 140 Ost 8905 3517 Portland Australien Punkt links oben 90 Nord 180 West 0 0 Dies bietet sicherlich noch etwas Gesprächstoff. Knut Heyden 9. Mai 2000