Statistiques focales (Spatial Analyst)

Disponible avec une licence Spatial Analyst.

Disponible avec une licence Image Analyst.

Synthèse

Pour chaque cellule, cet outil permet de calculer l'emplacement d'une statistique dans le voisinage.

En savoir plus sur le fonctionnement de l’outil Statistiques focales

Illustration

Valeurs en entrée et en sortie de l’outil Statistiques focales pour un voisinage rectangulaire avec définition de la statistique Somme
OutRas = FocalStatistics(InRas1, NbrRectangle(3,3,"CELL"), "SUM", "DATA")

Utilisation

  • Plusieurs formes de voisinage et types de statistique sont disponibles à la sélection. Les statistiques disponibles dépendent du type du raster en entrée.

  • Lorsque vous indiquez un voisinage circulaire, en anneau ou en secteur, certaines cellules diagonales extérieures ne sont pas toujours prises en compte dans les calculs. En effet, le centre d’une cellule doit figurer dans le voisinage.

  • Un fichier de noyau doit être indiqué pour les types de voisinage Irrégulier et Poids. Les fichiers de noyau doivent avoir une extension de fichier .txt.

    Pour plus d’informations sur la création et l’utilisation de fichiers de noyau, consultez les sections Irrégulière et Pondération de la rubrique Fonctionnement de l’outil Statistiques focales.

  • Pour les rasters en entrée de type entier, les statistiques valides pour Type de statistiques sont : majorité, maximum, moyenne, médiane, minimum, minorité, centile, plage, écart type, somme et variété. Pour les rasters en entrée de type à virgule flottante, les statistiques valides sont : maximum, moyenne, médiane, minimum, centile, plage, écart type et somme. Les statistiques majorité, minorité et variété ne sont pas disponibles pour les rasters en entrée à virgule flottante.

  • Si le raster en entrée est un entier, le raster en sortie est un entier pour les statistiques suivantes : majorité, maximum, minimum, minorité, plage, somme et variété. La sortie est à virgule flottante pour les statistiques suivantes : moyenne, médiane, centile et écart type.

    Si le raster en entrée est de type réel simple, la sortie est un réel simple pour tous les types de statistique disponibles.

  • Pour les calculs de médiane, si le voisinage comprend un nombre impair de cellules, les valeurs sont classées et la valeur du milieu est rapportée comme médiane. Si le voisinage comprend un nombre pair de cellules, les valeurs sont classées et la moyenne des deux valeurs centrales est calculée.

  • Dans le cas de calculs de majorité et de minorité et en présence d’un rattachement, reportez-vous à la rubrique Fonctionnement de l’outil Statistiques focales pour avoir plus d’informations.

  • Il est possible de définir le paramètre Voisinage sur Poids uniquement pour les types de statistique Moyenne, Écart type et Somme.

  • Les cellules NoData en entrée peuvent recevoir une valeur dans la sortie si le paramètre Ignore NoData in calculations (Ignorer NoData dans les calculs) est activé, à condition qu’au moins une cellule du voisinage présente une valeur valide.

  • Pour plus d’informations sur les environnements de géotraitement qui s’appliquent à cet outil, reportez-vous à la rubrique Environnements d’analyse et Spatial Analyst.

Paramètres

ÉtiquetteExplicationType de données
Raster en entrée

Raster sur lequel les statistiques focales pour chaque cellule en entrée sont calculées.

Raster Layer
Quartier
(Facultatif)

Cellules qui entourent une cellule de traitement qui sera utilisée dans le calcul des statistiques. Vous avez le choix entre plusieurs types de voisinage prédéfinis, ou vous pouvez définir un noyau personnalisé.

Une fois le type de voisinage sélectionné, d’autres paramètres peuvent être configurés pour définir entièrement la forme, la taille et les unités de mesure. Le voisinage par défaut est un rectangle carré avec une largeur et une hauteur de trois cellules.

