Filtro mayoritario (Spatial Analyst)

Disponible con una licencia de Spatial Analyst.

Resumen

Reemplaza las celdas en un ráster según la mayoría de sus celdas vecinas contiguas.

Más información sobre cómo funciona Filtro mayoritario

Ilustración

Ilustración de Filtro mayoritario
OutRas = MajorityFilter(InRas1)

Uso

  • La herramienta Filtro mayoritario debe satisfacer dos criterios antes de que se pueda producir un reemplazo. El número de celdas vecinas de un valor similar debe ser suficientemente grande (ya sea la mayoría o la mitad de todas las celdas) y esas celdas deben ser contiguas en relación al centro del kernel del filtro. El segundo criterio que concierne a la conectividad espacial de las celdas minimiza la corrupción de patrones espaciales celulares.

  • El uso de cuatro en el número de vecinos retendrá las esquinas de las regiones rectangulares. El uso de ocho vecinos suavizará las esquinas de las regiones rectangulares.

  • Si el número de vecinos se establece en ocho, contiguo se define como compartir un borde. Si el número de vecinos se establece en cuatro, contiguo se define como compartir una esquina.

  • Si el parámetro Umbral de reemplazo se establece en Mitad y se producen dos valores como porciones iguales, no se producirá ningún reemplazo si el valor de la celda de procesamiento es igual a una de las mitades. La opción Mitad permite un filtro más extensivo que la opción Mayoría.

  • Aunque el criterio de contigüidad es el mismo para las celdas ráster de borde y de esquina, obedecen a reglas de Mayoría y Mitad diferentes. Cuando el número de vecinos que se va a utilizar es cuatro, una celda de borde o de esquina siempre requiere dos vecinos coincidentes antes de que se produzca el reemplazo. Si los vecinos son ocho, una celda de esquina debe tener todos los vecinos del mismo valor antes de que se cambie, mientras que una celda de borde requiere tres vecinos contiguos, incluidos uno a lo largo del borde, antes de que se produzca cualquier cambio.

  • El ráster de salida se estabilizará (ya no cambiará) después de algunas ejecuciones de Filtro mayoritario.

  • Consulte Entornos de análisis y Spatial Analyst para obtener detalles adicionales sobre los entornos de geoprocesamiento válidos para esta herramienta.

Parámetros

EtiquetaExplicaciónTipo de datos
Ráster de entrada

Ráster de entrada que se filtrará según la mayoría de las celdas vecinas contiguas.

Debe ser de tipo entero.

Raster Layer
Número de elementos próximos a utilizar
(Opcional)

Determina la cantidad de celdas vecinas a utilizarse en el kernel del filtro.

  • FourEl kernel del filtro serán los cuatro vecinos directos (ortogonales) a la celda actual. Esta es la opción predeterminada.
  • EightEl kernel del filtro serán los ocho vecinos más próximos (una ventana de tres por tres) a la celda actual.
String
Umbral de reemplazo
(Opcional)

Especifica la cantidad de celdas contiguas (conectadas espacialmente) que deben tener el mismo valor antes de que se produzca el reemplazo.

  • MayoríaLa mayoría de las celdas deben tener el mismo valor y ser contiguas. Tres de cuatro o cinco de ocho celdas conectadas deben tener el mismo valor.
  • MitadLa mitad de las celdas deben tener el mismo valor y ser contiguas. Dos de cuatro o cuatro de ocho celdas conectadas deben tener el mismo valor. Esta opción tendrá un efecto de suavizado mayor que la otra.
String

Valor de retorno

EtiquetaExplicaciónTipo de datos
Ráster de salida

El ráster filtrado de salida.

La salida es siempre de tipo entero.

Raster

MajorityFilter(in_raster, {number_neighbors}, {majority_definition})
NombreExplicaciónTipo de datos
in_raster

Ráster de entrada que se filtrará según la mayoría de las celdas vecinas contiguas.

Debe ser de tipo entero.

Raster Layer
number_neighbors
(Opcional)

Determina la cantidad de celdas vecinas a utilizarse en el kernel del filtro.

  • FOUREl kernel del filtro serán los cuatro vecinos directos (ortogonales) a la celda actual. Esta es la opción predeterminada.
  • EIGHTEl kernel del filtro serán los ocho vecinos más próximos (una ventana de tres por tres) a la celda actual.
String
majority_definition
(Opcional)

Especifica la cantidad de celdas contiguas (conectadas espacialmente) que deben tener el mismo valor antes de que se produzca el reemplazo.

  • MAJORITYLa mayoría de las celdas deben tener el mismo valor y ser contiguas. Tres de cuatro o cinco de ocho celdas conectadas deben tener el mismo valor.
  • HALFLa mitad de las celdas deben tener el mismo valor y ser contiguas. Dos de cuatro o cuatro de ocho celdas conectadas deben tener el mismo valor. Esta opción tendrá un efecto de suavizado mayor que la otra.
String

Valor de retorno

NombreExplicaciónTipo de datos
out_raster

El ráster filtrado de salida.

La salida es siempre de tipo entero.

Raster

Muestra de código

Ejemplo 1 de MajorityFilter (ventana de Python)

En este ejemplo se filtra el ráster de entrada utilizando los ocho vecinos con un mayor efecto de suavizado al requerir que la mitad de estos tengan el mismo valor de sustitución.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outMajFilt = MajorityFilter("land", "EIGHT", "HALF")
outMajFilt.save("c:/sapyexamples/output/outmajfilt")
Ejemplo 2 de MajorityFilter (script independiente)

En este ejemplo se filtra el ráster de entrada utilizando los ocho vecinos con un mayor efecto de suavizado al requerir que la mitad de estos tengan el mismo valor de sustitución.

# Name: MajorityFilter_Ex_02.py
# Description: Replaces cells in a raster based on the 
#              majority of their contiguous neighboring cells.
# Requirements: Spatial Analyst Extension

# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *

# Set environment settings
env.workspace = "C:/sapyexamples/data"

# Set local variables
inRaster = "land"

# Execute MajorityFilter
outMajFilt = MajorityFilter(inRaster, "EIGHT", "HALF")

# Save the output 
outMajFilt.save("c:/sapyexamples/output/majfilter")

Temas relacionados