Skip to main content

Objekte mit Deep Learning erkennen (Image Analyst Tools)

Zusammenfassung

Führt ein trainiertes Deep-Learning-Modell auf einem Eingabe-Raster zur Erstellung einer Feature-Class aus, die die gefundenen Objekte enthält. Bei den Features kann es sich um Rahmen oder Polygone um die gefundenen Objekte oder um Punkte im Mittelpunkt der Objekte handeln.

Dieses Werkzeug erfordert eine Modelldefinitionsdatei, die Informationen zum trainierten Modell enthält. Das Modell kann mit dem Werkzeug Deep-Learning-Modell trainieren oder einer Training-Software von Drittanbietern wie PyTorch trainiert werden. Bei der Modelldefinitionsdatei kann es sich um eine Esri Modelldefinitionsdatei als JSON (.emd) oder ein Deep-Learning-Modellpaket handeln. Sie muss den Pfad zur Python-Raster-Funktion, die zur Verarbeitung der einzelnen Objekte aufgerufen werden soll, sowie den Pfad zur binären Datei des trainierten Deep-Learning-Modells enthalten.

Verwendung

  • Sie müssen die dem jeweiligen Deep-Learning-Framework entsprechende Python-API (z. B. PyTorch) in der Python-Umgebung von ArcGIS Pro installieren, da sonst beim Hinzufügen der Esri Modelldefinitionsdatei zum Werkzeug ein Fehler auftritt. Fordern Sie die entsprechenden Framework-Informationen vom Ersteller der Esri Model Definition-Datei an.

    Informationen zum Einrichten des Computers für Deep-Learning-Frameworks in ArcGIS Pro finden Sie unter "Installieren von Deep-Learning-Frameworks für ArcGIS".

  • Mit diesem Werkzeug wird eine Deep-Learning-Python-API eines Drittanbieters (wie PyTorch) aufgerufen und die angegebene Python-Raster-Funktion zum Verarbeiten der einzelnen Objekte verwendet.

  • Beispielanwendungsfälle für dieses Werkzeug finden Sie auf der Esri GitHub-Seite zu Python-Raster-Funktionen. Sie können auch benutzerdefinierte Python-Module entwickeln, indem Sie den Beispielen und Anweisungen im Github-Repository folgen.

  • Bei dem Parameterwert für die Modelldefinition kann es sich um eine Esri Modelldefinitionsdatei als JSON (.emd), eine JSON-Zeichenfolge oder ein Deep-Learning-Modellpaket (.dlpk) handeln. Eine JSON-Zeichenfolge ist nützlich, wenn Sie dieses Werkzeug auf dem Server verwenden, sodass Sie die JSON-Zeichenfolge einfügen können, statt die .emd-Datei hochzuladen. Die .dlpk-Datei muss lokal gespeichert werden.

  • Das Werkzeug kann Eingabebilddaten im Kartenraum oder mit Pixelabstand verarbeiten. Bilddaten im Kartenraum liegen in einem kartenbasierten Koordinatensystem vor. Bilddaten mit Pixelabstand basieren auf Zeilen und Spalten ohne Drehung oder Verzerrung. Das Bezugssystem kann beim Generieren der Trainingsdaten im Werkzeug Trainingsdaten für Deep Learning exportieren mithilfe des Parameters Bezugssystem angegeben werden. Wird das Modell mit der Training-Software eines Drittanbieters trainiert, müssen Sie das Bezugssystem in der Datei .emd mithilfe des Parameters ImageSpaceUsed angeben, für den Sie MAP_SPACE oder PIXEL_SPACE festlegen können.

  • Bei Oriented Imagery-Layern erfolgt die Verarbeitung immer im Pixelabstand. Wenn der Pixelabstand für die Verarbeitung verwendet wird, wird das Erkennen des Pixelabstands in der Ausgabetabelle im IShape-Feld gespeichert.

  • Durch Vergrößern der Batch-Größe kann die Performance des Werkzeugs verbessert werden; mit zunehmender Batch-Größe erhöht sich jedoch auch der Speicherbedarf. Wenn ein Fehler vom Typ "Nicht genügend Arbeitsspeicher" auftritt, verwenden Sie eine kleinere Batch-Größe. Der Wert batch_size kann über den Parameter Argumente angepasst werden.

  • Batch-Größen sind Quadratzahlen wie 1, 4, 9, 16, 25, 64 usw. Wenn der Eingabewert keine perfekte Quadratzahl ist, wird der höchstmögliche Quadratwert verwendet. Wird beispielsweise ein Wert von 6 angegeben, wird die Batch-Größe auf 4 festgelegt.

  • Verwenden Sie den Parameter Non Maximum Suppression, um doppelte Features in der Objekterkennung zu identifizieren und entfernen. Weitere Informationen über diesen Parameter finden Sie im Werkzeug Non Maximum Suppression im Abschnitt "Verwendung". Wenn es sich bei den Eingaben um Oriented Imagery-Layer handelt, werden die Duplikate mit Null-Boden-Geometrien beibehalten.

  • Verwenden Sie die Option Nur Kandidatenoptionen verarbeiten für den Parameter Verarbeitungsmodus, wenn Objekte nur in bestimmten Bildern des Mosaik-Datasets erkannt werden sollen. Sie können das Werkzeug Mosaik-Kandidaten berechnen verwenden, um die Bildkandidaten in einem Mosaik-Dataset und Image-Service zu ermitteln, die den Mosaikbereich am besten darstellen.

  • Dieses Werkzeug kann mehrere verfügbare GPUs unterstützen und verwenden. Um eine bestimmte GPU zu verwenden, geben Sie die GPU-ID-Umgebung an. Wenn die GPU-ID nicht festgelegt wurde, dann verwendet das Werkzeug alle verfügbaren GPUs. Dies ist die Standardeinstellung.

  • Wenn die Umgebungsvariable Prozessortyp auf CPU festgelegt ist und die Umgebungsvariable Faktor für parallele Verarbeitung nicht angegeben ist, verwendet das Werkzeug einen Wert von 50 % für den Faktor für parallele Verarbeitung.

