Filtre majoritaire (Spatial Analyst)

Niveau de licence :De baseStandardAvancé

Récapitulatif

Remplace les cellules d'un raster selon la valeur de majorité des cellules voisines contiguës.

Pour en savoir plus sur le fonctionnement de l'outil Filtre majoritaire

Illustration

Illustration de l'outil filtre majoritaire
OutRas = MajorityFilter (InRas1)

Utilisation

Syntaxe

MajorityFilter (in_raster, {number_neighbors}, {majority_definition})
ParamètreExplicationType de données
in_raster

Raster en entrée à filtrer selon la majorité des cellules voisines contiguës.

Il doit être de type entier.

Raster Layer
number_neighbors
(Facultatif)

Détermine le nombre de cellules voisines à utiliser au sein du filtre.

  • FOUR Le filtre porte sur les quatre cellules directement voisines (orthogonales) de la cellule considérée. Il s'agit de l'option par défaut.
  • EIGHT Le filtre s'applique aux huit cellules voisines les plus proches (fenêtre de 3x3) de la cellule considérée.
String
majority_definition
(Facultatif)

Spécifie le nombre de cellules contiguës (limitrophes dans l'espace) devant avoir la même valeur pour qu'un remplacement ait lieu.

  • MAJORITE La majorité des cellules doivent avoir la même valeur et être contiguës. Trois cellules connectées sur quatre, ou cinq sur huit, doivent avoir la même valeur.
  • HALF La moitié des cellules doivent avoir la même valeur et être contiguës. Deux cellules connectées sur quatre, ou quatre sur huit, doivent avoir la même valeur. L'utilisation de l'option HALF aura un effet lissant.
String

Valeur renvoyée

NomExplicationType de données
out_raster

Raster filtré en sortie.

Raster

Exemple de code

Exemple 1 d'utilisation de l'outil MajorityFilter (fenêtre Python)

Cet exemple décrit le filtrage du raster en entrée à l'aide des huit voisins, avec effet de lissage maximal. Le filtrage nécessite que la moitié d'entre eux ait la même valeur pour qu'un remplacement ait lieu.

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")
Exemple 2 d'utilisation de l'outil MajorityFilter (script autonome)

Cet exemple décrit le filtrage du raster en entrée à l'aide des huit voisins, avec effet de lissage maximal. Le filtrage nécessite que la moitié d'entre eux ait la même valeur pour qu'un remplacement ait lieu.

# 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"

# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")

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

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

Environnements

Thèmes connexes

Informations de licence

ArcGIS for Desktop Basic : Requis ArcGIS Spatial Analyst
ArcGIS for Desktop Standard : Requis ArcGIS Spatial Analyst
ArcGIS for Desktop Advanced : Requis ArcGIS Spatial Analyst
9/13/2013