Statistiques de cellule (ArcGIS Spatial Analyst)

Synthèse

Calcule des statistiques par cellule à partir de rasters multiples.

Les statistiques disponibles sont les suivantes : Majority (Majorité), Maximum, Mean (Moyenne), Median (Médiane), Minimum, Minority (Minorité), Percentile (Centile), Range (Plage), Standard deviation (Écart type), Sum (Somme) et Variety (Variété).

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

Illustration

Exemples de valeurs en entrée et en sortie de l’outil Statistiques de cellule
OutRas = CellStatistics([InRas1, InRas2, InRas3], "SUM", "NODATA", "SINGLE_BAND")

Utilisation

  • L'ordre des rasters en entrée est sans importance avec cet outil.

  • Pour les types de statistiques Maximum, Minimum, Moyenne, Médiane, Majorité, Minorité, Centile et Somme, si vous n’utilisez qu’un raster en entrée, les valeurs de cellule en sortie seront les mêmes que les valeurs de cellule en entrée. Pour Plage et Écart type, les cellules en sortie ont la valeur 0. Pour Variété, elles ont la valeur 1.

  • Si le paramètre Process as multiband (Traiter comme multicanal) n’est pas sélectionné (process_as_multiband a la valeur SINGLE_BAND dans Python), chaque canal d’un raster multicanal en entrée est traité séparément en tant que raster monocanal et la sortie est un raster monocanal.

    Sortie monocanal lors d’un traitement en tant que SINGLE_BAND
    L’outil Statistiques de cellule crée une sortie monocanal lors d’un traitement en tant que SINGLE_BAND.
  • Si le paramètre Process as multiband (Traiter comme multicanal) est sélectionné (process_as_multiband a la valeur MULTI_BAND dans Python), chaque raster multicanal en entrée est traité comme un raster multicanal et la sortie est un raster multicanal. Le raster en sortie est également multicanal si les entrées sont une combinaison de raster multicanal et de constantes. Le nombre de canaux dans chaque entrée multi-canaux doit être identique.

    L’outil exécute l’opération sur chaque canal d’une entrée en utilisant le canal correspondant de l’autre entrée. Si l’une des entrées est un raster multicanal et que l’autre entrée est une constante, l’outil exécute l’opération en utilisant la valeur constante de chaque canal de l’entrée multicanal.

    Sortie multicanal lors d’un traitement en tant que MULTI_BAND.
    L’outil Statistiques de cellule crée une sortie multicanal lors d’un traitement en tant que MULTI_BAND.
  • Si toutes les entrées correspondent à des données raster multidimensionnelles avec le même nombre de variables, l’outil effectue l’opération pour toutes les tranches qui possèdent la même valeur de dimension. La sortie est un raster multidimensionnel au format CRF. Les variables des entrées doivent posséder au moins une dimension en commun et une valeur dimensionnelle en commun à traiter par cet outil, sinon, une erreur se produit.

    Si toutes les entrées possèdent une variable, mais des noms différents, désélectionnez l’environnement de géotraitement Match Multidimensional Variable (Apparier la variable multidimensionnelle) (définissez arcpy.env.matchMultidimensionalVariable = False dans Python) avant de procéder à l’opération.

    Si l’une des entrées ou plusieurs d’entre elles correspondent à un raster multidimensionnel et que les autres entrées sont des constantes, l’outil procède à l’opération pour toutes les tranches de toutes les variables en utilisant la valeur constante, la sortie étant un raster multidimensionnel.

  • Pour les calculs de majorité) et de minorité, en cas d’égalité, la sortie correspond à la plus faible des valeurs égales.

Paramètres

ÉtiquetteExplicationType de données
Rasters ou valeurs constantes en entrée

Liste des rasters en entrée pour lesquels une opération statistique est calculée pour chaque cellule de la fenêtre d’analyse.

Un nombre peut être utilisé comme entrée. Toutefois, la taille de cellule et l'étendue doivent être définies en premier dans l'environnement.

Si le paramètre Process as multiband (Traiter comme multicanal) est sélectionné, toutes les entrées multicanaux doivent comporter le même nombre de canaux.

Raster Layer; Constant
Statistique de croisement
(Facultatif)

Spécifie le type de statistique à calculer.

