Nach Maske extrahieren (Spatial Analyst)

Zusammenfassung

Extrahiert die Zellen eines Rasters, die den mit einer Maske definierten Flächen entsprechen.

Abbildung

Abbildung: Werkzeug "Nach Maske extrahieren"
OutRas = ExtractByMask(InRas1, InMsk1, "INSIDE")

Verwendung

  • Zusätzliche Attribute aus dem Eingabe-Raster, sofern vorhanden, werden unverändert in die Attributtabelle des Ausgabe-Rasters übernommen. Je nach Eigenschaft, die erfasst wird, müssen einige der Attributwerte möglicherweise neu berechnet werden.

  • Wenn ein Multiband-Raster als Eingabe-Raster-Wert (in_raster in Python) angegeben wird, werden alle Bänder verwendet.

    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 dann das Ergebnis als Eingabe-Raster-Wert (in_raster in Python).

    Das Standardausgabeformat ist ein Geodatabase-Raster. Wenn ein Esri Grid Stack als Ausgabeformat angegeben wurde, beachten Sie, dass der Stack-Name nicht mit einer Zahl beginnen, keine Leerzeichen enthalten und nicht mehr als 9 Zeichen aufweisen darf.

  • Wenn ein Multiband-Raster für die Eingabe-Raster-Maske angegeben wird, wird nur das erste Band im Vorgang verwendet.

  • Wenn der Wert Eingabe-Raster (in_raster in Python) und die unter Eingabe-Raster oder -Feature-Masken-Daten (in_mask_data in Python) angegebenen Raster-Daten dieselbe Zellengröße aufweisen und die Zellen ausgerichtet sind, werden sie direkt im Werkzeug verwendet. Während der Werkzeugausführung erfolgt kein internes Resampling.

    Bei Abweichungen der Zellengröße entspricht die Ausgabezellengröße dem Maximum der Eingabedaten. In diesem Fall wird der Wert Eingabe-Raster intern als Fang-Raster verwendet. Wenn die Zellengröße übereinstimmt, die Zellen jedoch nicht ausgerichtet sind, wird der Wert Eingabe-Raster intern als Fang-Raster verwendet. In beiden Fällen wird ein internes Resampling ausgelöst, bevor der Extraktionsvorgang ausgeführt wird.

    Weitere Informationen finden Sie in den Themen Zellengröße und Fang-Raster zur Umgebung.

  • Wenn die Maskeneingabe ein Feature ist, wird sie intern in ein Raster konvertiert, wobei standardmäßig die Zellengröße und die Zellenausrichtung (Fang-Raster) aus dem Wert Eingabe-Raster verwendet werden.

  • Wenn während der Ausführung des Werkzeugs Nach Maske extrahieren in der Umgebungseinstellung Maske angegeben ist, weist das Ausgabe-Raster lediglich Zellenwerte für die Fläche auf, die im Schnittpunkt der Umgebungsmaske und der Eingabemaskendaten liegt.

  • Sie können den Parameter Analyseausdehnung (analysis_extent in Python) verwenden, um den Ausgabeanalysebereich explizit für die Ausführung eines eigenständigen Werkzeugs anzugeben oder um die Umgebungseinstellung als Teil eines Workflows außer Kraft zu setzen. Sie können die Ausdehnung angeben, indem Sie Werte eingeben, die Anzeigeausdehnung wählen, einen Layer auswählen oder nach einem Eingabe-Dataset suchen.

  • Der Standardwert Analyseausdehnung wird aus dem Schnittpunkt der Werte Eingabe-Raster und Eingabe-Raster oder -Feature-Masken-Daten berechnet.

  • Wenn die Analyseausdehnung nicht explizit als Parameterwert angegeben wird, wird sie aus den Umgebungseinstellungen für die Analyse abgeleitet.

  • Weitere Informationen zu den Geoverarbeitungsumgebungen für dieses Werkzeug finden Sie unter Analyseumgebungen und Spatial Analyst.

Parameter

BeschriftungErläuterungDatentyp
Eingabe-Raster

Das Eingabe-Raster, aus dem Zellen extrahiert werden.

Raster Layer
Eingabe-Raster oder -Feature-Masken-Daten

Die Eingabemaskendaten, die die zu extrahierenden Zellenpositionen definieren.

Hierbei kann es sich um ein Raster oder ein Feature-Dataset handeln.

Wenn es sich bei den Eingabemaskendaten um ein Raster handelt, werden NoData-Zellen in der Maske NoData-Werte im Ausgabe-Raster zugewiesen.

Wenn es sich bei der Eingabemaske um Feature-Daten handelt, werden Zellen in dem Eingabe-Raster, dessen Mittelpunkt in der angegebenen Form des Features liegt, in die Ausgabe aufgenommen, während Zellen mit außerhalb liegendem Mittelpunkt NoData-Werte erhalten.

Raster Layer; Feature Layer
Zu extrahierende Fläche
(optional)

