Revisión de los datos OSM

Revisado el 24-04-2017

Esta sección cubre los procesos de verificación de calidad de datos, especialmente en el contexto de un proyecto de mapeo OSM dirigido, como los llevados a cabo por el Equipo Humanitario OpenStreetMap en distintos países y proyectos de Open Cities en Bangladesh, Sri Lanka, y Nepal. Los métodos demostraron que también pueden ser útiles en otros contextos, en los que la revisión de la calidad de datos es una tarea regular.

Cuando intentamos mapear un conjunto completo de características y atributos en un área específica, necesitamos contar con formas de verificar errores y de evaluar la precisión del trabajo. En este tutorial trabajaremos a través de varios métodos de verificación de datos, explicando los pasos del método y la justificación de cada uno. Un proyecto de mapeo bien gestionado incluye cada uno de estos tres procesos, tanto para evaluar y corregir datos, como para la creación de informes.

  • Verificaciones diarias
  • Repetición de sondeo
  • Consultas SQL

Estos métodos de revisión se vuelven más importantes cuando crece el modelo de datos y el número de características reunidas aumenta. Por ejemplo, no tomaría mucho tiempo ni esfuerzo evaluar un modelo de datos que solo involucra puntos de interés (POI):

Data Model POIs

En este caso, las preguntas que deben hacerse serían:

  • ¿Se han mapeado los POI en todas las direcciones?
  • ¿Algún POI no tiene el atributo del nombre?
  • ¿Hay algún POI sin el atributo de tipo?
  • ¿Hay algún POIs sin el atributo de número de teléfono?
  • ¿El valor en el campo del nombre usa las mayúsculas de forma correcta?
  • ¿El número de teléfono tiene sentido?

Por lo general, un modelo de datos es mucho más complejo, sin embargo, como en el caso del mapeo de edificios. Considere un modelo de datos que incluya esto:

Data Model Buildings

Ahora puede estar mapeando miles de edificios que tienen muchos atributos, y el análisis se vuelve más crítico. En este tutorial usaremos edificios como ejemplo, aunque los mismos métodos se pueden aplicar para revisar otros tipos de elementos también.

Verificaciones diarias

La forma más inmediata de verificar los datos es revisarlos y validarlos periódicamente. Esto podría ser diario o como máximo semanalmente. Para el supervisor de un equipo de mapeadores, esta es una tarea importante porque detectar errores y malas prácticas de edición temprano significa que pueden corregirse y los editores pueden aprender a hacer las cosas correctamente.

Aquí veremos algunos métodos para verificar datos simplemente usando JOSM. Algunas de las preguntas que hacemos sobre nuestros datos son:

  • ¿Hay errores de topología (como edificios superpuestos o relaciones incorrectas)?
  • ¿Hay errores en el etiquetado (etiquetas con errores ortográficos, combinaciones de clave-valor mal utilizadas)?
  • ¿Los datos están completos de acuerdo con el modelo de datos?

Examinemos cómo podemos encontrar respuestas a estas preguntas en JOSM. Asumiremos que estamos examinando el trabajo de otros, pero los mismos procesos funcionarán bien (y deberían ser más fáciles) al analizar su propio trabajo.

