5 votos

Clasificación de datos vectoriales en QGIS

Estoy tratando de clasificar un shapefile basado en un conjunto de reglas, siguiendo este tutorial .

Este es el resultado: enter image description here

Lo que quiero preguntar es 1. ¿Cómo insertar el resultado de la clasificación (agua, tierra, etc.) en la tabla de atributos? Quiero hacer que cada característica se asigne a una determinada clase en la tabla de atributos. enter image description here

  1. ¿Cómo unir el vector que contiene la misma clase? He intentado vector-geoprocessing-dissolve, pero no funciona. Intenté seleccionar los polígonos usando la misma regla, luego usando "fusionar la característica seleccionada". Sin embargo, el valor de los atributos sólo sigue la primera característica, mientras que necesito la media de cada característica. ¿Hay alguna manera de combinar la misma categoría, y calcular el valor medio de los atributos?

2 votos

¿Cómo quiere asignar cada característica a una clase determinada? ¿Quiere tomar ciertos valores de otro campo para igualar una clase? Por ejemplo, ¿si "nbPixels" < 100 entonces clase = agua? Esto podría hacerse con la función Calculadora de campo .

4voto

Matt Andersen Puntos 2316
  1. Basado en la sugerencia de Uje Indo, utilicé la calculadora de campo para editar el campo existente "clase" con esta declaración. Funciona perfectamente.

CASO

WHEN "meanB0" < 12,5 AND "meanB3" < 85 THEN 'water'

WHEN "meanB0" > 12.5 AND "meanB0" <18 THEN 'nypa'

WHEN "meanB0" >= 17 AND "meanB7" > 170 THEN 'deadtree'

WHEN "meanB0" >=17 AND "meanB7" < 100 THEN 'rhizopora'

WHEN "meanB0" >=17 AND "meanB7" >= 100 AND "meanB7" <= 180 THEN 'bruguiera'

WHEN "meanB0" <=12,5 AND "meanB3" >= 85 THEN 'land'

FIN

  1. Basándome en Jochen Schwarze y en la prueba y error, finalmente he utilizado la saga disolver polígono por atributos crea un archivo shape con el nombre de la clase solamente, y toda la demás información de la banda desaparece. Después, para calcular la media, el máximo, el mínimo, etc. de cada polígono de clase, tengo que:
    • dividir la imagen de trama en cada banda utilizando la calculadora de trama
    • saga de carreras estadística de cuadrícula para el polígono donde para las cuadrículas, elija toda la banda raster que se dividió antes, y para el shapefile elija el polígono de disolución. Ejecutarlo, y el resultado dará un archivo shp con el número de células, suma, rango, min, max, media, var, desviación estándar para cada banda y cada polígono.

3voto

NiallJG Puntos 51
  1. tienes que hacerlo editando tu tabla de atributos primero (Calculadora de campos) para poner el valor en tu columna de clase, usa la sentencia condicional CASO basado en la "regla" que utilizó en la clasificación. puede echar un vistazo en este para usar CASO .

  2. Después de que su columna de clase esté llena. Entonces puede ejecutar Capa vectorial dividida de la caja de herramientas de procesamiento. Introduzca la capa vectorial, luego introduzca la clase como campo de ID único.

Adición : Para unir características en una característica por Clase, la Disolución basada en su Campo "clase" también lo hará lógicamente.

0 votos

Gracias. Ejecuto esta función CASE de la regla y funciona perfectamente. Sin embargo, todavía no puedo averiguar cómo calcular el valor medio de los atributos después de disolverlos. ¿Sabéis cómo? Perdón por tanta molestia

1 votos

Utilice los plugins experimentales llamados Disolver con estadísticas Asegúrese de marcar los plugins experimentales (en la configuración de los plugins) antes de buscar el nombre de este plugin. Desafortunadamente este plugin no funciona para mí (usando Pisa 10.1). Pero puede probarlo. Los plugins se colocarán en la barra de menú del vector después de que se instala

0 votos

No encuentro Dissolve con estadísticas en el repositorio. Pero toda la información (mediaB0, mediaB1, etc.) ha desaparecido, sólo el nombre de la clase sigue ahí. ¿Hay alguna forma de calcular el nuevo valor de las estadísticas del polígono basándose en la imagen original?

2voto

DBM Puntos 51

Tuve un problema similar con las herramientas disponibles en los menús. Después de crear el atributo adicional, deberías revisar el plugin de procesamiento, y luego las herramientas relacionadas en la caja de herramientas de procesamiento (busca disolver), ¡especialmente prueba hierba y saga!

enter image description here

0 votos

Gracias. Estoy tratando de usar QGIS vector dissolve ahora, pero se está ejecutando muy lento (ya 20 horas y sólo llegar a 68% ahora). a pesar de que mi memoria RAM es de 8 GB, qgis sólo utilizan alrededor de 500 MB. Probaré tu sugerencia usando grass, saga y GDAL la próxima vez. Espero que haya una opción donde pueda aumentar el uso de la memoria y hacerlo más rápido.

1 votos

¿ha alcanzado el 100%? Pero, ¿cuántos polígonos hay que disolver? ¿Importa si usas qgis 32 o 64 bits? Sin embargo, mi hallazgo es que varias herramientas a menudo difieren significativamente en el tiempo de procesamiento. ¿Y tienes acceso a herramientas comerciales (ESRI, FME)? Especialmente FME es rápido y fiable, pero bastante caro...

0 votos

Alrededor de 70000 polígonos en total. bien después de alcanzar el punto 78% el QGIS se estrelló, así que ningún resultado hasta ahora. Estoy usando QGIS LYON 64bit. Lo he vuelto a ejecutar usando saga dissolve. Por desgracia, no tengo acceso a las herramientas comerciales :( ¿Son más rápidos?

1voto

DBM Puntos 51

Usando FME hice lo siguiente

  • descargado los límites administrativos de todo el mundo de http://www.gadm.org/version2
  • tomar sólo boudaries de nivel 5 para su posterior procesamiento de ejemplo (es sólo España?!), 51432 polígonos
  • creó un nuevo atributo poblado aleatoriamente con valores del 1 al 7, dándome un patrón diferente al tuyo, pero esto no debería importar.
  • disolvió esto en base a la clase aleatoria.
  • tiempo de procesamiento 1 min, 12 seg como se puede ver en las capturas de pantalla a continuación.

No sé realmente cuál es el secreto de los chicos, pero si tienes cientos de procesos de este tipo, comprar un producto comercial puede ser una forma considerable... (¿o una licencia de prueba, quizás? https://www.safe.com/fme/fme-desktop/trial-download/ (podría enviarle el espacio de trabajo...)

Proceso FME:

enter image description here

Vis. en QGIS, conjunto total de datos de la muestra

enter image description here

de cerca...

enter image description here

... y el resultado disuelto.

enter image description here

0 votos

Gracias. ¿El polígono disuelto contiene también estadísticas de otros atributos? (media, suma de cada banda, etc)? Porque usando saga, los polígonos se disuelven en segundos, pero todos los otros atributos que los acompañan se han ido

1 votos

Sí, en FME esto es posible, porque los Atributos de entrada son mantenidos como atributos de lista por la disolución. En estos se puede utilizar el llamado transformador StatistcsCalculator. Te sugiero que eches un vistazo a la guía de referencia de transformadores de FME: cdn.safe.com/resources/fme/FME-Transformer-Reference-Guide.pdf

0 votos

Lo hice usando saga "grid statistic for polygon", da número de celdas, min, max, sum, range, mean, varian y standard deviation para cada clase de polígono y cada banda. Así que creo que está bien por ahora :) gracias por su ayuda

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