Geobuf ist eine kompakte binäre Verpackung von GeoJSON auf Basis von Protocol Buffers, entwickelt bei Mapbox (Vladimir Agafonkin, 2015). Es kodiert dieselben Objekte wie GeoJSON, ist dank Varint, Delta-Kodierung der Koordinaten und Schlüsselwörterbuch aber typischerweise 6–8-mal kleiner; das Dekodieren liefert verlustfrei ein äquivalentes GeoJSON zurück. Es ist eine Transportschicht für mobile Karten, Edge-CDN-Caches und IndexedDB-Speicher, kein Analyseformat. Unser Exporter baut aus den OSM-Layern eine FeatureCollection und kodiert sie in echtes Protobuf .pbf mit 6 Nachkommastellen (~0,1 m). Wichtig: Das Format ist ehrlich — schlägt die Kodierung fehl, bricht der Export mit einem Fehler ab; wir schieben KEIN gezipptes GeoJSON unter dem Namen .pbf unter.
Hauptmerkmale
Über das Format Geobuf
Geobuf löst genau eine Aufgabe: dasselbe GeoJSON, nur um ein Vielfaches kleiner. Statt Text kommen Protocol Buffers zum Einsatz, statt wiederholter Eigenschaftsnamen ein Schlüsselwörterbuch, statt vollständiger Koordinaten die Differenzen zwischen benachbarten Punkten, aufgezeichnet als Zahlen variabler Länge. Die Bedeutung der Daten ändert sich nicht, nur die Verpackung.
Es ist ein Transportformat. Man nimmt es, wenn Daten zugestellt werden müssen: in eine mobile App über ein schwaches Netz, an einen CDN-Knoten, in den Offline-Speicher des Browsers. Statistik rechnen oder Objekte bearbeiten lässt sich darin schlecht — dafür dekodiert man es zuerst zurück nach GeoJSON.
In der Datei steckt eine FeatureCollection mit allen ausgewählten Layern, kodiert in echtes Protobuf. Die Koordinaten werden auf sechs Nachkommastellen gerundet, das sind etwa zehn Zentimeter in der Örtlichkeit — mit Reserve genug für städtische Detailtiefe. Die Attribute aus OpenStreetMap bleiben erhalten.
Ein untergeschobener Ersatz kommt nicht infrage: Schlägt die Kodierung fehl, bricht der Export mit einem Fehler ab. Ein gzip-Archiv mit GeoJSON unter der Endung .pbf auszuliefern wäre einfacher, aber eine solche Datei ließe sich von der Bibliothek geobuf nicht dekodieren — und wäre damit nutzlos.
Programme zum Öffnen von Geobuf-Dateien
Die folgenden Programme können Geobuf (Protobuf-encoded GeoJSON)-Dateien (.pbf) öffnen, bearbeiten und verarbeiten, die aus OSM2CDR exportiert wurden:
Format-Spezifikationen
- Offener Standard
- Nur 2D
- Verlustfrei
- Speichert Objektattribute
- Ausgabe: 1 Datei
- Real protobuf .pbf encoding a GeoJSON FeatureCollection at 6-digit precision (~0.1 m); honest guarantee — real Geobuf or an error, never a gzipped-GeoJSON substitution.
Wer nutzt Geobuf-Karten
So exportieren Sie Geobuf
Nach dem Export öffnen
- JavaScript — npm install geobuf pbf, danach liefert geobuf.decode(new Pbf(buffer)) fertiges GeoJSON, das Sie direkt an Leaflet oder Mapbox GL übergeben können.
- Python — pip install geobuf, danach geobuf.decode(open("map.pbf", "rb").read()); anschließend arbeiten Sie wie gewohnt mit GeoJSON oder laden es in GeoPandas.
- Mobile App — die Datei kommt in die Ressourcen oder wird vom Server geladen: Das Dekodieren dauert Sekundenbruchteile, und es fließt um ein Vielfaches weniger Datenverkehr.
- Offline im Browser — das dekodierte Ergebnis lässt sich bequem in der IndexedDB halten und die Karte ohne Netz neu zeichnen.
- Einfach ansehen — dekodieren Sie nach GeoJSON und ziehen Sie es auf geojson.io: Die .pbf selbst zeigt kein Viewer an.
Beliebte Karten in Geobuf
Geobuf (Protobuf-encoded GeoJSON)-Kartenexport
Laden Sie professionelle Geobuf-Karten aus OpenStreetMap herunter. Sofortige Generierung, beliebiges Gebiet.