Hallo zusammen,
wie bereits im Thema Freie Geodaten für Berlin und in der Mailingliste Berlin diskutiert, hat die Stadt Berlin die Hausnummernkoordinaten für die freie Verwendung frei gegeben. Nachdem ich mich bei der Senatsverwaltung noch einmal rückversichert habe, dass wir diese für OSM nutzen können, habe ich mich um die technische Seite der Integration dieser wertvollen Daten in OSM gekümmern.
Ich habe ein halbautomatisches Verfahren entwickelt, das eine sorgfältige Übernahme fehlender Hausnummern mit minimalem Arbeitsaufwand ermöglichen soll. Denn Berlin hat verdammt viele Häuser.
Ich habe ein Programm geschrieben, mit dem ich die riesige Datentabelle (http://fbinter.stadt-berlin.de/fb/berlin/service.jsp?id=a_hauskoordinaten@senstadt&type=FEED) in einzelne .osm XML Dateinen nach Postleitzahl und Straße umwandle.
Die Dateien sind jeweils wie folgt benannt: _<Straßenname>.osm
Ihr inhalt gestaltet sie wie folgt:
<?xml version="1.0" encoding="UTF-8"?>
<osm version="0.6" generator="BerlinHausnummernConverter">
<node id="-118" visible="true" lat="52.5154214976078" lon="13.3205073439076">
<tag k="addr:housenumber" v="2" />
<tag k="addr:street" v="Abbestraße" />
<tag k="addr:postcode" v="10587" />
<tag k="addr:city" v="Berlin" />
<tag k="addr:country" v="DE" />
<tag k="addr:inclusion" v="actual" />
<tag k="source" v="Geoportal Berlin / Hauskoordinaten" />
</node>
<node id="-119" visible="true" lat="52.5157614238371" lon="13.3207212582769">
<tag k="addr:housenumber" v="4" />
<tag k="addr:street" v="Abbestraße" />
<tag k="addr:postcode" v="10587" />
<tag k="addr:city" v="Berlin" />
<tag k="addr:country" v="DE" />
<tag k="addr:inclusion" v="actual" />
<tag k="source" v="Geoportal Berlin / Hauskoordinaten" />
</node>
...
</osm>
Zur Übernahme in OSM schlage ich prinzipiell folgendes Vorgehen vor:
- Man lade einen Straßenzug (oder mehrere) in JOSM herunter (Menu “Datei” → Vom OSM Server herunter laden…)
- Man öffne eine der konvertierten .osm Dateien über das Menu “Datei” → “Öffnen”.
Daraufhin sind die geöffneten Hausnummern als (aktive) ebene zu sehen. Darunter liegen die aktuell herunter geladenen OSM Daten in einer weiteren Ebene. In Falle der Hoffmannstraße sind bereits ein paar Hausnummern in den herunter geladenen OSM Daten eingetragen. Man sieht sie gräulich auf der (unteren, inaktiven) OSM Ebene.
- Um Duplikate zu vermeiden lösche man diejenigen der neuen Hausnummern, die bereits in den bestehenden Daten repräsentiert sind. Einfach markieren und “Entf” drücken. Für dieses Beispiel habe ich absichtlich eine Straße gewählt, für die manche Hausnummern bereits vorhanden sind, andere jedoch noch nicht. In den meisten Fällen sind jedoch keine oder alle Hausnummern vorhanden, sodass dieser Arbeitsschritt häufig sehr schnell geht.
- Nach dem Entfernen der Duplikate können die neuen Hausnummern in die herunter geladene Ebene übernommen werden. Dazu einfach die obere Ebene markieren und den Knop “Aktuelle Ebene mit einer anderen Ebene verbinden” drücken. Im darauf folgenden Dialog als andere Ebene dann die herunter geladene OSM ebene (Datenebene 1) auswählen.
- Zum Schluss kann man die um die fehlenden Hausnummern ergänzten Daten wieder hoch laden.
Die Profi-Variante des Verfahrens:
Um schneller und effizienter voran zu kommen empfehle ich, immer ganze Postleitzahlenbereiche in JOSM zu laden.
-
Alle osm-Dateien mit der entsprechenden PLZ auf ein mal öffnen. Dabei wird für jede Straße eine eigene Ebene erzeugt. Durch Druck der Taste ‘1’ kann man auf den gesamten PLZ-Bereich heraus zoomen.
-
Eine neue, leere Ebene hinzu fügen (Strg+N) und dorthinein die Kartendaten vom OSM-Server herunter laden (Strg+Umschalt+Unten).
-
Die neue Ebene in der Liste der Ebenen nach ganz unten verschieben.
-
Alle existierenden Hausnummern in der neuen Ebene markieren. Dazu (Strg+F) drücken, in die Suchzeile “housenumber” eingeben (mit Gändefüsschen) und “Suche Starten” drücken. Nun sind alle existierenden Hausnummern rot umrahmt und alle Gebäude mit eingetragener Hausnummer rot markiert. Das hilft enorm beim Finden von schon vorhandenen Hausnummern.
-
In der Ebenenliste das grüne Häkchen von der neuen Ebene weg auf die erste Straße setzen. Durch Druck von ‘2’ kann man automatisch auf die Straße zoomen.
-
Schon vorhandene Hausnummern entfernen. Danach zur nächsten Straße wechseln u.s.w.
-
Wenn man alle Straßen durch hat, alle Straßenebenen in der Ebenenliste markieren (alle außer die neue Ebene) und auf “Aktuelle Ebene mit einer anderen Ebene verbinden” klicken, um alle Straßenebenen zu einer einzigen Straßenebene zu vereinen.
-
Mit (Strg+F) nochmal den Suchdialog öffnen und in der frisch vereinten Straßenebene nach dem Stichwort potential zu suchen und die entsprechenden Hausnummern ausomatisch alle zu selektieren. Mit dem Tag potential sind alle Hausnummern gekennzeichnet, die Laut Katasteramt vergeben sind, jedoch derzeit (vermutlich) kein Haus bezeichnen. Einige davon sind aber durchaus richtig. Die wollen wir behalten. Die anderen sollen nach mehrheitlicher Meinung nicht in OSM integriert werden. Wir wollen diese also vor dem Hochladen löschen.
-
Dazu als Hintergrund die BING Satellitendaten einstellen (die Deckkraft eventuell etwas zurück nehmen, damit man die Hausnummern noch gut sieht)
-
Mit gehaltener Strg-Taste diejenigen der selektierten potential Hausnummern deselektieren, die laut Satellitenbild tatsächlich ein Haus beherbergen. Alle anderen bleiben selektiert und können anschließend mit der Entf-Taste gelöscht werden.
-
Optional kann jetzt die Straßenebene noch mit der “neuen” Ebene vereint werden. Man kann aber auch einfach die Straßenebene auf den OSM-Server hoch laden. Wichtig ist, die Quelle zu nennen. Ich schreibe
“Geoportal Berlin / Hausnummern (http://fbinter.stadt-berlin.de/fb/berlin/service.jsp?id=a_hauskoordinaten@senstadt&type=FEED)”
und als Kommentar sinnigerweise
“Semi-manual import of addresses from Geoportal Berlin / Hausnummern (using the converted data files from http://forum.openstreetmap.org/viewtopic.php?pid=415954#p415954))” -
Fertig. Auf zum nächsten PLZ-Gebiet Erst einige Zeit später kann man mir dem Housnumver Validator prüfen, ob doch noch Duplikate übrig geblieben sind. Aber besser ein paar Duplikate als gar keine Hausnummern.
Konvertierte Daten:
Die .osm files habe ich hier zum Download bereit gestellt: http://hochladen.to/files/hPFw1398529171.html
Organisatorisches:
Damit wir uns die Arbeit nicht zwei mal machen: Bitte nach Möglichkeit immer ganze Postleitzahlenbereiche vollständig bearbeiten und die entsprechenden PLZ hier posten. Das soll uns helfen den Überblick zu behalten über die Arbeiten zu behalten. Auch hier gibt es eine schöne Seite zum aktuallen Stand: http://berlinadd.morbz.de/
Zum rechtlichen:
Ich habe bei der Berliner Senatsverwaltung nochmal nachgefragt wegen der Übernahme der Daten. Laut ihrer Aussage steht diesem Vorhaben nichts im Wege.
Für Kommentare, Anregungen und Unterstützung bin ich dankbar,
Larifari77