Focal Statistics (Image Analyst)

Mit der Spatial Analyst-Lizenz verfügbar.

Mit der Image Analyst-Lizenz verfügbar.

Zusammenfassung

Berechnet für jede Eingabezellenposition eine Statistik der Werte innerhalb einer angegebenen Nachbarschaft.

Weitere Informationen zur Funktionsweise des Werkzeugs "Focal Statistics"

Abbildung

Abbildung: Focal Statistics
OutRas = FocalStatistics(InRas1, NbrRectangle(3,3,MAP), "SUM", "")

Verwendung

  • Wenn das Eingabe-Raster ein Ganzzahl-Raster ist, sind alle Statistiktypen verfügbar. Wenn das Eingabe-Raster ein Gleitkomma-Raster ist, sind nur die Statistiken für Mittelwert, Maximum, Median, Minimum, Perzentil, Bereich, Standardabweichung und Summe verfügbar. Die Statistiken für Mehrheit, Minderheit und Varianz sind nicht zulässig.

  • Wenn eine kreisförmige, kreisringförmige oder keilförmige Nachbarschaft angegeben wird, werden einige der äußeren diagonalen Zellen möglicherweise nicht in den Berechnungen berücksichtigt, da der Mittelpunkt der Zelle innerhalb der Nachbarschaft liegen muss.

  • Für eine Nachbarschaft vom Typ "Unregelmäßig" und "Gewichtung" muss eine Kernel-Datei angegeben werden. Kernel-Dateien müssen die Dateierweiterung .txt haben.

    Informationen zum Erstellen und Verwenden von Kernel-Dateien finden Sie unter Weitere Informationen zur Funktionsweise des Werkzeugs "Focal Statistics" in den Abschnitten "Unregelmäßig" und "Gewichtung".

  • Beim Typ Nachbarschaft kann die Option Gewichtung nur für die Statistiktypen "Mittelwert", "Standardabweichung" und "Summe" festgelegt werden.

  • NoData-Zellen in der Eingabe können in der Ausgabe einen Wert erhalten, wenn der Parameter NoData in Berechnungen ignorieren aktiviert ist, vorausgesetzt, dass mindestens eine Zelle in der Nachbarschaft einen gültigen Wert aufweist.

Syntax

FocalStatistics(in_raster, {neighborhood}, {statistics_type}, {ignore_nodata}, {percentile_value})
ParameterErklärungDatentyp
in_raster

Das Raster, für das die Focal Statistics für jede Eingabezelle berechnet werden sollen.

Raster Layer
neighborhood
(optional)

Die Klasse Neighborhood definiert die Form der Fläche um jede Zelle, die zum Berechnen der Statistik verwendet wird.

Die verfügbaren Nachbarschaftstypen sind NbrAnnulus, NbrCircle, NbrRectangle, NbrWedge, NbrIrregular, und NbrWeight.

