Mean Shift-Segmentierung (Spatial Analyst)

Mit der Image Analyst-Lizenz verfügbar.

Mit der Spatial Analyst-Lizenz verfügbar.

Zusammenfassung

Gruppiert benachbarte Pixel mit ähnlichen Spektraleigenschaften in Segmente.

Verwendung

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

  • Der Parameter Bandindex ist eine Liste von drei Bändern, die durch ein Leerzeichen getrennt sind.

  • Um optimale Ergebnisse zu erzielen, verwenden Sie die Registerkarte Symbolisierung in den Dataset-Eigenschaften, um Ihr Eingabe-Raster interaktiv zu strecken, sodass die Features, die Sie klassifizieren möchten, deutlich dargestellt werden. Nutzen Sie diese optimalen Einstellungen dann in der Raster-Funktion Strecken, um Ihre Bilddaten zu optimieren, und legen Sie auf der Registerkarte Allgemein für den Ausgabepixeltyp den Wert 8 bit unsigned fest.

    Der Ausgabe-Layer der zuvor ausgeführten Raster-Funktion Strecken kann das Eingabe-Raster für das Werkzeug Mean Shift-Segmentierung sein.

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

Syntax

SegmentMeanShift(in_raster, {spectral_detail}, {spatial_detail}, {min_segment_size}, {band_indexes}, {max_segment_size})
ParameterErklärungDatentyp
in_raster

Das zu segmentierende Raster-Dataset. Dies kann ein multispektrales oder ein Graustufenbild sein.

Mosaic Layer; Raster Layer
spectral_detail
(optional)

Die Gewichtung der spektralen Unterschiede von Features in Ihren Bilddaten.

Zulässig sind Werte im Bereich von 1.0 bis 20.0. Ein höherer Wert ist geeignet, wenn Sie über Features verfügen, die getrennt klassifiziert werden müssen, die jedoch ähnliche spektrale Eigenschaften aufweisen. Kleinere Werte erstellen glattere spektrale Ausgaben. Eine detailliertere spektrale Waldszene ermöglicht beispielsweise eine größere Unterscheidung zwischen den Baumarten.

Double
spatial_detail
(optional)

Die Gewichtung der Nähe zwischen Features in Ihren Bilddaten.

Zulässig sind Werte im Bereich von 1.0 bis 20. Ein höherer Wert ist für eine Szene geeignet, in der die Features Ihres Interesses klein und zusammengefasst sind. Kleinere Werte erstellen räumlich glattere Ausgaben. In einer städtischen Szene können Sie beispielsweise eine undurchdringliche Oberfläche mit einem kleineren räumlichen Detail klassifizieren, oder Sie können Gebäude und Straßen als getrennte Klassen mit einem höheren räumlichen Detail klassifizieren.

Long
min_segment_size
(optional)

Die minimale Größe eines Segments. Führt Segmente, die kleiner sind als diese Größe, mit dem am besten passenden Nachbarschaftssegment zusammen. Dies bezieht sich auf die minimale Kartenerstellungseinheit für Ihr Projekt.

Einheiten werden in Pixel angegeben.

Long
band_indexes
(optional)

Die Bänder, die für die Segmentierung der Bilddaten verwendet werden, getrennt durch eine Leerstelle. Sind keine Bandindizes angegeben, werden sie nach folgenden Kriterien bestimmt:

  • Enthält das Raster nur 3 Bänder, werden diese 3 Bänder verwendet.
  • Enthält das Raster mehr als 3 Bänder, werden das rote, grüne und blaue Band entsprechend den Eigenschaften des Rasters zugewiesen.
  • Werden das rote, grüne und blaue Band nicht in den Eigenschaften des Raster-Datasets identifiziert, werden die Bänder 1, 2 und 3 verwendet.

Die Bandreihenfolge hat keinen Einfluss auf das Ergebnis.

Wählen Sie Bänder aus, die die größte Differenzierung zwischen den relevanten Features bieten.

String
max_segment_size
(optional)

Die maximale Größe eines Segments. Segmente, die größer als die angegebene Größe sind, werden geteilt. Verwenden Sie diesen Parameter, um Artefakte im Ausgabe-Raster zu verhindern, die sich durch große Segmente ergeben.

Einheiten werden in Pixel angegeben.

Der Standardwert ist -1. Er bedeutet, dass die Segmentgröße nicht begrenzt ist.

Long

Rückgabewert

NameErklärungDatentyp
out_raster_dataset

Geben Sie einen Namen und eine Ausdehnung für das Ausgabe-Dataset an.

Wenn als Eingabe ein multispektrales Bild verwendet wurde, ist die Ausgabe ein 8-Bit-RGB-Bild. Wenn als Eingabe ein Graustufenbild verwendet wurde, ist die Ausgabe ein 8-Bit-Graustufenbild.

Raster

Codebeispiel

SegmentMeanShift – Beispiel 1 (Python-Fenster)

In diesem Beispiel wird eine Ausgabe mit einer minimalen Segmentgröße von 20 mit nahinfraroten, roten und grünen Eingaben erstellt.

import arcpy
from arcpy.sa import *

seg_raster = SegmentMeanShift("c:/test/moncton.tif", "15", "10", "20", "4 3 2")

seg_raster.save("c:/test/moncton_seg.tif")
SegmentMeanShift – Beispiel 2 (eigenständiges Skript)

In diesem Beispiel wird eine SegmentMeanShift durchgeführt, um eine Ausgabe mit nahinfraroten, roten und grünen Eingaben zu erstellen.

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


# Set local variables
inRaster = "c:/test/moncton.tif"
spectral_detail = "14.5"
spatial_detail = "10"
min_segment_size = "20"
band_indexes = "4 3 2"

# Execute 
seg_raster = SegmentMeanShift(inRaster, spectral_detail, spatial_detail, 
                              min_segment_size, min_segment_size)

# Save the output 
seg_raster.save("c:/output/moncton_seg.tif")

Lizenzinformationen

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

Verwandte Themen