Skip To Content

Raster-Auswahl (Image Analyst)

Mit der Spatial Analyst-Lizenz verfügbar.

Mit der Image Analyst-Lizenz verfügbar.

Zusammenfassung

Anhand des Wertes eines Positions-Rasters wird bestimmt, aus welchem Raster in einer Liste von Eingabe-Rastern der Ausgabe-Zellenwert bezogen wird.

Abbildung

Abbildung: Auswahl
OutRas = Pick(InRas1, [InRas2, InRas3],"SINGLE_BAND")

Verwendung

  • Der Wert jeder Zelle des Eingabe-Positions-Rasters (in_position_raster in Python) bestimmt, welche Eingabe verwendet wird, um den Ausgabe-Raster-Wert zu erhalten. Wenn eine Zelle im Eingabe-Positions-Raster z. B. den Wert 1 aufweist, wird der Wert der ersten Eingabe in der Raster-Liste für den Ausgabezellenwert verwendet. Wenn die Positionseingabe den Wert 2 aufweist, stammt der Ausgabewert aus der zweiten Eingabe in der Raster-Liste usw.

  • Die Reihenfolge der Eingabe-Raster oder konstanten Werte (in_rasters_or_constants in Python) ist für dieses Werkzeug maßgeblich. Wenn sich die Reihenfolge der Raster ändert, ändern sich auch die Ergebnisse.

  • Wenn ein Zellenwert im Eingabe-Positions-Raster 0 oder negativ ist, ist das Ergebnis "NoData". Wenn der Positionswert größer ist als die Anzahl der Raster in der Liste, ist das Ergebnis "NoData".

  • Wenn das Eingabe-Positions-Raster vom Typ "Gleitkomma" ist, werden die Werte auf ganze Zahlen gekürzt, bevor sie verarbeitet werden.

  • Jede Zelle mit einem NoData-Wert im Positions-Raster erhält im Ausgabe-Raster den Wert "NoData".

  • Wenn es sich bei einem der Raster in der Eingabeliste um ein Gleitkomma-Raster handelt, ist das Ausgabe-Raster ebenfalls ein Gleitkomma-Raster. Wenn alle ganzzahlig sind, ist auch das Ausgabe-Raster ganzzahlig.

  • Der Umgang mit Multiband-Rastern wird über die Einstellungen der Parameter Eingabe-Positions-Raster, Eingabe-Raster oder konstante Werte und Als Multiband verarbeiten (process_as_multiband in Python) definiert.

    Wenn alle Bänder der Multiband-Eingabe-Raster gleich behandelt werden sollen, deaktivieren Sie den Parameter Als Multiband verarbeiten. Das bedeutet, dass alle Multiband-Raster in mehrere Einzelband-Raster konvertiert werden. Das Werkzeug wird dann für alle Eingabebänder ausgeführt und gibt die Werte anhand der im Eingabe-Positions-Raster angegebenen Position als Einzelband-Ausgabe-Raster zurück.

    Wenn eine Auswahl von Bändern aus einem Multiband-Raster verarbeitet werden soll, erstellen Sie zunächst mit dem Werkzeug Bänder zusammensetzen ein Raster-Dataset, das aus den betreffenden Bändern besteht. Verwenden Sie das Ergebnis in der Liste der Eingabe-Raster.

  • Wenn eines oder mehrere Multiband-Raster als Eingabe-Raster oder konstante Werte festgelegt sind und Als Multiband verarbeiten aktiviert ist, werden alle Multiband-Eingaben als Multiband verarbeitet.

    Wenn das Eingabe-Positions-Raster eine Einzelbandeingabe ist, verfügt das Ausgabe-Raster über die maximale Anzahl an Bändern aus Eingabe-Raster oder konstante Werte.

    Wenn das Eingabe-Positions-Raster eine Multibandeingabe ist, verfügt das Ausgabe-Raster über dieselbe Anzahl an Bändern wie das Eingabe-Positions-Raster.

    In beiden Fällen werden den Eingabe-Rastern oder konstanten Werten so viele virtuelle NoData-Bänder hinzugefügt wie für die Ausgabe-Bandanzahl erforderlich.

Syntax

Pick(in_position_raster, in_rasters_or_constants, {process_as_multiband})
ParameterErklärungDatentyp
in_position_raster

Eingabe-Raster, das die Position des Rasters definiert, das für den Ausgabewert verwendet werden soll.

Die Eingabe kann ein ganzzahliges oder Gleitkomma-Raster sein.

Raster Layer
in_rasters_or_constants
[in_raster_or_constant,...]

Die Liste der Eingaben, aus denen der Ausgabewert ausgewählt wird.

Die Eingaben können ganzzahlige oder Gleitkomma-Raster sein. Eine Zahl kann ebenfalls als Eingabe verwendet werden.

Raster Layer; Constant
process_as_multiband
(optional)

Legt fest, wie die Bänder von Eingabemultiband-Rastern verarbeitet werden.

  • SINGLE_BANDMultiband-Eingaben werden als eine Sammlung von Einzelbändern für in_rasters_or_constants verarbeitet. Nur das erste Band des Multiband-Rasters in_position_raster wird zur Wahl der Position verwendet. Dabei entsteht eine Einzelband-Ausgabe. Dies ist die Standardeinstellung.
  • MULTI_BANDMultiband-Eingaben werden als Multiband für in_rasters_or_constants verarbeitet.Wenn das in_position_raster eine Einzelbandeingabe ist, verfügt das Ausgabe-Raster über die maximale Anzahl an Bändern aus in_rasters_or_constants.Wenn das in_position_raster eine Multibandeingabe ist, verfügt das Ausgabe-Raster über dieselbe Anzahl an Bändern wie in_position_raster.In beiden Fällen werden in_rasters_or_constants so viele virtuelle NoData-Bänder hinzugefügt wie für die Ausgabe-Bandanzahl erforderlich.
Boolean

Rückgabewert

NameErklärungDatentyp
out_raster

Das Ausgabe-Raster.

Raster

Codebeispiel

Pick – Beispiel 1 (Python-Fenster)

In diesem Beispiel wird der Ausgabewert auf Grundlage der Reihenfolge mehrerer Eingabe-Raster zugewiesen.

import arcpy
from arcpy import env
from arcpy.ia import *
env.workspace = "C:/iapyexamples/data"
outPick = Pick("cost", ["degs", "negs", "fourgrd"], "SINGLE_BAND")
outPick.save("C:/iapyexamples/output/outpick.tif")
Pick – Beispiel 2 (eigenständiges Skript)

In diesem Beispiel wird der Ausgabewert auf Grundlage der Reihenfolge mehrerer Eingabe-Raster zugewiesen.

# Name: Pick_Ex_02.py
# Description: Assigns output values using one of a list of rasters
#              determined by the value of an input raster.
# Requirements: Spatial Analyst Extension

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

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

# Set local variables
inPositionRas = "inzone_MB"
inRas01 = "Ras1_MB"
inRas02 = "Ras2_MB"
inRas03 = "Ras3_MB"

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

# Execute Pick
outPick = Pick(inPositionRaster, [inRas01, inRas02, inRas03], "MULTI_BAND")

# Save the output 
outPick.save("C:/iapyexamples/output/outpick")

Lizenzinformationen

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

Verwandte Themen