Grin logo
de en es fr
Shop
GRIN Website
Texte veröffentlichen, Rundum-Service genießen
Zur Shop-Startseite › Informatik - Angewandte Informatik

Konzeption und Implementierung eines Binärformats zur effizienten Übertragung von OpenStreetMap-Daten auf mobile Endgeräte zur dynamischen Generierung individueller Karten

Titel: Konzeption und Implementierung eines Binärformats zur effizienten Übertragung von OpenStreetMap-Daten auf mobile Endgeräte zur dynamischen Generierung individueller Karten

Studienarbeit , 2010 , 94 Seiten , Note: 1,3

Autor:in: Alexander Münch (Autor:in)

Informatik - Angewandte Informatik
Leseprobe & Details   Blick ins Buch
Zusammenfassung Leseprobe Details

OpenStreetMap ist ein Open-Source-Projekt mit dem Ziel, jedermann freie Geo-Informationen zur Verfügung zu stellen. Mit den Daten können beliebige Karten generiert werden, z. B. Straßenkarten, Stadtpläne, Wanderkarten, Karten mit dem Netz der öffentlichen Verkehrsmittel. In den Daten sind unter anderem POIs (Points of Interest, z. dt. interessante Orte) enthalten, was es ermöglicht, z. B. Museen, Bibliotheken, Läden und sogar Ampeln in Karten darzustellen oder in Navigationssystemen zu verarbeiten.

Im Rahmen der Studienarbeit soll eine Möglichkeit geschaffen werden, Daten von OpenStreetMap, die nativ im XML-Format geliefert werden, in ein Binärformat umzuwandeln, wodurch der Datenverkehr im Vergleich zu anderen Formaten wie XML gesenkt werden soll.

Das neue Format ist mit bereits vorhandenen Formaten zur Übertragung von Karten zu vergleichen. Besonders für mobile Geräte dürfte ein Binärformat von Vorteil sein, weil hier langsamere Übertragungsraten ein Problem darstellen.

Die Formatumwandlung soll mittels eines zusätzlichen Dienstes für den ROSE-Server geschehen, der zu einem gegebenen Rechteck auf der Erde (mittels Längen- und Breitengrad) die XML-Daten von der OpenStreetMap-API lädt, in das noch zu konzeptionierende Format umwandelt und die Binärdaten schließlich an den Client schickt.

Der ROSE-Client soll um die Funktionalität erweitert werden, die Binärdaten um die aktuelle GPS-Position des Mobilgeräts vom Server mittels eines geeigneten Protokolls abzufragen, um dynamisch eine Karte auf dem Mobilgerät zu generieren.

OpenStreetMap stellt zwar vorgerenderte Karten in Form von PNG-Grafiken zur Verfügung, diese haben allerdings feste Detaileinstellungen, was dem Nutzer nicht ermöglicht, zu wählen, welche Informationen er angezeigt haben möchte und welche nicht.

Das Protokoll zwischen Server und Client soll entsprechend ausgerüstet werden, sodass nur vom Nutzer ausgewählte Kartenfeatures (z. B. Fußwege, Bushaltestellen, Einkaufsmöglichkeiten, Abfalleimer, Telefonzellen) vom Server bezogen und schlussendlich auch auf dem Display angezeigt werden.

Leseprobe


Inhaltsverzeichnis

1 Einleitung

1.1 OpenStreetMap

1.1.1 Datenformat von OpenStreetMap

1.1.2 Beispiele von XML-Daten

1.1.3 Gerendertes Kartenmaterial

1.2 Ziel dieser Arbeit

2 Vorbereitende Analyse-Skripte

2.1 Zeilenweise Analyse

2.1.1 Stringlänge in den Tag-Values

2.1.2 Anzahl Tags, Members und Nds pro Element

2.1.3 Relationen: Typen und Rollen

2.2 Analyse der Tags

2.3 Eintragung in eine MySQL-Datenbank

2.3.1 MySQL-Datenbankschema

2.3.2 Einsatz des Skripts

2.4 Analyse aus der Datenbank

2.4.1 Relative Kodierung gemäß OpenStreetMap-Wiki

2.4.2 Alternative Kodierung mittels Flex-Byte

2.4.3 Gegenüberstellung der Möglichkeiten am Beispiel

2.4.4 Ergebnisse

3 Entwicklung des Binärformats

3.1 Grundliegende Bausteine

3.1.1 Bytereihenfolge von Integer-Daten

3.1.2 Flexibler Integer

3.1.3 Strings

3.1.4 Geographische Koordinaten

3.1.5 Header-Byte

3.2 Element-Header

3.3 Kodierung eines Knoten

