¿Área de medición de clases ráster?

9

¿Existen herramientas o métodos en ArcMap que puedan medir el área de cada nivel de la salida de densidad del kernel?

Tenga en cuenta que esto es solo un diagrama de densidad del núcleo (no un archivo de forma o polígono). Análisis de densidad del grano (verde oscuro (10%) a rojo (90%) (1)

He intentado algunas cosas pero necesito que sea precisa.

Análisis de densidad de Kerenel (verde oscuro (10%) a rojo (90%)

Señor angus
fuente

Respuestas:

7

Usaría el siguiente flujo de trabajo para calcular el área dentro de las clases:

  1. Reclasifique (Spatial Analyst) la salida de densidad del núcleo a las clases que esté utilizando. Por defecto, ArcGIS crea una superficie ráster continua para la salida de densidad del núcleo, pero reclasifica la leyenda (que es temporal). El uso de la herramienta de reclasificación hará que esto sea permanente.
  2. Abra la tabla de atributos de densidad de kernel reclasificada y observe el campo "COUNT" ( Figura 1 ). Este es el recuento de todos los píxeles en cada clase. Por ejemplo, la Clase 1 (Valor = 1) tiene un recuento de 620,063 píxeles. Como mi sistema de coordenadas es UTM, las unidades están en metros y los píxeles tienen una resolución espacial de 1 m. Por lo tanto, la clase 1 es 620,063 m ^ 2.
  3. Para convertir el recuento a otras unidades, como hectáreas, agregue un nuevo campo en la tabla de atributos.
  4. Calcular campo ( Figura 2 )
  5. La lógica verifica los resultados resaltando una clase ( Figura 3 )

Figura 1

ingrese la descripción de la imagen aquí

Figura 2

ingrese la descripción de la imagen aquí

figura 3

ingrese la descripción de la imagen aquí

Aaron
fuente
2

Si quieres una solución arcpy:

import numpy as np  #not sure how arcpy imports numpy

r = arcpy.RasterToNumPyArray('your raster name')

for val in np.unique(r):
    area = np.sum(r == val)  #multiply this by your pixel area
    print 'value ', val, ' : ', area

alternativamente, puede escribir los valores en un archivo csv / text.

usuario1269942
fuente
1

Suponiendo que su gráfico de densidad del kernel es un ráster creado con la herramienta de densidad del kernel o similar, esto es solo una cuestión de usar la herramienta Raster to Polygon .

Asegúrese de especificar el campo que define la clasificación del ráster y lo convertirá en polígonos. Luego puede usar la herramienta Calcular geometría para calcular el área.

Fezter
fuente
He intentado eso cuando arrastro el archivo ráster dice "uno o más elementos descartados no son válidos". El error sugiere que hay texto en el archivo que está "interfiriendo" ¿Tienes alguna idea de por qué esto puede ser?
Sr. Angus
1
@MrAngus El problema es que la Densidad del núcleo siempre produce una salida ráster de punto flotante, mientras que Ráster a polígono requiere una entrada ráster entera (ver archivos de ayuda vinculados). Debería reclasificar primero el ráster KD.
Chris W
Tenga en cuenta que Calcular geometría es por entidad y no dará el área total de todos los polígonos que comparten una clase determinada.
Matt Wilkie
0

Una solución rápida a esto es una solución manual:

  1. Abra las propiedades del ráster y vaya a la pestaña de simbología.
  2. Presumiblemente, la simbología ya está establecida en Clasificados y el número de clases es lo que desea. Haz clic en el botón Clasificar.
  3. En el lado derecho del cuadro de diálogo hay un cuadro de valores de ruptura. Haga clic en cada valor de ruptura y en la parte inferior del cuadro de diálogo verá # Elementos en la clase. Este es un recuento de los píxeles en esa clase. Escriba el número para cada clase o ingréselo en una hoja de cálculo.
  4. Vuelva a cancelar las propiedades de ráster y cambie a la pestaña Fuente. El tamaño de celda se da allí en x, y. Multiplique estos dos juntos y tendrá el área de un píxel.
  5. Ahora tome esa área multiplicada por el número de píxeles en cada clase. Esto debería darte el área total de esa clase.

Preciso es un término relativo. En cuanto a las áreas de trama, será exactamente exacto. Si usa el método de Fezter, el área puede diferir dependiendo de si usa Smooth al convertir las regiones basadas en píxeles a polígonos.

Chris W
fuente