Le type de statistique par défaut est Mean (Moyenne).

  • MoyenneLa moyenne des entrées sera calculée. Il s’agit de l’option par défaut.
  • MajoritéLa majorité (valeur qui apparaît le plus souvent) des entrées sera déterminée.
  • MaximumLe maximum (valeur la plus grande) des entrées sera déterminé.
  • MédianeLa médiane des entrées sera déterminée.
  • MinimumLe minimum (valeur la plus petite) des entrées sera déterminé.
  • MinoritéLa minorité (valeur qui se produit le moins souvent) des entrées sera déterminée.
  • PourcentageLe centile des entrées est calculé. Le 90e 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 centile).
  • PlageLa plage (différence entre les valeurs les plus grandes et les plus petites) des entrées sera calculée.
  • Écart typeL’écart type des entrées sera calculé.
  • SommeLa somme (total de toutes les valeurs) des entrées sera calculée.
  • VariétéLa variété (nombre de valeurs uniques) des entrées sera calculée.
String
Ignorer NoData dans les calculs
(Facultatif)

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

  • Activé : à l’emplacement de la cellule de traitement, si des rasters en entrée possèdent la valeur NoData, cette valeur NoData est ignorée. Les statistiques sont calculées en tenant compte uniquement des cellules avec des valeurs valides. Il s’agit de l’option par défaut.
  • Désactivé : si l’emplacement de la cellule de traitement des rasters en entrée est égal à NoData, la sortie de cette cellule est égale à NoData.
Boolean
Process as multiband (Traiter comme multicanal)
(Facultatif)

Indique comment les bandes des rasters multibandes en entrée seront traitées.

  • Désactivé : chaque bande d’une entrée de raster multibandes sera traitée séparément comme un raster monobande. Il s’agit de l’option par défaut.
  • Activé : chaque entrée de raster multibande sera traitée séparément comme un raster multibande. L’opération est réalisée sur chaque bande depuis une entrée en utilisant le numéro de bande correspondant des autres entrées.
Boolean
Valeur du percentile
(Facultatif)

Valeur de centile à calculer. La valeur par défaut est de 90, soit le 90e centile.

La valeur peut être comprise entre 0 et 100. Le centile n° 0 est équivalent à la statistique minimale tandis que le 100e centile équivaut à la statistique maximale. Une valeur de 50 donne le même résultat que la statistique médiane.

Ce paramètre n’est disponible que si le paramètre Overlay statistic (Statistique de croisement) est défini sur Percentile (Centile).

Double
Percentile interpolation type (Type d’interpolation en centile)
(Facultatif)

Définit la méthode d’interpolation à utiliser lorsque la valeur de centile spécifiée se situe entre deux valeurs de cellule en entrée.

  • Détection automatiqueSi les rasters en entrée ont le type de pixel Entier, la méthode Nearest (Le plus proche) est utilisée. Si les rasters en entrée ont le type de pixel Virgule flottante, la méthode Linear (Linéaire) est utilisée. Il s’agit de l’option par défaut.
  • Les plus prochesLa valeur disponible la plus proche du centile souhaité sera utilisée. Dans ce cas, le type de pixel en sortie est identique à celui des rasters en entrée.
  • LinéaireLa moyenne pondérée des deux valeurs environnantes du centile va être utilisée. Dans ce cas, le type de pixel en sortie est à virgule flottante.
String

Valeur renvoyée

ÉtiquetteExplicationType de données
Raster en sortie

Raster en sortie.

Pour chaque cellule, la valeur est déterminée en appliquant le type de statistiques attribué aux rasters en entrée à cet emplacement.

Raster

CellStatistics(in_rasters_or_constants, {statistics_type}, {ignore_nodata}, {process_as_multiband}, {percentile_value}, {percentile_interpolation_type})
NomExplicationType de données
in_rasters_or_constants
[in_raster_or_constant,...]

Liste des rasters en entrée pour lesquels une opération statistique est calculée pour chaque cellule de la fenêtre d’analyse.

Un nombre peut être utilisé comme entrée. Toutefois, la taille de cellule et l'étendue doivent être définies en premier dans l'environnement.

Si le paramètre processing_as_multiband est défini sur MULTI_BAND, toutes les entrées multicanaux doivent comporter le même nombre de canaux.

Raster Layer; Constant
statistics_type
(Facultatif)