Voici les formes des types de voisinage pris en charge :

  • Anneau, Rayon intérieur, Rayon extérieur, Unités

    Voisinage en forme de tore (anneau) défini par un rayon intérieur et un rayon extérieur. L'anneau par défaut a un rayon intérieur d'une cellule et un rayon extérieur de trois cellules.

  • Cercle, Rayon, Unités

    Voisinage circulaire doté d'un rayon donné. Le rayon par défaut est de trois cellules.

  • Rectangle, Hauteur, Largeur, Unités

    Voisinage rectangulaire défini par la hauteur et la largeur. La valeur par défaut est un carré avec une hauteur et une largeur de trois cellules.

  • Secteur, Rayon, Angle de départ, Angle de fin, Unités

    Voisinage en forme de secteur défini par un rayon, l'angle de début et l'angle de fin. Il s’étend dans le sens anti-horaire, de l’angle de départ vers l’angle d’arrivée. Les angles sont précisés en degrés, 0 ou 360 représentant l'Est. Vous pouvez utiliser des angles négatifs. Le secteur par défaut s'étend de 0 à 90 degrés, avec un rayon de trois cellules.

  • Irrégulier, Fichier de noyau

    Voisinage personnalisé avec des spécifications définies par le fichier texte du noyau identifié.

  • Pondération, Fichier de noyau

    Voisinage personnalisé avec des spécifications définies par le fichier texte du noyau identifié, lequel peut appliquer des pondérations aux membres du voisinage.

Pour les voisinages de type Anneau, Cercle, Rectangle et Secteur, les unités de distance des paramètres peuvent être spécifiées en unités de cellule ou de Carte. Les unités de cellule sont privilégiées par défaut.

Pour les voisinages de noyaux, la première ligne du fichier de noyau définit la largeur et la hauteur du voisinage en nombre de cellules. Les lignes suivantes indiquent comment la valeur en entrée correspondant à cette localisation dans le noyau sera traitée. La valeur 0 dans le fichier de noyau pour le type de voisinage Irrégulier ou Pondération indique que la localisation correspondante ne sera pas incluse dans le calcul. Pour le voisinage de type Irrégulier, la valeur 1 dans le fichier de noyau indique que la cellule en entrée correspondante sera incluse dans l’opération. Pour le voisinage de type Pondération, la valeur à chaque position indique par quel facteur la valeur de la cellule en entrée correspondante doit être multipliée. Vous pouvez utiliser des valeurs positives, négatives et décimales.

Neighborhood
Type de statistique
(Facultatif)

Spécifie le type de statistique à calculer.

Le type de statistique par défaut est Moyenne.

Si le raster en entrée est de type entier, tous les types de statistique sont disponibles. Si le raster en entrée est de type virgule flottante, seuls les types de statistique Moyenne, Maximum, Médiane, Minimum, Pourcentage, Plage, Écart type et Somme sont disponibles.

  • MoyenneLa moyenne (valeur moyenne) des cellules du voisinage est calculée.
  • MajoritéLa majorité (valeur la plus fréquente) des cellules du voisinage est identifiée.
  • MaximumLe maximum (valeur la plus élevée) des cellules du voisinage est identifié.
  • MédianeLa médiane des cellules du voisinage est calculée. La médiane équivaut au 50e centile.
  • MinimumLe minimum (valeur la plus faible) des cellules du voisinage est identifié.
  • MinoritéLa minorité (valeur la moins fréquente) des cellules du voisinage est identifiée.
  • CentileUn centile des cellules du voisinage est calculé. Le 90è centile est calculé par défaut. Vous pouvez spécifier d’autres valeurs (entre 0 et 100) à l’aide du paramètre Percentile value (Valeur de pourcentage).
  • PlageLa plage (différence entre la valeur la plus élevée et la valeur la plus faible) des cellules du voisinage est calculée.
  • Écart typeL’écart type des cellules du voisinage est calculé.
  • SommeLa somme des cellules du voisinage est calculée.
  • VariétéLa variété (le nombre de valeurs uniques) des cellules du voisinage est calculée.
String
Ignorer NoData dans les calculs
(Facultatif)

Précise si les valeurs NoData sont ignorées par le calcul de statistiques.

  • Activé : si une valeur NoData existe dans un voisinage, elle est ignorée. Seules les cellules du voisinage dotées de valeurs de données sont utilisées dans la détermination de la valeur en sortie. Si la cellule de traitement elle-même est de type NoData, la cellule de traitement peut se voir attribuer une valeur dans le raster en sortie, à condition qu’au moins une cellule du voisinage présente une valeur valide. Il s’agit de l’option par défaut.
  • Désactivé : si une cellule d’un voisinage a une valeur NoData, cellule de traitement comprise, la sortie de la cellule de traitement est NoData. La présence d’une valeur NoData implique que les informations sont insuffisantes pour déterminer la valeur statistique du voisinage.