Parameter

Beschriftung Erläuterung Datentyp

Eingabe-Raster

Das Eingabebild für die Ermittlung von Objekten. Bei der Eingabe kann es sich um ein oder mehrere Raster in einem Mosaik-Dataset, einen Image-Service, einen Bildordner oder eine Feature-Class mit Bildanlagen oder einen Oriented Imagery-Layer oder ein Oriented Imagery-Dataset handeln.

Raster Dataset; Raster Layer; Mosaic Layer; Image Service; Map Server; Map Server Layer; Internet Tiled Layer; Folder; Feature Layer; Feature Class; Oriented Imagery Layer

Ausgabe der erkannten Objekte

Die Ausgabe-Feature-Class, die Geometrien enthält, die die im Eingabebild erkannten Objekte umkreisen.

Wenn die Feature-Class bereits vorhanden ist, werden die Ergebnisse an die vorhandene Feature-Class angehängt.

Feature Class

Modelldefinition

Bei diesem Parameter kann es sich um eine Esri Modelldefinitionsdatei als JSON (.emd), eine JSON-Zeichenfolge oder ein Deep-Learning-Modellpaket (.dlpk) handeln. Eine JSON-Zeichenfolge ist nützlich, wenn Sie dieses Werkzeug auf dem Server verwenden, sodass Sie die JSON-Zeichenfolge einfügen können, statt die .emd-Datei hochzuladen. Die .dlpk-Datei muss lokal gespeichert werden.

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; String

Argumente

(Optional)