Spécifie le type de statistique à calculer.

  • MEANLa moyenne des entrées sera calculée. Il s’agit de l’option par défaut.
  • MAJORITYLa majorité (valeur qui apparaît le plus souvent) des entrées sera déterminée.
  • MAXIMUMLe maximum (valeur la plus grande) des entrées sera déterminé.
  • MEDIANLa médiane des entrées sera déterminée.
  • MINIMUMLe minimum (valeur la plus petite) des entrées sera déterminé.
  • MINORITYLa minorité (valeur qui se produit le moins souvent) des entrées sera déterminée.
  • PERCENTILELe centile des entrées est calculé. Le 90e 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 les valeurs les plus grandes et les plus petites) des entrées sera calculée.
  • STDL’écart type des entrées sera calculé.
  • SUMLa somme (total de toutes les valeurs) des entrées sera calculée.
  • VARIETYLa variété (nombre de valeurs uniques) des entrées sera calculée.

Le type de statistique par défaut est MEAN.

String
ignore_nodata
(Facultatif)

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

  • DATAÀ l’emplacement de la cellule de traitement, si des rasters en entrée possèdent la valeur NoData, cette valeur NoData est ignorée. Les statistiques sont calculées en tenant compte uniquement des cellules avec des valeurs valides. Il s’agit de l’option par défaut.
  • NODATASi l’emplacement de la cellule de traitement des rasters en entrée est égal à NoData, la sortie de cette cellule est égale à NoData.
Boolean
process_as_multiband
(Facultatif)

Indique comment les bandes des rasters multibandes en entrée seront traitées.

  • SINGLE_BANDChaque bande d’une entrée de raster multibandes sera traitée séparément comme un raster monobande. Il s’agit de l’option par défaut.
  • MULTI_BANDChaque entrée de raster multibande sera traitée comme un raster multibande. L’opération est réalisée sur chaque bande depuis une entrée en utilisant le numéro de bande correspondant des autres entrées.
Boolean
percentile_value
(Facultatif)

Valeur de centile à calculer. La valeur par défaut est de 90, soit le 90e centile.

La valeur peut être comprise entre 0 et 100. Le centile n° 0 est équivalent à la statistique minimale tandis que le 100e centile équivaut à la statistique maximale. Une valeur de 50 donne le même résultat que la statistique médiane.

Ce paramètre n’est pris en charge que si le paramètre statistics_type est défini sur PERCENTILE.

Double
percentile_interpolation_type
(Facultatif)

Définit la méthode d’interpolation à utiliser lorsque la valeur de centile spécifiée se situe entre deux valeurs de cellule en entrée.

  • AUTO_DETECTSi les rasters en entrée ont le type de pixel Entier, la méthode NEAREST est utilisée. Si les rasters en entrée ont le type de pixel Virgule flottante, la méthode LINEAR est utilisée. Il s’agit de l’option par défaut.
  • NEARESTLa valeur disponible la plus proche du centile souhaité sera utilisée. Dans ce cas, le type de pixel en sortie est identique à celui des rasters en entrée.
  • LINEARLa moyenne pondérée des deux valeurs environnantes du centile va être utilisée. Dans ce cas, le type de pixel en sortie est à virgule flottante.
String

Valeur renvoyée

NomExplicationType de données
out_raster

Raster en sortie.

Pour chaque cellule, la valeur est déterminée en appliquant le type de statistiques attribué aux rasters en entrée à cet emplacement.

Raster

Exemple de code

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

Cet exemple calcule l'écart type par cellule sur plusieurs rasters Grid en entrée et génère le résultat sous la forme d'un raster IMG.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outCellStats = CellStatistics(["degs", "negs", "cost"], "STD", "DATA")
outCellStats.save("C:/sapyexamples/output/outcellstats.img")
Deuxième exemple d'utilisation de l'outil CellStatistics (script autonome)

Cet exemple calcule la plage par cellule par canal sur plusieurs rasters multicanaux en entrée et crée un raster multicanal en sortie.

# Name: CellStatistics_Ex_standalone.py
# Description: Calculates a per-cell statistic from multiple multiband rasters
#               and process as multiband.
# Requirements: Spatial Analyst Extension

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

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

# Set the analysis environments
arcpy.env.workspace = "C:/sapyexamples/data"

# Set the local variables
inRaster01 = "degs_MB"
inRaster02 = "negs_MB"
inRaster03 = "cost_MB"

# Execute CellStatistics
outCellStatistics = CellStatistics([inRaster01, inRaster02, inRaster03], "RANGE", "NODATA", "MULTI_BAND")

# Save the output 
outCellStatistics.save("C:/sapyexamples/output/cellstats_MB.tif")