Nibble (Spatial Analyst)

Mit der Spatial Analyst-Lizenz verfügbar.

Zusammenfassung

Die Zellen eines Rasters entsprechend einer Maske durch die Werte der nächsten Nachbarn ersetzen.

Weitere Informationen zur Funktionsweise des Werkzeugs "Nibble"

Abbildung

Abbildung: Nibble
OutRas = Nibble(InRas1, Mask_Ras)

Verwendung

  • Mit dem Werkzeug Nibble kann ausgewählten Bereichen eines Rasters der Wert des nächsten Nachbarn zugewiesen werden. Das Werkzeug kann zum Ersetzen der Werte einzelner Zellen durch die Werte der unmittelbar benachbarten Zellen verwendet werden. In größeren Maskenbereichen können auch größere Streifen von Zellen ersetzt werden.

    Zu seinen Einsatzmöglichkeiten zählt vor allem die Bearbeitung von Bereichen eines Rasters, das fehlerhafte Daten enthält.

  • NoData-Zellen im Eingabemasken-Raster definieren, welche Zellen mit Nibble geändert werden können. Positionen im Eingabe-Raster, die sich außerhalb des Maskenbereichs befinden, werden nicht mit Nibble bearbeitet. Daher entspricht ihr Ausgabewert dem Eingabewert.

    NoData-Zellen im Eingabe-Raster, die sich außerhalb der Maske befinden, werden nicht mit Nibble bearbeitet. Ungeachtet der Einstellungen der beiden NoData-Parameter bleiben die Zellen als NoData-Zellen erhalten.

  • Dieses Werkzeug unterstützt die parallele Verarbeitung. Wenn Ihr Computer mit mehreren Prozessoren oder mit Prozessoren, die mehrere Kerne haben, ausgestattet ist, kann eine höhere Leistung erzielt werden, vor allem bei größeren Datasets. Weitere Informationen zu dieser Funktion sowie zu den Konfigurationsmöglichkeiten finden Sie im Hilfethema Parallele Verarbeitung mit Spatial Analyst.

    Beim Einsatz von paralleler Verarbeitung werden für die Verwaltung der zu verarbeitenden Datenblöcke temporäre Daten generiert. Der Standardordner für temporäre Daten befindet sich auf Ihrem lokalen Laufwerk C. Sie können den Speicherort ändern, indem Sie eine Systemumgebungsvariable mit dem Namen TempFolders einrichten und den Pfad zum gewünschten Ordner angeben (z. B. E:\RasterCache). Wenn Sie auf dem Computer über Administratorberechtigungen verfügen, können Sie auch einen Registrierungsschlüssel verwenden (z. B. [HKEY_CURRENT_USER\SOFTWARE\ESRI\ArcGISPro\Raster]).

    Das Werkzeug verwendet standardmäßig 50 % der verfügbaren Kerne. Wenn die Eingabedaten aus weniger als 5.000 mal 5.000 Zellen bestehen, können weniger Kerne verwendet werden. Sie können die Anzahl der Kerne, die das Werkzeug verwendet, mit der Umgebung Faktor für parallele Verarbeitung ändern.

  • Weitere Informationen zur Geoverarbeitung von Umgebungen mit diesem Werkzeug finden Sie unter Analyseumgebungen und Spatial Analyst.

Syntax

Nibble(in_raster, in_mask_raster, {nibble_values}, {nibble_nodata}, {in_zone_raster})
ParameterErklärungDatentyp
in_raster

Das Eingabe-Raster, auf das die Nibble-Funktion angewendet wird.

Das Eingabe-Raster kann ein ganzzahliger Wert oder ein Gleitkommawert sein.

Raster Layer
in_mask_raster

Das als Maske verwendete Raster.

NoData-Zellen im Masken-Raster definieren, welche Zellen im in_raster mit Nibble geändert oder durch den Wert des nächsten Nachbarn ersetzt werden.

