Skip To Content

Trainingsdaten für Deep Learning exportieren

Mit der Spatial Analyst-Lizenz verfügbar.

Mit der Image Analyst-Lizenz verfügbar.

Zusammenfassung

Verwendet ein Fernerkundungsbild zum Konvertieren von beschrifteten Vektor- oder Raster-Daten in Training-Datasets für Deep Learning. Die Ausgabe ist ein Ordner mit Bildschnipseln und ein Ordner mit Metadaten-Dateien im angegebenen Format.

Verwendung

  • Mit diesem Werkzeug lassen sich Training-Datasets für die Unterstützung von Deep-Learning-Anwendungen von Drittanbietern erstellen, z. B. Google TensorFlow, PyTorch oder Microsoft CNTK.

  • Verwenden Sie vorhandene Klassifizierungs-Trainingsgebiet- oder GIS-Feature-Class-Daten wie Gebäude-Footprint-Layer, um Bildschnipsel zu erzeugen, die die Klassenstichprobe aus Ihrem Quellbild enthalten. Die Abmessungen von Bildschnipseln betragen in der Regel 256 x 256 Pixel, es sei denn, das Trainingsgebiet ist größer.

  • Deep-Learning-Class-Trainingsgebiete setzen sich aus kleinen Sub-Bildern mit dem Feature oder der Klasse von Interesse zusammen. Man nennt sie Bildschnipsel.

Syntax

ExportTrainingDataForDeepLearning (in_raster, out_folder, in_class_data, image_chip_format, {tile_size_x}, {tile_size_y}, {stride_x}, {stride_y}, {output_nofeature_tiles}, {metadata_format}, {start_index}, class_value_field, buffer_radius)
ParameterErklärungDatentyp
in_raster

Die Eingabe-Quellbilddaten, in der Regel multispektrale Bilddaten.

Beispiele für Eingabe-Quellbilddaten sind Multispektralsatellit-, Drohnen-, Luft- oder NAIP-Bilder (National Agriculture Imagery Program).

Raster Dataset; Raster Layer; Mosaic Layer; Image Service; MapServer; Map Server Layer; Internet Tiled Layer
out_folder

Geben Sie einen Ordner für die Ausgabe-Bildschnipsel und Metadaten an.

Folder
in_class_data

Beschriftete Daten in Vektor- oder Raster-Form.

Vektoreingaben sollten einem Trainingsgebiet-Format entsprechen, das mit dem ArcGIS Pro Trainingsgebiet-Manager erstellt wurde.

Raster-Eingaben sollten einem klassifizierten Raster-Format entsprechen, das mit dem Werkzeug Raster klassifizieren erstellt wurde.

Feature Class; Feature Layer; Raster Dataset; Raster Layer; Mosaic Layer; Image Service
image_chip_format

Gibt das Raster-Format für die ausgegebenen Bildschnipsel an.

  • TIFFTIFF-Format
  • PNGPNG-Format
  • JPEGJPEG-Format
  • MRFMRF (Meta-Raster-Format)
String
tile_size_x
(optional)

Größe der Bildschnipsel (X-Dimension).

Long
tile_size_y
(optional)

Größe der Bildschnipsel (Y-Dimension).

Long
stride_x
(optional)

Verschiebung in X-Richtung bei Erstellung des nächsten Bildschnipsels.

Wenn der Schritt der Kachelgröße entspricht, gibt es keine Überlappung. Wenn der Schritt der halben Kachelgröße entspricht, gibt es eine Überlappung von 50 Prozent

Long
stride_y
(optional)

Verschiebung in Y-Richtung bei Erstellung des nächsten Bildschnipsels.

Wenn der Schritt der Kachelgröße entspricht, gibt es keine Überlappung. Wenn der Schritt der halben Kachelgröße entspricht, gibt es eine Überlappung von 50 Prozent

Long
output_nofeature_tiles
(optional)

Gibt an, ob Bildschnipsel mit überlappenden Beschriftungsdaten exportiert werden.

  • ALL_TILESAlle Bildschnipsel, einschließlich solcher mit nicht überlappenden Beschriftungsdaten, werden exportiert. Dies ist die Standardeinstellung.
  • ONLY_TILES_WITH_FEATURESNur Bildschnipsel mit überlappenden Beschriftungsdaten werden exportiert.
Boolean
metadata_format
(optional)

Gibt das Ausgabeformat für Metadatenbeschriftungen an.