3.4 Kodierung eines Wegs

3.5 Kodierung einer Relation

3.6 Kodierung der Tags

3.6.1 Direkte Kodierung in einem Byte

3.6.2 Kodierung des Keys

3.6.3 highway-Tags

3.6.4 amenity-Tags

3.6.5 natural-Tags

3.6.6 Beschränkungstags

3.6.7 railway-Tags

3.6.8 waterway-Tags

3.6.9 power-Tags

3.6.10 boundary-Tags

3.6.11 barrier-Tags

3.6.12 leisure-Tags

3.6.13 shop-Tags

3.6.14 tourism-Tags

3.6.15 cycleway-Tags

3.6.16 man_made-Tags

3.6.17 sport-Tags

3.6.18 Kodierung von allgemeinen Tags

3.6.19 Ignorieren bestimmter Tags

3.7 Beispiele

3.7.1 Beispiel: Kodierung von Knoten

3.7.2 Beispiel: Kodierung eines Wegs

3.7.3 Beispiel: Kodierung einer Relation

4 Implementierung des Binärformats

4.1 Implementierung als Stand-Alone-Anwendung

4.2 Package osm

4.3 Package io

4.4 Package parser

4.4.1 Klasse Parser

4.4.2 Klasse Tools

4.4.3 Klasse EnumParser

4.5 Package parser.enums

4.5.1 Aufzählungsklasse DirectTag

4.5.2 Aufzählungsklasse TagKey

4.5.3 Aufzählungsklasse TagKeyValue

4.5.4 Aufzählungsklassen RestrictionTagKey und RestrictionTagValue

4.5.5 Klasse RestrictionTag

4.5.6 Aufzählungsklasse DirectRole

4.5.7 Aufzählungsklasse RelationType

4.6 Default-Package

4.7 Analyse des eingesparten Datenvolumens

4.7.1 Analyse-Skript

4.7.2 Ergebnisse

4.7.3 Fazit

4.8 Analyse der Laufzeit

4.8.1 Analyse-Skript

4.8.2 Ergebnisse

4.8.3 Fazit

5 Einbettung als Server-Dienst in den ROSE-Server

5.1 Protokoll

5.1.1 Koordinaten

5.1.2 Filtern von Elementtypen

5.1.3 Filtern von Tags

5.1.4 Ausgabe des Ergebnisses

5.1.5 Ausgabe im Fehlerfall

5.2 Implementierung

5.2.1 Klasse OsmBinaryAnfrageController

5.2.2 Klasse OsmBinaryErrorCode

6 Erweiterung des ROSE-Client

6.1 Einschränkungen durch Compiler-Version

6.2 Implementierung des Parsers

6.2.1 Klasse EnumHandler

6.2.2 Package parser.enums

6.2.3 Klasse Tools

6.2.4 Klasse OSMDataInputStream

6.2.5 Klasse OSMTag

6.2.6 Klassen OSMNode, OSMWay, OSMRelation, OSMMember, OSMType

6.2.7 Klassen Parser und OsmBinaryErrorCode

6.3 Aufbau der MapForm im ROSE-Client

6.4 Die Overlay-Klasse GMOOpenStreetMap

6.4.1 Anforderung eines Daten-Updates

6.4.2 Race-Conditions beim asynchronen Daten-Update

6.4.3 Cache

6.4.4 Berechnung des Koordinatenrechtecks

6.4.5 Klasse OpenStreetMapHandler

6.4.6 POIs: Symbole und Symbolzuordnung zu den OpenStreetMap-Tags

6.4.7 Straßen: Zuordnung von Farben zur Höchstgeschwindigkeit

6.5 Einbettung der Overlay-Klasse

7 Zusammenfassung und Ausblick

7.1 Zusammenfassung

7.2 Mögliche Verbesserungsansätze

7.3 Ausblick

Zielsetzung und Themen

Das Hauptziel dieser Studienarbeit ist die Konzeption und Implementierung eines effizienten Binärformats zur Übertragung von OpenStreetMap-Daten auf mobile Endgeräte. Durch die Umwandlung der nativ im XML-Format vorliegenden Geodaten soll die benötigte Bandbreite bei der Übermittlung reduziert und eine dynamische Generierung individueller Karten im ROSE-Projekt ermöglicht werden.

  • Entwicklung eines speichereffizienten Binärformats für Geodaten.
  • Implementierung von Server-Diensten zur Umwandlung und Übermittlung der Daten.
  • Erweiterung des ROSE-Clients um eine dynamische Kartendarstellung und Overlay-Funktionalität.
  • Analyse des eingesparten Datenvolumens und der Verarbeitungsgeschwindigkeit.
  • Fokus auf Fußgängernavigation und für mobile Geräte optimierte Datenabfrage.

