Mit der Spatial Analyst-Lizenz verfügbar.
Zusammenfassung
Berechnet die Statistiken für eine Gruppe von Raster-Bändern.
Weitere Informationen zur Funktionsweise von "Raster-Bänder-Statistiken"
Verwendung
-
Die Raster-Bänder müssen einen gemeinsamen Schnittpunkt haben. Wenn dieser nicht vorhanden ist, tritt ein Fehler auf und es wird keine Ausgabe erzeugt.
Wenn die Ausdehnungen der Raster-Bänder nicht gleich sind, wird die Statistik auf der allgemeinen räumlichen Ausdehnung aller Eingabe-Raster-Bänder berechnet. Die Zellengröße ist standardmäßig die des Maximums der Eingabe-Raster; andernfalls hängt sie von den Umgebungseinstellungen zur Raster-Analyse ab.
Bei dem Parameter Kovarianz- und Korrelationsmatrizen berechnen gibt die deaktivierte Standardeinstellung (BRIEF in der Skripterstellung) an, dass nur Minimum, Maximum, Mittelwert und Standardabweichung der Eingabe-Raster-Bänder berechnet werden. Um zusätzlich zu diesen Statistiken die Kovarianz- und Korrelationsmatrizen zu berechnen, aktivieren Sie diese Option im Werkzeugdialogfeld (oder verwenden Sie DETAILED in der Skripterstellung).
Eine Kovarianzmatrix enthält die Varianzen aller Raster-Bänder entlang der Diagonale von links oben nach rechts unten und die Kovarianzen zwischen allen Raster-Bändern in den restlichen Einträgen. Die Korrelationsmatrix stellt die Korrelationskoeffizienten zwischen den einzelnen Kombinationen zweier Eingabebänder bereit.
In der Berechnung der Kovarianzmatrix wird der Mittelwert des Bandes für alle Eingabezellen verwendet, die einen NoData-Wert haben.
Die Statistiken werden im ASCII-Textformat in die Ausgabedatei geschrieben. Die Erweiterung für die Ausgabe muss .txt lauten.
Wenn die Eingabe ein Layer ist, der aus einem Multiband-Raster mit mehr als drei Bändern erstellt wurde, berücksichtigt der Vorgang alle mit dem Quellen-Dataset verknüpften Bänder und nicht nur die drei vom Layer geladenen (symbolisierten) Bänder.
Sie haben verschiedene Möglichkeiten, eine Teilmenge von Bändern eines Multiband-Rasters als Eingabe für das Werkzeug festzulegen.
- Wechseln Sie bei Verwendung des Werkzeugdialogfelds in das Multiband-Raster mithilfe der Schaltfläche "Durchsuchen" neben dem Eintrag Eingabe-Raster-Bänder verwenden. Öffnen Sie das Raster, und wählen Sie die gewünschten Bänder aus.
- Wenn es sich bei dem Multiband-Raster um einen Layer im Inhaltsverzeichnis handelt, können Sie mit dem Werkzeug Raster-Layer erstellen einen neuen Multiband-Layer erstellen, der nur die gewünschten Bänder enthält.
- Sie können auch mithilfe der Option Bänder zusammensetzen ein neues Dataset erstellen, das nur die gewünschten Bänder enthält, und dieses als Eingabe für das Werkzeug verwenden.
- In Python können die gewünschten Bänder direkt als Liste im Werkzeugparameter festgelegt werden.
Syntax
BandCollectionStats (in_raster_bands, out_stat_file, {compute_matrices})
Parameter | Erläuterung | Datentyp |
in_raster_bands [in_raster_band,...] | Die Eingabe-Raster-Bänder. Die Raster können den Typ "Ganzzahl" oder "Gleitkomma" haben. | Raster Layer |
out_stat_file | Die Ausgabe-ASCII-Datei, die die Statistiken enthält. Die Erweiterung .txt ist erforderlich. | File |
compute_matrices (optional) | Gibt an, ob Kovarianz- und Korrelationsmatrizen berechnet werden.
| Boolean |
Codebeispiel
BandCollectionStatistics – Beispiel 1 (Python-Fenster)
In diesem Beispiel werden die Statistiken für eine Gruppe von Raster-Bändern berechnet.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
BandCollectionStats("redlands", "c:/sapyexamples/output/redbandstats.txt", "BRIEF")
BandCollectionStatistics – Beispiel 2 (eigenständiges Skript)
In diesem Beispiel werden die Statistiken für eine Gruppe von Raster-Bändern berechnet.
# Name: BandCollectionStats_Ex_02.py
# Description: Calculates the statistics for a set of raster bands.
# 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
inRasterBand1 = "sb/sbc1"
inRasterBand2 = "sb/sbc2"
outStatFile = "C:/sapyexamples/output/bandstatfile.txt"
# Check out the ArcGIS Spatial Analyst extension license
arcpy.checkOutExtension("Spatial")
# Execute BandCollectionStats
BandCollectionStats([inRasterBand1, inRasterBand2], outStatFile, "DETAILED")
Umgebung
Lizenzierungsinformationen
- ArcGIS for Desktop Basic: Erfordert Spatial Analyst
- ArcGIS for Desktop Standard: Erfordert Spatial Analyst
- ArcGIS for Desktop Advanced: Erfordert Spatial Analyst