Gibt an, ob Zellen innerhalb oder außerhalb der durch die Eingabemaske definierten Positionen ausgewählt und in das Ausgabe-Raster geschrieben werden.

  • InnerhalbZellen innerhalb der Eingabemaske werden ausgewählt und in das Ausgabe-Raster geschrieben. Alle Zellen außerhalb der Maske erhalten NoData-Werte im Ausgabe-Raster. Dies ist die Standardeinstellung.
  • AußerhalbZellen außerhalb der Eingabemaske werden ausgewählt und in das Ausgabe-Raster geschrieben. Alle von der Maske bedeckten Zellen erhalten NoData-Werte.
String
Analyseausdehnung
(optional)

Die Ausdehnung, die den zu extrahierenden Bereich definiert.

Die Ausdehnung wird standardmäßig als Schnittpunkt der Werte Eingabe-Raster und Eingabe-Raster oder -Feature-Masken-Daten berechnet. Die Verarbeitung erstreckt sich bis zu den XY-Grenzen. Zellen außerhalb dieser Ausdehnung sind "NoData".

Die Koordinaten werden in den gleichen Karteneinheiten angegeben wie das Eingabe-Raster, wenn sie nicht ausdrücklich durch die Analyseumgebung festgelegt werden.

  • Aktuelle Anzeigeausdehnung Kartenansicht: Die Ausdehnung basiert auf der aktiven Karte oder Szene. Diese Option ist nur verfügbar, wenn eine aktive Karte vorhanden ist.
  • Ausdehnung darstellen Draw Extent: Die Ausdehnung basiert auf einem Rechteck, das auf der Karte oder Szene aufgezogen wurde. Bei dieser Option wird eine Feature-Class in der Projekt-Geodatabase erstellt und ein Layer zur Karte hinzugefügt. Das Koordinatensystem der Feature-Class stimmt mit dem der Karte überein.
    Hinweis:

    Diese Option ist im Dialogfeld Umgebungen nicht verfügbar. Sie ist nur über einen Werkzeugparameter mit dem Datentyp "Ausdehnung" oder über die Registerkarte Umgebungen eines Werkzeugdialogfeldes verfügbar.

    Hinweis:

    Wenn die Bearbeitungsoption Bearbeitung über die Registerkarte "Bearbeiten" aktivieren und deaktivieren aktiviert ist, dann müssen Sie auf der Registerkarte Bearbeiten des Menübands die Bearbeitung aktivieren, um die Ausdehnung darzustellen.

  • Ausdehnung eines Layers:Layer Die Ausdehnung basiert auf einem aktiven Karten-Layer. Verwenden Sie die Dropdown-Liste, um einen verfügbaren Layer auszuwählen, oder verwenden Sie die Option Ausdehnung von Daten in allen Layern, um die kombinierte Ausdehnung aller aktiven Karten-Layer mit Ausnahme der Grundkarte zu erhalten. Diese Option ist nur verfügbar, wenn eine aktive Karte mit Layern vorhanden ist.

    Jeder Karten-Layer bietet die folgenden Optionen:

    • Alle Features Alles auswählen: Die Ausdehnung aller Features im Layer.
    • Ausgewählte FeaturesArea from Selected Features: Die Ausdehnung der ausgewählten Features im Layer.
    • Sichtbare Features Extent Indicator: Die Ausdehnung der sichtbaren Features im Layer.
      Hinweis:

      Die Ausdehnungen der Optionen Ausgewählte Features Area from Selected Features und Sichtbare Features Extent Indicator sind nur für Feature-Layer verfügbar.

  • Durchsuchen:Durchsuchen Die Ausdehnung basiert auf einem vorhandenen Dataset.
  • Zwischenablage Einfügen: Die Ausdehnung kann in die Zwischenablage kopiert und aus der Zwischenablage eingefügt werden.
    • Ausdehnung kopieren Kopieren: Kopiert die Ausdehnungskoordinaten und das Ausdehnungskoordinatensystem in die Zwischenablage.
    • Ausdehnung einfügen Einfügen: Fügt die Ausdehnungskoordinaten und optional das Koordinatensystem aus der Zwischenablage ein. Wenn die Werte in der Zwischenablage kein Koordinatensystem beinhalten, wird für die Ausdehnung das Koordinatensystem der Karte verwendet.
    Hinweis:

    Beim Kopieren der Ausdehnungskoordinaten in die und Einfügen aus der Zwischenablage wird dieselbe Formatierung und Reihenfolge wie beim ArcPy-Objekt Extent verwendet: X-Min, Y-Min, X-Max, Y-Max und der Raumbezug.

  • Ausdehnung zurücksetzen: ZurücksetzenDie Ausdehnung wird auf den Standardwert zurückgesetzt.
  • Manuell eingegebene Koordinaten: Die Koordinaten müssen numerische Werte sein und im Koordinatensystem der aktiven Karte liegen.
    Vorsicht:

    Die Karte kann statt der eingegebenen Koordinaten auch andere Anzeigeeinheiten verwenden. Die Verwendung einer Kardinalrichtung (N, S, O, W) wird nicht unterstützt. Verwenden Sie für die Koordinaten in Richtung Süden und Westen Werte mit negativem Vorzeichen.

