In giro per un mappamondo libero: introduzione ad OpenStreetMap

Post on 14-Dec-2014

96 views 2 download

description

Introduzione ad OpenStreetMap, tenuto il 20130228 per la conferenza "OpenGeoData Italia, istruzioni per l'uso" presso il Centro Congressi Frentani, Roma

Transcript of In giro per un mappamondo libero: introduzione ad OpenStreetMap

Introduzione ad OpenStreetMap

In giro per un mappamondo libero:introduzione ad OpenStreetMap

Roma, Centro Congressi Frentani, 28.02.2013

Martin Koppenhöferdieterdreist@gmail.com

Che cos'è Openstreetmap?

E' un progetto per creare insieme la mappa libera del mondo

Principio simile a wikipedia:● Crowd-sourced (tutti possono partecipare)● libero (free and open):

– utilizzabile gratuitamente da chiunque anche a scopo di lucro

– tutti possono modificare tutto– tutti dati sono distribuiti con licenza open (ODbL)

Che cos'è Openstreetmap?

iniziato nel 2004in Inghilterra

Pagina iniziale del 2005 da archive.org

Che cos'è Openstreetmap?

iniziato nel 2004in Inghilterrada Steve Coast

Pagina iniziale del 2005 da archive.org

Che cos'è OpenStreetMap? pietre miliari

2004 Steve Coast dà avvio al progetto

2006 La OpenStreetMapFoundation (OSMF) viene registrata a Londra

2007 Prima Conferenza (State of the Map, SotM)

2009Mapping Kibera, Kenya, la baraccopoli più grande dell'Africa

2010 Nuove ortofoto: a maggio Portale Cartogr. Nazionale ed a novembre Bing Aerial

2011 Un miliardo di nodi

2012 Cambio licenza, da cc-by-sa 2.0 a ODbL 1.0

2013 Un milione di utenti registrati

2013 La quantità dei nodi supera 231, i programmi devono prevedere 64 Bit node IDs.

Chi partecipa? Utenti registrati

crescita esponenziale!

1.046.7011.046.701

Chi partecipa?

SotM 2012 TokyoSotM 2012 Tokyo

SotM-EU 2011 ViennaSotM-EU 2011 Vienna

OSMit 2010 GenovaOSMit 2010 Genova

Dove sono gli utenti attivi?

Sviluppo di OpenStreetMap a Roma

Crescita enorme dei dati

2012

2007© OpenStreetMap contributors cc-by-sa 2.0

Ottenere i dati - planet file

banca dati centrale a Londra (postgresql), API riservata all'editing

OSMFoundation pubblica un planet-file (dump di tutti i dati attuali) per settimana

updates incrementali (diff)● minutely (ogni minuto)● hourly (ogni ora)● daily (ogni giorno)

ogni tanto full-history-planet

Ottenere i dati - formati principali

● Formato API 0.6, usato da aprile 2009● XML ( .osm .osm.bz2)

● leggibile e modificabile con un editore di testo● ci sono varianti (con e privo di metadati)● generalmente compresso con bzip2

● PBF ( .pbf)● Protocolbuffer Binary Format● usa Google protocol buffers● no “tag hardcoding” (tags sono inclusi in strings)

● OSC ( .osc, .osc.gz): diffs (per aggiornamenti incrementali)

Ottenere i dati – altri servizi

Oltre a main API e planet files ci sono altri servizi, persone ed aziende che distribuiscono i dati di OSM

Servizi readonly API:● XAPI (“zappy”), l'originale in GT.M (MUMPS), offline● JXAPI, implementato in Java● Xappy.js, implementato in javascript (node.js)● Overpass API

– XAPI compatibility layer– Overpass QL (Query Language)

Ottenere i dati - download da terzi

Estratti dati geografici e tematici (esemplare): download.geofabrik.de

● Copertura globale (continenti e paesi)● Formati xml, pbf e shapefile, aggiornato ogni giorno

download.gfoss.it/osm/osm/● Italia e regioni in xml, aggiornato ogni settimana

metro.teczno.com (Michal Migurski)● Estratti di 100+ zone metropolitane, xml, pbf, shp

openstreetmapdata.com/data (Jochen Topf)● linee di costa e poligoni dei mari e della terra (land)

3 tipi di oggetti: ● node, way, relation

Struttura dati

3 tipi di oggetti: ● node, way, relation

il node è un punto

Struttura dati

3 tipi di oggetti: ● node, way, relation

il node è un punto con delle coordinate

lat = 42.436233lon = 12.245373

Struttura dati

3 tipi di oggetti: ● node, way, relation

il node è un punto con delle coordinate il way è una sequenza ordinata di nodes

Struttura dati

3 tipi di oggetti: ● node, way, relation (no area data type!)

il node è un punto con delle coordinate il way è una sequenza ordinata di nodes la relazione può contenere oggetti di ogni tipo:

nodes, ways ed altre relazioni● gli oggetti contenuti possono assumere ruoli

Struttura dati

3 tipi di oggetti: ● node, way, relation (no area data type!)

