Veränderungs-Raster berechnen (Image Analyst)

Mit der Image Analyst-Lizenz verfügbar.

Zusammenfassung

Berechnet den absoluten, relativen, kategoriellen oder spektralen Unterschied zwischen zwei Raster-Datasets.

Verwendung

  • Dieses Werkzeug vergleicht zwei Raster und erstellt ein neues Raster mit der Differenz der beiden Raster. Mit diesem Werkzeug können Sie beispielsweise Veränderungen an den Pixelwerten von Kohlenstoffeinlagerungen zwischen 2001 und 2020 oder Veränderungen an der Landbedeckung zwischen 2010 und 2015 herausfinden.

  • Für die Berechnung des Veränderungs-Rasters stehen folgende Berechnungsarten zur Verfügung:

    • Unterschied: Der mathematische Unterschied (Subtraktion) zwischen den Pixelwerten im Parameter Von Raster und den Pixelwerten im Parameter In Raster.

      Ausgabe = (In-Raster) - (Von-Raster)

    • Relativer Unterschied: Der Unterschied zwischen den Pixelwerten unter Berücksichtigung des Betrags der verglichenen Werte.

      Ausgabe = (In-Raster - Von-Raster) / max(In-Raster, Von-Raster)

    • Kategorischer Unterschied: Der Unterschied zwischen zwei kategorischen oder thematischen Rastern, wobei die Ausgabe jeden Klassenübergang anzeigt, der zwischen den beiden Rastern erfolgt ist.
    • Euklidische Entfernung spektral: Die euklidische Entfernung zwischen zwei Multiband-Rastern, wobei jedes Pixel wie ein Vektor behandelt wird. Größere Werte kennzeichnen eine größere Änderung zwischen den Bildern.
    • Winkeldifferenz spektral: Der Spektralwinkel zwischen zwei Multiband-Rastern, wobei jedes Pixel wie ein Vektor behandelt wird. Größere Winkel kennzeichnen eine größere Änderung zwischen den Bildern.
    • Band mit der größten Änderung: Das Band, das zwischen zwei Multiband-Rastern die größere Änderung in jedem Pixel verursacht.

  • Die Ausgabe einer Berechnung des Typs Kategorischer Unterschied ist ein Raster-Dataset mit einer Attributtabelle. Die Tabelle enthält die Übergangstypen (zum Beispiel "Forest" zu "Urban"), die Anzahl der Pixel in jedem Übergangstyp und die geschätzte Fläche jedes Übergangstyps. Die Fläche wird als Produkt aus Pixelgröße und Anzahl der Pixel in jedem Übergangstyp berechnet. Die Einheiten entsprechen den linearen Einheiten der Eingabe-Raster-Daten.

  • Beim Berechnen der Unterschiede zwischen zwei kategorisierten Rastern können Sie die Analyse auf bestimmte Klassen beschränken. Wenn Sie zum Beispiel das Städtewachstum visualisieren möchten, können Sie in die Liste Von Klassen alle Klassen einbeziehen und in die Liste In Klassen nur die Klasse "Urban". Das Ergebnis enthält alle Übergänge, die zur Kategorie "Urban" gehören.

  • Wenn die Eingabe-Raster unterschiedliche Zellengrößen oder Ausdehnungen enthalten, können Sie die Zellengröße und Ausdehnung in den Umgebungseinstellungen Zellengröße und Ausgabeausdehnung festlegen.

  • Wenn für den Parameter Methode "Veränderungen berechnen" die Einstellung Kategorischer Unterschied festgelegt wurde, muss mit den Parametern Von Raster und In Raster eine Raster-Attributtabelle mit dem Feld Value oder ClassValue verknüpft sein. Die Klassennamen für die entsprechenden Klassenwerte werden als Namen für die Übertragung der Ausgabeklassen verwendet. Das Werkzeug verwendet die standardmäßigen Feldklassennamen CLASS_NAME oder CLASSNAME. Wenn diese Feldnamen nicht vorhanden sind, können Sie sie mit den Parametern Klassennamensfeld für "Von Raster" und Klassennamensfeld für "In Raster" definieren.

Parameter

BeschriftungErläuterungDatentyp
Von Raster