Extent

Rückgabewert

BeschriftungErläuterungDatentyp
Ausgabe-Raster

Das Ausgabe-Raster mit den Zellenwerten, die aus dem Eingabe-Raster extrahiert wurden.

Raster

ExtractByMask(in_raster, in_mask_data, {extraction_area}, {analysis_extent})
NameErläuterungDatentyp
in_raster

Das Eingabe-Raster, aus dem Zellen extrahiert werden.

Raster Layer
in_mask_data

Die Eingabemaskendaten, die die zu extrahierenden Zellenpositionen definieren.

Hierbei kann es sich um ein Raster oder ein Feature-Dataset handeln.

Wenn es sich bei den Eingabemaskendaten um ein Raster handelt, werden NoData-Zellen in der Maske NoData-Werte im Ausgabe-Raster zugewiesen.

Wenn es sich bei der Eingabemaske um Feature-Daten handelt, werden Zellen in dem Eingabe-Raster, dessen Mittelpunkt in der angegebenen Form des Features liegt, in die Ausgabe aufgenommen, während Zellen mit außerhalb liegendem Mittelpunkt NoData-Werte erhalten.

Raster Layer; Feature Layer
extraction_area
(optional)

Gibt an, ob Zellen innerhalb oder außerhalb der durch die Eingabemaske definierten Positionen ausgewählt und in das Ausgabe-Raster geschrieben werden.

  • INSIDEZellen innerhalb der Eingabemaske werden ausgewählt und in das Ausgabe-Raster geschrieben. Alle Zellen außerhalb der Maske erhalten NoData-Werte im Ausgabe-Raster. Dies ist die Standardeinstellung.
  • OUTSIDEZellen außerhalb der Eingabemaske werden ausgewählt und in das Ausgabe-Raster geschrieben. Alle von der Maske bedeckten Zellen erhalten NoData-Werte.
String
analysis_extent
(optional)

Die Ausdehnung, die den zu extrahierenden Bereich definiert.

Wenn sie nicht angegeben wird, ist die Standardausdehnung der Schnittpunkt der Werte in_raster und in_mask_data.

Die Koordinaten werden in den gleichen Karteneinheiten angegeben wie das Eingabe-Raster, wenn sie nicht ausdrücklich durch die Analyseumgebung festgelegt werden.

  • MAXOF: Die maximale Ausdehnung aller Eingaben wird verwendet.
  • MINOF: Die minimale gemeinsame Fläche aller Eingaben wird verwendet.
  • DISPLAY: Die Ausdehnung entspricht der sichtbaren Anzeige.
  • Layer-Name: Die Ausdehnung des angegebenen Layers wird verwendet.
  • Extent-Objekt: Die Ausdehnung des angegebenen Objekts wird verwendet.
  • Durch Leerzeichen getrennte Koordinatenzeichenfolge: Die Ausdehnung der angegebenen Zeichenfolge wird verwendet. Die Koordinaten werden in der Reihenfolge X-Min, Y-Min, X-Max, Y-Max ausgedrückt.
Extent

Rückgabewert

NameErläuterungDatentyp
out_raster

Das Ausgabe-Raster mit den Zellenwerten, die aus dem Eingabe-Raster extrahiert wurden.

Raster

Codebeispiel

ExtractByMask – Beispiel 1 (Python-Fenster)

In diesem Beispiel werden Zellen aus einem Raster innerhalb einer Maske extrahiert, die durch eine Eingabe-Feature-Class für Polygon-Shapefiles definiert ist.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outExtractByMask = ExtractByMask("elevation", "mask.shp", "INSIDE")
outExtractByMask.save("C:/sapyexamples/output/maskextract")
ExtractByMask – Beispiel 2 (eigenständiges Skript)

In diesem Beispiel werden Zellen aus einem Raster für alle Flächen außerhalb einer Maske extrahiert, die durch eine Eingabe-Feature-Class für Polygon-Shapefiles definiert ist, wobei die Ausgabeausdehnung des Eingabe-Rasters beibehalten wird.

# Name: ExtractByMask_Ex_02.py
# Description: Extracts the cells of a elevation raster for all areas outside of the mask features.
#     Keeping the output extent of the input elevation raster. 
# 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 = "elevation"
inMaskData = "mask.shp"
extraction_area = "OUTSIDE"
analysis_extent = "elevation"


# Execute ExtractByMask
outExtractByMask = ExtractByMask(inRaster, inMaskData, extraction_area, analysis_extent)

# Save the output 
outExtractByMask.save("C:/sapyexamples/output/extractmask")

Verwandte Themen