80
www.martinwerner.de
Kapitel 1.5Darstellung von Geodaten für Computer
81
www.martinwerner.de
Zusammenfassung
In den Beispielen haben wir viele Typen von Geodaten gesehen. Hier ist mal eine kleine Klassifikation der Daten, die uns untergekommen sind
Geographische Raster
Orthobilder
Scans von Karten
Berechnete Raster (z.B. Höhenmodelle)
Vektor
Punkt, Linie, Polygon
Freie Tags
Multimedia
Bild und Text
82
www.martinwerner.de
Tradition
Leider traditionell geteilt (grobe Vereinfachung)
Raster
Ingenieure (Bilder, Satelliten, Fernerkundung, etc.)
Vektor
Computergrafik
Computational Geometry (Mathematik)
Datenbanken
Entsprechend gibt es (derzeit) noch nicht wirklich durchlässige Systeme: Getrennte Systeme und Datenbanken für beide Welten, falls die andere Sicht unterstützt wird, dann oft nicht in hoher Performanz
83
www.martinwerner.de
Open Source Beispiele
GDAL
Getrennt in Tools und Bibliotheken für Raster und Vektor
OGR-Bibilothek für Vektor
PostGIS
Vektordatenbank (SQL-Datenbank mit Erweiterung für Geometrie)
Seit 2005 (Version 1.0)
Raster ab 2012 (Version 2.0) offiziell unterstützt
Rasdaman
Rasterdatenbank (Industry, State-of-the-art)
SciDB
Matrixdatenbank
84
www.martinwerner.de
Moderne Entwicklungen
Interrogativer Ansatz
Motivation
Jeder soll GIS nutzen können
Kontext ist entscheidend (z.B. ist eine Suche nach Apotheke in OSM selten hilfreich, da sehr groß, eine Suche mit Kontext geht aber sehr gut)
Welcher Kontext gebraucht wird, ist aber zunächst unklar
Kontext, den man ohnehin hat (Ort bei Handys, Zeit, Nutzerprofile, vorhandene Daten)
Kontext, den man nicht hat (Kontext der Anfrage, etc.)
85
www.martinwerner.de
Vision
Dialog-basiert:
Nutzer: Lass uns mal Paris anschauen
System: Ich kenne Paris als Hauptstadt von Frankreich. Es gäbe auch Paris als Stadt in den USA, wenn Du willst.
Nutzer: Frankreich ist gut.
Systen: Okay.
Nutzer: Nun zeig mir mal Apotheken
System: Das sind sehr viele. Möchtest Du eine Übersichtskarte oder suchst Du eine bestimmte Apotheke?
Nutzer: Eine Excel-Liste mit den Adressen bitte.
System: Datenexport wird vorbereitet. Ich melde mich in ca. 2 Sekunden…
86
www.martinwerner.de
Beispiel
Mit Core Concepts for Spatial Computing (Kuhn et. al) wird versucht, eine Taxonomie aller denkbaren Geodaten so zu machen, dass eine einheitliche Behandlung möglich wird. Dabei wird zunächst zwischen spatialen Konzepten und Informationskonzepten unterschieden:
These concepts can serve as a basis for transdisciplinary research bybuilding theories of change between disciplines: What is neighborhoodto climatology? What is neighborhood to political and social sciences? What is neighborhood to urban architects?
Spatialconcepts
Location Neighbourhood Field Object Network Event
Information concepts
Granularity Accuracy Meaning Value
87
www.martinwerner.de
An overview
Spatial@UCSB: “The Core Concepts of Spatial Information are designed to facilitate spatial computing and reduce its complexity. They also serve as conceptual lenses on environments, allowing for different perspectives on them, fed by data with any sort of spatial reference.”
http://spatial.ucsb.edu/core-concepts-of-spatial-information/, rev. 15.03.2019
88
www.martinwerner.de
Some concepts for this lecture
Note that these differ from the core concepts just explained andproposed by Kuhn.
Location
A point in space, usually given as coordinates in a coordinatereference system (CRS)
A bounded (compact, closed) subset of space, often as well called a place („Audimax“ or „Marienplatz“)
A union of locations (e.g., the set of all buildings as a subset of a city: „I am inside a building in New York“ is actually a specification oflocation, isn‘t it?)
89
www.martinwerner.de
Some concepts for this lecture
Note that these differ from the core concepts just explained andproposed by Kuhn.
Neighborhood
A Neighborhood of a spatial object is the spatial object built fromincluding all things with a similar context
The neighborhood of a point might be a circle around the point
The neighborhood of a measurement of temperature might be a temperature range
The neighborhood of a Wikipedia article might be the set ofreferences
90
www.martinwerner.de
Kontext
Kontext ist all das, was einer Entität eine Bedeutung gibt und beinhaltet insbesondere die Entität selbst.
Geographische Umgebungen (Kreise, Polygone)
Soziale Umgebungen (Familie, Freunde, Kontakte, soziales Netz,…)
Kulturelle Umgebung (Religion, Grundüberzeugungen, Bildung, …)
Funktionale Umgebung (z.B. Alternativen mit gleicher Funktion)
Klassische Definition:
Context is any information that can be used to characterize thesituation of an entity. An entity is a person, place, or object that isconsidered relevant to the interaction between a user and an application, including the user and the application themselves.
Anind K. Dey: Understanding and Using Context
91
www.martinwerner.de
Objekt
Ein Objekt ist zunächst nur eine Identität. In Geodaten ist diese Identität an einen Ort gebunden. Dieser kann allerdings zeitlich variieren („Moving Object“). An diese Identität werden auch Attribute gebunden (Größe, Farbe, manövrierfähigkeit, weitere Identitäten)
Beispiele:
Ein Haus ist statisches Objekt: Ort ist z.B. das Gebäudepolygon, Attribute sind z.B. die Anzahl der Stockwerke. Identität ist z.B. die ID in der OpenStreetMap
Ein Auto ist ein mobiles Objekt: Ort verändert sich über die Zeit, Attribute sind z.B. Geschwindigkeit und Wendekreis.
Ein Posting in einem sozialen Netz ist auch ein Objekt: Ort ist der Ort von wo das Posting kommt (ggfs. nur sehr grob), Attribut ist Text + Bild.
92
www.martinwerner.de
Feld
Ein Feld ist eine räumlich ausgedehnte, typischerweise interpolierbare Größe. Sie ist aber in der Regel nur an Stützpunkten (Objekte!) bekannt. Diese können in einem Gitter liegen (z.B. bei der Bilderfassung) oder auch Punktobjekte sein (z.B. Messstationen).
Das Wesentliche ist beim Feld also, dass es zwar nicht überall „bekannt“ sein muss, aber überall durch Interpolation angenähert werden kann.
Wind
Temperatur
Bild
93
www.martinwerner.de
Netzwerk (Geographisch)
Ein geographisches Netz ist ein geographisch eingebetteter Graph. Das bedeutet, ein Graph, bei dem jedes „Vertex“ ein Punktobjekt ist.
Besondere Varianten:
Euklidischer Graph: Gewichteter Graph, bei dem die Gewichte die Distanzen sind. Typisch für einfache Navigationsgraphen
Partiell eingebetteter Graph: Nur ein Teilgraph ist ein geographisches Netz, die nicht-geographische Vernetzung wird aber dennoch verwendet.
94
www.martinwerner.de
Netze
Links: Netzwerk aller Straßen in MünchenRechts: Innenstadt
OpenStreetMap Data
95
www.martinwerner.de
Beispiel: Partielle Einbettung
Beispiel: Bob läuft zur Telefonzelle, um Alice anzurufen. Alice läuft dann zu Chuck, um die Information von Bob mündlich weiterzugeben. Die Gesamtzeit der Nachrichtenübermittlung ist dann zwei mal geographisch gefasst, einmal nicht.
Laufen
Telefonieren
Distanz und Geschwindigkeit
Laufen
Distanz und Geschwindigkeit
� �, � ⋅ ���� + �� + � �, � ⋅ ������
Nachrichtenlänge
96
www.martinwerner.de
Ereignis
Mit Ereignis bezeichnet man ein Objekt mit Zeitbezug. Dieser besteht aus
einem Zeitpunkt
oder einem
Zeitraum
Man könnte jetzt diskutieren, ob man Ereignis überhaupt als Konzept braucht. Der Grund, warum es oft so betrachtet wird, ist, dass Zeit ein ganz spezielles Attribut ist, da es total geordnet werden kann und Kontext in der Regel mit der Zeit abnimmt. Manchmal wird es daher auch als vierte Koordinate eines geographischen Raums (4D) definiert. Begriff: „Space-Time-Ellipsis“. Problem: Skalierung Zeit vs. Raum?
97
www.martinwerner.de
Qualitätskonzepte
Granularität:
Auflösung
Genauigkeit
Präzision
Frage: Passen Anwendung und Granularität zusammen, falls nicht, kann man das erreichen?
Beispiele:
Kartographische Vereinfachung
Image Superresolution
Mobile Applikation
98
www.martinwerner.de
Kartographische Vereinfachung
Beispiel: Douglas-Peucker-Algorithmus: Gegeben ein Fehlermaß pro Punkt. So lange Summe aller Fehler zu groß, unterteilte Objekt am Punkt mit größtem Fehler und fahre mit beiden Hälften fort.
99
www.martinwerner.de
Kartographische Vereinfachung
Beispiel: Douglas-Peucker-Algorithmus: Gegeben ein Fehlermaß pro Punkt. So lange Summe aller Fehler zu groß, unterteilte Objekt am Punkt mit größtem Fehler und fahre mit beiden Hälften fort.
100
www.martinwerner.de
Kartographische Vereinfachung
Beispiel: Douglas-Peucker-Algorithmus: Gegeben ein Fehlermaß pro Punkt. So lange Summe aller Fehler zu groß, unterteilte Objekt am Punkt mit größtem Fehler und fahre mit beiden Hälften fort.
101
www.martinwerner.de
Diskussion
A little inaccuracy saves tons of explanation (Munro)
Konzepte sind einfache Stereotypen:
Helfen beim Verständnis
Sind aber oft im Detail falsch und nicht zielführend
102
www.martinwerner.de
Kapitel 1.5Geodaten und ihre Anwender
103
www.martinwerner.de
The Field
SpatialData
Geometrie
Topologie
ComputationalGeometry
Database
Spatial Data Warehouse
Standards
Data Mining
MachineLearning
AI
Interoperability & Actionability
Enrichment &Value
ComputationTheory & Understanding
104
www.martinwerner.de
Geo-Informatik als Konvergenz
Die Geo-Informatik trägt aus Sicht der Informatik zu den vier Hauptfeldern
Theorie
Computation
Interoperability & Actionability
Enrichment & Value
bei und unterstützt die Anwendung von Geodaten.
105
www.martinwerner.de
Signifikanz der Geoinformatik
106
www.martinwerner.de
Kapitel 1.6Interaktion mit Geodaten
107
www.martinwerner.de
Software, meist visuell, zur Analyse und Integration von Geodaten
Desktop GIS
108
www.martinwerner.de
Karte für Online-Dienste, Touch-Bedienung möglich.
Slippy Map
109
www.martinwerner.de
SQL
Geoverarbeitung kann mit andere Datenverarbeitung, zum Beispiel imBereich der Sprache SQL kombiniert werden:
SET @g = geometry::Parse('POINT(3 4 7 2.5)');
oder
SELECT TOP ( number ) [ WITH TIES ] [ * | expression ] [, ...] FROM spatial_table_reference, ... [ WITH ( [ INDEX ( index_ref ) ] [ , SPATIAL_WINDOW_MAX_CELLS = <value>] [ ,... ] ) ] WHERE column_ref.STDistance ( @spatial_ object ) { [ IS NOT NULL ] | [ < const ] | [ > const ] | [ <= const ] | [ >= const ] | [ <> const ] ] } [ AND { other_predicate } ] } ORDER BY column_ref.STDistance ( @spatial_ object ) [ ,...n ] [ ; ]
110
www.martinwerner.de
Kapitel 2Grundlegende Definitionen und Operationen
111
www.martinwerner.de
Kapitel 2.1Elemente der Geometrie
112
www.martinwerner.de
Punkt und Koordinatensysteme
Koordinatensystem
Ein Koordinatensystem eines metrischen Raumes ist die Auswahl einer geordneten Basis. Jeder Punkt im Raum erhält so eine eindeutige Darstellung als� = ���� + ���� + ⋯����
Dabei nennen wir die �� Koordinaten.
Ein Koordinatensystem in einem euklidischen Raum ist rechtwinklig, wenn das paarweise Skalarprodukt aller Basisvektoren jeweils Null ist.
113
www.martinwerner.de
Koordinatensystem
In diesem Koordinatensystem sind die Achsen nicht rechtwinklig. Dennoch lässt sich der Punkt als Summer von skalaren Vielfachen der Basisvektoren (Pfeile) darstellen.
114
www.martinwerner.de
Geographisch
Die Kugeloberfläche ist lokal zweidimensional (Atlas). Wir können also lokal gute Karten erstellen, indem wir die Krümmung geeignet ignorieren. Dazu benötigt man Projektionen, die Teile der Oberfläche der Kugel in die Ebene abbilden.
Ebene, die tangential angeklebt wurde
115
www.martinwerner.de
Kartesische Koordinatensysteme
Orthogonales Achsensystem mit gleichen Längen für die Achsen.
Rechssysteme
Linkssysteme
116
www.martinwerner.de
Ellipsoide (WGS84)
Gegeben durch
große Halbachse von a = 6.378.137 m und
Abplattung f = 1 / 298,257223563 entsprechend einer kleinen Halbachse b = a(1−f) 6.356.752 m
Verankerung durch Angabevon Koordinaten für 12
sogenannte Fundamental-
Stationen auf der Erdoberfläche
117
www.martinwerner.de
Koordinatensysteme der Erde
Koordinaten Systeme(Datum)
Ellipsoida Äquatorradius m; f Abplattung
Potsdam Datum Bessel 1841,a=6.377.397,155; f=299,1528128
(DDR, Warschauer Pakt) Krassovski 1942 a=6.378.245,0; f=298,3
Europa Datum, ED50 (Militärkarten, UTM)
Hayford 1909, International 1924 a=6.378.388; f=297
WGS84 WGS84 1984 a=6.378.137,0; f=298,257223563
ETRS89 GRS80 1980 a=6.378.137,0; f=298,257222101
Astronomie IAU 1964, IUGG 1967 a=6.378.160; f=298,247167427
http://www.mydarc.de/db6zh/qthzz/qthxx04.htm
bei GPS…
118
www.martinwerner.de
Exkurs zu 2.1: Beispiele von Projektionen
119
www.martinwerner.de
Mögliche Eigenschaften:• Flächentreue• Winkeltreue• Entfernungstreue
Kompromisse können gemacht werden und heißen vermittelnde Projektionen
UTM ist eine Merkator-Projektion, die sich für Weltkarten durchgesetzt hat.
Übersicht Projektionen
http://www.geographie.uni-muenchen.de/internetvorlesung/studium/Nebenseiten/SB3-5.htm
120
www.martinwerner.de
Beispiele
Wikipedia
121
www.martinwerner.de
Beispiele
Wikipedia
122
www.martinwerner.de
Beispiele
Wikipedia
123
www.martinwerner.de
Beispiele
Wikipedia
124
www.martinwerner.de
Beispiele
Wikipedia
125
www.martinwerner.de
Beispiele
Wikipedia
126
www.martinwerner.de
Punkte und ihre Verhältnisse
Durch Wahl eines Koordinatensystems (e.g., geordnete Basis eines Vektorraums) erhält ein Punkt Koordinaten
� = (��, ��, … , ��)
Die Anzahl der Koordinaten ist die Dimension des Raumes
Geometrische Bedeutung einfacher Operationen auf diesem Vektor
Addition = Verschiebung („Translation“)
Norm = „Länge“ (z.B. euklidisch � �, � = ∑ �� − ��� )
Skalarprodukt liefert Informationen über Winkel und Norm
127
www.martinwerner.de
Linie
Eine Linie ist beschrieben durch ein paar von Punkten �, � und besteht aus allen linear interpolierten Punkten:
� �, � = {� + � � − � , � ∈ 0,1 }
Bei einer orientierten Linie unterscheidet man Anfangs- und Endpunkt.
� = 0
� = 1
� = 0.5
128
www.martinwerner.de
Polygon
Ein Polygon ist ein geometrisches Objekt, welches durch eine geordnete Sequenz von Punkten �� …�� entsteht.
Der Rand des Polygon ist die Vereinigung der Linien �(��, ����)
Ein Polygon ist geschlossen, wenn der erste und letzte Punkt identisch sind
Der Abschluss eines nicht geschlossenen Polygons entsteht durch hinzufügen des ersten Punktes am Ende
129
www.martinwerner.de
Fläche und Umlaufsinn
Diese Slide gilt zunächst nur für 2D
Für die Definition der Fläche des Polygons ist zunächst der Umlaufsinn zu definieren:
CCW Counter Clock Wise gegen den Uhrzeigersinn
CW „Clock Wise“ mit dem Uhrzeigersinn
Ferner muss man definieren, ob man ein Links- oder Rechtssystem verwendet. Wir einigen uns hier darauf, dass die Fläche „links“ vom Umlauf die Fläche des Polygon ist.
130
www.martinwerner.de
Dreieck
Ein Dreieck ist ein geschlossenes Polygon mit 3 Ecken.
Dreiecke haben viele nützliche Eigenschaften, denen wir in der Zukunft immer mal wieder begegnen werden
131
www.martinwerner.de
Kurven
Eine Kurve ist eine Verallgemeinerung einer Linie.
Zur Erinnerung: Die Linie ist definiert durch zwei Punkte und die folgende Vorschrift
� �, � = {� + � � − � , � ∈ 0,1 }
Eine Kurve ist gegeben durch eine Funktion �(�) und besteht geometrisch aus der Menge
� �, � = {�(�), � ∈ 0,1 }
132
www.martinwerner.de
Kurve
Der Anfangspunkt einer Kurve ist � 0 , der Endpunkt ist �(1).
Eine Kurve ist geschlossen, wenn Anfangs- und Endpunkt übereinstimmen
Eine Linie � �, � ist eine Kurve mit
� � = � + �(� − �)
Da eine Kurve also tatsächlich nur eine Funktion mit einem reellen Parameter ist, erbt sie alle nützlichen Eigenschaften von Funktionen
Stetigkeit
Differenzierbarkeit
Etc
und wir werden oft bestimmte dieser Eigenschaften voraussetzen
133
www.martinwerner.de
Kreis
Ein Kreis ist definiert durch Mitttelpunkt M und Radius r und besteht aus den Punkten mit Abstand r von P.
� �, � = {�: � �, � = �}
134
www.martinwerner.de
Ellipse
Eine Ellipse ist die Menge der Punkte, deren Abstandssumme zu zwei Punkten konstant ist (Brennpunkte).
Liegt der Mittelpunkt im Ursprung, so gilt
� = { �, � : � + � � + �� + � − � � + �� = 2�
oder einfacher mit �� ≔ �� − ��
� = { �, � :��
��+
��
��= 1
� �(�, 0)(−�, 0)
135
www.martinwerner.de
Übersicht einfacher Geometrie
Objekt Definiert durch Geometrische Klassen
Punkt Koordinatensystem + Koordinaten Punkt
Linie Zwei geordnete Punkte Kurve, Fläche (degeneriert)
Polygon N geordnete Punkte Kurve, Fläche
Dreieck 3 geordnete Punkte Kurve, Fläche
Kreis Mittelpunkt, Radius, Distanzfunktion Kurve, Fläche
Ellipse Brennpunkte Kurve, Fläche
136
www.martinwerner.de
Distanz geometrischer Objekte
Distanz zwischen Punkten (oft gegeben durch Norm / Skalarprodukt)
Distanz zwischen Punkt und Menge ist leicht zu definieren als
� �,� = inf{� �,� :� ∈ �}
Ist M aber unendlich, so ist dieser Ausdruck kaum zu berechnen. Daher sind spezielle geometrische Betrachtungen nötig, die auch Eigenschaften des Raumes betreffen.
137
www.martinwerner.de
Distanz zwischen Punkt und Linie
In euklidischer Geometrie kann die Distanz zwischen einem Punkt und einer Linie in konstanter Zeit bestimmt werden:
Satz: Die Distanz zwischen einem Punkt und einer Linie � �, � �, �
kann berechnet werden, indem der Punkt X bestimmt wird, an dem das Infimum der Distanz angenommen wird. Dann ist die Distanz
� �, � �, � = �(�, �)
Hinweis: Der Punkt ergibt sich als orthogonale Projektion von P auf die Linie [Q,R].
[Details an der Tafel]
Konstante Zeit bedeutet, dass die Komplexität der Berechnung immer gleich ist
138
www.martinwerner.de
Distanz Punkt Linie
Sei L(t) eine Linie durch zwei Punkte
� � = � + �(� − �) = � + ��
Die Distanz eines Punktes � ist dann
� �, � = � − � − � − � ⋅ � �
�
�
�� − �
139
www.martinwerner.de
Distanz Punkt Linie
In der Regel normiert man den Vektor �
Dann liegt der Punkt innerhalb des Segments, falls
� = � − � ⋅ � ∈ [0,1]
Die Distanz zum Liniensegment ist dann
Wie auf voriger Folie, wenn der Projektionspunkt im Innern liegt
Die Distanz zu b oder zu a, falls der Projektionspunkt außerhalb des Segments liegt.
�
�
�� − �
�
�
�
140
www.martinwerner.de
Distanz zwischen Punkt und Linie
Auf der Erdoberfläche ist das Analogon zu einer Linie der kürzeste Pfad auf der Oberfläche zwischen zwei Punkten A und B. Dies ist ein „Großkreissegment“.
Man kann diese Kurve an einer endlichen Anzahl von Stützpunkten ausrechnen (Geodetic Library, Übung)
Man kann die Distanz annähern, indem man Stützpunkte nach und nach einfügt
Man kann die Auswahl der Stützpunkte geschickt machen (Binary Search), weil die Distanz als Funktion von � ein einziges Minimum hat.
Diese Berechnung ist nicht konstant in der Zeit. Sie hängt von der Länge der Kurve und der Berechnungskomplexität der Kurvenfunktion selbst ab.
141
www.martinwerner.de
Großkreise - Great Circle Distance
Der kürzeste Pfad auf der Oberfläche ist eine Kurve.
Wenn die Erde eine Kugel wäre und ein Ort auf der Erde durch Längengrad („Longitude“) und Breitengrad(„Latitude“) gegeben wird, dann ist der Abstand zwischen zwei Orten ungefähr (Haversine Formula)
142
www.martinwerner.de
Fazit
Merke:
Schon sehr einfache Probleme sind auf der Erdoberfläche schwer berechenbar.
Euklidische Geometrie ist einfach, beschreibt die Welt aber schlecht (ignoriert Krümmung)
Kugelkoordinaten beschreiben die Welt besser, sind aber schlecht für Berechnungen
Häufig Wechsel zwischen beiden Welten sinnvoll.
(Koordinatensystemwechsel, Projektionen, etc.)