Die Informationen aus dem Parameter Modelldefinition werden zum Füllen dieses Parameters verwendet. Diese Argumente sind je nach Modellarchitektur unterschiedlich. Für Modelle, die in ArcGIS trainiert werden, werden die folgenden Modellargumente unterstützt. Vortrainierte Modelle und benutzerdefinierte Deep-Learning-Modelle in ArcGIS verfügen ggf. über weitere Argumente, die von dem Werkzeug unterstützt werden.

  • Padding: Die Anzahl von Pixeln am Rahmen von Bildkacheln, aus denen Vorhersagen für benachbarte Kacheln verschmolzen werden. Um die Ausgabe zu glätten und gleichzeitig Artefakte zu reduzieren, erhöhen Sie den Wert. Der Maximalwert für Padding ist die Hälfte des Wertes für die Kachelgröße. Das Argument ist für alle Modellarchitekturen verfügbar.

  • Konfidenzschwellenwert: Erkennungen, deren Konfidenzwert höher als dieser Schwellenwert ist, sind im Ergebnis enthalten. Zulässige Werte liegen zwischen 0 und 1,0. Das Argument ist für alle Modellarchitekturen verfügbar.

  • Batch-Größe: Die Anzahl der Bildkacheln, die in den einzelnen Schritten der Modellinferenz verarbeitet werden. Dieser Wert hängt vom Speicher der Grafikkarte ab. Das Argument ist für alle Modellarchitekturen verfügbar.

  • NMS-Überlappung: Die maximale Überlappungsrate für zwei überlappende Features, die als Verhältnis von Schnittfläche zu Vereinigungsfläche definiert ist. Die Standardeinstellung ist 0.1. Das Argument ist für alle Modellarchitekturen verfügbar.

  • Padding-Erkennungen ausschließen: Wenn "True" ausgewählt ist, werden potenziell gekürzte Erkennungen in der Nähe der Kanten im aufgefüllten Bereich von Bildausschnitten gefiltert. Das Argument ist nur für SSD, RetinaNet, YOLOv3, DETReg, MMDetection und Faster RCNN verfügbar.

  • TTA-Maßstäbe: Führt Test-Time-Augmentationen mit verschiedenen Maßstäben durch. Jeder Maßstab bedeutet, dass der Pixelblock mit den angegebenen Maßstäben verarbeitet wird. Der Standardmaßstab ist 1, d. h. es findet keine Skalierung statt. Die einzelnen Maßstäbe sind durch Komma getrennt, z. B.: 0.9,1,1.1. In diesem Fall wird der Pixelblock dreimal verarbeitet – zunächst im Maßstab 0.9, dann ohne Maßstabsveränderung und anschließend im Maßstab 1.1.

  • Test-Time-Augmentation: Führt beim Erstellen von Vorhersagen Test-Time-Augmentation durch. Wenn "True" festgelegt ist, werden Vorhersagen für gekippte und gedrehte Varianten des Eingabebildes in der endgültigen Ausgabe zusammengeführt, und die jeweiligen Konfidenzwerte werden gemittelt. Dies kann dazu führen, dass die Konfidenzwerte für Objekte, die nur in wenigen Bildausrichtungen erkannt werden, unter den Schwellenwert fällt. Das Argument ist für alle Modellarchitekturen verfügbar.

  • Kachelgröße: Die Breite und Höhe der Bildkacheln, in die die Bilddaten für Vorhersagen unterteilt werden. Das Argument ist nur für MaskRCNN verfügbar.

  • Vereinigungsmethode: Richtlinie für das Zusammenführen von Vorhersagen, auf die Augmentierung angewendet wurde. Die verfügbaren Optionen lauten "mean", "max" und "min". Dies ist nur bei Verwendung von Test-Time Augmentation anwendbar. Das Argument ist nur für MaskRCNN verfügbar.

  • Klassifiziertes Ausgabe-Raster: Der Pfad für das Ausgabe-Raster. Das Argument ist nur für MaXDeepLab verfügbar.

Spalten der Wertetabelle:

  • NameThe name of the function argument.

  • ValueThe value of the function argument.

Value Table

Non Maximum Suppression

(Optional)