Auszug aus dem Buch

3.6.6 Beschränkungstags

Beschränkungstags werden im Folgenden spezielle Tags genannt, die die Benutzung von Straßen für bestimmte Fahrzeuge regeln, z. B. "Verbot für LKWs" oder "Fahrräder erlaubt". Derartige Tags sind immer wie folgt aufgebaut: Der Key legt fest, für "wen" eine Beschränkung gilt, das Value die Art der Beschränkung.

Da diese Tags sehr häufig vorkommen und nur eine kleine Menge von möglichen Values haben, die sich alle Tags teilen, wurde hier eine spezielle Kodierung entwickelt, die gezielt Speicherbedarf verringert.

Es werden Key und Value in einem einzigen Byte kodiert. Die niederwertigen 4 Bits kodieren den Key, die höherwertigen 4 Bits den Value. Tabelle 24 listet die möglichen Belegungen. Sollte der Fall auftreten, dass Key oder Value, eines von beiden, nicht in der Tabelle gelistet ist, so wird der Tag allgemein gemäß Kapitel 3.6.18 kodiert.

Zusammenfassung der Kapitel

1 Einleitung: Diese Einleitung führt in die Problematik kommerzieller Kartendienste ein und stellt OpenStreetMap als freie Alternative sowie das Ziel dieser Arbeit vor.

2 Vorbereitende Analyse-Skripte: Hier werden statistische Untersuchungen an OpenStreetMap-Daten durchgeführt, um Parameter für das Binärformat zu optimieren und die Kodierungsmöglichkeiten zu evaluieren.

3 Entwicklung des Binärformats: In diesem Kapitel wird der Aufbau des neuen Binärformats detailliert beschrieben, einschließlich der Kodierung von Knoten, Wegen, Relationen und Tags.

4 Implementierung des Binärformats: Hier wird die Umsetzung der Konvertierung in Java als Stand-Alone-Anwendung und die anschließende Analyse hinsichtlich Datenvolumen und Laufzeit erläutert.

5 Einbettung als Server-Dienst in den ROSE-Server: Dieses Kapitel behandelt die Integration des Binärkonverters in den ROSE-Server sowie die Definition des Kommunikationsprotokolls zwischen Server und Client.

6 Erweiterung des ROSE-Client: Hier wird die Anpassung des ROSE-Clients beschrieben, um die Binärdaten zu empfangen, zu parsen und grafisch als Karte inklusive POIs und Straßen darzustellen.

7 Zusammenfassung und Ausblick: Der abschließende Teil fasst die erzielten Ergebnisse zusammen, diskutiert Verbesserungspotenziale und gibt einen Ausblick auf zukünftige Anwendungsgebiete.

Schlüsselwörter

OpenStreetMap, Binärformat, ROSE-Projekt, Kartengenerierung, XML-Umwandlung, mobile Endgeräte, Geodaten, Datenkompression, Navigation, POI, Java, Parser, Straßen, Protokoll, Kartendarstellung

Häufig gestellte Fragen

Worum geht es in dieser Arbeit grundsätzlich?

Das primäre Ziel ist die Entwicklung eines effizienten Binärformats für Geodaten der OpenStreetMap, um die Bandbreitennutzung bei der Übertragung an mobile Geräte zu optimieren.

Was sind die zentralen Themenfelder?

Zentrale Schwerpunkte sind die Datenanalyse von Geodaten, die Konzeption eines binären Übertragungsprotokolls, die Java-Implementierung von Encodern und Decodern sowie die Integration in mobile Navigationssysteme.

Was ist das primäre Ziel oder die Forschungsfrage?

Die Forschungsfrage ist, wie die umfangreichen XML-Daten von OpenStreetMap so in ein binäres Format transformiert werden können, dass eine dynamische und performante Kartengenerierung auf leistungsschwächeren mobilen Endgeräten möglich wird.

Welche wissenschaftliche Methode wird verwendet?

Die Arbeit basiert auf statistischen Voranalysen (z.B. Untersuchung von Tag-Verteilungen in großen Datensätzen), gefolgt von einer algorithmischen Entwicklung des Formats und einer anschließenden Evaluierung durch Testreihen zur Datenersparnis und Laufzeitmessung.

Was wird im Hauptteil behandelt?

Der Hauptteil gliedert sich in die Analyse der Datenstruktur, die Spezifikation des neuen Binärformats, die Implementierung der Konvertierungswerkzeuge und deren Anbindung an einen Server sowie die clientseitige Erweiterung zur Darstellung.

Welche Schlüsselwörter charakterisieren die Arbeit?