Utilizaremos un archivo de datos de ejemplo del proyecto de mapeo Open Cities en Dhaka. Para seguirlo, descargue el siguiente archivo: [dhaka_validation_example.osm] (http://learnosm.org/files/dhaka_validation_example.osm)

NO intente guardar sus cambios en OpenStreetMap. Estos ejercicios son solo para fines de demostración.

Dhaka Example in JOSM

Validación de datos

El primer paso para verificar los datos es ejecutar la herramienta de validación en JOSM, que verificará automáticamente los datos que tenga abiertos para detectar posibles errores. Esta herramienta es especialmente útil para encontrar errores de topología, pero puede no ser tan útil para encontrar etiquetas incorrectas.

  • Active la herramienta haciendo clic en el botón Herramienta de validación en el lado izquierdo de JOSM. (Esto es innecesario si el panel de Validación ya está abierto)

Validation Tool

  • A continuación, asegúrese de que no haya nada seleccionado haciendo clic en un punto en blanco en su mapa. Si tiene funciones seleccionadas cuando ejecuta la Herramienta de validación, solo se verificarán esas funciones seleccionadas. (a veces es posible que solo desee verificar ciertas características, pero por ahora revisaremos todo el archivo)
  • Haga clic en el botón “Validación” en el panel.

Validate Button

  • Verá aparecer una lista de advertencias:

Validation Results

  • También aparece una nueva capa, que muestra dónde están los errores. Puede que le resulte conveniente ocultar esta capa por ahora.

Validation Layer

Veamos algunas de las advertencias. Puede ver que hay cuatro advertencias de “Cruzar edificios”. Esta advertencia significa que los edificios se superponen en alguna parte. Seleccione el primer elemento de esta lista, haga clic con el botón derecho y haga clic en “Acercar al problema”.

Validation Zoom to Problem

Además, haga clic en el botón “Seleccionar” en la parte inferior de la ventana de Validación para seleccionar las vías en cuestión. Esto muestra que estas dos vías tienen un problema:

Validation Selected Ways

  • Este es un error que nunca habríamos detectado sin la herramienta de validación. Si te acercas mucho, puedes ver que hay una pequeña superposición entre los edificios, lo cual es un error topológico, porque los edificios generalmente no se superponen entre sí. Para solucionar esto, el nodo central necesita ser movido. Si los edificios realmente se tocan, lo que probablemente son, el nodo central puede unirse al camino.
  • Una vez que se corrige esto, podemos volver a ejecutar la herramienta de validación y esta advertencia habrá desaparecido de la lista.

Este método de verificar automáticamente los datos es una forma efectiva de corregir errores de topología, particularmente aquellos que serían difíciles de notar por una persona. En la lista de advertencias de validación, puede ver que otras advertencias como “Edificio dentro de edificio” son el resultado de un error similar.

Aún otras advertencias, como “Cruce de vía fluvial / autopista”, no son necesariamente errores. Esto muestra que la herramienta de validación es buena para encontrar posibles errores, pero requiere que alguien vaya y vea si el error es importante o no.

Validation Crossing Ways

Veamos la advertencia en “Vías con nombres similares” para ver un error que no es topológico. Haga clic en “Seleccionar” para seleccionar las dos formas en cuestión.

Validation Select Crossing Ways

¿Puedes decir cuál es el error? Aquí tenemos dos segmentos de carretera diferentes, que en realidad son la misma carretera, aunque se les ha asignado un nombre ligeramente diferente: “carretera” se capitaliza en una de las vías pero no en la otra. Tiene sentido que tengan el mismo nombre, y en este caso la palabra “carretera” debe estar en mayúscula.

Uso de la búsqueda de JOSM

Buscar en JOSM es una forma poderosa de revisar datos. Le permite proporcionar términos de búsqueda, también conocidos como consultas, para seleccionar solo las funciones que desee.

  • Para acceder a la búsqueda, vaya a Editar -> Buscar o presione CTRL + F en su teclado.

JOSM Menu Search

  • Hay muchos tipos de consultas que puede buscar aquí, y puede ver detalles y ejemplos en el cuadro de búsqueda y haciendo clic en el botón “Ayuda”.
  • Por ahora, intentemos seleccionar todos los edificios. Casi todos los edificios tendrán la etiqueta building=yes y algunos tendrán building=construction. Esto significa que podemos construir una consulta que se lea:

    building = yes OR building=construction

  • Esto debería seleccionar todos los edificios, pero en caso de que alguien aplique la etiqueta incorrecta a un edificio, podemos usar un carácter comodín, que seleccionará todas las características que tienen la clave building.

JOSM Search String

  • Todos los edificios serán seleccionados.

Esto es genial, pero ¿Cómo nos ayuda a revisar los datos? Bueno, ahora que se ha seleccionado todo un solo tipo de característica, podemos buscar etiquetas incorrectas.

  • Mire en la ventana Propiedades: lo que vemos son todas las etiquetas para cada objeto seleccionado. Todos comparten las mismas claves, pero debido a que cada característica tiene valores diferentes, están marcados como <different>.

JOSM Search Properties

  • Haga clic en el edificio building:use y luego haga clic en “Editar”.

JOSM Search Properties Edit

  • ¡CUIDADO AQUÍ! No desea editar el valor y hacer clic en Aceptar, porque eso cambiará esta etiqueta para cada característica de construcción. Esto sería muy malo.
  • En su lugar, haga clic en el cuadro desplegable junto a Valor.

JOSM Search Properties Edit 2

  • Observe que todos los elementos en negrita tienen un número junto a ellos entre paréntesis. Este es el número de características seleccionadas que tienen este valor de etiqueta.

Podemos comparar esto con las etiquetas OpenStreetMap que se han mapeado en nuestro modelo de datos y buscar errores. Por ejemplo, esta etiqueta representa el uso del edificio. Al principio del proyecto Open Cities Dhaka (de donde provienen estos datos) había incertidumbre sobre si un edificio de uso mixto debería etiquetarse building:use=multipurpose or building:use=mixed. Debido a que la etiqueta anterior se había utilizado previamente en otros países, se seleccionó. Sin embargo, vemos aquí que uno de los edificios ha sido etiquetado como mixed. Necesitamos corregir esto. (Otro error obvio son los tres términos diferentes para garage, pero no corregiremos esto aquí).

  • No podemos cambiar la característica que tiene la etiqueta building:use=mixed aquí, porque tenemos cientos de características seleccionadas. Entonces, para corregir el error, primero debemos encontrarlo. ¿Cómo? Lo has adivinado, con la herramienta de búsqueda.
  • Haga clic en “Cancelar” para salir de este cuadro de diálogo. Recuerde, hacer clic en Aceptar puede ser peligroso.
  • Abra nuevamente la búsqueda e ingrese la siguiente consulta: “building:use”=mixed
  • Tenga en cuenta que las comillas son necesarias porque los dos puntos (:) también tienen un significado de búsqueda. Esto debería hacer que se seleccione el único edificio que tiene esta etiqueta. Ahora puede corregirse al valor multipurpose.

** Recuerde que si sigue este tutorial, NO intente guardar sus cambios en OpenStreetMap. Estos ejercicios son solo para fines de demostración. **

Re-relevamiento

Al administrar un proyecto como un relevamiento detallado de edificios, debe haber un método adicional de control de calidad, tanto para mejorar el trabajo como para informar sobre la precisión al final de un proyecto.

Si hay muchos equipos de mapeo colaborando para examinar un área, es común que uno o más de los equipos no hagan un trabajo satisfactorio. Incluso aquellos equipos que realizan un trabajo eficiente y preciso cometerán errores. Imagine equipos que cada uno mapee 100 edificios por día; no es improbable que un pequeño porcentaje de los atributos que recolectan sea incorrecto.

Por lo tanto, un buen proyecto incluirá un proceso de volver a verificar parte del trabajo realizado, corregir errores, determinar qué equipos de mapeo están realizando satisfactoriamente y aproximar el porcentaje de errores para un informe final.

Por supuesto, no tiene sentido volver a inspeccionar cada edificio en un área objetivo, pero se debe revisar el 5-10% de los edificios. Las áreas de revisión deben elegirse de diferentes áreas para comparar entre los equipos de encuesta. Los equipos de encuesta pueden volver a encuestar el trabajo de los demás, o si es posible, los gerentes más experimentados pueden realizar las revisiones. Es una práctica común que un día a la semana los gerentes pasen reevaluando partes del área objetivo.

Corrigiendo errores

¿Qué se debe hacer cuando se encuentran errores?

Si hay una pequeña cantidad de errores (menos del 5% de los edificios), los problemas deben presentarse al equipo de mapeo original para que estén conscientes y no vuelvan a cometer los mismos errores. Los datos deben corregirse en OpenStreetMap y los resultados de la nueva encuesta deben registrarse.

Si hay muchos errores, es posible que se deban tomar medidas más importantes. El equipo de la encuesta necesitará ser abordado de manera apropiada, y las áreas que han mapeado pueden incluso necesitar una encuesta completa, dependiendo de cuán inexactos sean los datos. Más del 10% de imprecisión es muy probable que sea una tasa inaceptable.

Informes sobre precisión

El segundo objetivo de la reanudación es para que pueda informar sobre la precisión de los datos cuando se cierre el proyecto. Los usuarios de los datos querrán conocer sus métricas y metodologías para evaluar la calidad de los datos.

Al incluir este proceso como parte de su metodología de revisión, podrá explicar claramente cómo evaluó la calidad de los datos y proporcionar números concretos que muestren el porcentaje probable de error contenido en los datos de su encuesta.

Por ejemplo, imaginemos que estamos gestionando un proyecto que mapea 1000 edificios. Entonces decidimos mapear el 10% de ellos, o 100 edificios, seleccionados al azar del área objetivo. Salimos y encontramos que de los 100 edificios que volvimos a estudiar, seis de ellos tienen un alto nivel de inexactitud. Supongamos que definimos la inexactitud al tener más de un atributo incorrecto. Por lo tanto, el seis por ciento de la encuesta es incorrecta: podemos corregir estos errores, pero aún debemos extrapolar que alrededor del seis por ciento de los 1000 edificios probablemente sean inexactos. Esto debe informarse como el error probable al cierre del proyecto.

La reanudación debe hacerse durante todo el proyecto. ¡Imagínese que esperamos en este ejemplo hasta el final y que 40 de cada 100 edificios estaban equivocados! Podría arruinar todo el proyecto. Es mejor detectar los errores a gran escala temprano para poder corregirlos.

Consultas SQL

Probablemente la mejor herramienta de análisis será ejecutar consultas SQL en un sistema SIG, como Quantum GIS. Esto es similar a la búsqueda de datos en JOSM, pero ofrece un análisis más potente, aunque puede tomar un poco más de tiempo configurarlo. Usar JOSM es una forma rápida y regular de verificar errores básicos, mientras que las consultas en QGIS son más adecuadas para encontrar datos faltantes o atributos incorrectos.

Asumiremos aquí que está familiarizado con los SIG y nos concentraremos en crear consultas que puedan ayudarlo a revisar los datos de OpenStreetMap. Para los ejercicios a continuación, nuevamente utilizaremos datos del proyecto Open Cities Dhaka, que puede descargar en dhaka_sql.zip. Los datos de OpenStreetMap se exportaron utilizando la herramienta de exportación HOT (export.hotosm.org) y el límite del área objetivo se definió al comienzo del proyecto.

Preparando los datos

Descomprima los archivos y cargue los dos archivos de forma en QGIS. Comenzaremos recortando solo los edificios dentro del área del proyecto, para simplificar nuestras consultas más adelante.

  • Primero, seleccionemos solo los polígonos que están dentro del área objetivo. Para hacerlo, utilizaremos el complemento de consulta espacial. Si aún no lo tiene instalado, vaya a Complementos -> Administrar e instalar complementos para encontrarlo e instalarlo.
  • Vaya a Vector -> Consulta espacial -> Consulta espacial.
  • Debe completar la configuración para seleccionar elementos de planet_osm_polygon que están within target_area.

QGIS Spatial Query

  • Haz clic en Aplicar. Solo se seleccionarán polígonos dentro del área objetivo.

QGIS Map Image

  • Haga clic derecho en la capa y guarde la selección como un nuevo archivo de forma. Agréguelo al proyecto.

QGIS Save Selection As

  • A continuación, filtremos solo los polígonos que son edificios y que se recopilaron como parte de este proyecto.
  • Haz clic derecho en planet_osm_polygon y haz clic en “Filtrar …”
  • Ingrese la siguiente consulta:

  • “building”! = NULL AND “source” = ‘Open Cities Dhaka Survey’ *

  • Haga clic en Aceptar. Filtrar los datos con esta consulta solo mostrará los polígonos que tienen algo en la columna de construcción. También elimina los edificios que no tienen la etiqueta de origen asociada con este proyecto.
  • Guarde estos datos como un nuevo shapefile. Utilizaremos este archivo para nuestras consultas SQL.

! [Imagen de mapa QGIS 2] []

Consultas SQL

Ahora podemos ejecutar consultas en la capa de edificios para encontrar posibles errores. Pensemos en algunas cosas que podríamos querer consultar. El modelo de datos de este proyecto indica los atributos que se deben recopilar para cada edificio: son:

  • name
  • building
  • building:levels
  • building:use
  • building:vertical_irregularity
  • building:soft_storey
  • building:material
  • building:structure
  • start_date
  • building:condition

Tenga en cuenta que en el archivo shapefile estos nombres de atributos se truncan, ya que las columnas con nombre están limitadas a 10 caracteres.

Entonces, ¿qué tipo de preguntas queremos hacer? ¿Qué son son los posibles errores? Un error común es que se ha mapeado un edificio, pero no se recopilaron todos los atributos. Por lo tanto, querremos llevar a cabo una consulta que muestre todos los edificios que no tienen un conjunto completo de atributos. Por supuesto, algunos atributos, como nombre y fecha de inicio (año de construcción), es perfectamente correcto que estén vacíos, porque no todos los edificios tienen un nombre y, a veces, se desconoce el año de construcción. Pero los otros atributos siempre deben recopilarse.

Intentemos desarrollar una consulta para esto:

  • Haga clic con el botón derecho en la capa de edificios (haga clic en “Filtro …” De esta manera abrirá el generador de consultas. Aquí podremos redactar consultas completas para obtener solamente los datos que queremos.
  • Puede crear su propia consulta haciendo doble clic en los campos, operadores y valores, o puede copiar la consulta que hemos creado aquí:

“building_c” = NULL OR “building_s” = NULL OR “building_l” = NULL OR “building_m” = NULL OR “vertical_i” = NULL OR “soft_store” = NULL OR “building_u” = NULL

  • Haga clic en “Prueba” y verá que esta consulta devuelve 125 elementos. Esto significa que de los aproximadamente 3500 edificios que han sido mapeados, a 125 de ellos les falta uno o más de estos atributos.

QGIS Query Result

  • Haga clic en Aceptar para mostrar solo aquellos edificios que cumplan las condiciones de la consulta.

QGIS Map Image 3

  • Estos edificios se pueden examinar más de cerca para identificar qué atributos faltan y si es necesario volver a estudiarlos. Entonces es posible usar QGIS para crear un mapa que un equipo de encuesta podría tomar para corregir los atributos de construcción faltantes.

¿Cuáles son algunas otras consultas que podrían ser útiles? Bueno, es posible que también desee verificar los atributos que no están contenidos en su esquema de datos. Lo hicimos en la sección de búsqueda de JOSM. Puede usar una consulta para encontrar todos los edificios cuyos atributos no se ajustan a su modelo de datos.

También puede usar esto para buscar anomalías, que probablemente sean errores, pero no necesariamente. Por ejemplo, si abrimos el generador de consultas, seleccionamos building_l, y hacemos clic en “Todos” para cargar todos los valores de atributo posibles, vemos que la mayoría de los edificios tienen un número entre uno y 20 (Este atributo es building:levels, El número de pisos en el edificio). Pero también hay un 51 allí. Parece poco probable que haya un edificio de 51 pisos que se eleve por encima de todo en esta área, por lo que podemos ubicarlo y hacer una nota para verificar esto con los mapeadores.

La consulta puede ser una forma efectiva de buscar posibles errores en el conjunto de datos. Combinado con otras características de QGIS, puede usarse para generar mapas que pueden usarse para revisar los datos en un área.

Resumen

En este tutorial, revisamos varios métodos efectivos para mantener la calidad de los datos durante un proyecto y realizamos algunos ejercicios prácticos para practicar la revisión de los datos de OSM. Al organizar un proyecto de mapeo, o incluso al evaluar los datos en un área para uso personal, estos métodos pueden ser útiles.