Pixel mit Deep Learning klassifizieren (Raster Analysis)

Zusammenfassung

Führt ein trainiertes Deep-Learning-Modell für ein Eingabebild aus und erzeugt ein klassifiziertes Raster, das als gehosteter Bilddaten-Layer in Ihrem Portal veröffentlicht wird.

Abbildung

Darstellung des Werkzeugs "Pixel mit Deep Learning klassifizieren"

Verwendung

  • Die Python-Umgebung des RA-Servers (Raster-Analyse) muss mit der passenden Deep-Learning-Python-API wie TensorFlow, CNTK oder einer vergleichbaren Anwendung konfiguriert werden.

  • Wenn dieses Werkzeug ausgeführt wird, ruft der RA-Server eine Deep-Learning-Python-API eines Drittanbieters (wie TensorFlow oder CNTK) auf und verwendet zum Verarbeiten der einzelnen Raster-Kacheln die angegebene Python-Raster-Funktion.

  • Das Eingabemodell dieses Werkzeugs übernimmt nur ein Deep-Learning-Paketelement (.dlpk) aus dem Portal.

  • Nachdem das Eingabemodell ausgewählt oder angegeben wurde, ruft das Werkzeug die Modellargumentinformationen vom RA-Server ab. Das Werkzeug kann diese Informationen möglicherweise nicht abrufen, wenn das Eingabemodell ungültig ist oder der RA-Server nicht ordnungsgemäß mit dem Deep-Learning-Framework konfiguriert wurde.

Syntax

arcpy.ra.ClassifyPixelsUsingDeepLearning(inputRaster, inputModel, outputName, {modelArguments}, {processingMode})
ParameterErklärungDatentyp
inputRaster

Das zu klassifizierende Eingabebild. Hierbei kann es sich um die URL für einen Image-Service, einen Raster-Layer, einen Kartenserver-Layer oder einen gekachelten Internet-Layer handeln.

Raster Layer; Image Service; MapServer; Map Server Layer; Internet Tiled Layer; String
inputModel

Die Eingabe ist eine URL eines Deep-Learning-Paketelements (.dlpk). Sie enthält den Pfad zur binären Datei des Deep-Learning-Modells, den Pfad zu der zu verwendenden Python-Raster-Funktion sowie andere Parameter wie etwa die bevorzugte Kachelgröße oder den bevorzugten Abstand.

File
outputName

Der Name des Image-Service der klassifizierten Pixel.

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

Die Funktionsargumente werden in der Python-Raster-Funktionsklasse definiert, die vom Eingabemodell referenziert wird. Hier geben Sie zusätzliche Deep-Learning-Parameter und Argumente für Experimente und Verfeinerungen wie den Konfidenzschwellenwert zur Anpassung der Empfindlichkeit an. Die Namen der Argumente werden vom Werkzeug durch Lesen des Python-Moduls im RA-Server aufgefüllt.

Value Table
processingMode
(optional)

Legt fest, wie alle Raster-Elemente in einem Mosaik-Dataset oder Image-Service verarbeitet werden. Dieser Parameter findet Anwendung, wenn es sich beim Eingabe-Raster um ein Mosaik-Dataset oder einen Image-Service handelt.

  • PROCESS_AS_MOSAICKED_IMAGEAlle Raster-Elemente im Mosaik-Dataset oder Image-Service werden zusammen mosaikiert und verarbeitet. Dies ist die Standardeinstellung.
  • PROCESS_ITEMS_SEPARATELYAlle Raster-Elemente im Mosaik-Dataset oder Image-Service werden als separate Bilder verarbeitet.
String

Abgeleitete Ausgabe

NameErklärungDatentyp
outRaster

Das Ausgabe-Raster-Dataset.

Raster-Layer

Codebeispiel

ClassifyPixelsUsingDeepLearning – Beispiel 1 (Python-Fenster)

In diesem Beispiel wird ein Raster basierend auf eine benutzerdefinierten Pixel-Klassifizierung mithilfe von Deep Learning in einer Raster-Analyse-Bereitstellung klassifiziert und das Raster als gehosteter Bilddaten-Layer im Portal veröffentlicht.

import arcpy

arcpy.ClassifyPixelsUsingDeepLearning_ra(
        "https://myserver/rest/services/landclassification/ImageServer",
        "https://myportal/sharing/rest/content/items/itemId",
"classifiedLand", "padding 0")
ClassifyPixelsUsingDeepLearning – Beispiel 2 (eigenständiges Skript)

In diesem Beispiel wird ein Raster basierend auf eine benutzerdefinierten Pixel-Klassifizierung mithilfe von Deep Learning in einer Raster-Analyse-Bereitstellung klassifiziert und das Raster als gehosteter Bilddaten-Layer im Portal veröffentlicht.

#---------------------------------------------------------------------------
# Name: ClassifyPixelsUsingDeepLearning_example02.py
# Requirements: ArcGIS Image Server
# Import system modules
import arcpy
# Set local variables
inImage = "https://myserver/rest/services/ landclassification/ImageServer"
inModel = "https://myportal/sharing/rest/content/items/itemId"
outName = "classifiedLand"
modelArgs = "padding 0"
# Execute Classified Pixels Using raster analysis tool
arcpy.ClassifyPixelsUsingDeepLearning_ra(inImage, inModel, outName, modelArgs)

Lizenzinformationen

  • Basic: Erfordert ArcGIS Image Server
  • Standard: Erfordert ArcGIS Image Server
  • Advanced: Erfordert ArcGIS Image Server

Verwandte Themen