Wesentliche Begriffe sind OpenStreetMap, Binärformat, ROSE-Projekt, Geodaten, Datenkompression, mobile Navigation und Kartendarstellung.

Wie werden POIs im System behandelt?

Die Arbeit definiert eine effiziente Zuordnung von Symbolen zu den entsprechenden OpenStreetMap-Tags, wobei der Client die POIs anhand der binär übertragenen Metadaten identifiziert und grafisch rendert.

Warum ist das gewählte Flex-Byte-Verfahren vorteilhaft?

Es ermöglicht eine flexible Wahl zwischen relativer (16 Bit) und absoluter (32 Bit) Koordinatenkodierung innerhalb desselben Datenstroms, wodurch einerseits Speicherplatz gespart wird und andererseits Rundungsfehler vermieden werden.

Wie reagiert das System im Fehlerfall?

Es wurde ein spezifisches Fehlerprotokoll definiert, bei dem das erste Byte einer Serverantwort den Fehlerstatus signalisiert, gefolgt von einer String-Fehlermeldung, die dem Benutzer angezeigt werden kann.

Ende der Leseprobe aus 94 Seiten  - nach oben

Details

Titel
Konzeption und Implementierung eines Binärformats zur effizienten Übertragung von OpenStreetMap-Daten auf mobile Endgeräte zur dynamischen Generierung individueller Karten
Hochschule
Friedrich-Alexander-Universität Erlangen-Nürnberg  (Department Informatik)
Note
1,3
Autor
Alexander Münch (Autor:in)
Erscheinungsjahr
2010
Seiten
94
Katalognummer
V157527
ISBN (eBook)
9783640755394
ISBN (Buch)
9783640755462
Sprache
Deutsch
Schlagworte
OpenStreetMap Binärformat Kodierung OpenStreetMap-Daten Geo-Daten individuelle Karten mobile Endgeräte
Produktsicherheit
GRIN Publishing GmbH
Arbeit zitieren
Alexander Münch (Autor:in), 2010, Konzeption und Implementierung eines Binärformats zur effizienten Übertragung von OpenStreetMap-Daten auf mobile Endgeräte zur dynamischen Generierung individueller Karten, München, GRIN Verlag, https://www.grin.com/document/157527
Blick ins Buch
  • Wenn Sie diese Meldung sehen, konnt das Bild nicht geladen und dargestellt werden.
  • Wenn Sie diese Meldung sehen, konnt das Bild nicht geladen und dargestellt werden.
  • Wenn Sie diese Meldung sehen, konnt das Bild nicht geladen und dargestellt werden.
  • Wenn Sie diese Meldung sehen, konnt das Bild nicht geladen und dargestellt werden.
  • Wenn Sie diese Meldung sehen, konnt das Bild nicht geladen und dargestellt werden.
  • Wenn Sie diese Meldung sehen, konnt das Bild nicht geladen und dargestellt werden.
  • Wenn Sie diese Meldung sehen, konnt das Bild nicht geladen und dargestellt werden.
  • Wenn Sie diese Meldung sehen, konnt das Bild nicht geladen und dargestellt werden.
  • Wenn Sie diese Meldung sehen, konnt das Bild nicht geladen und dargestellt werden.
  • Wenn Sie diese Meldung sehen, konnt das Bild nicht geladen und dargestellt werden.
  • Wenn Sie diese Meldung sehen, konnt das Bild nicht geladen und dargestellt werden.
  • Wenn Sie diese Meldung sehen, konnt das Bild nicht geladen und dargestellt werden.
  • Wenn Sie diese Meldung sehen, konnt das Bild nicht geladen und dargestellt werden.
  • Wenn Sie diese Meldung sehen, konnt das Bild nicht geladen und dargestellt werden.
  • Wenn Sie diese Meldung sehen, konnt das Bild nicht geladen und dargestellt werden.
  • Wenn Sie diese Meldung sehen, konnt das Bild nicht geladen und dargestellt werden.
  • Wenn Sie diese Meldung sehen, konnt das Bild nicht geladen und dargestellt werden.
  • Wenn Sie diese Meldung sehen, konnt das Bild nicht geladen und dargestellt werden.
  • Wenn Sie diese Meldung sehen, konnt das Bild nicht geladen und dargestellt werden.
  • Wenn Sie diese Meldung sehen, konnt das Bild nicht geladen und dargestellt werden.
  • Wenn Sie diese Meldung sehen, konnt das Bild nicht geladen und dargestellt werden.
Leseprobe aus  94  Seiten
Grin logo
  • Grin.com
  • Versand
  • Kontakt
  • Datenschutz
  • AGB
  • Impressum