TSM - Asigurarea calității datelor din OpenStreetMap folosind Keepright și Osmose

Olivia Robu - Map Analyst @ Telenav

Sistemele de navigaţie care au la bază harta OpenStreetMap (OSM) sunt din ce în ce mai utilizate. Acest lucru se datorează faptului că harta poate fi modificată online şi furnizează date geografice gratuite la nivelul întregii lumi. Una dintre problemele esenţiale întâlnite de către organizaţia OSM se referă la calitatea datelor. Harta OSM este permanent îmbunătăţită de către analiştii Telenav şi de către utilizatorii din întreaga lume.

OpenStreetMap conţine o varietate de map features. Dintre acestea, cele mai importante sunt cele care influenţează rutarea, precum: diferite tipuri de restricţii, geometria şi numele drumurilor, drumurile cu sens unic, limitările de viteză, indicatoare rutiere, informaţii despre benzile de circulaţie, etc. . Două dintre cele mai însemnate tooluri utilizate de către noi în vederea asigurării calităţii datelor sunt Keepright şi Osmose.

Erori identificate cu aplicația Keepright

Keepright este un tool care identifică un număr foarte mare de erori în harta OSM şi asigură în acest mod o calitate superioară a editărilor. Identificarea şi corectarea acestor erori se poate realiza atât prin intermediul paginii de internet (https://www.keepright.at/), cât şi prin intermediul unui fişier de tip .txt, care se actualizează o dată pe lună şi conţine erorile tuturor utilizatorilor la nivel global. În ceea ce priveşte identificarea online a erorilor, aplicaţia deţine un sistem prin care se pot raporta atât erorile invalide cât şi cele reale. Corectarea acestora se poate realiza în diferite programe de editare, cum ar fi: JOSM, Potlatch, iD sau  Level0.

Această aplicaţie identifică următoarele categorii de erori, care afectează rezultatele sistemului de navigaţie: dead-ended one-ways, missing tags, motorways without ref, floating islands, fixme-tagged items, relations without type, loopings, mixed layers intersections, strange layers, motorways connected directly, missing type, missing from way, missing to way, from or to not a way, via is not on the way ends, restrictions,  wrong direction, _link-connections, deprecated tags.*

Erori identificate cu aplicația Osmose

Osmose verifică datele OSM pentru eventualele erori sau inexactități. Aceste erori sunt revizuite fie de către noi, fie de către membrii din comunitate. După caz, acestea sunt editate pentru a obține o calitate cât mai bună a hărții. Osmose identifică o gamă mare de erori. Dintre acestea filtrăm numai pe acelea care influențează rutarea și le prioritizăm în funcție de importanță: 1-member relation, bad tag key, deprecated tag, fixme, incoherent restriction, incompatible tags, incorrect lane, incorrect layer, incorrect tag, double_tagging, highway_almost_junction, highway_bad_intersection,highway_broken_level_continuity,highway_cul-de-sac_level, highway_deadend, highway_features, highway_link, highway_name_close, highway_noexit, highway_tunnel_bridge, highway_turn_lanes, highway_without_ref, node_like_way, relation_restriction, roundabout, roundabout_reverse, soundex, tag_typo, way_approximate, sax, spelling.

Modul de lucru utilizând aplicația Keepright

Etapele de lucru includ atât căutarea erorilor în aplicaţia online (Fig.1) cât şi identificarea acestora în fişierul .txt descărcat din aplicaţie. În acest fişier, erorile pot fi organizate pe utilizatori şi regiuni. Primul pas presupune descărcarea fişierului https://keepright.at/keepright_errors.txt.bz2, după care urmează importarea acestuia în PostGIS într-o bază de date ce conţine informaţii spațiale, unde va fi filtrat folosind o serie de interogări.

Fig.1 Aplicaţia Keepright

Rezultatul obţinut după generarea acestor interogări este un fişier ce conţine strict erorile care influențează navigaţia.

În imaginea de mai jos sunt prezentate câteva interogări utilizate pentru filtrarea datelor.

Fig. 2 Interogări realizate în PostGIS

Figura 3 reprezintă erorile din OSM filtrate în funcţie de un anumit utilizator.

Fig. 3 Erori din Keepright specifice unui user

Modul de lucru utilizând aplicația Osmose

Osmose este o aplicație de linie de comandă Java și o aplicație web care poate fi folosită pentru a citi, a scrie și a manipula datele din OSM. Osmose, al cărui nume înseamnă OpenStreetMap Oversight Search Engine, este unul dintre instrumentele pe care le utilizăm pentru a detecta problemele din hartă.

Fig. 4 Osmose tool

Pentru a începe filtrarea erorilor din Osmose descărcăm prima data fișierul de erori din site-ul oficial: http://osmose.openstreetmap.fr/export/. Îl dezarhivăm ​​şi folosind scriptul osmoseimp.py, alegem zona pe care dorim să o corectăm (Fig.5).

Fig.5 Obținerea fișierului din Osmose

După ce obținem fișierul îl deschidem în QGIS și îl salvăm în format shapefile. Apoi îl importăm în PgAdmin și filtrăm erorile care ne interesează folosind o serie de interogări.

Fig. 6 Filtrarea erorilor din Osmose folosind PgAdmin și PostgreSQL

Corectarea erorilor

Fişierul final este încărcat în programul JOSM pentru analizarea şi editarea posibilelor erori. Un exemplu de eroare des întâlnit este "deprecated tag", filtratat atât din Keepright cât și din Osmose. "Deprecated tag" se refera la tagurile care nu mai sunt folosite și care trebuie înlocuite sau eliminate din OSM. În următoarea imagine (Fig.7) putem vedea cum arată eroarea și cum putem să o corectam. În acest caz, erorile sunt "hour-on" și "hour-off" care au fost șterse conform OSM Wikipedia.

Fig.7 Corectarea erorii "deprecated tags "

Un alt exemplu de eroare este "floating islands", care afișează way-urile care nu sunt conectate sau nu sunt accesibile. În Figura 6 este prezentat un exemplu de astfel de eroare și modul în care este corectată.

Fig.8  Corectarea erorii "floating islands"

Un exemplu de eroare invalidă este prezentat în Figura 9. Această eroare face parte  din categoria "dead-end one-ways", în care se identifică drumurile cu sens unic care nu sunt conectate. În imaginea de mai jos se poate observa faptul că aceste drumuri sunt conectate, așadar eroarea nu este validă.

Fig. 9 Eroare invalidă în categoria "Dead-end one-ways"

Cele mai concludente erori, care ne ajută să păstram o calitate superioară a hărții OSM, sunt prezentate în Figura 10.

Fig.10 Cele mai concludente erori din Keepright și Osmose

Concluzii

Tool-urile Keepright și Osmose sunt folosite pentru a identifica un număr mare de potențiale erori și inexactități. Utilizatorii trebuie să verifice dacă erorile sunt reale (de obicei, există și erori invalide) și să le corecteze pentru a îmbunătăți calitatea hărții.