Gibt an, ob eine Non Maximum Suppression durchgeführt wird, bei der doppelte Objekte erkannt und doppelte Features mit einem niedrigeren Konfidenzwert entfernt werden.

  • AktiviertNon Maximum Suppression wird durchgeführt, und doppelte Objekte werden erkannt und entfernt. Wenn es sich bei den Eingaben um Oriented Imagery-Layer handelt, werden die Duplikate mit Null-Boden-Geometrien beibehalten.

  • DeaktiviertNon Maximum Suppression wird nicht durchgeführt. Alle erkannten Objekte sind in der Ausgabe-Feature-Class enthalten. Dies ist die Standardeinstellung.

Boolean

Feld für die Konfidenzpunktzahl

(Optional)

Der Name für das Feld in der Feature-Class, das die Konfidenzpunktzahlen enthält, die von der Objekterkennungsmethode ausgegeben werden.

Dieser Parameter wird benötigt, wenn der Parameter Non Maximum Suppression aktiviert ist.

String

Klassenwertefeld

(Optional)

Der Name des Klassenwertefeldes in der Eingabe-Feature-Class.

Wird kein Feldname angegeben, wird ein Classvalue- oder Value-Feld verwendet. Wenn diese Felder nicht vorhanden sind, werden alle Datensätze als zu einer Klasse gehörend identifiziert.

String

Max. Überlappungsrate

(Optional)

Die maximale Überlappungsrate für zwei überlappende Features, die als Verhältnis von Schnittfläche zu Vereinigungsfläche definiert ist. Die Standardeinstellung ist 0.

Double

Verarbeitungsmodus

(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.

  • Als mosaikiertes Bild verarbeitenAlle Raster-Elemente im Mosaik-Dataset oder Image-Service werden zusammen mosaikiert und verarbeitet. Dies ist die Standardeinstellung.

  • Alle Raster-Elemente separat verarbeitenAlle Raster-Elemente im Mosaik-Dataset oder Image-Service werden als separate Bilder verarbeitet.

  • Nur Kandidaten-Elemente verarbeitenEs werden nur Raster-Elemente, die in der Attributtabelle des Eingabe-Mosaik-Datasets im Feld Candidate den Wert 1 oder 2 aufweisen, verarbeitet.

String

Pixelabstand verwenden

(Optional)

Gibt an, ob eine Inferenzierung an Bildern im Pixelabstand durchgeführt werden soll.

  • AktiviertDie Inferenzierung wird im Pixelabstand durchgeführt. Danach wird die Ausgabe wieder in den Kartenraum transformiert. Diese Option ist dann hilfreich, wenn Schrägluft-Bilddaten oder Bilddaten der Straßenansicht verwendet werden, bei denen die Features im Kartenraum möglicherweise verzerrt werden.

  • DeaktiviertDie Inferenzierung wird im Kartenraum durchgeführt. Dies ist die Standardeinstellung.

Boolean

Relevante Objekte

(Optional)

Gibt die Objektnamen an, die von dem Werkzeug erkannt werden. Die verfügbaren Optionen richten sich nach dem Wert des Parameters Modelldefinition.

Dieser Parameter ist nur aktiv, wenn das Modell mehr als einen Objekttyp erkennt.

String

Abgeleitete Ausgabe

Beschriftung Erläuterung Datentyp

Klassifiziertes Ausgabe-Raster

Das Ausgabe-Klassifizierungs-Raster für die Pixelklassifizierung. Der Name des Raster-Datasets entspricht dem Parameterwert Ausgabe der erkannten Objekte.

Dieser Parameter ist nur gültig, wenn der Modelltyp "Panoptische Segmentierung" lautet.

Raster Dataset

Umgebungen

Zellengröße, Aktueller Workspace, Ausdehnung, Geographische Transformationen, GPU-ID, Maske, Ausgabe-Koordinatensystem, Faktor für parallele Verarbeitung, Prozessortyp, Scratch-Workspace

Lizenzierungsinformationen

  • Basic: Erfordert "Image Analyst"
  • Standard: Erfordert "Image Analyst"
  • Advanced: Erfordert "Image Analyst"