Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Házszámok lefedettségének javítása

Miklos V
June 19, 2017
58

Házszámok lefedettségének javítása

OpenStreetMap Meetup 2017 június (https://www.meetup.com/OpenStreetMap-Hungary/events/240744514/), Budapest

Miklos V

June 19, 2017
Tweet

Transcript

  1. Házszámok lefedettségének javítása
    Vajna Miklós
    2017-06-19

    View Slide

  2. Eddig:
    érintetlen terület
    házszámozása

    View Slide

  3. 3 / 15
    OpenStreetMap Meetup 2017 június, Budapest | Vajna Miklós
    Utcalista

    Overpass:
    [out:csv(::id, name)] [timeout:425];
    //area[name="Sasad"];
    area(3602714372);
    way(area)[highway]["bridge"!~".*"]["note"!="no-house-numbers"];
    out;

    View Slide

  4. 4 / 15
    OpenStreetMap Meetup 2017 június, Budapest | Vajna Miklós
    Utcalistához házszámok

    Overpass:
    [out:csv(::id, "addr:street","addr:housenumber",
    "addr:postcode", name)] [timeout:425];
    area(3602714372)->.searchArea;
    (
    way["addr:street"](area.searchArea);
    way["addr:housenumber"](area.searchArea);
    way["addr:postcode"](area.searchArea);
    // node, relation u.ez
    );
    out body;

    View Slide

  5. 5 / 15
    OpenStreetMap Meetup 2017 június, Budapest | Vajna Miklós
    Házszám nélküli utcák

    Python script, lényeg:
    streets = …
    streetsWithHouses = …
    streetsWithoutHouses = [street for street in streets if \
    street not in streetsWithHouses]
    self.assertEqual([], streetsWithoutHouses)

    View Slide

  6. Most:
    részben felmért terület

    View Slide

  7. 7 / 15
    OpenStreetMap Meetup 2017 június, Budapest | Vajna Miklós
    Utcák listája

    Egy városrészen belül

    Tegyük fel, hogy ez teljes az OSM alapján

    Miért pont ez egy bugyor?
    – Kálló Esperes vs. Kálló esperes
    – 50-100 utca, kezelhető

    Az előző módszer használható

    De a határ közelében lesznek „fél” utcák

    Ezek később majd valótlan hiányokat fognak
    okozni

    View Slide

  8. 8 / 15
    OpenStreetMap Meetup 2017 június, Budapest | Vajna Miklós
    Utcatáblák felmérése

    OSM alapján végigjárni az utcát mindkét
    irányban

    Bicikli / gyalog kombináció vált eddig be
    leginkább

    Minden sarkon lefotózni az utcatáblákat

    Véletlen homályos fotó kisebb eséllyel okoz
    hiányzó adatot („jó redundancia”)

    Mapillaryre feltölteni

    View Slide

  9. 9 / 15
    OpenStreetMap Meetup 2017 június, Budapest | Vajna Miklós
    Házszám-lista gyártása

    Ebből lehet feltételezett házszám-
    tartományokat gyártani

    Példa: 184 → 190, feltételezzük, hogy
    van 184, 186, 188, 190

    Felső határ

    Később ellenőrizni!

    View Slide

  10. 10 / 15
    OpenStreetMap Meetup 2017 június, Budapest | Vajna Miklós
    Létező házszámok lekérése

    Szintén használható a korábbi OSM-ből
    Overpassal lekérő módszer

    Normalizálás szükséges az
    összehasonlításhoz

    10-12 → 10, 12

    1/a → 1

    View Slide

  11. 11 / 15
    OpenStreetMap Meetup 2017 június, Budapest | Vajna Miklós
    Feltételezett hiányzó adatok

    Az OSM és a fotók alapján kimutathatók a
    feltételezett hiányzó házszámok

    Felmérés, második menet

    vagy egyben, de akkor meg feleslegesen
    rögzítünk létező házszámokat is

    vagy nem offline szerkesztünk

    View Slide

  12. 12 / 15
    OpenStreetMap Meetup 2017 június, Budapest | Vajna Miklós
    Feldolgozás: ha nem létezik

    10 → 18, majd 20 → 30 volt az utcatábla

    De a városrészhez csak az első fél
    tartozik

    Vagy a helyszínen nem található pl. a 12.

    JSON „szűrő” Hegyalja út / Sashegyhez:
    "hegyalja_ut": {
    "ranges": [
    { "start": "47",
    "end": "93",
    "isOdd": "true"},
    { "start": "70",
    "end": "182",
    "isOdd": "false"}]}

    View Slide

  13. 13 / 15
    OpenStreetMap Meetup 2017 június, Budapest | Vajna Miklós
    Feldolgozás: ha létezik

    Házszámhoz koordináta rögzítése

    Korábbi módszerrel

    Nekem a Keypad-Mapper 3 vált be

    Itt jön a tényleges OSM szerkesztés

    pl JOSM-mel

    View Slide

  14. 14 / 15
    OpenStreetMap Meetup 2017 június, Budapest | Vajna Miklós
    Eredmények

    Házszám nélküli utcák: Sasad,
    Gazdagrét, Sashegy, Németvölgy,
    Mártonhegy

    Interpolált „házszámok” pontosítása:
    Sasad, Gazdagrét, Sashegy, Németvölgy

    Sebességhatárok: Sasad

    Pontosított házszámok: Sasad,
    Gazdagrét, Sashegy folyamatban

    View Slide

  15. 15 / 15
    OpenStreetMap Meetup 2017 június, Budapest | Vajna Miklós
    Összefoglalás

    A házszámozás adatimport nélkül is
    megoldható

    De némi automatizálással könnyebb
    megtalálni hol érdemes felmérni

    Lekérdezések, scriptek Githubon

    Köszönöm a figyelmet! :-)

    Diák: https://vmiklos.hu/odp

    View Slide