Das Masken-Raster kann ein Ganzzahl- oder ein Gleitkommawert sein.

Raster Layer
nibble_values
(optional)

Legt fest, ob NoData-Zellen im Eingabe-Raster durch die Nibble-Funktion auf Flächen ausgeweitet werden können, die im Masken-Raster definiert sind.

  • ALL_VALUESSowohl NoData-Werte als auch Datenwerte können auf Flächen ausgeweitet werden, die im Masken-Raster definiert sind. NoData-Werte im Eingabe-Raster können durch die Nibble-Funktion auf Flächen ausgeweitet werden, die in der Maske definiert sind, sofern es sich dabei um den nächsten Nachbarn handelt. Dies ist die Standardeinstellung.
  • DATA_ONLYNur Datenwerte können durch die Nibble-Funktion auf im Masken-Raster definierte Flächen ausgeweitet werden. NoData-Werte im Eingabe-Raster dürfen nicht durch die Nibble-Funktion auf Flächen ausgeweitet werden, die im Masken-Raster definiert sind, selbst wenn es sich dabei um den nächsten Nachbarn handelt.
Boolean
nibble_nodata
(optional)

Legt fest, ob NoData-Zellen, die sich im Eingabe-Raster in der Maske befinden, auch NoData-Zellen im Ausgabe-Raster bleiben.

  • PRESERVE_NODATA NoData-Zellen, die sich im Eingabe-Raster in der Maske befinden, bleiben auch in der Ausgabe NoData-Zellen. Dies ist die Standardeinstellung.
  • PROCESS_NODATANoData-Zellen im Eingabe-Raster und innerhalb der Maske können mit Nibble in gültige Ausgabezellenwerte umgewandelt werden.
Boolean
in_zone_raster
(optional)

Das Eingabe-Zonen-Raster. Für jede Zone gilt, dass Eingabezellen, die sich innerhalb der Maske befinden, nur durch den Wert des nächsten Nachbarn innerhalb derselben Zone ersetzt werden.

Alle Zellen in einem Raster, die denselben Wert haben, ungeachtet dessen, ob sie aneinander grenzen oder nicht, sind eine Zone. Der Eingabezonen-Layer definiert die Form, Werte und Positionen der Zonen. Das Zonen-Raster kann ein Ganzzahl- oder ein Gleitkommawert sein.

Raster Layer

Rückgabewert

NameErklärungDatentyp
out_raster

Das Nibble-Ausgabe-Raster.

Die ermittelten Eingabezellen werden durch die Werte ihrer nächsten Nachbarn ersetzt.

Handelt es sich bei in_raster um eine ganze Zahl, ist das Ausgabe-Raster ganzzahlig. Wenn es ein Gleitkommawert ist, ist die Ausgabe ebenfalls ein Gleitkommawert.

Raster

Codebeispiel

Nibble – Beispiel 1 (Python-Fenster)

In diesem Beispiel werden durch die Maskeneingabe ermittelte Zellen durch Werte ersetzt, die durch die nächsten Nachbarn des Eingabe-Rasters bestimmt werden.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
nibbleOut = Nibble("land", "snow", "DATA_ONLY")
nibbleOut.save("C:/sapyexamples/output/nibbleout")
Nibble – Beispiel 2 (eigenständiges Skript)

In diesem Beispiel werden durch die Maskeneingabe ermittelte Zellen durch Werte ersetzt, die durch die nächsten Nachbarn des Eingabe-Rasters bestimmt werden.

# Name: Nibble_Ex_02.py
# Description: Replaces cells of a raster corresponding to a mask 
#              with the values of the nearest neighbors.
# 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 = "land"
inMask = "snow"

# Execute Nibble
nibbleOut = Nibble(inRaster, inMask, "ALL_VALUES")

# Save the output 
nibbleOut.save("C:/sapyexamples/output/outnibble")

Lizenzinformationen

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

Verwandte Themen