il node è un punto con delle coordinate il way è una sequenza ordinata di nodes la relazione può contenere oggetti di ogni tipo:

nodes, ways ed altre relazioni● gli oggetti contenuti possono assumere ruoli

Tutti gli oggetti possono avere dei tags! un area è un caso particolare di un way (tags)

Struttura dati

Tagging

Un tag è una sorta di etichetta che viene associata ad un oggetto (node, way, rel) per descriverlo

Openstreetmap usa delle coppie chiave – valore● per esempio maxspeed = 50

Tagging

Non c'é uno schema fisso per i tags● tutti possono inventare ed utilizzare qualsiasi tag● ogni oggetto può contenere un numero infinito di tags● ogni chiave può apparire solo una volta per oggetto● si consiglia di mettersi d'accordo per evitare il chaos

Tagging

building=churchamenity=place_of_worshipreligion=christiandenomination=catholic

barrier=retaining_wall

Tagging

historic=citywallshistoric:civilization=ancient_romanname=Mura Aurelianewikipedia=it:Mura Aurelianebarrier=city_wall

Tagging

Per organizzare il tagging e per documentare il consenso c'è un wiki:

wiki.openstreetmap.org

Tagging

per discussioni e domande c'è la Mailing-list [tagging] e le liste nazionali [talk-it], [talk-de], ecc.● http://lists.openstreetmap.org/listinfo/tagging● http://lists.openstreetmap.org/listinfo/talk-it● http://lists.openstreetmap.org/listinfo/talk-it-lazio● ...

Tagging

Ci sono anche servizi di terzi per capire la rilevanza di un certo tag, per esempio taginfo che crea statistiche sull'utilizzo dei tags:

Tagging

Editing

Il database centrale è accessibile a tutti gli utenti per fare l'editing.

L'accesso avviene tramite delle API-calls (chiamate all'interfaccia di programmazione)

Chiunque può scrivere un editore per modificare dati in Openstreetmap tramite la API

L'autentificazione dell'utente avviene tramite OAuth Gli editori più popolari sono:

● JOSM (Java OpenStreetMap Editor)● Potlatch 2 (basato su Flash)● Merkaartor (scritto in c++)● QGis + plugin● diversi editori per smartphone (Go Map!!, OsmAnd, …)

Prossimamente: iD, scritto in html5 e javascript

Editing

JOSM è scritto in Java ed è l'editore con più funzioni. E' estendibile con plugins, presets e mapstyles

Editing

Raccolta dati

Inizialmente si usava sopratutto il GPS per la raccolta dati.

Insieme ad appunti su un blocco note (o registrazioni audio e foto geo-riferenziate) si registrava durante i rilievi

Densità tracce GPS in Italia

Raccolta dati

Registrando la posizione ogni secondo si creano delle tracce...

Raccolta dati

... che possono poi essere ricalcate e descritte

Raccolta dati

dal maggio 2010 ci sono anche le ortofoto del Portale Cartografico Nazionale

Raccolta dati

e dal novembre 2010 quelle di Bing

Raccolta dati

però la fonte più importante rimane la conoscenza locale del territorio dei migliaia di mappatori appassionati!

Mapping Party Hanoi 2009,Foto di Khanh Le Ngoc Quoc, Flickr, cc-by-nc

Raccolta dati

Un mapping party è un evento per mappare insieme

Raccolta dati

Cambio di licenza, da cc-by-sa a ODbL

Dall'inizio la licenza era la cc-by-sa 2.0 (Attribuzione - Condividi allo stesso modo 2.0)

Dopo un processo di quasi 4 anni esce in settembre 2012 il primo planet con la nuova licenza:

Open Data Commons

Open Database License (ODbL) v1.0

http://opendatacommons.org/licenses/odbl/

Cambio di licenza, da cc-by-sa a ODbL

Perché abbiamo cambiato la licenza?

La cc-by-sa è una licenza per opere creative, probabilmente non adatta per proteggere un database di fatti.

Cosa cambia?

Entrambe le licenze hanno l'attribuzione e la condivisione allo stesso modo come vincoli, però con la ODbL questo si limita ai dati (derivative database, collective database) e non si estende su opere prodotte (produced works) come mappe.

Cambio di licenza, da cc-by-sa a ODbL

Voglio usare dati OSM, a cosa devo stare attento?● Chi pubblica dati o opere basati su dati OSM deve

– nominare i contribuenti di OSM come autori dei dati e dire che la licenza dei dati è l'ODbL

– mettere a disposizione i dati con cui ha creato il prodotto oppure

– descrivere il mecchanismo con cui ha manipolato i dati

L'insieme dei dati rimane sempre sotto l'ODbL (anche mescolati con altri dati, aspetto virale della licenza)

grazie per l'attenzione e fate belle mappe!

Credits:

Tutte le mappe © OpenStreetMap contributors con licenza cc-by-sa 2.0 basate su dati OSM in ODbL

osm grid by Pascal Neis

contact me: dieterdreist@gmail.com

Introduzione ad OpenStreetMap

sfondo: openwhatevermap.org