Hungary/Utcanév teljesség
Költözés, átszervezés és átalakulás alatt!
A tartalom költözik ... A régi helyen nem elérhető ..
English summary
- OpenStreetMap Hungary - Street Name Completeness Statistics - documentation.
- Status: Release candidate
- Base Data: National Election Office - Voting district public database : http://www.valasztas.hu/en/ovi/index.html
Utcanév teljességi projekt - RC2 - státusz
A visszajelzéseteknek köszönhetően jelentősen módosult a párosító algoritmus. Köszönet mindenkinek! :)
Elérhetőség:
- Főoldal ....
- Településenkénti lista (fapados) : ... például:
Jelenlegi állapot (az algoritmus módosulhat, a nagyságrend érzékeltetésére viszont jó)
(2014-02-08) | egyedi utcanév | százalékos arány |
---|---|---|
pontosan egyező / exact | 56318 | 47.98780% |
hasonló / similar | 9659 | 08.23030% |
hiányzó / missing | 51382 | 43.78190% |
Bevezető
Az OpenStreetMap új felhasználónál gyakran felmerül, hogy mennyire megbízható és teljes a közösségi térkép. (https://wiki.openstreetmap.org/wiki/Completeness) Erre nem igazán tudunk pontos választ adni, mert sok mindentől függ. A települések, a településhatárok, a főbb utak és folyók megtalálhatóak. A
- főbb POIknál ( polgármesteri hivatal / kórház / gyógyszertár / iskola / óvoda / bank atm / élelmiszerbolt / kocsma / stb. )
- és az utcaneveknél sajnos már nem ez a helyzet.
A választások közeledtével publikussá tett választókörzeti adatok tartalmazzák az utcaneveket is, ami jó alapot ad az összehasonlításra. De a választási utcanévjegyzék csak azokat az utcákat tartalmazza, ahol laknak választópolgárok. Lakatlan - építés alatt lévő - kihalt utcák nem szerepelnek benne. Ebből az is következik, hogy vannak utcák az OpenStreetMap-ben, amelyek nem szerepelnek a választási utcanévben, és ez így normális.
Vagyis a lehetőségek adottak egy hazai utcanév teljességi ellenőrzésnek. Hogyan is állunk a magyar utcanevekkel? :)
Jogi dolgok
Mivel a választási utcanév adatok jogi háttere nem teljesen tiszta, emiatt csak összehasonlításra lehet használni!
TODO : Pontos licensz megtudakolása.
Technikai háttér
- PostgreSQL9.3 ; PostGIS2.1; R; osm2pgsql
- Adatforrás: http://download.geofabrik.de/europe/hungary.html
- Jelenleg minden nap automatikusan lefut az összehasonlítás a legfrissebb napi extraktumokból. (ha mégse, akkor a településlistánál látszódik az utolsó generálás időpontja.) A szerkesztők által végzett módosításoknak másnap már meg kell jelenjenek.
Körülbelül reggel 10h -ra állnak elő a riportok, amikor már biztosan lehet nézegetni. (az ütemezést valószínűleg korábbra is lehet hozni)
Leválogatás köre az OpenStreetMap-ből
- rengeteg új tag is bekerült a leválogatásba
leisure=park highway=pedestrian,highway=footway,highway=residential place=hamlet,place=farm,place=locality,place=allotments,place=isolated_dwelling building=train_station railway=station,railway=halt
ha még valami hiányozna jelezzétek ( és küldjetek mellé példát is ! )
A párosítás eredménytípusai
A településenkénti riportokban CHEKTYPE oszlopban találhatóak meg.
"EGYEZŐ"
találat ami pontosan egyező [ osm-"key:name" = "választási utcanév" ]
"EGYEZŐ_ALT_NAME"
találat ami pontosan egyező az alt_name-el ( osm-"key:alt_name" = "választási utcanév" )
"HASONLÓ+03p"-"HASONLÓ+09p"
Szöveg hasonlóság, különböző barkácsolt kód és SQL -es text összehasonlító függvények alapján ( osm-"key:name" ~ "választási utcanév" )
A hasonlóságot pontoztam. A "+03p" - 3 pontot jelent, a "+04p" 4 pontot és így tovább. A legpontosabb a "HASONLÓ+09p" - amiben főleg ékezet elírások kerültek.
Az esetek többségében jó eredményt ad a párosítás. De lehet benne kb 1-2%-os hibaarány. A helytelen párosításokról tudok. A küszöbértékkel lehet kísérletezni, de egyenlőre szerintem nem éri meg a plusz ráfordítást.
"HASONLÓ_ALT_NAME+04p" - "HASONLÓ_ALT_NAME+09p"
hasonlóság vizsgálat : "alt_name=*" ~ "választási utcanév"
"NINCS_HASONLO_OSM"
Nem talált OSM-es hasonló vagy pontosan egyező utcanevet. Csak a választási utcanév listába szerepel az OSM-ben nincs hasonló.
"NINCS_HASONLO_VAL"
Nem talált hasonló vagy pontosan egyező választási utcanevet. Csak az OpenStreetMap-ben szerepel a választási utcanévben nem!
Ismert problémák
Vasútállomások
A vasútállomások egymásra találása egy külön érdekes probléma, mert a választási utcanévben jellemzően "MÁV vasútállomás"/ "Vasútállomás" szerepel, ami egy településen belül egyértelműen azonosít.
Emiatt ideiglenesen az előfeldolgozásban a "name"/"alt_name" automatikusan kiegészítésre kerül a "vasútállomás" szóval. A körülbelüli algoritmus:
IF railway=station then name=name"+" vasútállomás" ; IF railway=station and alt_name="" then alt_name="vasútállomás" ;
Vasútállomások javaslat
Ha az algoritmus végleges lesz, akkor a railway=station és railway=halt elemeknél megfontolandónak tartanék egy automatikussan kiegészítést pl.: alt_name="vasútállomás"
Viszont ezt jól át kell gondolni:
- nem egyértelmű mindig, lehet: "vasúti pályaudvar","vasúti megállóhely","vasútállomás"
- egy településen lehet több vasútállomás is, vagyis itt nem lehet bambán alkalmazni a névmegadást. ( ezt programmal lehet ellenőrizni )
- A vasútállomásokat nagyság szerint osztályozzák is. ( VPE adatbázis )
- és egyéb végiggondolni való extrém kivétel ..
TODO: kidolgozni az algoritmust és meghirdetni a közösség felé.
Kerülethatárokon átlógó utcák
Főleg Budapesten előforduló probléma, hogy egy utca továbbnyúlik és belóg a másik kerületbe. Ha ez nagyon zavaró, akkor valamilyen speciális OSM taggelést ki kell találni ezekre, hogy ne jelenjenek meg a kerületi listában. A leválogatásra kerülő objektumok az st_intersects -es függvénnyel kerülnek megállapításra.
BP-kerület: OSM utcahossz 30m-alatt
BP-kerület:Választási utcanév - OSM hossz - 30m alatt
Egyéb programhibák , problémák
biztos vannak, majd folyamatosan frissítem a listát.
Folytatási lehetőségek
Rengeteg ötlet van ezek közül néhány
- Az összehasonlítás finomítása, vagyis megkülönböztetni néhány tipikus alapproblémát
- út - utca : amit szinte szinonímiaként használunk
- elfogadott egyértelmű utcanév rövidítések kiszűrése ( de vannak nem egyértelműek is! ( pl. "Hunyadi Mátyás" és "Hunyadi János" -is lehet egy Hunyadi utca )
- "Petőfi Sándor utca" = "Petőfi utca" ,
- "Ady Endre utca" = "Ady utca"
- Riportok külalakjának javítása
- Riportokba - JOSM és IDEditor linkek integrálása, hogy egyszerűbb legyen a szerkesztés
- Utcanév elírások listázása ( speciális karakterekre szűrés, stb )