Maximum-Likelihood-Klassifikator trainieren (Image Analyst)

Mit der Spatial Analyst-Lizenz verfügbar.

Mit der Image Analyst-Lizenz verfügbar.

Zusammenfassung

Generiert eine Esri Classifier Definition-Datei (.ecd) anhand der Klassifizierungsdefinition des Maximum-Likelihood-Klassifikators.

Verwendung

  • Um die Maximum-Likelihood-Klassifizierung abzuschließen, verwenden Sie dasselbe Eingabe-Raster und die Ausgabe-.ecd-Datei aus diesem Werkzeug im Werkzeug Raster klassifizieren.

  • Das Eingabe-Raster kann ein beliebiges von Esri unterstütztes Raster mit einer gültigen Bit-Tiefe sein.

  • Klicken Sie zum Erstellen eines segmentierten Raster-Datasets auf das Werkzeug Mean Shift-Segmentierung.

  • Verwenden Sie zum Erstellen der Trainingsgebietdatei den Bereich Trainingsgebiet-Manager im Dropdown-Menü Klassifizierungswerkzeuge.

  • Die Ausgabe-Klassifikatordefinitionsdatei enthält Attributstatistiken, die für das Werkzeug Maximum-Likelihood-Klassifizierung geeignet sind.

  • Der Parameter Segmentattribute ist nur dann aktiviert, wenn eine der Raster-Layer-Eingaben ein segmentiertes Bild ist.

  • Um mit dem CCDC-Algorithmus (Continuous Change Detection and Classification) eine Zeitserie von Raster-Daten zu klassifizieren, führen Sie zuerst das Werkzeug Veränderungen mit CCDC analysieren aus und verwenden das Ausgabe-Veränderungsanalyse-Raster als Eingabe-Raster für dieses Trainingswerkzeug.

    Die Trainingsgebietsdaten müssen zu mehreren Zeitpunkten mit dem Trainingsgebiet-Manager erfasst werden. Der Dimensionswert für jede Stichprobe wird in einem Feld in der Trainingsgebiet-Feature-Class aufgelistet, das im Parameter Dimensionswertefeld angegeben wird.

Syntax

TrainMaximumLikelihoodClassifier(in_raster, in_training_features, out_classifier_definition, {in_additional_raster}, {used_attributes}, {dimension_value_field})
ParameterErklärungDatentyp
in_raster

Das Raster-Dataset, das klassifiziert werden soll.

Raster Layer; Mosaic Layer; Image Service; String
in_training_features

Die Trainingsgebietdatei bzw. der Trainingsgebiet-Layer, der die Training-Sites abgrenzt.

Ihre Trainingsgebiete können entweder in Shapefiles oder in Feature-Classes enthalten sein. In der Trainingsgebiet-Datei werden die folgenden Feldnamen benötigt:

  • classname: Ein Textfeld, das den Namen der Klassenkategorie angibt.
  • classvalue: Ein "Long Integer"-Feld, das den ganzzahligen Wert für die einzelnen Klassenkategorien enthält.

Feature Layer
out_classifier_definition

Die JSON-Ausgabedatei, die Attributinformationen, Statistiken, Hyperebenenvektoren und weitere Daten für den Klassifikator enthält. Es wird eine .ecd-Datei erstellt.

File
in_additional_raster
(optional)

Integriert Zusatz-Raster-Datasets wie ein segmentiertes Bild oder ein DEM. Dieser Parameter ist optional.

Raster Layer; Mosaic Layer; Image Service; String
used_attributes
[used_attributes,...]
(optional)