Boolean
Valeur du pourcentage
(Facultatif)

Valeur de centile qui est calculée. La valeur par défaut est de 90, soit le 90è centile.

La valeur peut être comprise entre 0 et 100. Le centile 0 équivaut sensiblement à la statistique de minimum, tandis que le 100e centile équivaut à la statistique de maximum. La valeur 50 produit essentiellement le même résultat que la statistique médiane.

Cette option est prise en charge seulement si le paramètre Statistics type (Type de statistique) est défini sur Percentile (Pourcentage). Si d’autres types de statistique sont spécifiés, ce paramètre est ignoré.

Double

Valeur renvoyée

ÉtiquetteExplicationType de données
Raster en sortie

Raster de statistiques focales en sortie.

Raster

FocalStatistics(in_raster, {neighborhood}, {statistics_type}, {ignore_nodata}, {percentile_value})
NomExplicationType de données
in_raster

Raster sur lequel les statistiques focales pour chaque cellule en entrée sont calculées.

Raster Layer
neighborhood
(Facultatif)

Cellules qui entourent une cellule de traitement qui sera utilisée dans le calcul des statistiques. Vous avez le choix entre plusieurs types de voisinage prédéfinis, ou vous pouvez définir un noyau personnalisé.

Une fois le type de voisinage sélectionné, d’autres paramètres peuvent être configurés pour définir entièrement la forme, la taille et les unités de mesure. Le voisinage par défaut est un rectangle carré avec une largeur et une hauteur de trois cellules.

La forme des voisinages est définie par la classe Neighborhood. Les types de voisinage pris en charge sont NbrAnnulus, NbrCircle, NbrRectangle, NbrWedge, NbrIrregular, et NbrWeight.

