¿Comparar áreas en mapas de uso del suelo históricos escaneados usando QGIS?

10

Soy un principiante relativo al uso de SIG, y estoy ejecutando QGIS 2.0.1 en Linux. Tengo dos mapas históricos que quiero analizar, que muestran patrones de uso de la tierra en la misma área en dos momentos diferentes en el tiempo. Los tengo escaneados y geo-referenciados como capas en un archivo. De lado a lado, se ven así:

1930 1950

Lo principal que me interesa es comparar la extensión de las áreas verdes claras y oscuras entre los dos mapas. ¿Es esto posible y, de ser así, cuál es el enfoque más simple? ¿Hay alguna manera de hacer esto basado en el análisis de ráster? Y si tengo que hacer un shapefile, ¿cuál es la mejor manera de hacerlo?

Lo que ya he considerado:

  • Dibujar archivos de forma como polígonos a mano, como se describe en este tutorial . Eso sería MUY tedioso.

  • Crear imágenes ráster simplificadas y de alto contraste mediante la selección de colores, filtros, etc. por prueba y error en Gimp y convertirlo en un archivo de forma. Los resultados fueron muy descuidados.

Brian Z
fuente
66
bienvenido al tedioso y a veces muy aburrido mundo de los SIG;) En caso de que no necesite digitalizar cada paquete, pero pueda aglomerar las piezas del mismo color, esto es solo cuestión de algunas horas de empuje meditativo del mouse. ¡Todos los demás experimentos fallarán, me temo! Si acaba de limpiar los patrones de color en su escaneo, podría convertirlos a escala de grises con la calculadora ráster y vectorizarlos, pero me parece imposible deshacerme de todas las letras y elementos innecesarios Y rellenar su lugar con los valores adecuados.
Bernd V.
Gracias @BerndV. Malas noticias, pero útil para saber. Y por "presionar el mouse", te refieres a dibujar cada polígono, completamente desde cero, como se describe en el tutorial al que me vinculé, y que tratar de obtener una aproximación automáticamente que necesita reparaciones extensas probablemente no sea un atajo viable.
Brian Z
3
Estas imágenes son difíciles de procesar. Si las letras fueran el único problema, sería fácil de resolver. Sin embargo, en un examen minucioso (a) los originales son problemáticos debido a la eclosión para distinguir los tipos de cobertura del suelo y (b) los artefactos de compresión digital extensivos hacen que los colores sean mucho menos uniformes de lo que podrían parecer. La ruta de procesamiento de ráster sería más fácil con un escaneo de mayor calidad y una compresión sin pérdidas.
whuber
como Whuber sugiere anteriormente para los rásteres normales, es fácil seleccionar las áreas de áreas específicas usando la herramienta de valor y la calculadora de ráster ... si usa la herramienta de valor, puede establecer si hay un valor específico para las áreas verdes y luego dejar sabemos.
Ger
@ GeraldO'Reilly, si posterizo la segunda imagen en GIMP, el verde oscuro se vuelve verde puro (255,0,0) y el verde claro se vuelve amarillo puro (255,255,0). Sin embargo, definitivamente hay artefactos (por ejemplo, píxeles dispersos de color verde o amarillo donde no los quiero). Me imagino que hay una manera de usar la calculadora ráster y establecer un valor de tolerancia o de alguna manera suavizar un poco los píxeles.
Brian Z

Respuestas:

9

La posterización fue un gran comienzo: eliminó la mayoría de los artefactos de compresión y simplificó la cartografía lo suficiente como para permitir una limpieza adicional.

Gran parte de la limpieza de un ráster categórico implica las llamadas operaciones "morfológicas". Estos incluyen expandir una categoría a sus vecinos, reducirla nuevamente, y agrupar regiones celdas monocategoriales contiguas en sus propias categorías.

Por lo general, se necesita algo de experimentación, aunque solo sea porque los artefactos que se eliminarán (letras, líneas de sombreado, etc.) variarán en sus tamaños de píxel de un escaneo a otro. Para comenzar, ilustraré lo que estos procedimientos pueden lograr en el ejemplo.

El original, después de la posterización, se ve así. Es una cuadrícula con solo tres categorías que se muestran en tres colores. Nuestro objetivo es crear una cuadrícula en la que las áreas de color verde oscuro se conviertan en piezas contiguas, sin la superposición de letras o puntos o el trabajo de línea irrelevante, adecuado para el análisis posterior utilizando álgebra ráster.