Das ursprüngliche oder erste zu analysierende Raster.

Raster Dataset; Raster Layer; Mosaic Dataset; Mosaic Layer; Image Service; String
In Raster

Das endgültige oder letzte zu analysierende Raster. Dies ist das Raster, das mit dem ursprünglichen Raster verglichen wird.

Raster Dataset; Raster Layer; Mosaic Dataset; Mosaic Layer; Image Service; String
Methode "Veränderungen berechnen"
(optional)

Gibt die Berechnungsmethode zwischen den beiden Rastern an.

  • UnterschiedDie mathematische Differenz zwischen den Pixelwerten in den Rastern wird berechnet (Subtraktion). Dies ist die Standardeinstellung.
  • Relativer UnterschiedDer Unterschied zwischen den Pixelwerten wird berechnet, wobei die Mengen der Werte verglichen werden.
  • Kategorischer UnterschiedDer Unterschied zwischen zwei kategorisierten oder thematischen Rastern wird berechnet. Die Ausgabe enthält Klassenübergänge, die zwischen den beiden Rastern erfolgt sind.
  • Euklidische Entfernung spektralDie euklidische Entfernung zwischen den Pixelwerten von zwei Multiband-Rastern wird berechnet.
  • Winkeldifferenz spektralDer Spektralwinkel zwischen den Pixelwerten von zwei Multiband-Rastern wird berechnet. Die Ausgabe ist ein Radius.
  • Band mit der größten ÄnderungDas Band, das zwischen zwei Multiband-Rastern die größere Änderung in jedem Pixel verursacht, wird berechnet.
String
Von Klassen
(optional)

Die Liste der Klassennamen aus dem Parameter Von Raster, die in die Berechnung einbezogen werden sollen. Wenn keine Klassen angegeben werden, werden alle Klassen einbezogen.

Dieser Parameter ist aktiv, wenn der Parameter Methode "Veränderungen berechnen" auf Kategorischer Unterschied eingestellt ist.

String
In Klassen
(optional)

Die Liste der Klassennamen aus dem Parameter In Raster, die in die Berechnung einbezogen werden sollen. Wenn keine Klassen angegeben werden, werden alle Klassen einbezogen.

Dieser Parameter ist aktiv, wenn der Parameter Methode "Veränderungen berechnen" auf Kategorischer Unterschied eingestellt ist.

String
Filtermethode
(optional)

Gibt die im Ausgaberaster zu kategorisierenden Pixel an. Dieser Parameter ist aktiv, wenn der Parameter Methode "Veränderungen berechnen" auf Kategorischer Unterschied eingestellt ist.

  • Nur geänderte PixelIn der Ausgabe werden nur Pixel kategorisiert, deren Kategorie geändert wurde. Pixel, deren Kategorie nicht geändert wurde, werden zu einer Klasse namens "Other" gruppiert.
  • Nur ungeänderte PixelIn der Ausgabe werden nur Pixel kategorisiert, deren Kategorie nicht geändert wurde. Pixel, deren Kategorie geändert wurde, werden zu einer Klasse namens "Other" gruppiert.
  • Alle PixelAlle Pixel werden in der Ausgabe kategorisiert. Dies ist die Standardeinstellung.
String
Farben der Übergangsklasse
(optional)

Gibt die Farbe zur Symbolisierung der Ausgabe-Klassen an. Wenn der Klassentyp eines Pixels geändert wird, stellt die Farbe des Ausgabe-Pixels den ursprünglichen Klassentyp, den endgültigen Klassentyp oder eine Mischung aus beiden dar.

Dieser Parameter ist aktiv, wenn der Parameter Methode "Veränderungen berechnen" auf Kategorischer Unterschied eingestellt ist.

  • Von- und Bis-Farben für DurchschnittDie Farbe der Ausgabeklasse entspricht dem Durchschnitt der Farbe der Von-Klasse (ursprünglich) und der In-Klasse (endgültig). Dies ist die Standardeinstellung.
  • AusgangsfarbeDie Farbe der Ausgabeklasse entspricht der Farbe der Von-Klasse (ursprünglich).
  • ZielfarbeDie Farbe der Ausgabeklasse entspricht der Farbe der In-Klasse (endgültig).