Voici les formes des types de voisinage pris en charge :

  • NbrAnnulus({innerRadius}, {outerRadius}, {units})

    Voisinage en forme de tore (anneau) défini par un rayon intérieur et un rayon extérieur. L'anneau par défaut a un rayon intérieur d'une cellule et un rayon extérieur de trois cellules.

  • NbrCircle({radius}, {units}

    Voisinage circulaire doté d'un rayon donné. Le rayon par défaut est de trois cellules.

  • NbrRectangle({width}, {height}, {units})

    Voisinage rectangulaire défini par la hauteur et la largeur. La valeur par défaut est un carré avec une hauteur et une largeur de trois cellules.

  • NbrWedge({radius}, {startAngle}, {endAngle}, {units})

    Voisinage en forme de secteur défini par un rayon, l'angle de début et l'angle de fin. Il s’étend dans le sens anti-horaire, de l’angle de départ vers l’angle d’arrivée. Les angles sont précisés en degrés, 0 ou 360 représentant l'Est. Vous pouvez utiliser des angles négatifs. Le secteur par défaut s'étend de 0 à 90 degrés, avec un rayon de trois cellules.

  • NbrIrregular(inKernelFile)

    Voisinage personnalisé avec des spécifications définies par le fichier texte du noyau identifié.

  • NbrWeight(inKernelFile)

    Voisinage personnalisé avec des spécifications définies par le fichier texte du noyau identifié, lequel peut appliquer des pondérations aux membres du voisinage.

Pour les voisinages NbrAnnulus, Nbrcircle, NbrRectangle et NbrWedge, les unités de distance des paramètres peuvent être spécifiées en unités CELL ou en unités MAP. Les unités de cellule sont privilégiées par défaut.

Pour les voisinages de noyaux, la première ligne du fichier de noyau définit la largeur et la hauteur du voisinage en nombre de cellules. Les lignes suivantes indiquent comment la valeur en entrée correspondant à cette localisation dans le noyau sera traitée. La valeur 0 dans le fichier de noyau pour le type de voisinage Irrégulier ou Pondération indique que la localisation correspondante ne sera pas incluse dans le calcul. Pour le voisinage de type Irrégulier, la valeur 1 dans le fichier de noyau indique que la cellule en entrée correspondante sera incluse dans l’opération. Pour le voisinage de type Pondération, la valeur à chaque position indique par quel facteur la valeur de la cellule en entrée correspondante doit être multipliée. Vous pouvez utiliser des valeurs positives, négatives et décimales.

Neighborhood
statistics_type
(Facultatif)

Spécifie le type de statistique à calculer.

  • MEANLa moyenne (valeur moyenne) des cellules du voisinage est calculée.
  • MAJORITYLa majorité (valeur la plus fréquente) des cellules du voisinage est identifiée.
  • MAXIMUMLe maximum (valeur la plus élevée) des cellules du voisinage est identifié.
  • MEDIANLa médiane des cellules du voisinage est calculée. La médiane équivaut au 50e centile.
  • MINIMUMLe minimum (valeur la plus faible) des cellules du voisinage est identifié.
  • MINORITYLa minorité (valeur la moins fréquente) des cellules du voisinage est identifiée.
  • PERCENTILEUn centile des cellules du voisinage est calculé. Le 90è centile est calculé par défaut. Vous pouvez spécifier d’autres valeurs (entre 0 et 100) à l’aide du paramètre percentile_value.
  • RANGELa plage (différence entre la valeur la plus élevée et la valeur la plus faible) des cellules du voisinage est calculée.
  • STDL’écart type des cellules du voisinage est calculé.
  • SUMLa somme des cellules du voisinage est calculée.
  • VARIETYLa variété (le nombre de valeurs uniques) des cellules du voisinage est calculée.

Le type de statistique par défaut est MEAN.

Si le raster en entrée est de type entier, tous les types de statistique sont disponibles. Si le raster en entrée est de type virgule flottante, seuls les types de statistique MEAN, MAXIMUM, MEDIAN, MINIMUM, PERCENTILE, RANGE, STD, et SUM sont disponibles.

String
ignore_nodata
(Facultatif)

Précise si les valeurs NoData sont ignorées par le calcul de statistiques.

  • DATASi une valeur NoData existe dans un voisinage, elle est ignorée. Seules les cellules du voisinage dotées de valeurs de données sont utilisées dans la détermination de la valeur en sortie. Si la cellule de traitement elle-même est de type NoData, la cellule de traitement peut se voir attribuer une valeur dans le raster en sortie, à condition qu’au moins une cellule du voisinage présente une valeur valide. Il s’agit de l’option par défaut.
  • NODATASi une cellule d’un voisinage a une valeur NoData, cellule de traitement comprise, la sortie de la cellule de traitement est NoData. La présence d’une valeur NoData implique que les informations sont insuffisantes pour déterminer la valeur statistique du voisinage.
Boolean
percentile_value
(Facultatif)

Valeur de centile qui est calculée. La valeur par défaut est de 90, soit le 90è centile.

La valeur peut être comprise entre 0 et 100. Le centile 0 équivaut sensiblement à la statistique de minimum, tandis que le 100e centile équivaut à la statistique de maximum. La valeur 50 produit essentiellement le même résultat que la statistique médiane.

Cette option est uniquement prise en charge si le paramètre statistics_type est défini sur PERCENTILE. Si d’autres types de statistique sont spécifiés, ce paramètre est ignoré.

Double

Valeur renvoyée

NomExplicationType de données
out_raster

Raster de statistiques focales en sortie.

Raster

Exemple de code

Premier exemple d'utilisation de l'outil FocalStatistics (fenêtre Python)

Cet exemple décrit le calcul de la valeur la moins récurrente dans un voisinage en anneau autour de chaque cellule du raster en entrée.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outFocalStat = FocalStatistics("elevation", NbrAnnulus(5, 10, "CELL"), 
                               "MINORITY", "NODATA")
outFocalStat.save("C:/sapyexamples/output/focalstat01")
Deuxième exemple d'utilisation de l'outil FocalStatistics (script autonome)

Dans cet exemple, on définit la valeur la moins récurrente dans un voisinage de 10 x 10 autour de chaque cellule dans le raster en entrée.

# Name: FocalStatistics_Ex_02.py
# Description: Calculates a statistic on a raster over a specified
#    neighborhood.
# 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 = "elevation"
neighborhood = NbrRectangle(10, 10, "CELL")

# Execute FocalStatistics
outFocalStatistics = FocalStatistics(inRaster, neighborhood, "MINORITY",
                                     "")

# Save the output 
outFocalStatistics.save("C:/sapyexamples/output/focalstatout")

Informations de licence

  • Basic: Nécessite Spatial Analyst ou Image Analyst
  • Standard: Nécessite Spatial Analyst ou Image Analyst
  • Advanced: Nécessite Spatial Analyst ou Image Analyst

Rubriques connexes