Figura 1

Expandir las áreas verdes oscuras solo un píxel en todas las áreas circundantes da esta imagen:

Figura 2

(Para un control más preciso, puede limitar la expansión solo a las áreas negras si su SIG lo permite).

Para eliminar muchas de las líneas finas de artefactos verdes y pequeñas islas, reduzcamos el verde hacia adentro dos píxeles.

figura 3

y luego, para equilibrar toda la expansión y la reducción (para reducir el sesgo), lo expandiremos un píxel más:

Figura 4

La agrupación de regiones identifica estos parches contiguos de verde:

Figura 5

Cada parche diferente se muestra en un color diferente.

Use una operación condicional o SetNull para eliminar los pequeños parches. Que pequeño Inspeccioné la tabla de atributos y descubrí que muchos parches ocupaban entre 6 y 47 celdas; después de eso hubo un salto a 422 celdas. Elegí un umbral dentro de ese salto (100) y borré todas las celdas con conteos (¡no valores!) Menores que ese umbral. Esto es lo que quedó, superpuesto en el original para comparar:

Figura 6

Hemos logrado una representación bastante fina de las áreas de interés, adecuada para detectar y cuantificar cambios relativos a imágenes procesadas de manera similar. Tomé algo de trabajo, pero es mucho menos trabajo que digitalizar manualmente el escaneo original y, siempre que los escaneos se realicen con resoluciones consistentes, puede ser semiautomatizado. (Debido a que los mapas originales usan colores diferentes, al principio tiene que ocurrir alguna intervención inteligente para seleccionar los colores apropiados para expandir y reducir). Cada uno de los pasos es un cálculo bastante rápido, por lo que probablemente pueda darse el lujo de escanear el original. mapas con resoluciones extremadamente altas para mayor precisión.

whuber
fuente
Estos resultados se ven muy bien, veré si puedo recrearlos. Gracias @whuber!
Brian Z
2

Obtener una capa ráster aproximada en Gimp y convertirla en vector en QGIS probablemente me ahorró algo de tiempo, pero parece que no hay forma de evitar horas de limpieza de los archivos de forma resultantes, vértice por vértice.

Brian Z
fuente
1

Ok, tal vez esto funcione, tal vez no. dependiendo de la calidad del escaneo. puede establecer la transparencia de un color en particular en un porcentaje o puede usar la herramienta de valor para aislar el color que desee.

No voy a tomar el crédito por esto, ya que hice una pregunta antes ... la mía en realidad quería seleccionar casas de mapeo abierto de street view. Avísame si te ayuda.

Identificar polígonos en la imagen de trama

Avíseme si ayuda ... puedo eliminar si está fuera del punto por completo.

Ger
fuente
Había visto esta respuesta en un momento, pero luego no pude encontrarla nuevamente, así que gracias por publicar. Creo que la calidad de estas imágenes significa que este enfoque no será suficiente por sí solo, pero es útil como una pista sobre cómo funciona la expresión eval.
Brian Z
0

En Gimp tienes algunas herramientas de selección que pueden facilitar tu trabajo.

Creo que con la herramienta de selección difusa (selección por área de color) que puede configurar para que sea más o menos sensible a la variación de color (Utilizando la primera imagen que cargó, obtuve buenos resultados con un valor umbral de 13,0). De esta manera obtengo un resultado bastante limpio sin muchos parásitos que luego se pueden eliminar fácil y rápidamente seleccionando una herramienta de frotamiento

Una vez seleccionado, puede volver a colorear estas áreas con colores de alto contraste, volver a importar en SIG y luego vectorizar.

Pero esto no resolverá el problema señalado por Whuber sobre el área de tierra sombreada, pero dado que no son muchos de ellos, ¿tal vez pueda vectorizarlos desde cero sin tener que pasar mucho tiempo para hacerlo?

flo64
fuente
1
Desafortunadamente, las imágenes de arriba son solo pequeñas muestras dentro de un área de mapa enorme. Pero todavía puedo usar un enfoque similar con la herramienta Color, suavizándolo con los filtros Desenfoque y Umbral. Los resultados son bastante decentes en el mapa anterior (el superior arriba). Y afortunadamente no me importan tanto las áreas sombreadas como las sólidas.
Brian Z