String
Klassennamensfeld für "Von Raster"
(optional)

Das Feld, in dem Klassennamen im Parameterwert Von Raster gespeichert werden. Es wird automatisch nach dem zu verwendenden Feld ClassName oder Class_Name gesucht.

Verwenden Sie diesen Parameter, wenn diese Standardfeldnamen nicht in der Eingabe enthalten sind.

Field
Klassennamensfeld für "In Raster"
(optional)

Das Feld, in dem Klassennamen im Parameterwert In Raster gespeichert werden. Es wird automatisch nach dem zu verwendenden Feld ClassName oder Class_Name gesucht.

Verwenden Sie diesen Parameter, wenn diese Standardfeldnamen nicht in der Eingabe enthalten sind.

Field

Rückgabewert

BeschriftungErläuterungDatentyp
Ausgabe-Raster

Ausgabe-Raster-Dataset der Veränderung

Raster

ComputeChangeRaster(from_raster, to_raster, {compute_change_method}, {from_classes}, {to_classes}, {filter_method}, {define_transition_colors}, {from_classname_field}, {to_classname_field})
NameErläuterungDatentyp
from_raster

Das ursprüngliche oder erste zu analysierende Raster.

Raster Dataset; Raster Layer; Mosaic Dataset; Mosaic Layer; Image Service; String
to_raster

Das endgültige oder letzte zu analysierende Raster. Dies ist das Raster, das mit dem ursprünglichen Raster verglichen wird.

Raster Dataset; Raster Layer; Mosaic Dataset; Mosaic Layer; Image Service; String
compute_change_method
(optional)

Gibt die Berechnungsmethode zwischen den beiden Rastern an.

  • DIFFERENCEDie mathematische Differenz zwischen den Pixelwerten in den Rastern wird berechnet (Subtraktion). Dies ist die Standardeinstellung.
  • RELATIVE_DIFFERENCEDer Unterschied zwischen den Pixelwerten wird berechnet, wobei die Mengen der Werte verglichen werden.
  • CATEGORICAL_DIFFERENCEDer Unterschied zwischen zwei kategorisierten oder thematischen Rastern wird berechnet. Die Ausgabe enthält Klassenübergänge, die zwischen den beiden Rastern erfolgt sind.
  • SPECTRAL_EUCLIDEAN_DISTANCEDie euklidische Entfernung zwischen den Pixelwerten von zwei Multiband-Rastern wird berechnet.
  • SPECTRAL_ANGLE_DIFFERENCEDer Spektralwinkel zwischen den Pixelwerten von zwei Multiband-Rastern wird berechnet. Die Ausgabe ist ein Radius.
  • BAND_WITH_MOST_CHANGEDas Band, das zwischen zwei Multiband-Rastern die größere Änderung in jedem Pixel verursacht, wird berechnet.
String
from_classes
[from_classes,...]
(optional)

Die Liste der Klassennamen aus dem Parameter from_raster, die in die Berechnung einbezogen werden sollen. Wenn keine Klassen angegeben werden, werden alle Klassen einbezogen.

Dieser Parameter wird aktiviert, wenn der Parameter compute_change_method auf CATEGORICAL_DIFFERENCE gesetzt ist.

String
to_classes
[to_classes,...]
(optional)

Die Liste der Klassennamen aus dem Parameter to_raster, die in die Berechnung einbezogen werden sollen. Wenn keine Klassen angegeben werden, werden alle Klassen einbezogen.

Dieser Parameter wird aktiviert, wenn der Parameter compute_change_method auf CATEGORICAL_DIFFERENCE gesetzt ist.

String
filter_method
(optional)

Gibt die im Ausgaberaster zu kategorisierenden Pixel an. Dieser Parameter wird aktiviert, wenn der Parameter compute_change_method auf CATEGORICAL_DIFFERENCE gesetzt ist.

  • CHANGED_PIXELS_ONLYIn der Ausgabe werden nur Pixel kategorisiert, deren Kategorie geändert wurde. Pixel, deren Kategorie nicht geändert wurde, werden zu einer Klasse namens "Other" gruppiert.
  • UNCHANGED_PIXELS_ONLYIn der Ausgabe werden nur Pixel kategorisiert, deren Kategorie nicht geändert wurde. Pixel, deren Kategorie geändert wurde, werden zu einer Klasse namens "Other" gruppiert.
  • ALLAlle Pixel werden in der Ausgabe kategorisiert. Dies ist die Standardeinstellung.
