Una panoramica su OpenStreetMap, un servizio di web mapping open source cui si può contribuire in stile Wikipedia. In questa presentazione viene mostrato come poter contribuire ad OSM e "sfruttare" il relativo database per creare servizi innovativi. La presentazione è stata realizzata per il Linux Day 2014 a Napoli (www.linuxdaynapoli.org)
4. Una mappa, non un layer
Semplice, uso Google Maps!
• Creo una “mappa”
• Posiziono i marker
• La condivido
In realtà non ho creato una “mappa” ma un livello che
sovrappongo al base layer di Google
• Non posso cercare i POI - Point Of Interest
• Non creo una discussione
• Non possiedo una history delle modifiche
4
5. Molto più di una mappa
1. Cosa è OSM
2. Come contribuire
Traccia il tuo percorso
Aggiungi i dettagli
Dona il tuo percorso ad OSM
3. Come sfruttare OSM
I vantaggi di un database open (odbl)
Applicazioni nel mondo reale
5
6. 6
+ ⋍
Mappa Wikipedia OpenStreetMap
openstreetmap.org
7. 7
OSM non ha in sè logiche di profitto
OpenStreetMap è neutrale e trasparente
la community decide cosa visualizzare e come
Database liberamente scaricabile
Mappe offline, applicazioni complesse
Algoritmi di routing FLOSS
Liberi di implementare il proprio software di routing
!
you go here
8. OSM non ha in sè logiche di profitto
OpenStreetMap è neutrale e trasparente
la community decide cosa visualizzare e come
Database liberamente scaricabile
Mappe offline, applicazioni complesse
Algoritmi di routing FLOSS
Liberi di implementare il proprio software di routing
!
8
you go here
9. Il tuo contributo alla mappa libera
9
1 Raccolta dei dati
2 Upload
3 Editing e aggiunta dei dettagli
4 Rendering della mappa
10. Il tuo contributo alla mappa libera
10
1 Raccolta dei dati
Facoltativi
2 Upload
3 Editing e aggiunta dei dettagli
4 Rendering della mappa
11. Il tuo contributo alla mappa libera
11
1 Raccolta dei dati
In bici … A piedi …
GPS Logger, Appunti,
Fotocamera, …
12. username
password
Il tuo contributo alla mappa libera
2 Upload
12
1. Download dei dati
dal dispositivo
2. Conversione in
formato GPX
3. Upload sul
server OSM
13. Il tuo contributo alla mappa libera
3 Editing e aggiunta dei dettagli
13
Tracciato Fiume Hawkesbury (Australia)
Utente steve_dawson
longitudine
latitudine (150.979, -33.397)
Sydney
14. Il tuo contributo alla mappa libera
3 Editing e aggiunta dei dettagli
14
Homepage http://josm.openstreetmap.de!
Version ! 7643
15. Il tuo contributo alla mappa libera
3 Editing e aggiunta dei dettagli
15
Josm
16. Il tuo contributo alla mappa libera
16
3 Editing e aggiunta dei dettagli
Immagini aeree
! Josm
Bing Sat
Mapquest
17. Il tuo contributo alla mappa libera
!
Etichette
3 Editing e aggiunta dei dettagli
17
Finestre Josm
node
way
relation
18. Il tuo contributo alla mappa libera
18
3 Editing e aggiunta dei dettagli
Josm
19. Il tuo contributo alla mappa libera
19
3 Esempio: Napoli - Stadio
Josm
20. Il tuo contributo alla mappa libera
20
3 Esempio: Napoli - Stadio
Josm
21. Il tuo contributo alla mappa libera
21
3 Esempio: Napoli - Stadio
Josm
22. Il tuo contributo alla mappa libera
4 Rendering della mappa
22
Mapnik
Browser
C++
PostgreSQL
PostGIS
23. Il tuo contributo alla mappa libera
4 Rendering della mappa
23
a
b
c
1 2 3 4
Slippy Map
pixel
lat-lon
Tile rendering
Pan, zoom, …
Aggiunta livelli
24. Il tuo contributo alla mappa libera
4 Rendering della mappa
24
openlayers.org
wiki.openstreetmap.org/wiki/Frameworks
25. Ottimo lavoro! E adesso?
25
1 GPS logger, smartphone, carta e penna, …
2 Upload della traccia GPX
3 Editing della traccia e aggiunta dei dettagli
con JOSM
4 Rendering della mappa lato server e
visualizzazione lato client
29. Sfruttare OSM per realizzare servizi
29
Database OSM
(ODbL)
download in locale
processing
API
web services map matching
overpass turbo
sociale
30. Sfruttare OSM per realizzare servizi
overpass-turbo.eu
tool web-based per il
filtraggio dei dati di OSM
!
input
<query type=“node”>
<has-kv k=“natural”
v=“spring”/>
<bbox-query {{bbox}}/>
</query>
!
output
mappa, GPX, GeoJSON,
PNG, …
30
fieldpapers.org
tool web-based per
realizzare mappe da
stampare
!
input
area geografica, punti
di interesse
!
output
mappa in formato PDF
31. Sfruttare OSM per realizzare servizi
overpass-turbo.eu
tool web-based per il
filtraggio dei dati di OSM
!
input
<query type=“node”>
<has-kv k=“natural”
v=“spring”/>
<bbox-query {{bbox}}/>
</query>
!
output!
mappa, GPX, GeoJSON,
PNG, …
31
fieldpapers.org
tool web-based per
realizzare mappe da
stampare
!
input!
area geografica, punti
di interesse
!
output
mappa in formato PDF
33. Sfruttare OSM per realizzare servizi
Gestione e controllo di flotte
Monitoraggio del traffico
Gestione delle segnalazioni
33
Nick - 35 km/h
cons. 6 l/100km
34. Sfruttare OSM per realizzare servizi
34
Spostamento dei veicoli - in OpenLayers
strategy = new OpenLayers.Strategy.Refresh({interval: 3000})
? Autostrada SA.RC.
Map Matching - in PostgreSQL
Algoritmo di matching per conoscere la strada
cui appartiene un punto
39. Licenza
• Licenza Open Data Commons Open
Database License (ODbL)
• Copiare, distribuire, trasmettere, adattare i
dati finchè lo si attribuisce a
OpenStreetMap e i suoi contributori
• Cartografia e documentazione sotto
licenza CC-BY-SA
39