Gibt die Attribute an, die in die dem Ausgabe-Raster zugeordnete Attributtabelle aufgenommen werden sollen.

  • COLORDie RGB-Farbwerte werden segmentbezogen aus dem Eingabe-Raster abgeleitet.
  • MEANDer durchschnittliche Digitalnummernwert (DN) ist aus dem optionalen Pixelbild segmentbezogen abgeleitet.
  • STDDie Standardabweichung ist aus dem optionalen Pixelbild segmentbezogen abgeleitet.
  • COUNTDie Anzahl der im Segment enthaltenen Pixel, segmentbezogen.
  • COMPACTNESSDer Grad der Kompaktheit oder Kreisförmigkeit eines Segments, segmentbezogen. Die Werte liegen zwischen 0 und 1, wobei 1 einem Kreis entspricht.
  • RECTANGULARITYDer Grad der Rechteckigkeit des Segments, segmentbezogen. Die Werte liegen zwischen 0 und 1, wobei 1 einem Rechteck entspricht.

Dieser Parameter ist nur aktiviert, wenn die Schlüsseleigenschaft Segmentiert auf das Eingabe-Raster festgelegt ist. Wenn die einzige Eingabe für das Werkzeug ein segmentiertes Bild ist, lauten die Standardattribute COLOR, COUNT, COMPACTNESS und RECTANGULARITY. Wenn ein in_additional_raster als Eingabe mit einem segmentierten Bild einbezogen wird, sind die Attribute MEAN und STD ebenfalls verfügbar.

String
dimension_value_field
(optional)

Enthält Dimensionswerte in der Eingabe-Trainingsgebiet-Feature-Class.

Dieser Parameter ist erforderlich, um mit dem Veränderungsanalyse-Raster, das vom Werkzeug Veränderungen mit CCDC analysieren ausgegeben wird, eine Zeitserie von Raster-Daten zu klassifizieren.

Field

Codebeispiel

TrainMaximumLikelihoodClassifier – Beispiel 1 (Python-Fenster)

Das folgende Skript veranschaulicht die Verwendung des Werkzeugs TrainMaximumLikelihoodClassifier im Python-Fenster.

import arcpy
from arcpy.ia import *

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

TrainMaximumLikelihoodClassifier("c:/test/moncton_seg.tif", "c:/test/train.gdb/train_features", 
                                 "c:/output/moncton_sig.ecd", "c:/test/moncton.tif", 
                                 "COLOR;MEAN;STD;COUNT;COMPACTNESS;RECTANGULARITY")
TrainMaximumLikelihoodClassifier – Beispiel 2 (eigenständiges Skript)

In diesem Beispiel wird gezeigt, wie ein Maximum-Likelihood-Klassifikator trainiert wird.

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

"""
Usage: TrainMaximumLikelihoodClassifier(in_raster, in_training_features, out_classifier_definition, 
                                       {in_additional_raster}, {used_attributes})
"""

# Set local variables
inSegRaster = "c:/test/moncton_seg.tif"
train_features = "c:/test/train.gdb/train_features"
out_definition = "c:/output/moncton_sig.ecd"
in_additional_raster = "c:/moncton.tif"
attributes = "COLOR;MEAN;STD;COUNT;COMPACTNESS;RECTANGULARITY"

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

# Execute 
TrainMaximumLikelihoodClassifier(inSegRaster, train_features, out_definition, 
                                 in_additional_raster, attributes)
TrainMaximumLikelihoodClassifier – Beispiel 3 (eigenständiges Skript)

In diesem Beispiel wird gezeigt, wie ein Maximum-Likelihood-Klassifikator mit einem Veränderungsanalyse-Raster aus dem Werkzeug Veränderungen mit CCDC analysieren trainiert wird.

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

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


# Define input parameters
in_changeAnalysisRaster = "c:/test/LandsatCCDC.crf"
train_features = "c:/test/train.gdb/train_features"
out_definition = "c:/output/change_detection.ecd"
additional_raster = ''
attributes = None
dimension_field = "DateTime"

# Execute 
arcpy.ia.TrainMaximumLikelihoodClassifier(
	in_changeAnalysisRaster, train_features, out_definition, 
	additional_raster, attributes, dimension_field)

Lizenzinformationen

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

Verwandte Themen