Bachelorarbeit - Digitale Bibliothek NB

Werbung
Hochschule Neubrandenburg
Bachelor – Studiengang Geoinformatik
Bachelorarbeit
zum Thema
Verwaltung und Ableitung
von Höhenprofilen in GAIA-MV
Zum Erlangen des akademischen Grades
„Bachelor of Engineering“ (B.Eng.)
vorgelegt von: Felix Kobel
Erstprüfer:
Prof. Dr.- Ing. Andreas Wehrenpfennig
Zweitprüfer: Dipl.-Ing. Marco Zehner
URN:
nbn:de:gbv:519-thesis 2014-0112-0
eingereicht am 03.03.2014
Eidesstattliche Erklärung
Eidesstattliche Erklärung
Hiermit versichere ich, die vorliegende Bachelorarbeit ohne Hilfe Dritter und nur mit den
angegebenen Quellen und Hilfsmitteln angefertigt zu haben. Alle Stellen, die aus den Quellen
entnommen wurden, sind als solche kenntlich gemacht worden. Diese Arbeit hat in gleicher
oder ähnlicher Form noch keiner Prüfungsbehörde vorgelegen.
Neubrandenburg, den 03.03.2014
Unterschrift
Seite 2 von 60
Danksagung
Danksagung
Nach Abschluss meiner Bachelor Arbeit möchte ich mich bei allen bedanken, die mich bei der
Erstellung meiner Bachelor Arbeit mit Korrekturlesen, Hinweisen und Diskussionen unterstützt haben.
Ich bedanke mich recht herzlich bei Herrn Prof. Dr. Andreas Wehrenpfennig für die Betreuung meiner Bachelor Arbeit und das kritische Lesen der Arbeit während der Entstehungsphase.
Ein besonderer Dank gilt Herrn Marco Zehner, der mir die Möglichkeit bot, das Praxissemester meines Bachelorstudiums beim Datenverarbeitungszentrum GmbH in Schwerin zu absolvieren, aus dem das Thema dieser Arbeit hervorging. Ich bedanke mich auch für die Betreuung während des Praktikums und der Bachelor Arbeit sowie für die vielen Hinweise und Anregungen während der Arbeit.
Ich danke Herrn Rechlin für die Bereitstellung seines Laptops zum Testen der Datenbank
PostgreSQL mit dem Aufsatz PostGIS 2.0.
Ein großer Dank gilt meinen Eltern, die mich während der Erstellung der Bachelor Arbeit
unterstützt haben.
Seite 3 von 60
Kurzfassung
Kurzfassung
Im Rahmen dieser Arbeit wurde die Verwaltung und Ablagerung von Höhenprofilen in
GAIA-MVprofessional analysiert. Die bisherige Speicherung der Geodaten in GAIA-MV
erfolgte mit dem Datenbanksystem PostgreSQL mit der Erweiterung PostGIS in Vektorform.
Mithilfe der Einführung des Aufsatzes PostGIS ab der Version 2.0 zu dem objektrelationale
Datenbanksystem PostgreSQL haben sich neue Möglichkeiten hinsichtlich der Speicherung
der Daten in Rasterform ergeben. Die neuen Funktionen für die Unterstützung von Rasterdaten ermöglichen den Einsatz von effektiveren und schnelleren Verfahren zur Berechnung von
Höhenprofilen.
Abstract
In this work, the management and disposal of height profiles in GAIA MVprofessional was
analyzed. The previous storage of spatial data in GAIA-MV was performed with the database
system PostgreSQL and the extension PostGIS in vector form. Using the introduction of the
essay PostGIS from version 2.0 to the object-relational database system PostgreSQL have a
new option of storing the data in raster form. The new features for the support of raster data
allow it possible to use of more effective and faster method for calculating height profiles.
Seite 4 von 60
Inhaltsverzeichnis
Inhaltsverzeichnis
1
2
3
4
5
Einleitung ........................................................................................................................... 7
1.1
Hinführung zum Thema .................................................................................. 7
1.2
Vorstellung des Arbeitsumfeldes.....................................................................8
1.3
Ziel der Bachelorarbeit...................................................................................9
Verwendung von DGM-Daten ......................................................................................... 10
2.1
Private Nutzung ............................................................................................ 10
2.2
Gewerbliche und behördliche Nutzung ........................................................11
GAIA-MV ........................................................................................................................ 14
3.1
System-Umgebung (GAIA-MV) ....................................................................14
3.2
GAIA-MVprofessional .................................................................................. 16
3.3
Abfrage und Darstellung von Höhenprofilen in GAIA-MVprofessional ......17
3.3.1
Themenmanager ........................................................................... 17
3.3.2
Karteikarte „Abfrage“ ................................................................. 19
3.3.3
Karteikarte „Messen und Zeichnen“ ........................................... 19
3.3.4
Beispielstrecke in Schwerin ......................................................... 20
3.3.5
Schummerungs- und Höhenliniendarstellung .............................. 21
Digitales Geländemodell (DGM) ..................................................................................... 23
4.1
Nutzung von Rohdaten aus dem Airborne Laserscanning (ALS) .................23
4.2
ATKIS-Digitale Geländemodelle ..................................................................25
4.3
Lage- und Höhenbezugssystem .....................................................................26
4.4
Datenabgabe vom LAiV und Vorstellung der Datensätze ............................27
Varianten der Speicherung ............................................................................................... 28
5.1
PostgreSQL und PostGIS ............................................................................. 28
5.2
Räumliche Indizes .........................................................................................31
5.3
Vektorverarbeitung mit PostGIS...................................................................33
5.4
Rasterverarbeitung mit PostGIS ................................................................... 34
5.5
ERDAS APOLLO ..........................................................................................35
5.6
Umstellung auf PostGIS 2.0 ......................................................................... 36
Seite 5 von 60
Inhaltsverzeichnis
6
Berechnung des Höhenprofils .......................................................................................... 37
6.1
Höhenprofilabfrage im Vektorformat ...........................................................37
6.2
Profilabfrage einer Linie ..............................................................................38
6.2.1
Höhenprofil mit Geometrie- Auflösung........................................ 39
6.2.2
Höhenprofil mit DGM- Auflösung ............................................... 40
6.2.3
Auswahl an Punkten (Sampling) .................................................. 41
6.2.4
Analysemöglichkeiten anhand der Beispielstrecke ...................... 43
6.2.5
Fazit zu den drei Verfahren ......................................................... 45
6.3
7
Profilabfrage eines einzelnen Punktes..........................................................46
Testrahmen ....................................................................................................................... 47
7.1
Vergleich der Speichermenge ....................................................................... 47
7.2
Vergleich der Laufzeit...................................................................................48
7.2.1
Datenbank Umgebung.................................................................. 48
7.2.2
Cache ........................................................................................... 48
7.2.2.1
Punktabfrage........................................................... 49
7.2.2.2
Linienabfrage .......................................................... 50
7.2.3
8
GAIA-MVprofessional Umgebung ............................................... 51
Zusammenfassung und Ausblick ...................................................................................... 55
Glossar ...................................................................................................................................... 56
Quellenverzeichnis ................................................................................................................... 57
Abbildungsverzeichnis ............................................................................................................. 58
Tabellenverzeichnis .................................................................................................................. 59
Anhang ..................................................................................................................................... 60
Seite 6 von 60
1 Einleitung
1 Einleitung
1.1 Hinführung zum Thema
„Ein Digitales Geländemodell (DGM) ist ein digitales, numerisches Modell der Geländehöhen
und -formen.“[LAIV09]
„Ein Modell unternimmt den Versuch, die komplexe Wirklichkeit verständlich und anschaulich darzustellen, ist also eine Abstraktion und Beschreibung der realen Welt oder eines Teiles
davon.“[UR14] Die DGM-Daten lassen sich mit anderen Geobasisdaten verknüpfen. „Geobasisdaten sind eine Teilmenge der Geodaten, welche die Landschaft (Topographie) und die
Liegenschaften der Erdoberfläche interessenneutral beschreiben.“[UR14] Ein Nutzungsbeispiel für eine solche Verknüpfung ist die Erstellung eines Höhenprofils.
Im Bundesland Mecklenburg-Vorpommern (MV) ist das Landesamt für innere Verwaltung
Mecklenburg-Vorpommern (LAiV) - Amt für Geoinformation, Vermessungs- und Katasterwesen mit Sitz in Schwerin für die Bereitstellung der DGM-Daten innerhalb von MV zuständig.
Die Modellierung der DGM erfolgt nach bundeseinheitlichen Objektartenkatalogen
(ATKIS®-OKDGM). Die Produkte der Produktgruppe DGM werden nach ihrer Gitterweite
strukturiert. Bisher wurden die Digitalen Geländemodelle mit den Gitterweiten 25 Meter
(DGM25) und 100 Meter (DGM100) in der Datenbank vom Datenverarbeitungszentrum
(DVZ) gespeichert. Nun soll wegen der besseren Qualität von Höhenprofilen das DGM5 (Gitterweite 5 Meter) eingeführt werden.
Im Rahmen dieser Arbeit wird im Speziellen auf Daten eingegangen, die durch das Verfahren
des Airborne Laserscanning aufgenommen wurden. Darauf wird im Kapitel 4.1 „Nutzung von
Rohdaten aus dem Airborne Laserscanning“ noch näher eingegangen. Ergänzend kommen
auch Verfahren der Luftbildauswertung zum Einsatz. Zumeist handelt es sich hierbei um das
Format XYZ-ACCII-File, optional auch im NAS-Format, die mittels Befliegung gewonnen
werden. Das XYZ-Format beinhaltet zum einen die Koordinaten der aufgenommenen Punkte
und zum anderen die Höhe eines Punktes. Bei der Darstellung solcher Geodaten werden die
Begriffe Raster- beziehungsweise Vektordaten verwendet. Diese Bezeichnungen werden für
die geometrische Darstellung von raumbezogenen Objekten gewählt. Die Objekte im Vektor-
Seite 7 von 60
1 Einleitung
format sind in einer Liste geordnete x, y-Koordinaten. Diese Objekte können mit Attributen
verbunden werden. Bei einer Rasterdatenstruktur erfolgt die Verbindung mit einer Rasterzelle. Die Rasterdaten werden in Zeilen und Spalten angeordnet, in einer Art Matrixform.
Mit dem Datenbanksystem PostgreSQL und durch die Erweiterung mit PostGIS ist nicht nur
die Speicherung der Geodaten in Vektor- oder Rasterformat, sondern auch deren Abfrage und
Analyse möglich. Mit der Einführung von PostGIS ab der Version 2.0 wird eine verbesserte
Speicherung für Rasterdaten als Objekt in einer Datenbank erreicht. Bis dahin konnten die
Vorteile, die PostgreSQL als Datenbank bietet, nur bei der Verwaltung von Vektordaten genutzt werden.
1.2 Vorstellung des Arbeitsumfeldes
Die Frage des Einsatzes von PostgreSQL mit der Erweiterung PostGIS ab der Version 2.0
zum Speichern von Rasterdaten stellt sich aktuell für die Datenverarbeitungszentrum M-V
GmbH. Das Datenverarbeitungszentrum, kurz DVZ, ist der IT-Service-Provider der Landesverwaltung Mecklenburg-Vorpommern mit Sitz in Schwerin. Im Jahr 1990 erfolgte die Umwandlung des VEB Datenverarbeitungszentrum Schwerin in die Datenverarbeitungszentrum
Schwerin GmbH. Gesellschafter der eigenständigen GmbH ist das Land MecklenburgVorpommern, dass im Aufsichtsrat durch die Staatssekretäre des Finanzministeriums für Inneres und Sport vertreten wird.
Im Servicebereich Geoinformation der DVZ M-V GmbH ist die Geodatenverarbeitung angesiedelt, wo die Entwicklung des Geodatenviewer GAIA-MVprofessional begann. Mit der
Entwicklung erfolgte die zentrale Bereitstellung und Nutzung von Geodaten im InternetBrowser ohne die Verwendung von zusätzlicher (GIS-) Software. In dem Jahr 2013 konnte
das 10-jährige Jubiläum gefeiert werden. Eine Neuerung ab der Version 3.3 ist die Abfrage
eines interaktiven Geländeprofils. Daraus entwickelte sich die Ermittlung des Geländeprofils
(Höhen) für Geländepunkte und -strecken.
Seite 8 von 60
1 Einleitung
1.3 Ziel der Bachelorarbeit
Das Ziel dieser Arbeit ist die Analyse der Verwaltung und Ableitung von Höhenprofilen in
GAIA-MV. Dazu wird zunächst auf die Verwendung von Digitalen Geländemodellen näher
eingegangen.
Danach erfolgen die Vorstellung der Systemumgebung in GAIA-MV und die Geländeprofilabfrage in dem Geodatenviewer GAIA-MVprofessional.
Mit Hilfe dieser Arbeit soll eine Aussage getroffen werden, ob die Verwendung von PostGIS
ab der Version 2.0 in Rasterform einen Vorteil gegenüber der Verwendung PostGIS zur Speicherung von Geodaten in Vektorform bietet. Zum Vergleich der Speicherung von Geodaten
wird noch zusätzlich das kommerzielle Produkt APOLLO ERDAS herangezogen, das von
dem Softwareunternehmen GEOSYSTEMS entwickelt wurde. Der Server APOLLO ERDAS
ermöglicht die Verwaltung und Analyse von Geodaten.
Es werden verschiedene Aspekte untersucht, von der Speicherung der Geodaten, über die
Analysemöglichkeiten und Interpolationsverfahren zur Erstellung von Höhenprofilen bis hin
zum Testen der Performance beim Zugriff innerhalb der Datenbank und mit GAIAMVprofessional. Des Weiteren soll diese Arbeit als Leitfaden zur Umstellung von Vektorauf Rasterformat dienen. Zunächst wird der aktuelle Stand untersucht und anschließend die
benötigten Schritte erläutert, die zur Umstellung auf PostGIS 2.0 erforderlich sind. Abschließend folgt der Vergleich zwischen den beiden Möglichkeiten der Speicherung von Geodaten.
Seite 9 von 60
2 Verwendung von DGM-Daten
2 Verwendung von DGM-Daten
Die Verwendung des Digitalen Geländemodells (DGM) kann im gewerblichen Bereich erfolgen und sowohl auch für private Nutzer interessant sein. Das DGM beschreibt die natürliche
Geländeform der Erdoberfläche.
Die DGM-Daten lassen sich mit anderen Geobasis- und Geofachdaten kombinieren. Die Bedingung dabei ist, dass die Georeferenzierung identisch ist. Einige Nutzungsbeispiele sind die
Schummerungs- und Höhenliniendarstellungen, die Simulation und Prognose von Hochwasser- und Windeinflüssen, die Erstellung von Schallimmissionsplänen, die Profildarstellungen
und Volumenberechnungen. Im Rahmen des ATKIS-Projektes sind die DGM-Daten ein Baustein für die Ableitung der Topografischen Kartenwerke.
Das Digitale Geländemodell kann unter anderem in folgenden Bereichen eingesetzt werden:
→ Umwelt
→ Funknetz- und Trassenplanungen
→ Landwirtschaft
→ Forstwirtschaft
→ Umweltschutz
→ Katastrophenschutz
→ Archäologie
Die folgenden Beispiele im gewerblichen Bereich, wie auch für die private Nutzung, sollen
zeigen, wie Höhenprofile eingesetzt werden und wie aktuell das Thema ist.
2.1 Private Nutzung
Für private Personen kann ein Höhenprofil sehr interessant und hilfreich sein; zum Beispiel
die Zielgruppen, die im Freien Sporttreiben und dabei insbesondere für Radfahrer, Wanderer,
SKI- Fahrer oder Langläufer, die zu ihrer ausgewählten Strecke ein Höhenprofil haben möchten. Wenn die Sportler nach ihrem getanen Sport nachvollziehen wollen, welche Strecke und
wie viele Höhenunterschiede sie abgelaufen beziehungsweise abgefahren sind, so können sie
dies durch das Programm erfahren, natürlich auch bereits vor ihren sportlichen Aktivitäten.
Seite 10 von 60
2 Verwendung von DGM-Daten
2.2 Gewerbliche und behördliche Nutzung
Im gewerblichen wie auch im behördlichen Bereich ist die Anwendung von Digitalen Geländemodellen von großer Bedeutung. Bereits im Kapitel 2 „Verwendung von DGM-Daten“
wurden entsprechende Einsatzbereiche aufgelistet.
Firmen können zur Planung von Großvorhaben die Höhenprofile nutzen, um zum Beispiel die
optimale Strecke für die neue Gaspipeline durch Mecklenburg-Vorpommern zu entwickeln.
Beim Elbehochwasser im Sommer 2013 wurde ein Höhenprofil angefertigt, um die Gefährdungsbereiche abgrenzen zu können und somit diese entsprechend zu schützen. Es gibt unzählige Einsatz- und Verwendungszwecke für das Digitale Geländemodell. Ziel dabei ist immer
eine Optimierung der Möglichkeiten und Reduzierung von Zeit- und Kostenaufwand.
Ein Beispiel für die Anwendung von Digitalen Geländemodellen ist die Planung des optimalen Standortes für Windräder hinsichtlich ihrer Sichtbarkeit im Gelände. In MecklenburgVorpommern werden aufgrund der Energiewende immer mehr Windparks errichtet. Windräder gehören neben den Solaranlagen zu den am häufigsten genutzten erneuerbaren Energien.
Diese sollen die Energiewende in Deutschland in den nächsten Jahren weiter voran treiben.
Für das Errichten von Windparks im Bundesland MV sprechen mehrere Gründe, zum einen
die Nähe zur Ostseeküste und zum anderen die nicht vorhandenen Gebirge, die in Mittel- und
Süddeutschland existieren. In naher Zukunft kann die Windenergie ein wichtiges Standbein
für den Wirtschaftsstandort Mecklenburg-Vorpommern werden.
Mithilfe der Sichtbarkeitsanalyse (Viewshed) unter Verwendung eines DGMs können die
passenden Gebiete für einen Standort in der Landschaft gefunden werden. Bei der Analyse
geht es darum, wie weit die Windräder in dem angegeben Radius sichtbar sind. Dabei geht es
darum, ob die Anwohner einer Ortschaft die Windräder von ihrem Wohnhaus aus sehen können. Die Koordinaten der Standorte für die geplanten Windräder und deren Höhe müssen für
die Sichtbarkeitsanalyse angegeben werden. Zusätzlich ist der zu untersuchende Umkreis zu
wählen. Dabei spielt die Landschaft hinsichtlich von Erhebungen oder Tälern eine entscheidende Rolle.
Seite 11 von 60
2 Verwendung von DGM-Daten
Ein mögliches Ergebnis einer solchen Analyse könnte wie folgt aussehen:
Abbildung 01 Sichtbarkeitsanalyse
Die Abbildung 1 wurde mithilfe des Programms GRASS erstellt. Verwendet wurde dabei das
DGM5 von Mecklenburg-Vorpommern. Der rote Punkt in der Abbildung könnte für die Position eines Windrads stehen. Die hellgrüne Fläche, um den Punkt herum, stellt die Sichtbarkeit
des Windrads innerhalb des Umkreises dar.
Für die Aufstellung von Windparks müssen unter anderem die Entfernungen zu Ortschaften
und Siedlungen; zu Verkehrsflächen oder Flugplätzen; zu einem Militärgelände; zu Wald-,
Naturschutz- und Tourismusgebieten beziehungsweise Vogelfluglinien (Einhaltung des Artenschutzes) berücksichtigt werden.
Hier nun zwei konkrete Beispiele, die die Wichtigkeit von Höhenprofilen veranschaulichen.
Beispiel 1: Durch die letzte durchgeführte Kreisgebietsreform in Land M-V wurde aus den
Kreisen Ludwigslust und Parchim ein neuer „Großkreis“. Dies hatte zur Folge, das zwischen
den Städten Parchim - Hauptsitz der Verwaltung und Ludwigslust - Nebenstandort eine Lösung für eine Vernetzung der Computersysteme und damit eine Zusammenarbeit aller Mitarbeiter mit Zugriff auf gemeinsame Server erforderlich wurde.
Als kostengünstigste Lösung wurde mit der Planung einer Richtfunkverbindung zwischen den
beiden Städten begonnen, siehe dazu Abbildung 2 „Topografische Karte“ (linke Grafik). Dabei wurde schnell klar, dass eine direkte Verbindung nicht möglich wird. Das Problem lag in
der Topographie. Zwischen den beiden Orten befindet sich eine Anhöhe. Diese Anhöhe hat
den Namen „Langer Berg“ mit der höchsten Erhebung von 113 Meter.
Seite 12 von 60
2 Verwendung von DGM-Daten
Zu entnehmen ist dieser Höhenwert aus der Abbildung 2 „Höhenprofil zwischen Ludwigslust
und Parchim“ (rechte Grafik). Allerdings ist bei solch weiten Entfernungen neben der Topografie auch die Erdkrümmung zu beachten.
Abbildung 02 Topografische Karte und Höhenprofil zwischen Ludwigslust und Parchim
Erst durch Anwendung des Digitalen Geländemodells wurde dies für alle sichtbar. Die Richtfunkmasten hätten in diesem Fall eine nicht vertretbare Höhe haben müssen.
Somit musste die Richtfunkstrecke von Parchim über Schwerin weiter nach Ludwigslust eingerichtet werden.
Beispiel 2: Schwerlasttransporte auf den Straßen im Land sind immer wieder notwendig; wie
zum Beispiel der Transport von Schiffsschrauben oder Windrädern. Die Planung einer Strecke für Schwerlasttransporte erfordert einen hohen Zeitaufwand. Bevor der Schwerlasttransport auf die Straße gelangen kann, muss genauestens die Route durchdacht werden, da ansonsten unerwartete Überraschungen während der Fahrt auftreten können. Die Folge wäre,
kurzfristig eine neue Route zu suchen und dies ist immer auch mit einem zeitlichen Mehraufwand sowie einer finanziellen Mehrbelastung verbunden. Wichtig für die Planungen sind neben dem Straßenverlauf auch die Kenntnisse über Unebenheiten bei der Geländeoberfläche.
Auf einer Strecke können Täler und Anhöhen vorkommen, die für Schwerlasttransporte zum
Problem werden. Um das zu verhindern, besteht mit Hilfe des Digitalen Geländemodells die
Möglichkeit, ein Höhenprofil von der geplanten Route zu erstellen.
Seite 13 von 60
3 GAIA-MV
3 GAIA-MV
„GAIA-MV(GeoAccessInternetApplication-Mecklenburg-Vorpommern) ist ein Baukastensystem zum Entwickeln von webbasierten Anwendungen für das Visualisieren und Auswerten
von Geodaten. Mit seinen Elementen können anwendungsbezogene Fachapplikationen ermöglicht werden. Außerdem ermöglicht das System die Abbildung von Prozessen. Komplizierte Workflows werden digital unterstützt und können mit geographischen Informationen
verknüpft werden.“ [DVZ13]
In den nächsten Abschnitten werden die System-Umgebung von GAIA-MV sowie die Abfrage und Darstellung von Höhenprofilen in GAIA-MVprofessional näher erläutert.
3.1 System-Umgebung (GAIA-MV)
Die System-Umgebung von GAIA-MV beruht auf dem Client-Server-Modell. In der Abbildung 3 „GAIA-MV Komponenten“ werden die Abläufe und Zusammenhänge von den Server- und Client-Komponenten dargestellt. Als Server wird der UMN-MapServer eingesetzt.
Der UMN-MapServer ist eine Open-Source-Software und unterstützt das klassische Modell.
Dieser Server präsentiert raumbezogene Daten und interaktive Kartenanwendung im Internet.
Auf dem Server werden Grafiken und Webseiten dynamisch generiert. Danach werden diese
als HTML-Seite an den Client gesendet. Die HTML-Seiten können mit JavaScript Code angereichert werden.
Die Geodaten werden dabei datei- oder datenbankorientiert abgelegt und eingebunden. Als
Datenformate fungieren das Shape-Format der Firma ESRI sowie diverse RastergrafikFormate und Geodatenbanken. Gleichzeitig werden zudem Bibliotheken wie OGR und GDAL
unterstützt.
Des Weiteren erfolgt der Einsatz der Datenbank, wie bereits mehrfach erwähnt, PostgreSQL
mit der Erweiterung PostGIS zur Verwaltung großer Vektor- und Rasterdatenbeständen. Die
Speicherung der Geodaten für die Erstellung von Höhenprofilen wird im Kapitel 5 „Varianten
der Speicherung“ noch genauer erklärt.
Seite 14 von 60
3 GAIA-MV
Abbildung 03 GAIA-MV Komponenten [DVZ13]
Serverseitig wird die Entwicklungsumgebung PHP und die speziell für den MapServer entwickelte Bibliothek PHP-MapServer verwendet. Die Anwendung wird über einen MapServerspezifischen Präprozessor angesprochen. Der Präprozessor ist ein Computerprogramm, das
Eingabedaten vorbereitet und zur weiteren Bearbeitung an ein anderes Programm weitergibt.
Der UMN-MapServer liegt in verschiedenen Varianten für das Betriebssystem Linux sowie
für diverse Microsoft-Betriebssysteme vor. Die Einbindung und Darstellung der Geodaten
wird in einer sogenannten Map-Konfiguration festgelegt. Der Präprozessor erzeugt mit Hilfe
des MapServers GIF-, PNG- oder JPEG-Grafiken und transportiert diese gemeinsam mit
HTML-Fragmenten an den Browser des Clients. Clientseitig wird für die Gruppe der „Viewer“ nur ein Webbrowser benötigt. Die Grafiken sind je nach Bildgröße und Inhalt nur einige
Kilobyte groß. Der UMN-MapServer kann sowohl auf Basis des Apache-Webservers als auch
auf anderen Webservern betrieben werden.
Zur Verwaltung der Nutzer wird standardmäßig die Datenbank PostgreSQL eingesetzt.
Auf Basis der oben beschriebenen Technologien wurde in der Datenverarbeitungszentrum
Mecklenburg-Vorpommern GmbH GAIA-MVprofessional entwickelt und ermöglicht somit
dem Nutzer, die Geodaten auf komfortable Weise zu benutzen. Sie wird beim ersten Aufruf
der Applikation in Form von JavaScript vom Server in den Browser des Clients heruntergeladen. Aus Gründen der Sicherheit werden keine Plug-Ins, Java-Applets und Active-Controls
verwendet.
In den nachfolgenden Abschnitten werden die benötigten Schritte, die ein Nutzer zur Abfrage
eines Höhenprofils in GAIA-MVprofessional vollziehen muss, beschrieben.
Seite 15 von 60
3 GAIA-MV
3.2 GAIA-MVprofessional
Der Geodatenviewer GAIA-MVprofessional ist in der aktuellen Version 3.3 vorhanden. Diese
Version unterstützt alle aktuellen Versionen der üblichen Browser (Internet Explorer, Mozilla/
Firefox, Opera, Safari und Chrome). Auch eine Bedienung von GAIA-MV per Touchscreen
(zum Beispiel für Tablets) ist möglich.
GAIA-MVprofessional unterstützt mit umfangreichen Funktionalitäten, bis hin zum Erfassen
und Editieren von Geometrie und Attributen, die Lösung komplizierter Aufgaben. Die Aktualisierung der Geodaten übernimmt das GAIA-MVdatacenter. Über einen Browser greifen alle
Nutzer auf die WebGIS-Anwendungen zu. GAIA-MV wird weiterhin für Fachanwendungen
im Intranet und von Behörden oder Unternehmen eingesetzt. Nicht alle Funktionen stehen zur
freien Verfügung für alle Nutzer bereit. Einige Geodatenbestände und Geowebdienste sind
nur für bestimmte Nutzergruppen verfügbar und daher ist für diese eine Registrierung erforderlich.
Für die Abfrage und Erstellung von Höhenprofilen ist dies nicht notwendig und somit kann
jeder Nutzer diese Funktionalitäten frei verwenden.
Seite 16 von 60
3 GAIA-MV
3.3 Abfrage und Darstellung von Höhenprofilen in GAIA-MVprofessional
Die folgenden Abschnitte beschreiben die Funktionalitäten der Höhenprofilabfrage sowie der
Schummerungs- und Höhenliniendarstellung von GAIA-MVprofessional.
GAIA-MV ist fester Bestandteil des GeoPortals Mecklenburg-Vorpommern. GAIAMVprofessional kann über das Geoportal (www.geoportal-mv.de) erreicht werden.
Abbildung 04 Startseite GAIA-MVprofessional
Auf der linken Seite in der Abbildung 4 „Startseite GAIA-MVprofessional“ sind die zurzeit
zur Verfügung stehenden Themen dargestellt. Für die Höhenprofilabfrage muss ein zusätzliches weiteres Thema hinzugefügt werden, dies ist mit Hilfe des Themenmanagers möglich.
3.3.1 Themenmanager
Um das Höhenprofil abfragen zu können, muss als erstes das Thema „Gelände MV“ hinzugefügt werden. Dazu können auf der linken Seite mit Hilfe des Buttons,
der sich unter dem
Reiter „Thema“ befindet, weitere Themen ergänzt werden, wie auch das benötigte Thema
„Gelände MV“.
In dem neuen Fenster muss das Thema „Gelände MV“ von der linken Seite der verfügbaren
Themen (Quelle) auf die rechte Seite der genutzten Themen (Ziel) gezogen werden (Abbildung 5 „GAIA-MVprofessional Themen hinzufügen“).
Seite 17 von 60
3 GAIA-MV
Abbildung 05 GAIA-MVprofessional Themen hinzufügen
Die Bestätigung erfolgt durch das Klicken auf den Button „Übernehmen“. Nachdem das
Thema erfolgreich bei den verfügbaren Themen erscheint, kann mit der Abfrage begonnen
werden. Die Abfrage des Höhenprofils ist möglich, wenn vor dem Thema „Geländehöhe/profil“ der Kreis aktiviert wird. Wenn kein bestimmtes Thema ausgewählt wurde, werden
alle möglichen Themen abgefragt. In Abbildung 6 „Abfrage aktivieren“ ist nur die Abfrage
für ein Geländeprofil aktiviert.
Abbildung 06 Abfrage aktivieren
Nachdem nun die Abfrage für das Gelände aktiviert ist, kann mit dem Zeichnen der Geometrieobjekte auf der Karte begonnen werden.
Seite 18 von 60
3 GAIA-MV
3.3.2 Karteikarte „Abfrage“
Zum Zeichnen der Geometrieobjekte ist auf die Karteikarte „Abfragen“ zu klicken. Dort ist
im Anschluss das gewünschte Geometrieobjekt auszuwählen (Tabelle 1 „Abfrage Geometrieobjekte“). Mithilfe der Funktionen können Geodaten inhaltlich und räumlich abgefragt werden. Alle Symbole zur Abfrage enthalten ein „i“ im Schaltknopf.
Symbol
Definition
Abfrage per Punkt
Abfrage per Polylinie
Abfrage per Rechteck
Abfrage per Polygon
Abfrage per Kreis
Abfrage mit ausgewählten Zeichenobjekten starten
Tabelle 01 Abfrage Geometrieobjekte
Nach Ausführen der Abfrage wird das Ergebnis in einem neuen Fenster geöffnet.
Genauso gut kann auch eine bereits gezeichnete Linie oder Punkt in der Karte noch abgefragt
werden.
3.3.3 Karteikarte „Messen und Zeichnen“
Die Geometrieobjekte Punkt, Linie, Rechteck, Polylinie oder Kreis lassen sich bei GAIAMVprofessional über den Reiter „Messen und Zeichnen“ auf der Karte zeichnen. Die Karteikarte „Messen und Zeichnen“ enthält eine Reihe von Schaltknöpfen mit Zeichen- und Editierfunktionen.
Abbildung 07 Karteireiter „Messen und Zeichnen“
Die Nutzer können die aufgenommen Koordinaten von ihrer tatsächlich gefahrenen Strecke in
GAIA-MVprofessional übertragen. Dazu müssen die Eigenschaften des Objekts bearbeitet
werden. Dies kann durch Doppelklick auf das Zeichenobjekt erfolgen oder über die rechte
Maustaste und dem Menüpunkt „Eigenschaften“ aufgerufen werden. Der Featuredialog (Abbildung 8) besteht aus fünf Karteireitern: Ausgestaltung, Geometrie I, Geometrie II, Sachdaten und Beschriftung.
Seite 19 von 60
3 GAIA-MV
Unter Geometrie I wird eine Koordinatenliste angezeigt. Die Liste kann verändert werden
durch Einfügen, Löschen oder Ändern der Stützpunkte.
Abbildung 08 Karteireiter Geometrie I - Koordinaten einfügen
Mithilfe der Funktionen können Geodaten räumlich wie auch inhaltlich abgefragt werden. Die
Objekte sind dann einzeln auf der Karte durch Klicken des
Symbols, das unter dem Reiter
„Abfrage“ zu finden ist, abzufragen (siehe dazu letzte Zeile in der Tabelle 1 „Abfrage Geometrieobjekte“).
3.3.4 Beispielstrecke in Schwerin
Als Beispiel wurde die Abfrage einer Teilstraßenbahnstrecke in Schwerin der Straßenbahnlinie 2 zwischen den beiden Haltestellen Büdnerstraße und Friesensportplatz gewählt. In dem
Geländeprofil Abbildung 9 „Luftbild und Geländeprofil der Beispielstrecke“ ist deutlich der
Anstieg des Fliederbergs zu erkennen. Diese Strecke wird hinsichtlich der Analysemöglichkeiten eines Höhenprofils auch später im Kapitel 6 weiter verwendet.
Mithilfe der Maus kann auf der Karte entlang des Geländeprofils „gefahren“ werden und parallel dazu wird der dazugehörige Punkt auf der Linie angezeigt, sodass nachvollzogen werden kann, wo sich die entsprechende Höhe befindet. Aus dem Geländeprofil können weitere
Informationen gewonnen werden. Dabei wird horizontal die Länge der Strecke dargestellt und
vertikal die Höhe abgelesen. Unterhalb der Grafik befindet sich eine Tabelle. Diese enthält die
Werte zum höchsten und tiefsten Punkt, die Anzahl der Höhenpunkte, den Punktabstand, die
DGM Zellengröße und die Profillänge.
Seite 20 von 60
3 GAIA-MV
Abbildung 09 Luftbild und Geländeprofil der Beispielstrecke
Das Geländeprofil kann zusätzlich auch als Tabelle dargestellt werden (Abbildung 10 „Tabelle des Geländeprofils“). Die Tabelle beinhaltet die x- und y- Koordinaten der Punkte und die
entsprechende Höhe in Meter. Diese kann auch im Excel-Format abgespeichert werden und
anschließend beliebig weiter bearbeitet werden.
Abbildung 10 Tabelle des Geländeprofils
Die Geländehöhen in Meter beziehen sich auf den Pegel in Amsterdam. Diese Höhenangaben
werden in Deutschland als Höhen über Normalhöhennull (NHN) bezeichnet und sind Normalhöhen im System des Deutschen Haupthöhennetzes 1992 (DHHN92).
3.3.5 Schummerungs- und Höhenliniendarstellung
Wie bereits im Kapitel 2 „Nutzung von DGM-Daten“ dargelegt, lassen sich aus den Daten des
Geländemodells Höhenlinienkarten und Schummerungen ableiten. Im Hauptkartenfenster von
GAIA-MVprofessional können die Schummerungs- und Höhenliniendarstellungen zur weiteren Veranschaulichung angezeigt werden.
„Eine Schummerung ist die plastische Wiedergabe der Geländeformen in einem Graustufenbild. Der räumliche Eindruck entsteht durch die Beleuchtung mit einer imaginären Lichtquelle.“ [BK14] Die imaginäre Lichtquelle befindet sich im Nord Westen.
Seite 21 von 60
3 GAIA-MV
Die Schummerungsdarstellung bei GAIA-MVprofessional sieht wie folgt aus:
Abbildung 11 Schummerungsdarstellung
Die Abbildung 11 „Schummerungsdarstellung“ zeigt die Umgebung des Schweriner Schlosses mit einem Teil des Schlossgartens, den Burgsee und den Schweriner Innensee.
Die Höhenlinie ist eine „Schnittlinie einer Objektfläche (z.B. Geländeoberfläche, Oberfläche
einer geologischen Schicht) mit einer Fläche konstanter Höhe über oder unter einer Bezugsfläche. Der Höhenunterschied zweier benachbart dargestellten Höhenlinien ist die Höhenstufe. Auch Höhenkurve bezeichnet, das heißt Verbindungslinie benachbarter Geländepunkte
gleicher Höhe über oder unter einer Bezugsfläche.“ [UR14]
Für dasselbe Gebiet, wie es auch bei der Schummerungsdarstellung in Abbildung 11 gezeigt
wird, sieht die Höhenliniendarstellung wie folgt aus:
Abbildung 12 Höhenliniendarstellung
Seite 22 von 60
4 Digitales Geländemodell (DGM)
4 Digitales Geländemodell (DGM)
In diesem Kapitel geht es um das Digitale Geländemodell; von der Aufnahme der DGMDaten, die seit dem Jahr 2004 im Amt für Geoinformation, Vermessungs- und Katasterwesen
zur Herstellung der DGM durch das Verfahren Airborne Laserscanning, bis hin zu der Modellierung der DGM nach dem Objektkatalog der Arbeitsgemeinschaft der Vermessungsverwaltungen der Länder der Bundesrepublik Deutschland (ADV) und schließlich um die Datenweitergabe vom LAiV zum DVZ. Die Arbeitsgemeinschaft ADV definiert das Digitale Geländemodell wie folgt:
„Datenbestand zur höhenmäßigen Beschreibung des Geländes. Es besteht aus regelmäßigen
oder unregelmäßigen verteilten Geländepunkten, die die Höhenstruktur des Geländes hinreichend repräsentieren - optional ergänzt durch morphologische Strukturelemente (z.B. Geländekanten, markante Höhenpunkte).“ [Wiki14]
4.1 Nutzung von Rohdaten aus dem Airborne Laserscanning (ALS)
„Das Airborne Laserscanning („luftgestützte Laserscanning“) ist ein modernes Verfahren zur
großflächigen Erfassung von Höheninformationen der Erdoberfläche.“ [LAiV09]
Die Erdoberfläche wird mit einem Laserscanner aus einem Flugzeug heraus flächenhaft abgetastet, wie in der Abbildung 13 „Grundprinzip des Airborne Laserscanning“ dargestellt wird.
Mit dem Laserscanner werden Laserimpulse ausgesendet. Diese Impulse werden von der Geländeoberfläche oder auf ihren befindlichen Objekten, zum Beispiel Gebäude, gestreut. Die
Objekte werden reflektiert und durch einen entsprechenden Sensor im Laserscanner wieder
empfangen.
Abbildung 13 Grundprinzip des Airborne Laserscanning [LAIV09]
Seite 23 von 60
4 Digitales Geländemodell (DGM)
Die Position und die Ausrichtung des Laserscanners werden dabei ständig mittels GNSSEmpfänger und einem Inertial-Navigationssystem (INS) bestimmt. Inwiefern die Positionierung des Flugzeugs während der Aufnahme über der Erdoberfläche erfolgt, ist in der Abbildung 14 „Bodenpunkt und Nichtbodenpunkt“ sichtbar.
Als GNSS-Empfänger wird zum Beispiel das GPS (Global Positionierung System zu Deutsch
Globales Positionsbestimmungssystem) verwendet. Das globale Navigationssatellitensystem,
kurz GNSS, ist ein System zur Positionsbestimmung und Navigation auf der Erde und in der
Luft, durch den Empfang der Signale von Navigationssatelliten und Pseudoliten. Ein
Pseudolit ist dabei ein terrestrischer Sender, der Signale aussendet, die die Signale eines Satelliten nachahmen. Durch Pseudoliten wird lokal die Messgenauigkeit von satellitengestützten
Navigationssystem erhöht. Das GPS-Navigationssystem wird auch bei Airborne Laserscanner
benutzt.
Aus den gewonnenen Messungen werden dreidimensionale Koordinaten (x, y, z) für jeden
Reflexionspunkt berechnet. Beim Airborne Laserscanning werden zwei Arten von Reflexionen von Objekten registriert. Die Objekte auf der Geländeoberfläche sind entweder sogenannte „Klassifizierte Nichtbodenpunkte“ oder „Klassifizierte Bodenpunkte“. Die Bodenpunkte
sind Reflexionen von der Geländeoberfläche. Der Unterschied zwischen den beiden Arten
von Punkten ist in der folgenden Abbildung gut zu erkennen:
Abbildung 14 Bodenpunkt und Nichtbodenpunkt[LAIV09]
Die Höheninformation wird hierbei mit einer Genauigkeit von ± 0,2 m erfasst.
Die hochauflösenden Digitalen Geländemodelle ergeben sich aus den „Klassifizierten Bodenpunkten“.
Aus den gesamten Messungen von „Klassifizierten Bodenpunkten“ und „Klassifizierten
Nichtbodenpunkten“ lassen sich Digitale Oberflächenmodelle (DOM) ableiten. Der Unterschied zum DGM ist, dass die DOM neben den Geländehöhen auch Objekthöhen enthalten.
Sie beinhalten keine Informationen über Vegetation (Bäume) und Bauwerke (Häuser).
Seite 24 von 60
4 Digitales Geländemodell (DGM)
4.2 ATKIS-Digitale Geländemodelle
Digitale Geländemodelle sind eine Komponente des, von der Arbeitsgemeinschaft ADV, aufgebauten und aktuell fortgeführten bundeseinheitlichen Geobasisinformationssystem ATKIS.
ATKIS steht für das Amtliche Topografische-Kartografische Informationssystem und stellt
für unterschiedliche Nutzungsmöglichkeiten Basisinformationen über Gelände- sowie Erscheinungsformen und Sachverhalte an der Erdoberfläche bereit. Neben dem DGM umfasst
ATKIS noch die folgenden Komponenten:
→ Digitale Landschaftsmodelle (DLM)
→ Digitale Topografische Karten (DTK)
→ Digitale Orthophotos (DOP)
Das DGM beschreibt die Geländeoberfläche mit den räumlichen Koordinaten einer repräsentativen Menge von Geländepunkten. Die Höheninformationen sind maßstabsunabhängig und
datenverarbeitungsgerecht vorgehalten. Der Erdkörper und die Wasseroberfläche auf der einen Seite und die Luft auf der anderen Seite bilden die Grenzfläche. Die Geländeoberfläche
wird dabei durch eine Punktmenge (x,y,z-Werte) in Form von regelmäßig verteilten Höhenpunkten modelliert. Neben diesen Punkten (DGM-Gitter) kann das DGM Strukturelemente in
Form von Geländelinien und besonderen Geländepunkten enthalten, wenn diese für die individuelle Genauigkeitsstufe zur Geländemodellierung erforderlich sind.
Die Namensgebung beruht auf der Gitterweite des DGM und wird wie folgt gebildet:
DGM<Gitterweite> Beispiel: DGM1 für ein DGM mit der Gitterweite 1Meter
Der Objektkatalog DGM, erstellt und herausgegeben von der Arbeitsgemeinschaft ADV, gilt
für die Modellarten DGM2, DGM5, DGM25, DGM50, DGM250 und DGM1000, die hinsichtlich Objektumfang und Modellierung identisch sind. Allerdings unterscheiden sie sich
hinsichtlich Erfassungskriterien und Qualitätsanforderungen. Zwischen den verschiedenen
Gitterweiten sind die Unterschiede in den einzelnen Qualitätsstufen eines DGMs in der farbcodierten Darstellung in der nachfolgenden Tabelle 2 ersichtlich.
dgm2
dgm5
dgm25
dgm100
Tabelle 02 Beispiele für die Präsentation des DGM farbcodierte Darstellung [LAiV09]
Seite 25 von 60
4 Digitales Geländemodell (DGM)
Zwischen dem DGM2 und DGM5 sind die Konturen kaum zu unterscheiden. Allerdings sind
im Vergleich der Gitterweite 2 Meter (DGM2) mit der Gitterweite 100 Meter (DGM100) die
Strukturen der Geländeoberfläche bei der DGM2 wesentlich detaillierter und aussagekräftiger.
Die Gitterweiten für 10 Meter, 25 Meter, 50 Meter, 250 Meter und 1000 Meter sind flächendeckend für die Bundesrepublik vorhanden. Das Bundesamt für Kartographie und Geodäsie
(BKG) führen die DGM250 und DGM1000 mit einer geringeren Qualitätsstufe; die Vermessungsverwaltungen der Länder dagegen die DGM1, DGM2 und DGM5 mit einer mittleren
und hohen Qualitätsstufe.
Das Produktangebot gliedert sich in sechs Qualitätsstufen:
Gitterweite
Höhengenauigkeit
DGM50
DGM25
DGM10
DGM5
DGM2
DGM1
50 m
25 m
10 m
5m
2m
1m
2,5-10 m 1,25-5 m 0,5-2 m 0,25-1 m 0,15-0,4 m 0,15-0,2 m
flächendeckend
Verfügbarkeit
teilweise
Tabelle 03 Produktangebot DGM [LAiV09]
Die Digitalen Geländemodelle mit einer größeren Gitterweite werden in der Regel aus dem
Digitalen Geländemodell mit der geringsten verfügbaren Gitterweite mittels Neuinterpolation
automatisiert abgeleitet.
Die DGM2 und DGM5 werden für die Herstellung oder Ableitung in anderen Bereichen verwendet. Das DGM2 ist ein hochgenaues DGM und wird in überflutungsgefährdeten Bereichen eingesetzt. Für die Herstellung von Orthofotos (DOP5) wird das DGM5 genutzt und
darüber hinaus auch zur Ableitung von Höhenlinien bei Digitalen Topografischen Kartenwerken ab dem Maßstab 1:5000.
4.3 Lage- und Höhenbezugssystem
Zu klären ist, welches Bezugsellipsoid verwendet wird und worauf sich die Höhen beziehen.
„Die DGM werden standardmäßig im Lagebezugssystem ETRS 89 (UTM-Abbildung, Zone
33) bereitgestellt. Die Höhen sind Normalhöhen im System DHHN92 bezogen auf den Amsterdamer Pegel (Höhen über NHN). Für jeden Punkt wird ein Qualitätscode festgelegt, in dem
die mittlere Höhengenauigkeit, die Erfassungsart und der Erfassungszeitpunkt enthalten sind.“
[LAiV09]
Seite 26 von 60
4 Digitales Geländemodell (DGM)
4.4 Datenabgabe vom LAiV und Vorstellung der Datensätze
Die DGM-Daten werden in Kacheln der Größe 2 x 2 Kilometer mit insgesamt 6300 Kacheln
bereitgestellt und vom LAiV an das DVZ übergeben. Der Kachelursprung ist die linke untere
Ecke; bezogen auf volle Kilometer-Werte. Die Rohdaten aus dem Airborne Laserscanning
werden im ASCII-Format abgegeben. Die (x,y,z)-Werte, die unregelmäßig im Raum verteilten Massenpunkte, sind im Höhenmodell bekannt.
Das Grundformat der Datenabgabe für DGM-Daten ist ein ASCII-Format mit Ost-, Nord- und
Höhenwert. Auf Anfrage können Qualitätsmerkmale wie Erfassungsart, Genauigkeit, Erfassungsdatum im ASCII-Format, ein Höhenbild (Grauwertcodierung der Höhen) im TIFFFormat oder eine Höhenliniendarstellung der abzugebenden Region im DXF-Format bereitgestellt werden. Bei einer alleinigen Abgabe von Ost-, Nord- und Höhenwert fällt beim DGM25
je 4 km²-Kachel ein Speicherbedarf von 0,25 Megabyte für das DGM-Gitter an. Beim DGM5
erhöht sich dieser Wert um den Faktor 25.
Vor dem Hintergrund des enormen Speicherbedarfs für das DGM mit einer Gitterweite von 5
Metern war die bisherige Speicherung der (x,y,z)-Daten in einer Datenbank im Vektorformat
nicht sinnvoll. Für die Speicherung von Geodaten im Rasterformat wird dagegen weniger
Speicherplatz für dieselbe Datenmenge benötigt. In dem nächsten Kapitel 5 „Varianten der
Speicherung“ wird genauer auf die Unterschiede zwischen der Vektor- und Rasterspeicherung
von Geodaten eingegangen.
Seite 27 von 60
5 Varianten der Speicherung
5 Varianten der Speicherung
Die Möglichkeiten der Speicherung von DGM-Daten in Vektor- und Rasterformat werden in
diesem Kapitel genauer erläutert. Dies geschieht unter dem Gesichtspunkt: Art der Speicherung von Geodaten in Datenbanken. Die Speicherung von großen Datenmengen ist in entsprechenden Datenbanken sinnvoll. Eines dieser Datenbanksysteme ist PostgreSQL.
Neben der Speicherung der Daten in PostgreSQL mit der Erweiterung PostGIS in Vektorformat wird als neue mögliche Alternative die Datenspeicherung im Rasterformat mit PostGIS
ab der Version 2.0 und das kommerzielle Produkt ERDAS APOLLO vorgestellt.
Zum einen werden Erläuterungen über die grundlegenden Datenstrukturen und Funktionsweisen des Systems getroffen und zum anderen die verschiedenen Möglichkeiten der Speicherung von Daten in einer Datenbank und diese auch später wieder zu laden.
5.1 PostgreSQL und PostGIS
PostgreSQL ist ein freies relationales Datenbankmanagementsystem. Dieses Datenbanksystem entstand 1986 an der Universität von Kalifornien in Berkeley unter dem Namen postgres.
Die ersten Versionen von PostGIS publizierte 2001 die Firma Refractions Research. 2006
wurde das inzwischen unabhängige PostGIS von dem Open Geospatial Consortium, kurz
OGC, zertifiziert.
Das OGC ist eine internationale Organisation, bestehend aus mehr als 25 Unternehmen, Behörden und Universitäten, die sich zum Ziel gesetzt haben, die Entwicklung raumbezogener
Informationsverarbeitung auf der Grundlage allgemeingültiger Standards festzulegen. PostGIS ist der Standard zur Verwaltung geografischer Daten, den sogenannten Geodaten.
Das Datenbanksystem PostGIS folgt dabei internationalen Standards wie der Simple Features
Specification for SQL, kurz SFSQL. Dies wiederum ist ein Dokument mit verschiedenen
Konzepten. Ein solches Konzept wäre die Unterstützung raumbezogener Daten in einem relationalen Datenbankmanagementsystem (RDBMS) wie PostgreSQL. Im Jahre 1997 veröffentlichte das Open Geospatial Consortium (OGC) die SFSQL.
Neben dem Standard SFSQL unterstützt PostgreSQL auch den Standard SQL/MM Spatial.
Dieser Standard ist die Umsetzung des Simple-Feature-Modells der OGC auf die Sprache SQ
und entspricht der ISO-Norm 19125-2 Simple Feature Access-SQL Option. SQL/ MM Spatial
ist eines von drei Ausprägungen von der OGC für Simple Features, die auf der Grundtechnologie des Simple-Feature-Models implementiert wurden.
Seite 28 von 60
5 Varianten der Speicherung
Abbildung 15 Datenmodell SQL/MM Spatial [TB14]
Das konzeptionelle Geodatenmodell bestimmt neben den fachbezogenen Strukturen, die einem Geoobjekt zugeordnet werden können auch deren möglichen Beziehungen und Eigenschaften. Dabei werden objektrelationale Datentypen festgelegt, die den Simple-FeatureStandard in SQL abbilden. Alle PostGIS-Funktionen haben das von SFSQL vorgeschriebene
Präfix ST_.
Ein weiterer Standard ist die ISO-Norm 19000. Die International Standards Organization
(ISO) veröffentlicht Standards, die von Branchen auf der ganzen Welt akzeptiert werden. Die
ISO 19000 beinhaltet nicht nur eine Norm, sondern umfasst eine Reihe von Standards für geografische Informationen:
→ 19113 Qualitätsparameter für Geodaten
→ 19114 Qualitätsbewertungsverfahren von digitalen geografischen Datensätzen
→ 19131 spezifiziert die Anforderungen der geografischen Daten-Produkte
→ 19138 Qualitätsbeurteilung
→ 19115/19139 Metadaten-Standard
Seite 29 von 60
5 Varianten der Speicherung
PostGIS unterliegt der General Public License (GPL). Durch diese Software-Lizenz werden
für Privatpersonen, Organisationen und Firmen entsprechende Freiheiten garantiert und zwar
die Software zu nutzen, verbreiten und ändern zu dürfen.
PostgreSQL nutzt dagegen die BSD License. Die Genehmigung zum Verwenden, Kopieren,
Ändern und Verteilen dieser Software und ihrer Dokumentation für jeden Zweck, ohne Gebühr und ohne schriftliche Vereinbarung, wird hiermit erteilt.
In den Anfängen speicherten geografische Informationssysteme (GIS) die Geodaten getrennt
von den dazugehörenden Sachdaten. Die Geodaten wurden bei diesem Ansatz als spezialisierte Dateistrukturen verwaltet, während die Verwaltung der Sachdaten eine relationale Datenbank übernahm. Ein heute noch weit verbreiteter Vertreter dieser Technologie ist das sogenannte Shapefile der Firma ESRI.
Eine Geodatenbank verwaltet Orte und Beziehungen geokodierter Objekte. Die PostgreSQLErweiterung PostGIS ergänzt die Datenbank um spezifische, für geometrische Objekte optimierte Datentypen. Die geografischen Objekte lassen sich in einem Raster oder als Vektoren
abbilden. PostGIS kann mit räumlichen Bezugssystemen umgehen, kennt spezielle Funktionen und Indizes zur Manipulation und Abfrage der Daten über einen erweiterten SQLBefehlssatz bis hin zu komplexen Simulationsanalysen.
PostGIS wird selten als eigenständige Lösung eingesetzt. Erst durch das Hinzufügen von anderen Komponenten wird die volle Leistungsfähigkeit erreicht, wie dies auch bei der Gesamtanwendung GAIA-MVprofessional der Fall ist.
Zum einen ist dies die PostgreSQL Server-Programmierung. PostgreSQL bietet unterschiedliche Möglichkeiten, den Datenbankserver mit anwendungsbezogener Funktionalität, wie zum
Beispiel SQL-Funktionen, zu erweitern.
Zum anderen erfolgt die Visualisierung der Geodaten durch den UMN-MapServer. Dieser
kann PostGIS-Vektor- und Rasterdaten zu einer Rasterkarte aufbereiten. Die Auslieferung
geschieht über die genormte Web-Mapping-Service-API (WMS). Der Geoserver ist zusätzlich in der Lage, Vektordaten auszuliefern (Web Feature Service, WFS). Zusätzlich erlaubt
der Geoserver Geodaten mit dem Protokoll Transactional WFS (WFS-T) zu manipulieren,
ohne dabei direkt auf die Datenbank zuzugreifen.
Zudem wird für die kartografische Visualisierung der Daten Desktop-GIS verwendet. Die
meisten Open-Source-Desktop-GIS sind in der Lage PostGIS direkt anzusprechen, die Geodaten grafisch aufzubereiten und zu bearbeiten. Dazu gehören die Programme Quantum GIS,
GRASS, OpenJump und GvSIG.
Seite 30 von 60
5 Varianten der Speicherung
5.2 Räumliche Indizes
In diesem Abschnitt soll zunächst erläutert werden, wie Indexe in PostgreSQL eingesetzt
werden können und zudem, welcher Index für die Verwendung von geometrischen Datentypen interessant ist, der dann auch bei der Speicherung der Raster- und Vektordaten für das
Höhenprofil angelegt wird.
PostgreSQL unterstützt vier Indextypen. Die verfügbaren Indextypen sind folgende:
→ B-tree (intern »btree«)
→ Hash (intern »hash«)
→ GiST (intern »gist«)
→ GIN (intern »gin«)
Indizes in Datenbanksystemen sind Datenstrukturen. Jeder dieser Indextypen verwendet intern einen anderen Algorithmus, der ihn für verschiedene Arten von Anfragen geeignet macht.
Man kann eine Spalte auch mehrfach mit verschiedenen Typen indizieren, wenn verschiedene
Indextypen angebracht sind. Allerdings wird dies eher selten verwendet.
Indizes sollen die Abfragen über indizierte Daten beschleunigen. Dies wird grundlegend dadurch erreicht, dass ein großer Teil der betroffenen Wertebereiche eines Feldes im Vorhinein
ausgeschlossen werden kann. Die Überprüfung auf Übereinstimmung mit dem eigentlichen
Abfragekriterium ist nicht erforderlich. PostgreSQL verwendet üblicherweise „B-tree“ Indizes. Ein B-tree ist eine zweidimensionale hierarchische Datenstruktur. Diese Datenstruktur
besteht aus einer Menge von Knoten und Kanten mit einem ausgezeichneten Knoten (Wurzel). Die Attributwerte werden entlang eines Pfades, der eine Folge von unterschiedlichen
Knoten, die durch Kanten miteinander verbunden sind, geordnet. Daraus werden Suchbäume
erstellt, die eine effizientere Suche ermöglichen. Ein Beispiel dafür wäre der Eintrag in einem
Telefonverzeichnis.
Die Verwendung normaler „b-tree“ Indizes auf nicht-räumliche Attribute einer PostGIS Tabelle ist möglich, wenn diese Attribute entsprechend oft Gegenstand von Abfragen sind, ansonsten ist diese Art von Index für räumliche Attribute nicht sinnvoll.
Von den vier oben aufgelisteten Indextypen stellt PostGIS den Index GiST für räumliche Attribute einsetzbaren Index von PostgreSQL zur Verfügung.
„GiST steht für Generalized Search Tree und ist eher als Infrastruktur für die Erstellung verschiedener anwendungsspezifischer Indextypen zu verstehen. Das eigentliche Verhalten des
Seite 31 von 60
5 Varianten der Speicherung
Index wird bestimmt durch die Datentypen, die Operatoren und die sogenannten Operatorklassen, die sie zusammenfügen.“ [PE07]
Die Erstellung des räumlichen Index GiST kann im Befehl CREATE INDEX angegeben werden:
CREATE INDEX Indexname ON table USING GIST (geometriefeld);
In der Praxis werden GiST-Indexe neben der Verwendung für geometrische Datentypen
(Bounding-Box-Suchen) für PostGIS-Tabellen auch für die Volltextsuche sowie diverser anderer Module, die von der Art her eher nichtskalare Datentypen oder Suchoptionen sind, verwendet.
Für Geoobjekte wird die Bounding-Box-Suche angewendet, sodass die garantiert nicht bedeutsamen Geometrien mithilfe von Algorithmen ausgeschlossen werden können. Des Weiteren führt dieses Verfahren zu einer Verkleinerung der Indizes, da bei der Verwendung von
Bounding-Boxen die Speicherung von nur noch zwei Koordinatenpaaren notwendig ist. Für
die Abfrage räumlicher Beziehungen anhand der Bounding-Boxen sind in PostGIS eigens
Operatoren vorhanden, die unter anderem eingesetzt werden, um Abfragen durch Indexnutzung zu beschleunigen. Zusätzlich beinhalten viele der Funktionen zur Prüfung der räumlichen Beziehung zwischen Objekten implizit Abfragen bezüglich der Überlappung der Bounding-Boxen. Dadurch kann oft auf den expliziten Einsatz von räumlichen Operatoren verzichtet werden.
Grundsätzlich können Indizes lesende Abfragen erheblich beschleunigen, gleichzeitig müssen
sie aber bei jeder Änderung an einem indizierten Datenfeld aktualisiert werden, was wiederum Ressourcen in Anspruch nimmt.
Prinzipiell erfolgt die Entscheidung einer Indizierung eines Feldes danach, ob oft lesend abgefragt wird oder keine häufige Veränderung oder Ergänzung der Daten vorgenommen wird.
Die Höhenprofilabfrage kann sehr oft erfolgen, das hängt davon ab, wie viele Nutzer diese
Möglichkeit in GAIA-MVprofessional wahrnehmen.
Die Daten in der Datenbank werden nur dann verändert, wenn nach einer erneuten ALSBefliegung (Airborne Laserscanning) neue DGM-Daten vorliegen. Somit erfüllen die Tabellen die Kriterien für eine Indizierung.
Der GiST-Index wurde bei der Speicherung der beiden Tabellen dgmmv_dgm25 und
dgmmv_dgm100 in Vektorform bereits eingesetzt.
Bei der Speicherung der drei Tabellen dgmmv_dgm5, dgmmv_dgm25 und dgmmv_dgm100
im Rasterformat wurde auch wieder darauf geachtet, dass der GiST-Index angelegt wurde.
Seite 32 von 60
5 Varianten der Speicherung
5.3 Vektorverarbeitung mit PostGIS
Für die Tabellendefinition in PostGIS stehen zwei unterschiedliche Datentypen (geometry
und geography) für die Beschreibung von Vektordaten zur Verfügung. Die beiden abstrakten
Typen repräsentieren unterschiedliche Arten von Koordinaten. Der Datentyp geometry stellt
Punkte mit Koordinaten in einem kartesischen Koordinatensystem dar. Dagegen wird der Datentyp geography bei sphärischen Koordinaten, zum Beispiel bei der Verwendung von Längen- und Breitengrad, genutzt.
Der Vorteil des Geometry-Typs ist die bereits frühe Unterstützung seit Beginn der PostGISEntwicklung und somit stehen mehr Funktionen zur Verfügung als für den Geography-Typ.
Zudem greifen die Funktionen, die mit Geometry-Typ Daten arbeiten, auf die Geometry Engine Open Source Bibliothek zurück. Dies ist eine freie Programmbibliothek zur Handhabung
von 2D-Geometrien.
Auch ist die Performance der räumlichen Funktionen besser als beim Geography-Typ, weil
die Berechnungen beim Geometry-Typ aufgrund der kartesischen Mathematik einfacher sind.
Grundsätzlich stehen alle Geometrietypen, sowohl für Koordinaten im Geometry-, als auch im
Geography-Datentyp zur Verfügung. In der Abbildung 15 „Datenmodell SQL/MM Spatial“
sind, die als konkrete Vektor-Basistypen von der SFSQL definierten, Punkt (ST_Point), Linienzug (ST_Curve) und Fläche (ST_Surface) dargestellt. Zusätzlich definiert SFSQL in dem
Datenmodell SQL/MM Spatial eine Sammlung von Datenstrukturen, zum Beispiel
MULIPOINT,
MULTISTRING
und
MULTIPOLYGON,
die
zu
der
Klasse
ST_GeomCollection gehören.
Aufgrund dieser aufgelisteten Vorteile des Datentyps Geometry und weil sich die räumliche
Ausdehnung für den Geodatenviewer GAIA-MVprofessional nur auf das Gebiet auf Mecklenburg-Vorpommern bezieht und die amtlichen Geodaten für Mecklenburg-Vorpommern in
dem regionalen Projektionen UTM Zone 33N liegen, wird der Datentyp Geometry für die
Speicherung von Datenbeständen für die Vektorverarbeitung verwendet.
Seite 33 von 60
5 Varianten der Speicherung
5.4 Rasterverarbeitung mit PostGIS
Räumliche Objekte lassen sich auch auf ein Raster projizieren. Auch hier wird das OpenSource Datenbanksystem PostgreSQL verwendet. Nur wird diesmal die Erweiterung PostGIS
ab der Version 2.0 genutzt. Diese Version steht seit dem Jahr 2012 zur Verfügung. Der entsprechende Raster-Datentyp ist ab dem Release 2.0 direkt in PostGIS integriert. Ab dieser
Version bestand somit die verbesserte Möglichkeit, Raster abzuspeichern.
Im Jahr 2009 gab es den ersten Prototypen von WKTRaster, den Vorläufer des heutigen
PostGIS-Rasters. Im Vergleich zu dem Oracle Georaster ist die Verarbeitung einfacher, weil
bei PostGIS nur ein Datentyp notwendig ist und im Gegensatz dazu bei Oracle die beiden
Datentypen SDO_GEORASTER und SDO_RASTER vorhanden sind. Dies erleichtert das Arbeiten mit Rastern in der Datenbank PostgreSQL erheblich.
Die Daten in der Datenbank werden somit mit dem Datentyp raster abgespeichert. Genau wie
bei der Vektorablage können auch bei der Rasterspeicherung ein räumlicher Index angelegt
werden. Das PostGIS-Raster enthält Plugins für die GIS-Anwendung Quantum GIS und
gvSIG. Zudem ist der Datentyp so ähnlich wie der PostGIS-Vektor geometry. Die Möglichkeit der Raster-/Vektor-Konvertierung ist durch folgende Befehle möglich:
ST_DumpToPolygons(raster)
→ GEOMETRY
ST_AsRaster(geometry, pixelsize) → RASTER
Ab der Version PostGIS 2.0 wurden weitere rasterbezogene Funktionen hinzugefügt, um eine
verbesserte Rasterverarbeitung zu ermöglichen. Diese erleichtern die Abfrage von Rasterdaten. Die Funktion ST_Intersection(); die erst nach der Einführung von PostGIS 2.0 eine Verschneidung von Rastern erlaubt, wogegen vorher nur eine Verschneidung innerhalb von Vektoren möglich war. Mithilfe der Verschneidungsfunktion ST_Intersection() ist die Verschneidung von Raster- und Geometriedaten möglich. Diese Funktion kann auch eine wichtige Rolle bei der Abfrage von Höhenprofilen spielen.
Ein anderer Datentyp, der Rasterdaten unterstützt, ist der spezielle Datentyp geomval. Dieser
Datentyp ist eine Verbindung bestehend aus einem Geometrieobjekt in dem Feld geom und
aus dem Feld val. Das Feld val beinhaltet einen Wert mit doppelter Genauigkeit, der dem Pixelwert an einer bestimmten Stelle in einem Raster-Band zugewiesen wird.
Dieser Datentyp kommt auch bei der Umsetzung zur Ermittlung der Höhenwerte entlang einer
Linie in dem Abschnitt 6.2.3 bei dem Verfahren-Sampling vor.
Seite 34 von 60
5 Varianten der Speicherung
5.5 ERDAS APOLLO
Nachdem das aktuell verwendete Datenbanksystem PostgreSQL und die Erweiterung PostGIS
ab der Version 2.0 genauer vorgestellt wurde, wird nun noch näher auf ein kommerzielles
Produkt eingegangen. Die Firma Intergraph stellt die Geospatial Produktlinie vor. Die Produkte decken verschiedene Bereiche in der Photogrammmetrie, der Fernerkundung, der Geoinformationssysteme ab und beinhalten überdies mehrere Server. Für die Speicherung der
Geodaten wie Vektor, Georaster oder auch DGM-Daten steht der Server ERDAS APOLLO
zur Verfügung. „ERDAS APOLLO ist ein umfassendes System um Geodaten zu verwalten,
zu analysieren und bereit zu stellen.“[EA13] Für Firmen besteht somit die Möglichkeit, die
entsprechenden großen Datenmengen von Geodaten mittels automatisierten Prozessen zu analysieren und die Daten per Internet zu bearbeiten.
Mit ERDAS APOLLO ist eine schnelle Verteilung von Raster- und Bilderdaten möglich und
unterstützt das Protokoll mit dem ultraschnellen Streaming (ECWP). „Das hochperformante
Streamingprotokoll ECWP erlaubt es, mehr als 5.000 Clients zu bedienen – nur mit einem
Server.“[EA13] Die Integration von ERDAS APOLLO in GIS-Umgebungen ist möglich.
Dort, wo ECWP in Softwareumgebungen nicht unterstützt wird, können auch andere Plugins
(ArcGIS oder AutoCAD Plugins) verwendet werden. ERDAS APOLLO unterstützt die Standards von ESRIs GeoService Protokoll und OpenGIS Web Map Service Spezifikationen. Daneben implementiert ERDAS APOLLO zum Beispiel Web Mapping Service (WMS) und
Web Map Tile Services (WMTS).
Neben dem ERDAS APOLLO Essentials, dies ist die erste Funktionsstufe, sind zwei weitere
Funktionsstufen ERDAS APOLLO Advantage und ERDAS APOLLO Professional verfügbar. Die Stufen unterscheiden sich im Umfang ihrer Funktionen und Analysemöglichkeiten
für Geoprozesse und Geodaten.
Zu den Organisationen, die ERDAS APOLLO Advantage nutzen, „zählen Landesvermessungsämter, Organisationen für zivile Sicherheit und Katastrophenschutz, Einrichtungen der
Verteidigung sowie Behörden und Unternehmen aus dem Bereich der Land- und Forstwirtschaft, Exploration, Umweltmonitoring, Raumplanung, Verkehr, Telekommunikation oder
Infrastruktur-Planung.“[EA13]
Seite 35 von 60
5 Varianten der Speicherung
5.6 Umstellung auf PostGIS 2.0
Das kommerzielle Datenbanksystem ERDAS APOLLO spielt keine weitere Rolle mehr, da
aus finanzieller Sicht das Open-Source Datenbanksystem PostgreSQL mit dem Aufsatz PostGIS für den weiteren Einsatz mehr Sinn macht. Zudem wurden bereits positive Erfahrungen
mit PostgreSQL gemacht. Deswegen fiel die Entscheidung auf den Einsatz von PostGIS ab
der Version 2.0. Somit kann, nachdem die Version von PostGIS aktualisiert und die Tabellen
mit Rasterdaten erstellt wurden, mit dem Testen der Varianten zur Berechnung von Höhenprofilen begonnen werden.
Mit dem folgenden Befehl kann die aktuelle Version von PostGIS in Erfahrung gebracht werden:
SELECT PostGIS_full_version();
Vor dem Aktualisieren der neuen Version auf PostGIS 2.0 war die Version 1.5.0 vorhanden.
Die Umstellung auf eine höhere Version von PostgreSQL und der Erweiterung PostGIS erfordert keinen großen Aufwand. Nur die Einarbeitung in den neuen Datentyp raster sowie die
weitere Recherche der neuen Funktionen ist erforderlich.
Neben dem Aktualisieren der Version PostGIS ist die Speicherung der xyz-Daten in die Datenbank notwendig, wobei eine Spalte in der Tabelle den Datentyp raster haben muss.
Mit dem Programm Feature Manipulation Engine, kurz FME, wurde dies umgesetzt. FME ist
ein leistungsfähiges und flexibles Spatial ETL-Werkzeug für die professionelle und effiziente
Verarbeitung raumbezogener Daten. Spatial ETL-Werkzeuge sind benutzerdefinierte Geoverarbeitungswerkzeuge, mit denen Daten zwischen verschiedenen Datenmodellen und Dateiformaten konvertiert werden können. Ab FME 2013 besteht die Möglichkeit des Lesens und
Schreibens von Rasterdaten mit PostGIS.
Während dieser Routine werden aus den dgm5-Daten die Tabellen mit den Namen
dgmmv_dgm5, dgmmv_dgm25 und dgmmv_dgm100 erstellt und werden auch gleichzeitig
mit dem Index GiST und einer Spalte mit dem Datentyp rast in der Datenbank gespeichert.
Die Anpassung und Umstellung in GAIA-MVprofessional wird in dem Abschnitt 7.2.2
„GAIA-MVprofessional Umgebung“ erläutert.
Seite 36 von 60
6 Berechnung des Höhenprofils
6 Berechnung des Höhenprofils
In diesem Kapitel wird zum einen das aktuelle Verfahren zur Herstellung eines Höhenprofils
auf der Grundlage der Speicherung von Vektordaten dargestellt; zum anderen werden die geeigneten Möglichkeiten für eine sinnvolle Analyse für die Abfrage von Punkt und Linie vorgestellt. Dabei geht es darum, 2D-Geometrie, wie zum Beispiel ein Punkt oder eine Linie,
entlang des Digitalen Geländemodells zu drapieren und eine 3D-Geometrie (Höhenprofil) zu
erhalten. Zu der Linienabfrage werden drei verschiedene Strategien genauer vorgestellt. Dabei
variieren hauptsächlich die Anzahl der aufgenommenen Punkte und damit schließlich die Genauigkeit des Höhenprofils. Entscheidend ist auch die Wahl zur Ermittlung der Punkte. Dabei
gibt es verschiedene Verfahren zur räumlichen Interpolation und Modellierung von Flächen
im Raum.
Hierbei werden die drei Verfahren an der Strecke aus dem Abschnitt 3.2.1 „Beispielstrecke in
Schwerin“ getestet, um ihre Unterschiede noch deutlicher hervor zu heben.
Zum Schluss folgen eine Auswertung der drei Verfahren und eine Entscheidung, welches
Verfahren für GAIA-MVprofessional am besten geeignet ist.
6.1 Höhenprofilabfrage im Vektorformat
Für die räumliche Interpolation und Modellierung von Flächen im Raum bietet PostGIS verschiedene Funktionen leistungsfähiger Verfahren an.
Bei der Vektorverarbeitung wird das Höhenmodell mit dem Verfahren Triangulated Irregular
Network kurz TIN aufgebaut. TIN bedeutet Dreiecksvermaschung und hat die Form eines
irregulären Mosaiks. Dies ist die lückenlose und überlappungsfreie Überdeckung einer Ebene
durch Verwendung mehrerer Dreiecke. Dies wird verwendet, um zusammenhängende räumliche Daten zu repräsentieren, die auf einem Satz unregelmäßig verteilter Punkte zurückzuführen sind. TIN erlaubt dichte Informationen in komplexen Flächen und spärliche Informationen
in einfachen oder homogenen Flächen umzuwandeln.
Ein TIN, siehe Abbildung 16 „Triangulated Irregular Network“, wird im Digitalen Geländemodell (DGM) häufig als Methode zur Erstellung eines Höhenprofils aus Punktdaten im Vektormodell verwendet.
Ausgehend von wenigen, im Raum verteilten, Punkten wird ein TIN erstellt. Als Stützpunkte
des Höhenmodells werden die bereits vorhandenen gemessenen Punkte gewählt. Diese Punkte
verfügen über X- und Y- Koordinaten und einen Attributwert (Höhenwert). Die Höhenwerte
Seite 37 von 60
6 Berechnung des Höhenprofils
der Koordinatenpunkte werden nur punktuell in der Datenbank gespeichert. Die grauen Punkte in der Abbildung 16 werden so miteinander verbunden, dass sie Dreiecke bilden.
Abbildung 16 Triangulated Irregular Network
Durch das TIN wird eine Linie mit Start- und Endpunkt gezeichnet, für die ein Höhenprofil
erstellt werden soll. Eine schwarze Linie, wie in der Abbildung 16 ersichtlich, kann an Stellen
entlang verlaufen, wo keine Höhenwerte für einen Punkt vorhanden sind. An beliebiger Stelle
können innerhalb eines Dreiecks aus den vorhandenen Messwerten neue Punkte mit Höhenwerten interpoliert werden. Von den bekannten Höhenwerten z kann somit durch Interpolation
auf die unbekannten z-Höhenwerte geschlossen werden.
6.2 Profilabfrage einer Linie
Nachfolgend werden die drei verschiedenen Möglichkeiten, eine Linie entlang eines DGM zu
drapieren, vorgestellt und das Pro und Kontra der einzelnen Verfahren gegenübergestellt. Die
Strategien werden besonders hinsichtlich der Fragestellung, wie viele Punkte entlang der Linie aufzunehmen sind und wie der Abstand zwischen den Punkten für ein genaues Höhenprofil sein muss, aufgestellt. Wichtig dabei ist das Erreichen eines guten Gleichgewichtes. In dem
Zusammenhang werden die verwendeten PostGIS-Funktionen für jedes Verfahren vorgestellt.
Die Funktionen wurden dabei aus den Abfragen der Verfahren entnommen. Die Beschreibungen zu den dargestellten Funktionen wurden aus dem offiziellen Handbuch PostGIS in der
Version 2.1.2 entnommen.
Seite 38 von 60
6 Berechnung des Höhenprofils
6.2.1 Höhenprofil mit Geometrie- Auflösung
Bei diesem Verfahren wird ein Höhenwert pro markierten Punkt in der Karte ermittelt. Die
erfassten Höhenpunkte werden mit einer geraden Linie miteinander verbunden. Zwischen den
Punkten werden allerdings keine Erhebungen oder Senkungen im Gelände berücksichtigt. Das
so entstandene Höhenprofil könnte wie folgt aussehen:
Abbildung 17 Höhenprofil mit Geometrie-Auflösung [ML13]
Bei diesem Verfahren wird die ursprüngliche Anzahl an gesetzten Punkten beibehalten. Die
Funktion ST_DumpPoints(geom) gibt eine Folge von allen Punkten, die das Geometrieobjekt
besitzt, wieder. Der Parameter geom in Klammern ist dabei die übergebende Polylinie mit
einer Anzahl an befindlichen Punkten. Die Anzahl der gesetzten Punkte ist somit immer identisch mit der Ergebnisanzahl des Höhenprofils. Nur zu den Punkten werden auch die Höhenwerte ermittelt, was allerdings auch der große Nachteil hinsichtlich der Genauigkeit dieses
Höhenprofils ist.
Eine Menge an 3D-Informationen gehen bei diesem Verfahren verloren, da Sprünge zwischen
den Punkten gemacht werden. Das Höhenprofil zeigt nicht die korrekte Darstellung der Wirklichkeit. Dies wird besonders deutlich bei dem Vergleich der Abbildung 17 „Höhenprofil mit
Geometrie-Auflösung“ mit Abbildung 18 „Höhenprofil mit DGM-Auflösung“. Bei dem Verfahren mit Geometrie-Auflösung wird eine gerade ansteigende Linie zwischen den ersten beiden Punkten gezogen und jegliche Höhenanstiege oder Höhenabfälle, anders bei der DGMAuflösung, nicht berücksichtigt. Aus diesem Grund ist das Verfahren auch ungeeignet, da das
Höhenprofil die Realität zu sehr verfälscht.
Seite 39 von 60
6 Berechnung des Höhenprofils
6.2.2 Höhenprofil mit DGM- Auflösung
Bei diesem folgenden Verfahren wird ein anderes, detaillierteres Ergebnis erreicht, als bei der
zuvor erläuterten Strategie. Hier wird pro Zelle des Rasters ein Höhenwert ermittelt. Die
Schnittmenge für jede Rasterzelle zwischen dem Raster und dem Geometrieobjekt Linie wird
dabei durch die Funktion setoff geomval ST_Intersection(raster rast, geometry geom), die
eine Geometrie mit neu ermittelten x,y-Werten pro Zelle zurückgibt, erreicht. Dabei wird von
der Verschneidung betroffene Bereich zunächst vektorisiert, sodass für alle betroffenen Pixelwerte entstehen und dann mit der Geometrie verschnitten. Dadurch werden viel mehr
Höhenwerte bestimmt, die dann im Resultat ein sehr genaues Höhenprofil ergeben. Der große
Vorteil bei diesem Verfahren ist, dass die gesamte Geländeoberfläche erfasst wird. Innerhalb
der Linie zwischen den markierten Punkten werden Veränderungen im Gelände mit berücksichtigt.
Abbildung 18 Höhenprofil mit DGM-Auflösung [ML13]
Der Nachteil dabei ist, dass die Datenmenge sehr umfangreich sein kann und somit die Abfrage zu lange dauern könnte. Auch ist es eine Überlegung wert, ob wirklich alle Höhenpunkte
erforderlich sind. Hier stellt sich insbesondere die Frage, für welchen Zweck soll das Höhenprofil verwendet werden. Bei dem Beispiel mit der Richtfunkstrecke zwischen Parchim und
Ludwigslust ist ein genaues Höhenprofil nicht so entscheidend, da nicht jede kleine Erhebung
berücksichtigt werden muss. In diesem konkreten Fall war die höchste Erhebung ausschlaggebend.
Dagegen ist beim zweiten Beispiel jede Erhebung wichtig, da die kleinsten Anstiege oder
tiefere Täler für Schwerlasttransporte zur Weiterfahrt hinderlich sein können.
Im nächsten Verfahren wird dagegen die Datenmenge begrenzt durch die Angabe, die Linie in
regelmäßige Abschnitte zu teilen, und nur an diesen Punkten die Höhenwerte zu erfassen.
Seite 40 von 60
6 Berechnung des Höhenprofils
6.2.3 Auswahl an Punkten (Sampling)
Beim Sampling wird die Technik angewendet, nur eine bestimmte Anzahl an Messungen zu
erhalten, mit dem Ziel, eine befriedigende und ausreichende Repräsentation der Wirklichkeit
zu erreichen.
Durch die lineare Interpolation mit der Funktion
ST_AddMeasure (line.geom, 0, ST_Length (line.geom))
wird eine abgeleitete Geometrie zwischen dem Start- und Endpunkt der Linie wiedergegeben.
Die Strecke wird in eine bestimmte Anzahl von Punkten, mit gleichem Abstand zueinander,
geteilt, wie in der Abbildung 19 „Höhenprofil mit dem Verfahren Sampling“ umgesetzt. Pro
Abschnitt wird ein Höhenwert ermittelt. Das Höhenprofil ist dann zwar ungenauer als bei der
vorherigen Variante, aber dafür eine geringere Datenmenge vorhanden und somit auch eine
schnellere Abfrage möglich.
Der Vorteil bei diesem Verfahren ist, dass die Möglichkeit besteht, die Ergebnismenge selber
zu steuern und so eine resultierende Auflösung zu bekommen. Der Abstand zwischen den
Punkten wird durch die folgende Funktion ermittelt:
generate_series (start, stop, step);
Diese Funktion gibt eine Sammlung von Geometrieobjekten zwischen dem Startpunkt (start)
und dem Endpunkt (stop) der Linie wieder. Als step wird der Abstand zwischen den zu ermittelnden Punkten angegeben. Der Nachteil dabei liegt in der Schwierigkeit, eine gute Balance
je nach Ausmaß der Geometrie zu finden.
Abbildung 19 Höhenprofil mit dem Verfahren Sampling [ML13]
Die Berechnung der Schnittpunkte kann sehr rechenintensiv sein. In einem gitterbasierten
Geländemodell (Raster) werden daher die Höhenwerte zwischen Start- und Endpunkt mit Hilfe von Näherungsalgorithmen ermittelt.
Mit der folgenden Funktion werden entlang der Linie (line) die x,y-Werte in regelmäßigen
Abständen (i) abgefragt und gespeichert:
ST_LocateAlong(line, i);
Seite 41 von 60
6 Berechnung des Höhenprofils
Der Parameter i innerhalb der Funktion hat den Wert der berechneten Geometrie aus der
Funktion:
generate_series (start, stop, step);
Da jede Rasterzelle genau eine Höhenangabe hat, muss somit nur berechnet werden, in welcher Rasterzelle der betreffende Zwischenpunkt liegt. Die Überprüfung, ob die Sammlung
von Punkt-Geometrien (p.geom) in dem Raster (dgmmv_dgm25.rast) liegt, erfolgt mit folgender Funktion:
ST_Intersects (dgmmv_dgm25.rast, p.geom);
Die Prüfung durch ST_Intersects ermöglicht es, dem System eine schnellere Vorauswahl der
in Frage kommenden Punkt-Geometrien durchzuführen, bei der eventuell vorhandene räumliche Indizes für Geometrie und Raster genutzt werden können. Diese Funktion gibt im Ergebnis TRUE (wahre Aussage) oder FALSE (falsche Aussage) zurück. TRUE ist, wenn eine
Überschneidung zwischen der Linie (p.geom) und der konvexen Hülle der Rasterkachel
(dgmmv_dgm25.rast), die ebenfalls Polygone darstellen, vorliegt.
Abhängig von der Bereitstellung des Rasters und der Geometrie in der Funktion ST_Intersects
wird der Test entweder in der Rasterumgebung oder in der Geometrieumgebung berechnet. Ist
die Reihenfolge innerhalb der Funktion ST_Intersects(Raster, Geometrie), so erfolgt der Test
auf der Raster-Ebene. Die Geometrie wird dabei in ein Raster umgewandelt.
Wenn die Funktion ST_Intersects(Geometerie, Raster) in der Reihenfolge steht, ist der Test
auf der Geometrie-Ebene. Das Raster wird in Polygone umgewandelt.
Die Zusammenführung von Höhenwert (val) und Geometrie (p.geom) erfolgt durch die folgende Funktion:
ST_Value (dgmmv_dgm25.rast, 1, p.geom) AS val;
Jedes Rasterobjekt kann ein oder mehrere Bänder beinhalten, die ihrerseits wieder Pixelwerte
beinhalten. In diesem Fall beinhaltet das Band 1 die aneinander gereihten Höhenwerte. Die
Funktion gibt aus dem gewählten Band 1 den Höhenwert (val) eines geometrischen 2DPunktes (p.geom) wieder.
Die Abfrage endet mit der Ausgabe der berechneten x,y,z-Werte, wobei x und y auf keine
Nachkommastelle gerundet werden und der z-Wert auf eine Stelle nach dem Komma.
Seite 42 von 60
6 Berechnung des Höhenprofils
6.2.4 Analysemöglichkeiten anhand der Beispielstrecke
Als Beispiel dient hier wieder dieselbe Strecke, die bereits im Kapitel 3.2 „Die Benutzung in
GAIA-MVprofessional“ verwendet wurde. Zu dieser Strecke gibt es bereits die Abbildung 10
„Luftbild und Geländeprofil“. Die Strecke zwischen den beiden Straßenbahnhaltestellen
„Büdnerstraße“ und „Friesensportplatz“ umfasst insgesamt 595,5 Meter. Die Route befindet
sich innerhalb der beiden Blattschnitte 332605848 und 332605950. Mit vier Punkten wurde
die Route entlang der Lübecker Straße auf der Karte markiert und die Koordinaten der Punkte
konnten aus der nachfolgenden Tabelle entnommen werden.
Punkte
x
y
Punkt 1 (Haltestelle Büdnerstraße)
33260890,802
5950138,537
Punkt 2
33260990,534 5950105,687
Punkt 3
33261037,665 5950073,934
Punkt 4 (Haltestelle Friesensportplatz)
33261328,086 5949752,062
Tabelle 04 Koordinaten der Beispielstrecke
Die Tabelle 5 „Geländeprofil und Schummerungsdarstellung der Beispielstrecke“ dient zur
weiteren Veranschaulichung der bereits oben beschriebenen drei Varianten und soll die Unterschiede zwischen den Verfahren veranschaulichen. Bei der Schummerungsdarstellung wird
zudem die Strecke mit einer durchgezogenen Linie angezeigt, worauf die entsprechende Anzahl der erfassten Punkte drapiert sind.
PostGIS unterstützt die Speicherung und Manipulation von Geodaten. Die Visualisierung der
Daten (DGM_Shading) ist nicht möglich und deswegen erfolgte dies durch die freie DesktopGIS-Anwendung Quantum GIS.
Neben der Schummerungsdarstellung in der ersten Zeile der Tabelle 5 wird in der nächsten
Zeile zusätzlich das passende Geländeprofil für jedes Verfahren einzeln angezeigt.
Die drei Schummerungsdarstellungen und Geländeprofile weisen große Unterschiede in ihrer
Darstellung auf. Dies ist darauf zurückzuführen, dass bei den drei Verfahren eine unterschiedliche Anzahl von Punkten aufgenommen wird.
Bei dem Verfahren mit Geometrie-Auflösung werden, wie oben bereits beschrieben, nur die
Höhen der gesetzten Punkte ermittelt und dann durch eine gerade Linie miteinander verbunden. In diesem Fall markieren vier Punkte die Strecke. Zum einen ist das der Startpunkt bei
der Haltestelle „Büdnerstraße“, und zum anderen die zwei weiteren Punkte auf Grund der
Seite 43 von 60
6 Berechnung des Höhenprofils
Straßenkrümmung sowie zum Schluss der Endpunkt an der Haltestelle „Friesensportplatz“.
Genau diese vier Punkte sind deutlich bei der Schummerungsdarstellung der GeometrieAuflösung sichtbar.
Dagegen weisen die anderen beiden Verfahren wesentlich mehr als nur vier Punkte auf. Die
DGM-Auflösung hat 167 Höhenpunkte und beim Sampling wird die Strecke mit 24 gleichmäßig verteilten Punkten abgedeckt. Der geringste Abstand mit 3,6 Metern zwischen den einzelnen Punkten ist bei der DGM-Auflösung und somit auch das genaueste Geländeprofil von
den drei Verfahren, was wiederum der Realität so am nächsten kommt. In der Schummerungsdarstellung des Verfahrens mit DGM-Auflösung sind die Abstände zwischen den Punkten kaum sichtbar und ähneln mehr einer durchgezogenen Linie. Es kann nur ein sehr detailliertes Höhenprofil erreicht werden, wenn die Punkte möglichst nahe beieinander liegen.
Mit Geometrie-Auflösung
Mit DGM-Auflösung
Sampling
Tabelle 05 Geländeprofil und Schummerungsdarstellung der Beispielstrecke
Beim Sampling kann es passieren, dass nicht der Endpunkt mit erfasst wird. Vom Startpunkt
aus werden die Punkte im entsprechenden Meterabstand gesetzt, sodass am Ende eine Teilstrecke übrig bleibt. In diesem Beispiel ist genau dies der Fall. Die Ermittlung des Höhenprofils beruht dabei auf der Grundlage des DGM25 und die Punkte haben einen Abstand von
25,9 Meter. Deswegen liegt beim Sampling-Verfahren der höchste Punkt bei 60 Meter (entspricht nicht dem Endpunkt) und nicht wie bei den anderen beiden Verfahren bei 61 Meter
Höhe am Endpunkt.
Seite 44 von 60
6 Berechnung des Höhenprofils
6.2.5 Fazit zu den drei Verfahren
Die Entscheidung fiel letztendlich auf das Verfahren Sampling, weil es mehrere Vorteile gegenüber den anderen beiden Varianten hat. Der wesentliche Vorteil liegt darin, dass jeweils
die entsprechenden Werte für die Länge der Abschnitte zwischen den Punkten je nachdem,
welches DGM zur Ermittlung des Höhenprofils verwendet wird, direkt eingegeben werden
können. Die Datenmenge fällt deswegen nicht so umfangreich wie bei dem Verfahren DGMAuflösung aus. Bei der vorgestellten Beispielstrecke fällt dies noch nicht so sehr ins Gewicht.
Wenn allerdings die Streckenlänge mehrere Kilometer umfasst, werden riesige Datenmengen
mit dem Verfahren DGM-Auflösung erreicht. Dies ist bei der späteren Auswertung nicht
wünschenswert. In einem relativ flachen Bundesland wie Mecklenburg-Vorpommern es ist,
sind große Mengen an Höhenpunkten nicht erforderlich. Mit dem Verfahren Sampling lässt
sich genau dieses Problem besser steuern.
Inwieweit auch eine Verbesserung der Qualität in der Genauigkeit von Geländeprofilen in
GAIA-MVprofessional mit dem Datenbanksystem PostgreSQL und dem Zusatz von PostGIS
2.0 erreicht werden kann, wird in der Abbildung 20 „Geländeprofil der Beispielstrecke mit
PostGIS 2.0“ deutlich. Wenn die Abbildung 9 „Luftbild und Geländeprofil der Beispielstrecke“ als Vergleich herangezogen wird, ist ein Unterschied eindeutig erkennbar. Das Geländeprofil ist viel feiner und genauer. Sprünge zwischen den Höhen sind kaum noch erkennbar
oder fallen geringer aus als vorher. Dies wurde erst erreicht durch die Einführung der Geodaten des DGM5 in die Datenbank; der Punktabstand ist hierbei geringer als bei dem DGM25.
Abbildung 20 Geländeprofil der Beispielstrecke mit PostGIS 2.0
Seite 45 von 60
6 Berechnung des Höhenprofils
6.3 Profilabfrage eines einzelnen Punktes
Diese Profilabfrage besteht im Wesentlichen aus denselben Komponenten und Funktionen
wie die Linienabfrage. Für die Ermittlung des Profils eines Punktes in dem Raster wird derselbe Algorithmus verwendet wie bei der Linienabfrage. Entscheidend ist hier die Lage des
Punktes innerhalb welcher Rasterzelle dieser sich befindet, da jede Zelle des Rasters einen
Höhenwert angibt. Bei dem Algorithmus wird auch immer das genaueste Digitale Geländemodell verwendet.
Der Unterschied besteht nur darin, dass keine Linie abgefragt wird, sondern die Koordinaten
des gewünschten Punktes oder gegebenenfalls mehrere Punkte. Somit ist die SQL-Abfrage
auch nicht so umfangreich wie bei einer Linie. Die Unterteilung der Linie in gleichmäßige
Abschnitte fällt weg. Die Abfrage besteht nur noch darin, dass ermittelt wird innerhalb welcher Rasterzelle sich der einzelne Punkt befindet.
Seite 46 von 60
7 Testrahmen
7 Testrahmen
Die Speichermengen in den Datenbanken PostgreSQL in Vektorform und PostgreSQL in Rasterform werden nachfolgend miteinander verglichen. Der Testrahmen beinhaltet darüber hinaus die Abfragen in den Datenbanken und anschließend in GAIA-MVprofessional. Umso
kleiner die Datenmenge in einer Datenbank, umso schneller erfolgt die Abfrage.
Bevor mit dem Testen begonnen werden konnte, musste die Datenbank mit der neuen Version
PostgreSQL und der Erweiterung PostGIS 2.0 installiert werden. Diese werden in der Datenbank PostgreSQL mit dem Namen dgmmv_dgm25 und dgmmv_dgm100 abgespeichert. Der
Name der Tabelle steht für „Digitales Geländemodell Mecklenburg Vorpommern _ Digitales
Geländemodell“.
7.1 Vergleich der Speichermenge
Mithilfe der Open-Source-Software pgAdmin wurden die SQL-Abfragen erstellt. Dabei dient
pgAdmin zur Entwicklung und Administration von PostgreSQL-Datenbanken. Durch eine
Anbindung an PostgreSQL ermöglicht die grafische Benutzerschnittstelle (Graphical User
Interface GUI) den Zugriff auf die gesamten PostgreSQL-Funktionalitäten.
Die Tabelle dgmmv_dgm5 existiert bei der Vektorverarbeitung noch nicht. Die Gründe dafür
wurden in dem Abschnitt 4.4 „Datenabgabe vom LAiV und Vorstellung der Datensätze“ näher erläutert. Deswegen wird die Tabelle bei dem Vergleich auch nicht näher berücksichtigt.
Ansonsten werden die Anzahl der eingefügten Tupel (Zeilen) und die Datenmenge in der Einheit Megabyte (MB) in den Tabellen dgmmv_dgm25 und dgmmv_dgm100 verglichen.
Tabellenname
Tupel- Eingefügt
Größe
dgmmv_dgm100
5.425.340
353 MB
dgmmv_dgm25
43.335.600
66.141 MB
Tabelle 06 Größe der dgmmv Tabellen PostgreSQL in Vektorform
Bei der Einführung von PostGIS ab der Version 2.0 wurde noch zusätzlich die Tabelle
dgmmv_dgm5 erstellt. Ziel ist es, ein detailreicheres Höhenprofil zu erhalten.
Diese Tabelle wird trotzdem vollständigkeitshalber in der Tabelle 7 „Größe der dgmmv Tabellen PostgreSQL in Rasterform“ aufgeführt, aber im Vergleich nicht weiter berücksichtigt.
Allerdings ist schon erkennbar, dass die Tabelle dgmmv_dgm5 eine geringere Anzahl an Tupel (2.562.400) anzeigt, als die Tabelle dgmmv_dgm25 (43.335.600 Tupel) ohne den Aufsatz
Seite 47 von 60
7 Testrahmen
von PostGIS, siehe Tabelle 6 „Größe der dgmmv Tabellen PostgreSQL in Vektorform“. Somit ist die Tabelle dgmmv_dgm5 auch hinsichtlich der Speichermenge bereits wesentlich
kleiner.
Tabellenname
Tupel- Eingefügt
dgmmv_dgm100
dgmmv_dgm25
dgmmv_dgm5
Größe
6.406
16 MB
102.496
223 MB
2.562.400
4.891 MB
Tabelle 07 Größe der dgmmv Tabellen PostgreSQL in Rasterform
7.2 Vergleich der Laufzeit
Nachdem der Speicherbedarf in der Datenbank zwischen PostgreSQL in Vektorform und
PostgreSQL mit dem Aufsatz PostGIS in Rasterform gegenübergestellt wurde, wird nun die
Zeitmessung in der Einheit Millisekunde (ms) für die Punkt- und Linienabfrage verglichen.
Dabei wird zunächst die zeitliche Messung innerhalb der Datenbank vorgenommen und anschließend diese genauer in der GAIA-MVprofessional Umgebung betrachtet.
7.2.1 Datenbank Umgebung
Die Abfrage eines Punktes und einer Linie erfolgt in der PostgreSQL Datenbank zum einen
über die SQL-Befehle für die Tabellen (dgmmv_dgm25, dgmmv_dgm100), die im Vektorformat gespeichert sind. Zum anderen werden die neuen SQL-Befehle für die Abfrage eines
Punktes und einer Linie für die neu erstellten Tabellen (dgmmv_dgm25, dgmmv_dgm25,
dgmmv_dgm100), die allerdings im Rasterformat vorliegen, getestet.
Als Ergebnis der Punktabfrage werden die x- und y-Koordinaten sowie deren Höhenwert z
erwartet. Bei der Linienabfrage werden dagegen als Ergebnisse mehrere Punkte mit dem Attributwert z aufgelistet.
7.2.2 Cache
Die erste Abfrage in der Datenbank ist dabei immer zeitaufwendiger als die zweite Abfrage.
Grund dafür ist der Cache. Dies ist ein schneller Puffer-Speicher. Durch diesen Cache werden
aufwändige Neuberechnungen vermieden. Die Daten, die zu der Punkt- oder Linienabfrage
schon einmal berechnet wurden, verbleiben im Cache. Bei dem wiederholten Abruf kann somit ein schnellerer Zugriff erfolgen.
Seite 48 von 60
7 Testrahmen
7.2.2.1 Punktabfrage
Als Beispiel für die Zeitmessung einer Punktabfrage in der PostgreSQL Datenbank wurde ein
Punkt auf der Schlossinsel in Schwerin ausgewählt. Der Punkt hat dabei die Koordinaten
33263187,516 und 5947700,182 und befindet sich innerhalb des Blattschnitts mit der Nummer 332625946. Der Blattschnitt und der Punkt sind in der Abbildung 21 „Punktdarstellung
Schweriner Schloss“ abgebildet.
Abbildung 21 Punktdarstellung Schweriner Schloss
Die Ergebnismenge bei der Punktabfrage weist immer dieselbe Tupel-Anzahl von einer Zeile
auf. Im Ergebnis werden ein Punkt mit den x- und y- Koordinaten und die Höhe ausgegeben.
Die Zeitmessung bei dieser Punktabfrage lieferte folgende Resultate:
Tabellenname
dgmmv_dgm100
dgmmv_dgm25
dgmmv_dgm5
Abfrage
PostGIS Vektor
PostGIS 2.0 Raster
Erste Abfrage
2917 ms
140 ms
Zweite Abfrage
2964 ms
16 ms
405 ms
265 ms
31 ms
31 ms
Erste Abfrage
entfällt
1123 ms
Zweite Abfrage
entfällt
31 ms
Erste Abfrage
Zweite Abfrage
Tabelle 08 Zeitmessungen Punktabfrage in der Datenbank
Auffällig ist die schnellere Abfrage mit PostGIS 2.0 bei der Verwendung der Tabelle
dgmmv_dgm100 gegenüber der Datenbank mit PostGIS in Vektorform. Die Abfrage mit
PostGIS 2.0 ist etwa um das 20fache schneller als bei der zurzeit noch aktuellen Abfrage.
Auch bei der Tabelle dgmmv_dgm25 ist ein unerwartetes Ergebnis erreicht worden. Die neue
Abfrage mit PostGIS 2.0 ist bei der ersten Abfrage schneller als PostGIS in Vektorform. Bei
der wiederholten Abfrage ist das Ergebnis mit 31 ms bei beiden identisch.
Eine schnellere zeitliche Verbesserung ist somit bei den beiden Tabellen dgmmv_dgm25 und
dgmmv_dgm100 eingetroffen.
Seite 49 von 60
7 Testrahmen
7.2.2.2 Linienabfrage
Für die Zeitmessung einer Linienabfrage in der PostgreSQL Datenbank wurde wieder dieselbe Strecke wie in dem Abschnitt 3.2.4 „Beispielstrecke in Schwerin“ zwischen den Haltestellen Büdnerstraße und Friesensportplatz ausgewählt. Die Koordinaten können aus der Tabelle
4 „Koordinaten der Beispielstrecke“ entnommen werden.
Die Ergebnismenge zwischen den beiden unterschiedlichen SQL-Abfragen variieren um jeweils ein Tupel. Die Abfrage ohne PostGIS hat eine Zeile mehr im Ergebnis. Dieser Unterschied in der Ergebnismenge ist dabei auf die unterschiedlichen Methoden, die bei den SQLAbfragen ablaufen, zurückzuführen. Bei der SQL-Abfrage bei PostgreSQL wird die Anzahl
der Punkte entlang der Strecke vor der Abfrage ermittelt und in gleiche Abschnitte geteilt.
Die neue SQL-Abfrage läuft nach dem Verfahren Sampling ab und wurde bereits an derselben
Strecke in dem Kapitel 6 „Möglichkeiten der Analyse“ unter dem Abschnitt 6.1.3 „Auswahl
an Punkten (Sampling)“ erläutert.
Die Abfrage der Beispielstrecke hat folgende Ergebnisse hervorgebracht:
Tabellenname
dgmmv_dgm100
dgmmv_dgm25
dgmmv_dgm5
Abfrage
PostGIS Vektor
Tupel
PostGIS 2.0 Raster
Tupel
Erste Abfrage
46519 ms
7
94 ms
6
Zweite Abfrage
46613 ms
7
31 ms
6
546 ms
25
47 ms
24
31 ms
25
16 ms
24
Erste Abfrage
entfällt
entfällt
656 ms
120
Zweite Abfrage
entfällt
entfällt
94 ms
120
Erste Abfrage
Zweite Abfrage
Tabelle 09 Zeitmessungen Linienabfrage in der Datenbank
Besonders die Abfrage im Vektorformat bei der dgmmv_dgm100 Tabelle dauert deutlich länger als bei der Abfrage im Rasterformat. Die Abfrage benötigt mehrere Sekunden. Dagegen
dauerte die Abfrage bei PostGIS 2.0 Raster nur 94 Millisekunden.
Alles in allem ist die neue Abfrage in den Tabellen dgmmv_dgm100 und dgmymv_dgm25
schneller als bei der aktuell verwendeten Methode. Bei der Tabelle dgmmv_dgm5 ist keine
Einschätzung möglich. Das Ergebnis der schnelleren Abfrage ist bei einer Linie gegenüber
einem Punkt wesentlich offensichtlicher. Das lässt darauf schließen, dass wenn mehrere Punkte abgefragt werden, die Unterschiede in der Laufzeit deutlicher werden, als wenn nur ein
einzelner Punkt abgefragt wird.
Seite 50 von 60
7 Testrahmen
7.2.3 GAIA-MVprofessional Umgebung
Bei GAIA-MVprofessional laufen während der Abfrage einer Linie im Hintergrund noch andere Funktionen ab, wie zum Beispiel die Generierung des Höhenprofils.
Bevor das Testen mit GAIA-MV begonnen werden konnte, mussten mehrere PHP-Dateien
angepasst und verändert werden. Die Datenbankverbindung zu der Datenbank mit der neuen
PostgreSQL Version und der Erweiterung PostGIS 2.0 musste hergestellt werden. Das hinzufügen des DGM5 gehörte ebenfalls dazu, wie der Austausch der noch alten SQL-Befehle für
die Vektorverarbeitung mit den neuen SQL-Befehlen für die Rasterverarbeitung von der
Punkt- und Linienabfrage.
Die Wahl des verwendeten DGM zur Berechnung des Höhenprofils hängt dabei zum einen
von dem Maßstab der Karte ab und zum anderen von der Gesamtlänge der abzufragenden
Strecke.
Für zwei beliebig ausgewählte Linien wurde mit dem aktuell verwendeten Verfahren und der
neuen Methode mit PostGIS 2.0 die Erstellung des Höhenprofils zeitlich getestet.
Die ausgewählte Strecke ist bei beiden Verfahren identisch und nur jeweils das einmalige
Abfragen der Strecke wurde dabei berücksichtigt. Die Abfragedauer wurde während des Vorgangs zeitlich gemessen. Für spätere Nutzungen ist es nur entscheidend, wie lange die erste
Abfrage einer Linie dauert, da der Nutzer die Strecke wahrscheinlich nur einmal abfragt und
nicht mehrmals hintereinander. Zur Messung der Dauer für die Erstellung des Höhenprofils
wird die Funktion microtime() verwendet. Diese Funktion, wenn sie auf TRUE gesetzt wurde,
gibt einen float anstatt einem string zurück. Die aktuelle Zeit wird in Sekunden seit dem Beginn der Unix-Epoche (einfache Zeitdefinition) angegeben. Die Nachkommastellen geben die
Mikrosekunden an. Dazu wurde in dem Quellencode der PHP-Datei nach der Methode setStart(‘dbQuery‘) ein Startpunkt und vor der Methode setStop(‘dbQuery‘) ein Endpunkt für die
Zeitmessung mit der Funktion microtime() gesetzt. Schließlich wurde mit dem Befehl echo
das Ergebnis auf dem Bildschirm anzeigt.
Seite 51 von 60
7 Testrahmen
Der Maßstab in der Abbildung 22 „Topografische Karte mit der ersten Teststrecke“ beträgt
1:90360.
Abbildung 22 Topografische Karte mit der ersten Teststrecke
Die 14 Punkte der Linie haben folgende Koordinaten:
y (Ost)
x (Nord)
33286415,219
5954708,416
33289177,424
5954305,000
33286691,439
5949996,290
33292385,725
5948977,265
33291089,698
5946685,080
33294213,199
5946366,653
33293256,924
5952628,149
33292109,504
5952628,149
33293044,511
5954092,807
33297060,204
5953286,251
33298462,574
5955472,477
33301288,586
5953116,276
33296422,963
5950123,495
33304688,308
5949508,162
Seite 52 von 60
7 Testrahmen
Das Höhenprofil zu dieser Strecke sieht wie folgt aus:
Abbildung 23 Höhenprofil zur ersten Teststrecke
Aus der Abbildung 23 ist abzulesen, dass die Strecke eine Gesamtlänge von 52 920 Meter hat
und die Abstände zwischen den 14 Punkten jeweils 100 Meter betreffen. Die Speicherung der
Daten bei der ersten Abfrage mit PostgreSQL in Vektorform erforderten eine zeitliche Dauer
von 3,937 Sekunden. Dagegen hat die Abfrage mit PostGIS 2.0 noch nicht einmal 1 Sekunde
gedauert, sondern nur 0,656 Sekunden.
Da eine Strecke nicht sehr aussagekräftig ist, wurde noch eine zweite Teststrecke untersucht.
Es stellte sich somit die Frage, ob bei dieser Abfrage ein ähnliches Ergebnis zustande kommen wird, wie bei der ersten Teststrecke. Der Maßstab der Karte ist wiederum 1:90360 und
bei diesem Maßstab und der Länge der Strecke wurde auch diesmal das DGM100 bei der Abfrage verwendet.
Abbildung 24 Topografische Karte mit der zweiten Teststrecke
Seite 53 von 60
7 Testrahmen
Die zweite Linie beinhaltet zehn Punkte mit den folgenden Koordinaten:
y (Ost)
x (Nord)
33290078,455
5968200,489
33290503,282
5965080,226
33293945,542
5964231,177
33297090,036
5968731,110
33301658,446
5965780,823
33297578,670
5962193,680
33304038,086
5961302,137
33306991,435
5966884,559
33308882,441
5964273,671
33310263,543
5960070,919
Zu dieser zweiten Strecke sieht das Höhenprofil wie folgt aus:
Abbildung 25 Höhenprofil zur zweiten Teststrecke
Die folgende Tabelle gibt einen Gesamtüberblick über die Ergebnisse der Abfragen der beiden Teststrecken in GAIA-MVprofessional.
Tabellenname
PostGIS Vektorverarbeitung
PostGIS 2.0 Rasterverarbeitung
Teststrecke 1 (14 Punkte)
3,937 s
0,656 s
Teststrecke 2 (10 Punkte)
1,5 s
0,460 s
Tabelle 10 Ergebnisse der Höhenprofilabfrage in GAIA-MVprofessional
Die schnelleren Ergebnisse bei der Verwendung von PostGIS 2.0 sind auch darauf zurückzuführen, dass bei der Rasterverarbeitung die Datenbankverbindung nur einmal geöffnet wird
und für die Vektorverarbeitung für jeden Punkt gesondert eine Datenbankverbindung aufgebaut wird.
Seite 54 von 60
8 Zusammenfassung und Ausblick
8 Zusammenfassung und Ausblick
Die vorliegende Arbeit beschreibt zum einen eine neue Möglichkeit zur Verwaltung der bisherigen gespeicherten DGM-Daten (DGM25 und DGM100) in einer Datenbank und dazu
auch für das Digitale Geländemodell mit einer Gitterweite von 5 Meter (DGM5). Das zurzeit
verwendete Datenbanksystem für die Speicherung der Geodaten in GAIA-MVprofessional ist
PostgreSQL. Erst durch die freie Erweiterung PostGIS zum Speichern, Verwalten und Analysieren von Geodaten wird PostgreSQL ein vollwertiges Geodatenbankmanagementsystem.
Die Datenmenge für das DGM5 im Vektorformat ist für die Speicherung in einer Datenbank
zu umfangreich. Das LAiV stellt allerdings die Anforderung an das DVZ, auch das DGM5 zu
verwenden. Durch die Einführung des neuen Rasterdatentyps raster in PostGIS ab der Version 2.0 ergab sich die Möglichkeit der Speicherung der DGM-Daten im Rasterformat, denn die
Speicherung der identischen Datenmenge im Rasterformat erfordert weniger Speicherplatz als
die Speicherung im Vektorformat. Durch das zusätzliche Einfügen der DGM5-Daten wurde
zudem eine verbesserte Qualität der Höhenprofile erreicht. Besonders wenn die Abfrage in
einer Karte bei einem größeren Maßstab erfolgte, für den bisher das DGM25 als Grundlage
verwendet wurde, kann zukünftig das DGM5 angewendet werden und dies liefert dann ein
genaueres Höhenprofil.
Zum anderen wurde nachgewiesen, dass die Analyse einer Abfrage zur Erstellung eines
Höhenprofils in GAIA-MVprofessional mit PostGIS im Rasterformat wesentlich schneller
abläuft als noch im Vektorformat.
Sobald die Aktualisierung der GAIA-MV Komponente PostgreSQL auf eine neuere Version
erfolgt und somit auch PostGIS aktualisiert werden kann, muss für die Verwendung der Rasterdaten, die bereits in der Datenbank vorhanden sind, nur noch die entsprechende PHP-Datei
angepasst werden, die für die Verbindung zu der Datenbank zuständig ist. In dieser Datei
müssen die entsprechenden Zeilen aus- beziehungsweise kommentiert werden.
In GAIA-MVprofessional werden zu der Position des Mauszeigers auf der Karte die Koordinaten unten Rechts auf dem Bildschirm präsentiert. Langfristig besteht die Überlegung, dazu
zusätzlich die Höhe des Punktes anzeigen zu lassen. Erst durch die schnellere Punktabfrage
wäre diese Möglichkeit gegeben. Bei dem Geländeprofil ist es denkbar, dass zukünftig schon
während des Zeichnens der Linie auf der Karte das Geländeprofil dargestellt wird.
Seite 55 von 60
Glossar
Glossar
ASCI-Format
Standard-Zeichensatz, der alphanumerische Zeichen repräsentiert, die durch
ein einziges Byte (8Bit) dargestellt werden
ATKIS
Amtliches Topographische-Kartographische Informationssystem beschreibt
die Landschaft
Browser
Softwareprogramm, das dazu dient Informationen zu durchblättern und anzuzeigen
Cache
Bezeichnung eines Zwischenspeichers
Client
Client-Server-Architektur, Clients nutzen die Daten von dem Server
DOP
Digitale Orthophotos, Digitale Bildmodelle der Landschaft
DGM
Digitales Geländemodell beschreibt die digitale Darstellung der Geländeoberfläche
ESRI
Environmental Systems Research Instiute
GRASS
Open Source GIS-Produkt, kombinierte Raster- und Vektorverarbeitung sowie Bildverarbeitung möglich
HTML
Hypertext Markup Language, im WWW des Internets genutzte Seitenbeschreibungssprache
NAS
(Normbasiertes Austauschschnittstelle) Datenaustauschformat für Geodaten,
die im AFIS-ALKIS-ATKIS-Anwendungsschema erstellt oder bearbeitet
wurden
OGC
Open Geospatial Consortium, Verbund um Interoperabilität zwischen GISSystemen zu steigern
pgAdmin
Open-Source-Software zur Entwicklung und Administration von PostgreSQL-Datenbanken
Shape file
von der Firma ESRI eingeführtes Format für Geodaten
Seite 56 von 60
Quellenverzeichnis
Quellenverzeichnis
[BK14]
Bezirksregierung Köln, „Digitales Geländemodell – Schummerung (DGMSchummerung)“
http://www.bezregkoeln.nrw.de/brk_internet/organisation/abteilung07/produkte/reliefinformation
en/schummerung/index.html (abgerufen am 19.01.2014)
[DVZ13]
DVZ.Handbuch GAIA-MVprofessional Version 3.3; DVZ Datenverarbeitungszentrum Mecklenburg-Vorpommern GmbH; Stand: 12.09.2013
[EA13]
ERDAS APOLLO, Ihr GeoIT-System für die Verwaltung und Verteilung von
Informationen; Produkt-Datenblatt GeoSystems und Intergraph; 2013
[LAIV09]
Geobasisdaten Landesvermessung, ATKIS Digitale Landschaftsmodelle Digitale Geländemodelle; Landesamt für innere Verwaltung MecklenburgVorpommern Amt für Geoinformation, Vermessungs- und Katasterwesen;
2009
[ML13]
Mathieu Leplatre, “Drape lines on a DEM with PostGIS”; http://blog.mathieuleplatre.info/drape-lines-on-a-dem-with-postgis.html
(abgerufen am 12.12.2013)
[PE07]
Peter Eisentraut und Bernd Helmke, PostgreSQL Administration, O`REILLY,
2007
[TB14]
Modellierung in Geodatenbanksystemen, Thomas Brinkhoff 2007/13, Jade
Hochschule Oldenburg
http://www.fergi.uniosnabrueck.de/module/geodatenbanksysteme/inhalt/2/4.html
(abgerufen
am
14.02.2014]
[UR14]
Universität Rostock, Höhenlinie
http://www.geoinformatik.uni-rostock.de/einzel.asp?ID=139342288
(abgerufen am 19.01.2014)
[Wiki14]
Wikipedia, Digitales Geländemodell
http://de.wikipedia.org/wiki/Digitales_H%C3%B6henmodell, (abgerufen am
20.01.2014)
Seite 57 von 60
Abbildungsverzeichnis
Abbildungsverzeichnis
Abbildung 01 Sichtbarkeitsanalyse .......................................................................................... 12
Abbildung 02 Topografische Karte und Höhenprofil zwischen Ludwigslust und Parchim..... 13
Abbildung 03 GAIA-MV Komponenten [DVZ13] .................................................................. 15
Abbildung 04 Startseite GAIA-MVprofessional ...................................................................... 17
Abbildung 05 GAIA-MVprofessional Themen hinzufügen ..................................................... 18
Abbildung 06 Abfrage aktivieren ............................................................................................. 18
Abbildung 07 Karteireiter „Messen und Zeichnen“ ................................................................. 19
Abbildung 08 Karteireiter Geometrie I - Koordinaten einfügen .............................................. 20
Abbildung 09 Luftbild und Geländeprofil der Beispielstrecke ................................................ 21
Abbildung 10 Tabelle des Geländeprofils ................................................................................ 21
Abbildung 11 Schummerungsdarstellung ................................................................................ 22
Abbildung 12 Höhenliniendarstellung...................................................................................... 22
Abbildung 13 Grundprinzip des Airborne Laserscanning [LAIV09] ...................................... 23
Abbildung 14 Bodenpunkt und Nichtbodenpunkt[LAIV09].................................................... 24
Abbildung 15 Datenmodell SQL/MM Spatial [TB14] ............................................................. 29
Abbildung 16 Triangulated Irregular Network ......................................................................... 38
Abbildung 17 Höhenprofil mit Geometrie-Auflösung [ML13] ............................................... 39
Abbildung 18 Höhenprofil mit DGM-Auflösung [ML13] ....................................................... 40
Abbildung 19 Höhenprofil mit dem Verfahren Sampling [ML13] .......................................... 41
Abbildung 20 Geländeprofil der Beispielstrecke mit PostGIS 2.0 ........................................... 45
Abbildung 21 Punktdarstellung Schweriner Schloss ............................................................... 49
Abbildung 22 Topografische Karte mit der ersten Teststrecke ................................................ 52
Abbildung 23 Höhenprofil zur ersten Teststrecke .................................................................... 53
Abbildung 24 Topografische Karte mit der zweiten Teststrecke ............................................. 53
Abbildung 25 Höhenprofil zur zweiten Teststrecke ................................................................. 54
Seite 58 von 60
Tabellenverzeichnis
Tabellenverzeichnis
Tabelle 01 Abfrage Geometrieobjekte ..................................................................................... 19
Tabelle 02 Beispiele für die Präsentation des DGM farbcodierte Darstellung [LAiV09] ....... 25
Tabelle 03 Produktangebot DGM [LAiV09]............................................................................ 26
Tabelle 04 Koordinaten der Beispielstrecke ............................................................................. 43
Tabelle 05 Geländeprofil und Schummerungsdarstellung der Beispielstrecke ........................ 44
Tabelle 06 Größe der dgmmv Tabellen PostgreSQL in Vektorform ....................................... 47
Tabelle 07 Größe der dgmmv Tabellen PostgreSQL in Rasterform ........................................ 48
Tabelle 08 Zeitmessungen Punktabfrage in der Datenbank ..................................................... 49
Tabelle 09 Zeitmessungen Linienabfrage in der Datenbank .................................................... 50
Tabelle 10 Ergebnisse der Höhenprofilabfrage in GAIA-MVprofessional.............................. 54
Seite 59 von 60
Anhang
Anhang
Inhalt der CD:
→ Kopie der Bachelorarbeit im PDF-Format
→ Linien- und Punktabfrage
→ FME Routine zur Erstellung der Rasterdaten aus den xyz-Daten
Seite 60 von 60
Herunterladen