JOSM: Editant OpenStreetMap a partir d’una ortofoto de La Palma de Cervelló
OpenStreetMap és un projecte col·laboratiu per crear mapes de contingut lliure usant dades obtingudes mitjançant dispoditius GPS i altres fonts de dades (paràgraf extret de la Viquipèdia).
A Espanya l’any 2009 es va fundar l’associació sense ànim de lucre anomenada OpenStreetMap Espanya , d’àmbit nacional i amb els mateixos objectius que la OpenStreetMap Foundation.
A La Palma de Cervelló vam tenir la sort de poder contar amb un dels fundadors d’aquesta associació, el Celso G., en el primer Software Freedom Day que va organitzar La Konfraria de La Vila del Pingüí el 16 de setembre del 2011 (veure la web aquí).
La jornada va ser molt interessant i ens ha animat a fer aquesta entrada al bloc per explicar quatre cosetes per qui vulgui iniciar-se en l’edició de mapes d’OpenStreetMap, en aquest cas treballant amb l’editor multiplataforma JOSM (cal Java) i una ortofoto (enlloc de traces de GPS).
Evolució del mapa de La Palma de Cervelló a OpenStreetMap, durant la setmana posterior al Software Freedom Day 2011 |
Com que l’entrada és una mica llarga, l’hem subdividit en capítols perquè es pugui tenir accés directe a cadascun d’ells:
Capítols d’aquesta entrada: [1] Descarreguem i instal·lem JOSM, [2] Comencem a preparar les dades d’OSM i l’ortofoto, [3] Conceptes bàsics per a editar el nostre mapa, [4] Comencem a editar el nostre mapa: un exemple, [5] Pujant l’edició a OpenStreetMap.
1. Descarreguem i instal·lem JOSM
En primer lloc caldrà que ens descarreguem/instal·lem l’aplicació JOSM per poder editar el mapa. Si ja saps com fer-ho, pots anar directament a l’utilització de JOSM clicant aquí. Si vols saber com descarregar/instal·lar JOSM has de saber que podem fer-ho de dues maneres:
- Podem instal·lar el JOSM des del Centre de programari de l’Ubuntu, simplement cerquem JOSM al quadre de cerca i l’instal·lem. Aquesta opció no la recomano perquè és possible que no ens instal·li la darrera versió del JOSM, a mi no m’ha funcionat (m’ha donat error al llançar JOSM) i per tot això penso que és preferible optar per l’opció que expliquem a continuació.
- També podem descarregar-lo des d’aquesta pàgina, on haurem de clicar l’enllaç de l’apartat “Descargue el JOSM probado versión núm“ de la secció “Descargar”. Quan cliquem aquí estarem descarregant l’arxiu josm-tested.jar, que és un fitxer de Java i per tant utilitzable en qualsevol plataforma: Linux, Mac o Windows sempre i quan tinguem instal·lat el Java.
Si hem optat per la segona opció per executar JOSM caldrà en primer lloc que donem permisos al fitxer josm-tested.jar perquè s’executi. Això podem fer-ho clicant sobre el fitxer amb el botó dret del ratolí i del desplegable seleccionem la opció “Propietats”. S’obrirà un diàleg en què haurem de clicar sobre la pestanya “Permisos”, i aquí dins marcar l’opció “Permet executar aquest fitxer com a un programa”. Aquesta acció també la podrem fer des del Terminal escrivint:
Ara ja tindrem el fitxer amb els permisos necessaris per poder executar-lo, i fer-ho seria tan senzill com fer un doble-clic sobre del fitxer, però d’entrada és possible que per defecte s’obri amb el Gestor d’arxius, cosa que no ens interessa. Per canviar-ho cliquem amb el botó dret sobre l’arxiu i anem a “Preferències”, allà ens situem a la pestanya “Obre amb” i seleccionarem l’opció “OpenJDK Java 6 Runtime”.
Si ho desitgem podrem crear-ne un accés directe a l’escriptori, a la barra lateral de l’Unity o que ens el trobi des del launcher de l’Ubuntu, trobarem l’explicació de com fer-ho aquí. Només ens cal saber que l’ordre és:
- Ordre: java -jar ruta_del_fitxer/josm-tested.jar
I podem utilitzar qualsevol de les següents icones per fer-ho (per descarregar-les clica amb el botó dret sobre la imatge i selecciona “Anomena i desa la imatge):
Hem de tenir en compte que si apareix una versió nova de JOSM en obrir-lo ens podem trobar un missatge com aquest:
En aquest cas el que hauríem de fer (és el que es recomana) és descarregar-nos la darrera versió del fitxer josm-tested.jar i reemplaçar-lo per l’antic fitxer. Reiniciem JOSM i ja no ens apareixerà aquest missatge.
2. Comencem a preparar les dades d’OSM i l’ortofoto
En primer lloc és probable que t’interessi que JOSM estigui en castellà (el català no està disponible encara) enlloc de l’anglès que tenim per defecte. Obrirem JOSM i anirem a “Edit” on seleccionarem “Preferences” (podem fer tot aquest procés més ràpidament clicant F12) i allà buscarem la pestanya “Look and Feel” on trobarem el desplegable “Language” on podrem seleccionar l’idioma que desitgem. Caldrà reiniciar JOSM perquè es faci efectiu el canvi d’idioma.
Ara prepararem el terreny per poder començar a realitzar l’edició a OpenStreetMap, tenint en compte que per editar el mapa ens basarem en una ortofoto de PNOA Espanya. Els procediments a seguir són:
- Obrirem JOSM i seleccionarem la opció “Archivo” del menú, i a continuació “Descargar desde OSM” de la llista desplegable. Això ens obrirà una finestra amb un mapa sobre el que ens podrem acostar i allunyar amb la rodeta del ratolí.
- Utilitzarem la rodeta fins a enquadrar la zona del mapa que desitgem editar, en aquest cas, La Palma de Cervelló. Quan la tinguem, clicarem amb el botó esquerra del ratolí i sense deixar de prémer aquest botó seleccionarem la zona desitjada. Si ens equivoquem només cal tornar a clicar el botó esquerra del ratolí i seleccionar un nou requadre. Quan estiguem contents amb la selecció premem el botó “Descargar”.
- Ara veurem quines dades té OpenStreetMap d’aquesta zona, ens apareixerà el mapa en zones negres i grises, i amb un seguit de línies i punts de colors al damunt (és la “Capa de datos 1”). Anirem a la opció “Editar” del menú i al desplegable seleccionarem la opció “Preferencias”. S’obrirà una finestra amb una columna de botons a l’esquerra, haurem de prémer el botó “WMS TMS”. Ens apareixerà un llistat en el que haurem de cercar “ES-PNOA España” seguit d’una adreça web del tipus: wms:http://www..etc. Seleccionarem aquesta fila (ens hem d’assegurar què tot queda seleccionat, també l’adreça web) i llavors cliquem al botó “Activar”, ens demanarà confirmació i si tot ha anat correctament ens apareixerà PNOA Espanya al requadre inferior. Cliquem a “Aceptar” i es tancarà la finestra.
- Anirem a l’opció “Imágenes” del menú i veurem que tenim la opció “PNOA (España)”, que ens permetrà afegir aquesta capa al diàleg de capes. Cliquem sobre “PNOA (España)” i observem que a la dreta, al diàleg de capes hi apareix una capa amb aquest nom, i també apareix l’ortofoto per sota de l’estrany mapa que teníem al principi (la “Capa de datos 1”).
- Ara podem fer un zoom a la zona que desitgem del mapa i observarem com l’ortofoto es converteix en uns horrorosos píxels enormes. Anirem a la capa “PNOA (España)” del diàleg de capes de la dreta de la pantalla i hi clicarem amb el botó dret al damunt. S’obrirà un desplegable en què haurem de seleccionar l’opció “Cambiar resolución” i veurem com l’ortofoto torna a definir-se amb tots els detalls.
Perquè aquests cinc senzills procediments quedin més clars, deixo aquí un vídeo que mostra com s’executen:
3. Conceptes bàsics per a editar el nostre mapa
En primer lloc és important tenir clara quina és la forma en què OpenStreetMap emmagatzema les dades. Parlarem de nodes, vies i etiquetes (com area=yes):
Explicarem aquests conceptes:
- Node: Simplement és un punt. És obvi que per referenciar alguns objectes amb un punt en tindrem prou. Exemples poden ser: un semàfor, un arbre, una botiga, un banc (per seure-hi), una font, etc. Per crear-lo clicarem sobre el mapa que tenim obert amb JOSM i tornarem a clicar sobre el mateix punt.
- Via: Una via està formada per un seguit de nodes.Haurem de crear vies per referenciar carrers, rius, passos de zebra, ponts, etc. En el cas dels carrers, és important tenir en compte que les vies tenen direcció, d’això ens n’adonarem de seguida perquè entre node i node hi veurem unes fletxes.
- Via alineant nodes en cercle: Això només és una mostra del que podem fer amb les vies, en aquest cas tancada formant una circumferència. Tenim diverses eines per organitzar els nodes de forma més acurada. En aquest cas he creat una circumferència aproximada i després he clicat sobre l’opció “Alinear nodos en círculo”. En aquest cas amb aquesta via podríem crear una rotonda, per exemple. Si volguéssim que la circumferència tingués àrea l’hauríem d’etiquetar (veure el següent punt).
- Via formant polígon amb opció area=yes: Això només és una mostra del que haurem de fer quan vulguem crear àrees: unir nodes de manera que la via es tanqui, en aquest cas formant un polígon (també ens serviria la circumferència del punt anterior) i llavors hi hauríem d’afegir l’etiqueta “area” amb el valor “yes”. Això ho necessitarem per referenciar edificis, places, camps de futbol, terres de cultiu, parcs infantils, etc.
Si ja tenim aquests conceptes clars, el que haurem de fer per introduïr informació al mapa és etiquetar els nodes i les vies amb tantes etiquetes com creiem necessàries.
- Utilitza la guia orientativa d’etiquetes a utilitzar de la wiki d’OpenStreetMap. Et donarà una idea de quines coses pots referenciar al mapa. Aquesta guia la trobaràs en aquesta adreça: http://wiki.openstreetmap.org/wiki/ES:Map_Features. Observa que a la primera columna trobaràs les etiquetes, a la segona el valor de l’etiqueta, i a la tercera si aquest element es referencia amb un node, una via , una via tancada o una àrea (hi ha més opcions però amb aquestes en tindrem de sobres per començar).
- Descarrega’t trossos de mapes d’altres zones i mira’t quines etiquetes han utilitzat. Una bona idea pot ser agafar una àrea de Barcelona, per exemple, on trobaràs multitud d’elements i etiquetes. Si vols referenciar un camp de futbol, per exemple, busca’n un en un mapa, descarrega la zona i mira com l’han creada.
- Si necessites ajuda i no te’n surts, participa de la comunitat d’OpenStreetMap Espanya a través de la llista de correu talk-es, on pots subscriure’t i interactuar amb els membres de la comunitat. També hi pots consultar l’històric de correus ja que la llista és pública.
4. Comencem a editar el nostre mapa: un exemple
Per veure com es realitza la creació de nodes, vies, etc i el seu etiquetatge treballarem amb un exemple en què crearem el Passatge Canigó de La Palma de Cervelló. Aquest és un passatge privat de cases unifamiliars d’accés només per als veïns, que està tancat amb una barrera. El passatge no té sortida, té dues direccions però un sol carril, i al final del passatge s’eixampla perquè els cotxes puguin girar-hi. El que crearem al mapa serà el següent:
- Una via formada amb diversos nodes que serà el passatge en sí.
- Una via formada amb dos nodes a l’inici del passatge i en perpendicular, que serà la barrera que dóna accés al passatge.
- Un node al final de passatge per senyalar que tot i ser un carrer tallat, té un eixamplament al final per donar-hi la volta.
Aquí hi ha un vídeo que mostra el procés de creació d’aquest passatge amb les característiques descrites, i el posterior etiquetatge que explicarem més endavant:
- El passatge (via amb diversos nodes). Etiquetes i valors:
- highway = residential (podem veure-ho aquí), per indicar que és una via terrestre dins d’un nucli urbà però no es una travessera principal.
- name = Passatge Canigó, per donar un nom a aquesta vis terrestre.
- oneway = no (podem veure-ho aquí), per indicar que el passatge no és d’un sol sentit.
- lanes = 1 (podem veure-ho aquí), per indicar que el passatge només té un carril.
- La barrera del passatge (via amb dos nodes). Etiqueta i valor:
- barrier = lift_gate (podem veure-ho aquí), per indicar que tenim una barrera que s’aixeca.
- access = private (podem veure-ho aquí),per indicar que l’accés al passatge és privat, només per als veïns.
- L’eixamplament al final del carrer perquè hi girin els cotxes. Etiquetes i valors:
- highway = turning_circle (podem veure-ho aquí), per indicar l’eixamplament del carrer per poder donar-hi la volta.
Ara el més coherent seria desar els canvis anant a “Archivo” i després “Guardar como”, ens desarà les dades del nostre tros de mapa en un arxiu .OSM, extensió d’OpenStreetMap, que en realitat no és més que un arxiu XML que podrem obrir amb el nostre navegador per veure-hi les dades que conté.
5. Pujant l’edició a OpenStreetMap
Per poder pujar els canvis realitzats i publicar-los a OpenStreetMap, en primer lloc caldrà que ens creem un compte a OpenStreetMap, només cal el correu electrònic i una contrassenya, podem fer-ho des d’aquí:
https://www.openstreetmap.org/user/new.
Si ja hem creat el nostre compte des de JOSM podem anar a “Archivo” i després seleccionar l’opció “Subir datos”. Quan cliquem sobre l’opció ens obrirà una finestra advertint-nos dels canvis estranys que detecti, si pensem que ho hem fet tot correctament clicarem “Continuar subiendo”. S’obrirà una nova finestra on és molt important escriure una petita descripció sobre els canvis que hem realitzat, en aquest cas podríem posar: “Creació del Passatge Canigó a La Palma de Cervelló”, per exemple. Llavors clicarem al botó “Subir cambios” i s’obrirà una nova finestra que demanarà que ens identifiquem. Hi escrivim l’usuari i contrasenya del nostre compte a OpenStreetMap i apretem el botó “Autenticación”, els nostres canvis es pujaran a OpenStreetMap i en pocs segons ja els podrem veure a OpenStreetMap.org.
En el nostre cas el carrer que hem creat es veuria així:
Podem observar que ens apareix el passatge amb el seu nom i l’eixamplament al final d’aquest, però en canvi no apareix la barrera. Que no aparegui la barrera no significa que no sigui important marcar-la i etiquetar-la, perquè la visualització l’estem realitzant a través de Mapnik (capa base) i potser altres capes base (com Osmarender, o altres que es desenvolupin en el futur) poden dibuixar les barreres. Per canviar de capa base, cal anar a la web d’openstreetmap.org i clicar el signe + que hi ha a la part superior dreta del mapa.
En aquesta web podeu veure una altra visualització d’OpenStreetMap (és Nominatim, l’eina web que permet fer cerques al mapa), i per exemple, també podeu veure les dades d’OpenStreetMap a l’aplicació Marble, que és programari lliure i està disponible per a totes les plataformes.
Ara doncs, t’animes a editar els carrers del teu poble a OSM?
Segur que tu els coneixes millor que ningú 😉
Si demaneu la informació de partida a l’Ajuntament, només caldrà actualitzar-la. Em sap greu però, precisament per la Palma, casi tot està fet, carrers més números de porteria, equipaments, comerços, … i tot. Es va pagar i fer fa pocs anys gràcies a Administració Oberta de Catalunya, Diputació, Mancomunitat de Municipis i al mateix Aj de la Palma. Val la pena aprofitar la info que ja existeix. Miraré si no ens porta molta feina a nosaltres passar-ho a OpenStreetMaps, si no, amb el permís de l’Ajuntament, ja mirarem de passar-vos els vectors.
Una abraçada
Guillem Terradas
Ei, Guillem!
Moltes gràcies, tot el que sigui alliberar dades, perfecte!
El mapa de La Palma ara mateix està bastant fet:
http://www.openstreetmap.org/?lat=41.41328&lon=1.96732&zoom=16&layers=M
Però el que es tracta és de què qui vulgui en un moment donat pugui introduir-hi un canvi, i que puguin referenciar-se també altres aspectes com camins de muntanya, velocitats màximes de les carreteres, horaris d'obertura dels comerços, per exemple, i moltes altres coses!
A veure si us animeu a fer la vostra aportació al mapa, salut!