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.
Ilustración
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 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 Majoría.
Aunque el criterio de contigüidad es el mismo para las celdas de ráster de borde y de esquina, obedecen a reglas de Majorí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 que se aplican a esta herramienta.
Sintaxis
MajorityFilter(in_raster, {number_neighbors}, {majority_definition})
Parámetro | Explicación | Tipo 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.
| 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.
| String |
Valor de retorno
Nombre | Explicación | Tipo de datos |
out_raster | El ráster filtrado de salida. La salida es siempre de tipo entero. | Raster |
Muestra de código
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")
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")
Entornos
Información de licenciamiento
- Basic: Requiere Spatial Analyst
- Standard: Requiere Spatial Analyst
- Advanced: Requiere Spatial Analyst