Folgende Nachbarschaftsformen sind verfügbar:

  • NbrAnnulus({innerRadius}, {outerRadius}, {units})
  • NbrCircle({radius}, {units}
  • NbrRectangle({width}, {height}, {units})
  • NbrWedge({radius}, {startAngle}, {endAngle}, {units})
  • NbrIrregular(inKernelFile)
  • NbrWeight(inKernelFile)

Die Standardnachbarschaft ist das Quadrat NbrRectangle mit einer Breite und Höhe von drei Zellen.

Neighborhood
statistics_type
(optional)

Gibt den zu berechnenden Statistiktyp an.

  • MEANBerechnet den Mittelwert (den Durchschnittswert) der Zellen innerhalb der Nachbarschaft.
  • MAJORITYBerechnet die Mehrheit (den am häufigsten auftretenden Wert) der Zellen innerhalb der Nachbarschaft.
  • MAXIMUMBerechnet den Maximalwert (den höchsten Wert) der Zellen innerhalb der Nachbarschaft.
  • MEDIANBerechnet den Medianwert der Zellen innerhalb der Nachbarschaft.
  • MINIMUMBerechnet den Minimalwert (den kleinsten Wert) der Zellen innerhalb der Nachbarschaft.
  • MINORITYBerechnet die Minderheit (den am seltensten auftretenden Wert) der Zellen innerhalb der Nachbarschaft.
  • PERCENTILEBerechnet ein Perzentil der Zellen innerhalb der Nachbarschaft. Standardmäßig wird das 90. Perzentil berechnet. Sie können andere Werte (von 0 bis 100) mit dem Parameter Perzentilwert angeben.
  • RANGEBerechnet den Bereich (Differenz zwischen größtem und kleinstem Wert) der Werte innerhalb der Nachbarschaft.
  • STDBerechnet die Standardabweichung der Zellen innerhalb der Nachbarschaft.
  • SUMBerechnet die Summe (Summe aller Werte) der Zellen innerhalb der Nachbarschaft.
  • VARIETYBerechnet die Varianz (die Anzahl der Einzelwerte) der Zellen innerhalb der Nachbarschaft.

Der Standardstatistiktyp ist Mittelwert.

Wenn das Eingabe-Raster ein Ganzzahl-Raster ist, sind alle Statistiktypen verfügbar. Wenn das Eingabe-Raster ein Gleitkomma-Raster ist, sind nur die Statistiktypen Mittelwert, Maximum, Medianwert, Minimum, Perzentil, Bereich, Standardabweichung und Summe verfügbar.

String
ignore_nodata
(optional)

Gibt an, ob NoData-Werte bei der Statistikberechnung ignoriert werden.

  • DATAEin NoData-Wert innerhalb einer Nachbarschaft wird ignoriert, falls vorhanden. Nur Zellen innerhalb der Nachbarschaft, die Datenwerte aufweisen, werden bei der Ermittlung des Ausgabewertes verwendet. Handelt es sich beim Wert der bearbeiteten Zelle um einen NoData-Wert, bedeutet dies, dass die bearbeitete Zelle einen Wert im Ausgabe-Raster erhalten kann, wenn diese Option ausgewählt wurde. Voraussetzung ist jedoch, dass mindestens eine Zelle in der Nachbarschaft über einen gültigen Wert verfügt. Dies ist die Standardeinstellung.
  • NODATAWenn eine Zelle in der Nachbarschaft den Wert "NoData" aufweist, erhält auch die Ausgabe für die bearbeitete Zelle den Wert "NoData". Bei Auswahl dieser Option bedeutet das Vorhandensein eines NoData-Wertes, dass nicht genügend Informationen verfügbar sind, um den statistischen Wert für die Nachbarschaft zu bestimmen.
Boolean
percentile_value
(optional)

Das zu berechnende Perzentil. Der Standardwert ist 90 für das 90. Perzentil.

Zulässige Werte können zwischen 0 und 100 liegen. Grundsätzlich entspricht der Perzentilwert 0 statistisch gesehen dem Minimum und der Perzentilwert 100 dem Maximum. Der Wert 50 ergibt im Wesentlichen dasselbe Ergebnis wie der Medianwert der Statistik.

Diese Option wird nur unterstützt, wenn für den Parameter statistics_type die Option percentile festgelegt wurde. Wenn ein anderer Statistiktyp angegeben wurde, wird dieser Parameter ignoriert.

Double

Rückgabewert

NameErklärungDatentyp
out_raster

Das Ausgabe-Raster für "Focal Statistics".

Raster

Codebeispiel

FocalStatistics – Beispiel 1 (Python-Fenster)

In diesem Beispiel wird der am wenigsten häufig auftretende Wert in einer ringförmigen Nachbarschaft um jede Zelle im Eingabe-Raster berechnet.

import arcpy
from arcpy import env
from arcpy.ia import *
env.workspace = "C:/data"
outFocalStat = FocalStatistics("elevation", NbrAnnulus(5, 10, "CELL"), 
                               "MINORITY", "NODATA")
outFocalStat.save("C:/output/focalstat01")
FocalStatistics – Beispiel 2 (eigenständiges Skript)

In diesem Beispiel wird der am wenigsten häufig auftretende Wert in einer 10x10-Nachbarschaft um jede Zelle im Eingabe-Raster ermittelt.

# Name: FocalStatistics_Ex_02.py
# Description: Calculates a statistic on a raster over a specified
#    neighborhood.
# Requirements: Image Analyst Extension

# Import system modules
import arcpy
from arcpy import env
from arcpy.ia import *

# Set environment settings
env.workspace = "C:/data"

# Set local variables
inRaster = "elevation"
neighborhood = NbrRectangle(10, 10, "CELL")

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

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

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

Lizenzinformationen

  • Basic: Erfordert Image Analyst oder Spatial Analyst
  • Standard: Erfordert Image Analyst oder Spatial Analyst
  • Advanced: Erfordert Image Analyst oder Spatial Analyst

Verwandte Themen