19 votos

Determinación de las líneas que han cambiado en un archivo shape actualizado mediante QGIS

Estoy utilizando los datos SIG de mi condado para actualizar las carreteras en OpenStreetMap. Tengo una copia que publicaron el año pasado y otra que acaban de publicar, y me gustaría encontrar todos los LineStrings a los que les han cambiado los atributos o la geometría. Esto me ayudará a asegurarme de que todas las calles nuevas y modificadas se actualizan en OpenStreetMap.

Los segmentos de calle deben tener un identificador único, así que mi única idea es escribir un script en Python que abra ambos Shapefiles, encuentre cualquier segmento en el nuevo que no esté presente en el antiguo (segmentos añadidos), y al revés (segmentos eliminados), y luego haga un bucle sobre los pares coincidentes comparando sus coordenadas constituyentes para ver si algo ha cambiado.

¿Hay alguna forma de hacerlo con QGIS?

8voto

MJH Puntos 111

Lo que hay que hacer es un análisis temporal. Como usted ha dicho que tiene dos datos vectoriales (shp) de diferentes tiempos. usted puede encontrar el cambio mediante el procesamiento de la geometría. En QGIS cargar dos vectores y GoTo Vector->GeoProcesamiento y a partir de ahí puedes utilizar la función Diferencia que dará como resultado otra forma.

7voto

Sushant23 Puntos 329

En QGIS 3.12 se ha añadido una nueva herramienta denominada "Detectar cambios en el conjunto de datos" que hace exactamente lo que quieres. Acepta cualquier tipo de geometría, incluida la línea. La herramienta

Compara dos capas vectoriales y determina qué características son no se han modificado, se han añadido o se han eliminado entre las dos. Está diseñado para comparar dos versiones diferentes del mismo conjunto de datos.

Línea original:

enter image description here

Línea modificada:

enter image description here

Se han producido cambios:

enter image description here

Para los polígonos, puedes consultar la ayuda:

enter image description here

Consulte la ayuda anterior para obtener información más detallada.

Información en el registro de cambios de QGIS 3.12: https://qgis.org/en/site/forusers/visualchangelog312/#feature-add-new-algorithm-detect-dataset-changes

2voto

ARUNBALAN NV Puntos 101

Sólo para resumir todos los métodos que se han sugerido en los comentarios:

@Germán Carrillo

Vectorial > Herramientas de geoprocesamiento > Diferencia simétrica

El mismo resultado puede obtenerse con Módulo de diferencias simétricas SAGA GIS

y @rkm

Vectorial > Herramientas de geoprocesamiento > Diferencia

El mismo resultado puede obtenerse con Módulo de diferencias del SIG SAGA


Referencias:

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X