Es gibt vier Optionen der Ausgabe-Metadaten-Beschriftungen für die Trainingsdaten: KITTI-Rechtecke, PASCAL VOC-Rechtecke, Klassifizierte Kacheln (eine Class-Karte) sowie RCNN-Masken. Wenn es sich bei den Eingabedaten für das Trainingsgebiet um einen Feature-Class-Layer handelt, wie zum Beispiel eine Gebäude-Layer- oder Standardklassifizierungs-Trainingsgebiet-Datei, verwenden Sie KITTI- oder PASCAL VOC-Rechtecke. Die Ausgabe-Metadaten sind eine .txt-Datei oder .xml-Datei mit den Daten für das Trainingsgebiet, die im kleinsten umgebenden Rechteck enthalten sind. Der Name der Metadatendatei stimmt mit dem Namen des Eingabequellbildes überein. Wenn es sich bei den Eingabedaten für das Trainingsgebiet um eine Class-Karte handelt, verwenden Sie als Format für die Ausgabe-Metadaten die Option "Klassifizierte Kacheln".

  • KITTI_rectanglesDie Metadaten weisen dasselbe Format auf wie das Object Detection Evaluation Dataset, das vom Karlsruher Institut für Technologie gemeinsam mit dem Toyota Technological Institute (KITTI) entwickelt wurde. Das KITTI-Dataset ist eine Vision Benchmark Suite. Dies ist die Standardeinstellung.Bei den Beschriftungsdateien handelt es sich um Nur-Text-Dateien. Numerische Werte und Zeichenfolgenwerte werden durch Leerzeichen getrennt, und jede Zeile entspricht einem Objekt.
  • PASCAL_VOC_rectanglesDie Metadaten weisen dasselbe Format auf wie das PASCAL_VOC-Dataset (Pattern Analysis, Statistical Modeling and Computational Learning, Visual Object Classes). Das PASCAL_VOC-Dataset ist ein standardisiertes Bild-Dataset für die Erkennung von Objektklassen.Die Beschriftungsdateien (XML-Dateien) enthalten Informationen zu Bildnamen, Klassenwerten und umgebenden Rechtecken.
  • Classified_TilesBei Auswahl dieser Option wird für jeden Eingabebildschnipsel ein klassifizierter Bildschnipsel ausgegeben. Für die einzelnen Bildschnipsel werden keine weiteren Metadaten verwendet. Weitere Informationen zu den Klassen (Klassennamen, Klassenwerte und Ausgabestatistiken) können den ausgegebenen Statistiken entnommen werden.
  • RCNN_MasksMit dieser Option werden Bildschnipsel mit Maskierung in Bereichen mit vorhandener Stichprobe ausgegeben. Das Modell generiert umgebende Rechtecke und Segmentierungsmasken für jede Instanz eines Objekts im Bild. Es basiert auf dem Feature Pyramid Network (FPN) und einem ResNet101-Backbone im Deep-Learning-Framework-Modell.

Die folgende Tabelle enthält eine Beschreibung der fünfzehn Werte im KITTI-Metadatenformat. Im Werkzeug werden nur fünf der fünfzehn möglichen Werte verwendet: der Klassenname (in Spalte 1) und das kleinste umgebende Rechteck aus vier Bildkoordinatenpositionen (Spalten 5 bis 8). Das kleinste umgebende Rechteck umfasst den im Deep-Learning-Klassifikator verwendeten Training-Schnipsel.

SpaltenNameBeschreibung

1

Klassenwert

Der Klassenwert des Objekts, aufgelistet in der Datei stats.txt.

2-4

Nicht verwendet

SpaltenNameBeschreibung

5-8

BBox

Das zweidimensionale umgebende Rechteck von Objekten im Bild auf der Grundlage eines 0-basierten Bildraumkoordinatenindex. Das umgebende Rechteck enthält die vier Koordinaten für das linke, obere, rechte und untere Pixel.

9-15

Nicht verwendet

Weitere Information finden Sie unter KITTI-Metadatenformat KITTI-Metadaten.

Nachfolgend finden Sie ein Beispiel für PASCAL VOC:

<?xml version=”1.0”?>
- <layout>
      <image>000000000</image>
      <object>1</object>
    - <part>
         <class>1</class>
       - <bndbox>
            <xmin>31.85</xmin>
            <ymin>101.52</ymin>
            <xmax>256.00</xmax>
            <ymax>256.00</ymax>
         </bndbox>
      </part>
  </layout>

Weitere Informationen finden Sie unter PASCAL Visual Object ClassesPASCAL Visual Object Classes.

String
start_index
(optional)

Der Startindex für die Abfolge von Bildschnipseln. Damit haben Sie die Möglichkeit, mehr Bildschnipsel an eine vorhandene Sequenz anzuhängen. Der Standardwert ist 0.

Long
class_value_field

Das Feld, das die Klassenwerte enthält. Wenn alle Felder angegeben sind, sucht das System nach einem Feld des Typs value oder classvalue. Wenn das Feature kein Klassenwerte-Feld enthält, wird vom System festgelegt, dass alle Datensätze zu einer Klasse gehören.

Field
buffer_radius

Der Radius zur Abgrenzung einer Trainingsgebiet-Fläche in Point-Feature-Classes.

Double

Codebeispiel

ExportTrainingDataForDeepLearning – Beispiel 1 (Python-Fenster)

In diesem Beispiel werden Trainingsgebiete für Deep Learning erstellt.

from arcpy.ia import *

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

ExportTrainingDataForDeepLearning("c:/test/image.tif", "c:/test/outfolder",
                                 "c:/test/training.shp", "TIFF", "256", 
                                 "256", "128", "128", "NO", "KITTI_rectangles", 
                                 0, "Classvalue", 1)
ExportTrainingDataForDeepLearning – Beispiel 2 (eigenständiges Skript)

In diesem Beispiel werden Trainingsgebiete für Deep Learning erstellt.

# Import system modules and check out ArcGIS Image Analyst extension license
import arcpy
arcpy.CheckOutExtension("ImageAnalyst")
from arcpy.ia import *

# Set local variables
inRaster = "c:/test/image.tif"
out_folder = "c:/test/outfolder"
in_training = "c:/test/training.shp"
image_chip_format = "TIFF"
tile_size_x = "256"
tile_size_y = "256"
stride_x="128"
stride_y="128"
output_nofeature_tiles="NO"
metadata_format="KITTI_rectangles"
start_index = 0
classvalue_field = "Classvalue"
buffer_radius = "1"

# Execute 
ExportTrainingDataForDeepLearning(inRaster, out_folder, in_training, 
                                 image_chip_format,tile_size_x, tile_size_y, 
                                 stride_x, stride_y,output_nofeature_tiles, 
metadata_format,start_index, classvalue_field, buffer_radius)

Lizenzinformationen

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

Verwandte Themen