Title Image

Blog

Importar datos de OpenStreetMap mediante QGIS

  |   Cartografía
[box title=»ACTUALIZACIÓN (Octubre 2013)» box_color=»#1C6197″]Con la versión 2.0  de QGIS este artículo ha quedado obsoleto. Puedes consultar esta nueva entrada donde se explica el nuevo proceso para llevar a cabo la importación de cartografía de OpenStreetMap.[/box]

En una anterior entrada mostramos una forma de importar los datos de OpenStreetMap (OSM) mediante la herramienta osm2postgres. Para ello necesitábamos tener creada una base de datos PostGIS en la que almacenar los datos importados.

Sin embargo, esta forma no es quizás la más útil para aquellas personas que necesiten datos de un área geográfica muy específica y no requieran gestionar una base de datos Postgres. En esta entrada te proponemos otra alternativa de exportar esos datos a un shapefile desde Quantum GIS (QGIS).

Lo primero de todo, deberemos instalar en QGIS el complemento OpenStreetMap. Este complemento nos facilita cargar un archivo .osm a QGIS o descargar directamente los datos creando previamente un bounding box con las coordenadas superior izquierda e inferior derecha que definan la extensión de nuestra caja. Para instalar el complemento vamos al menú Complemento -> Obtener complementos de Python y buscamos uno llamado OpenStreetMap plugin. Lo seleccionamos y pulsamos Instalar.

Pasos de instalación del plugin OpenStreetMap en QGIS.

Instalación del complemento OpenStreetMap en QGIS

Una vez completada la instalación vamos a la web de OpenStreetMap y desde el menú Exportar en la parte superior, escogeremos la zona geográfica elegida para descargar los datos. Seleccionamos descargar como Datos OpenStreetMap en formato XML. En este caso voy a obtener los datos que OpenStreetMap dispone del Parque Natural de los Collados del Asón, en la Montaña Oriental de Cantabria. El archivo se llamará map.osm.

Exportación de datos desde la web de OpenStreetMap

Descarga desde la web de OpenStreetMap de datos del Parque Natural del Alto Asón a un archivo con extensión .osm

Tras la instalación del complemento OpenStreetMap plugin en QGIS vemos que en la barra de herramientas disponemos de nuevos botones para trabajar con archivos OSM. Pulsamos en aquel que nos permite cargar un archivo OSM (ver la imagen más abajo) y accedemos a una ventana donde podemos indicar determinados tags o etiquetas de uso común a importar como atributos de cada elemento gráfico. Es posible que necesitemos solo algunas de las etiquetas mostradas, para lo cual marcamos las casillas de verificación que se encuentra a la derecha de cada tag y pulsamos el botón Importar.

Ventana de importación de archivo OSM QGIS

Ventana de selección de archivo OSM y etiquetas a importar en QGIS.

No obstante, podemos hacer que en la importación nos cree campos con el contenido de etiquetas más específicas que no aparecen en este listado. En este caso, voy a importar las etiquetas information y ref que especifican el tipo de poste o panel indicativo a lo largo de un sendero y la identificación o número de referencia de la señal.

Para ello, vamos a modificar un archivo llamado OsmLoadDlg.py y que en Linux se encuentra en el directorio /usr/share/qgis/python/plugins/osm (ten en cuenta que necesitarás privilegios para modificar este archivo en Linux). En el caso de Windows su ruta es algo así como C:\Program Files\Quantum GIS Lisboa\apps\qgis\python\plugins\osm\OsmLoadDlg.py . Si le abrimos con el bloc de notas, en torno a la línea 54 podemos ver el listado de etiquetas que por defecto QGIS importa y a las que he añadido information y ref.

for tag in ['name','place','highway', 'oneway', 'junction', 'tunnel', 'bridge', 
'noexit', 'landuse', 'waterway', 'railway', 'amenity', 'tourism', 'learning', 'information', 'ref']:

Guardamos el archivo y ejecutamos la herramienta de importación de archivos OSM en QGIS. Ahora aparecen en el listado las nuevas etiquetas que podemos marcar para incorporar a nuestra importación. De esta forma, tendremos los datos en columnas separadas dentro de nuestra tabla de atributos.

Columnas importadas en QGIS

Columnas importadas en QGIS

Ya tenemos cargados en nuestra tabla de contenidos los tres tipos de capas (de puntos, líneas y polígonos) que se exportan a QGIS. A partir de aquí, podemos guardar nuestra selección de elementos a diferentes formatos (shapefile, kml, gml, etc.) haciendo clic con el botón derecho del ratón encima de la capa deseada.