Statistiques par bloc (ArcGIS Spatial Analyst)

Synthèse

Cet outil permet de partitionner une entrée en blocs non superposés et de calculer les statistiques relatives aux valeurs dans chaque bloc. La valeur est attribuée à toutes les cellules dans chaque bloc dans la sortie.

Pour en savoir plus sur le fonctionnement de l'outil Statistiques par bloc

Illustration

Valeurs en entrée et en sortie de l’outil Statistiques par bloc pour un voisinage rectangulaire avec définition de la statistique Maximum
OutRas = BlockStatistics(InRas1, NbrRectangle(3,3,"CELL"), "MAXIMUM", "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 définissez un voisinage en anneau, circulaire ou en forme de secteur, et compte tenu de la taille de ce voisinage, les cellules qui ne sont pas perpendiculaires à l'axe x ou y ne sont pas prises en compte dans les calculs. Toutefois, les emplacements de ces cellules sont associés à la valeur obtenue suite aux calculs du voisinage, car elles sont comprises dans le rectangle d'emprise minimale (ou le bloc en sortie) de ces types de voisinages circulaires.

  • 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 Poids de la rubrique Fonctionnement des statistiques par bloc.

  • Pour les rasters en entrée de type entier, les choix de type de statistique valides sont : majorité, maximum, moyenne, médiane, minimum, minorité, plage, écart type, somme et variété. Pour les rasters en entrée de type flottant, les statistiques valides sont : maximum, moyenne, minimum, plage, écart type et somme. La majorité, la médiane, la minorité et la variété ne sont pas des statistiques disponibles.

  • Si le raster en entrée est un entier, le raster en sortie est un entier pour les statistiques suivantes : majorité, maximum, médiane, minimum, minorité, plage, somme et variété. La sortie est un réel simple pour les statistiques de moyenne et d’é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 un bloc comprend un nombre impair de cellules, les valeurs sont classées et la valeur centrale est rapportée comme médiane. Si un bloc comprend un nombre pair de cellules, les valeurs sont classées et la valeur la plus faible des deux valeurs centrales est sélectionnée.

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

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

  • 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 pour lequel les statistiques par bloc sont calculées.

Raster Layer
Quartier
(Facultatif)

Cellules du bloc de traitement qui sera utilisé 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, Minimum, 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.
  • 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.
  • 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 bloc voisin, 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. Il s’agit de l’option par défaut.
  • Désactivé : si une cellule dans le voisinage d’un bloc a une valeur NoData, la sortie de chaque cellule du bloc correspondant 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 renvoyée

ÉtiquetteExplicationType de données
Raster en sortie

Raster des statistiques du bloc en sortie.

Raster

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

Raster pour lequel les statistiques par bloc sont calculées.

Raster Layer
neighborhood
(Facultatif)

Cellules du bloc de traitement qui sera utilisé 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.
  • 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.
  • 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, MINIMUM, 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 bloc voisin, 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. Il s’agit de l’option par défaut.
  • NODATASi une cellule dans le voisinage d’un bloc a une valeur NoData, la sortie de chaque cellule du bloc correspondant 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 renvoyée

NomExplicationType de données
out_raster

Raster des statistiques du bloc en sortie.

Raster

Exemple de code

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

Cet exemple décrit le calcul de la valeur de cellule minimale dans chaque voisinage d'anneau non superposé dans le raster en entrée.

import arcpy
from arcpy import env  
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
nbr = NbrAnnulus(1, 3, "MAP")
outBlockStat = BlockStatistics("block", nbr, "MINIMUM", "")
outBlockStat.save("C:/sapyexamples/output/blockstat")
Deuxième exemple d'utilisation de l'outil BlockStatistics (script autonome)

Cet exemple décrit le calcul de la valeur d'une cellule minimale dans chaque voisinage d'anneau non superposé dans le raster Grid en entrée.

# Name: BlockStatistics_Ex_02.py
# Description: Calculates statistics for a nonoverlapping 
#              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 = "block"
nbr = NbrAnnulus(1, 3, "MAP")

# Execute BlockStatistics
outBlockStat = BlockStatistics(inRaster, nbr, "MINIMUM", "NODATA")

# Save the output 
outBlockStat.save("C:/sapyexamples/output/blockstat")