String
define_transition_colors
(optional)

Gibt die Farbe zur Symbolisierung der Ausgabe-Klassen an. Wenn der Klassentyp eines Pixels geändert wird, stellt die Farbe des Ausgabe-Pixels den ursprünglichen Klassentyp, den endgültigen Klassentyp oder eine Mischung aus beiden dar.

Dieser Parameter wird aktiviert, wenn der Parameter compute_change_method auf CATEGORICAL_DIFFERENCE gesetzt ist.

  • AVERAGEDie Farbe der Ausgabeklasse entspricht dem Durchschnitt der Farbe der Von-Klasse (ursprünglich) und der In-Klasse (endgültig). Dies ist die Standardeinstellung.
  • FROM_COLORDie Farbe der Ausgabeklasse entspricht der Farbe der Von-Klasse (ursprünglich).
  • TO_COLORDie Farbe der Ausgabeklasse entspricht der Farbe der In-Klasse (endgültig).
String
from_classname_field
(optional)

Das Feld, in dem Klassennamen im Parameterwert from_raster gespeichert werden. Es wird automatisch nach dem zu verwendenden Feld ClassName oder Class_Name gesucht.

Verwenden Sie diesen Parameter, wenn diese Standardfeldnamen nicht in der Eingabe enthalten sind.

Field
to_classname_field
(optional)

Das Feld, in dem Klassennamen im Parameterwert to_raster gespeichert werden. Es wird automatisch nach dem zu verwendenden Feld ClassName oder Class_Name gesucht.

Verwenden Sie diesen Parameter, wenn diese Standardfeldnamen nicht in der Eingabe enthalten sind.

Field

Rückgabewert

NameErläuterungDatentyp
out_raster_dataset

Ausgabe-Raster-Dataset der Veränderung

Raster

Codebeispiel

ComputeChangeRaster –Beispiel 1 (Python-Fenster)

In diesem Beispiel wird der Unterschied in NDVI-Pixelwerten von 2000 bis 2020 berechnet.

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

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

NDVIchange = arcpy.ia.ComputeChangeRaster(
	"NDVI_2000.tif", "NDVI_2020.tif", "DIFFERENCE")
	
NDVIchange.save("C:/Data/NDVI_2000_2020.tif")
ComputeChangeRaster –Beispiel 2 (eigenständiges Skript)

In diesem Beispiel wird der relative Unterschied in NDVI-Pixelwerten von 2000 bis 2020 berechnet.

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

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

# Define input parameters
FromRaster = "C:/Data/NDVI_2000.tif"
ToRaster = "C:/Data/NDVI_2020.tif"
ChangeType = "RELATIVE_DIFFERENCE"

# Execute - calculate the relative difference in NDVI from 2000 to 2020
NDVIrelativeChange = arcpy.ia.ComputeChangeRaster(
	FromRaster, ToRaster, ChangeType)
	
# Save output
NDVIrelativeChange.save("C:/Data/Relative_NDVI_2000_2020.tif")
ComputeChangeRaster –Beispiel 3 (eigenständiges Skript)

In diesem Beispiel wird die Veränderung der Landbedeckung von 2000 bis 2020 berechnet. Dabei werden nur die Pixel extrahiert, deren Klasse von "Forest", "Agriculture", "Water" oder "Barren" in "Urban" geändert wurde.

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

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


LandcoverChange = arcpy.ia.ComputeChangeRaster(
	"Landcover_2000.tif", "Landcover_2020.tif", "CATEGORICAL_DIFFERENCE", 
	"'Forest';'Agriculture';'Water';'Barren'", "'Urban'", 
	"CHANGED_PIXELS_ONLY", "AVERAGE")
	
# Save output  
LandcoverChange.save("C:/Data/Landcover_2000_2020.tif")

Verwandte Themen