Die Daten herunterladen und analysieren

Zunächst laden Sie drei .zip-Dateien herunter. Sie enthalten Daten, die Sie im Lernprogramm zum Trainieren und Klassifizieren von Punktwolkendaten verwenden. Wenn Sie die Daten heruntergeladen und extrahiert haben, analysieren und symbolisieren Sie LAS-Dataset-Dateien in ArcGIS Pro.

Die Daten herunterladen

Alle zum Durchführen des Lernprogramms benötigten Daten sind in drei .zip-Dateien enthalten, die Sie jetzt herunterladen.

  1. Bevor Sie die Daten herunterladen, sollten Sie sich vergewissern, dass Sie die Deep-Learning-Bibliotheken installiert haben und dass Ihr Computer betriebsbereit ist.

    Hinweis:

    Die Verwendung der Deep-Learning-Werkzeuge in ArcGIS Pro setzt voraus, dass Sie die richtigen Deep-Learning-Bibliotheken auf Ihrem Computer installiert haben. Falls Sie diese Dateien nicht installiert haben, stellen Sie sicher, dass ArcGIS Pro geschlossen ist, und führen Sie die unter Auf Deep Learning in ArcGIS Pro vorbereiten beschriebenen Schritte aus. In diesen Anweisungen erfahren Sie neben weiteren nützlichen Tipps, wie Sie überprüfen können, ob Ihr Computer die Hardware- und Softwareanforderungen zum Ausführen von Deep-Learning-Workflows erfüllt. Anschließend können Sie mit diesem Lernprogramm fortfahren.

  2. Öffnen Sie auf dem Computer die Anwendung Explorer.
  3. Erstellen Sie auf Laufwerk C:\ einen Ordner mit dem Namen LearnArcGIS. Erstellen Sie im Ordner LearnArcGIS einen weiteren Ordner mit dem Namen DL.

    Im Ordner C:\LearnArcGIS\DL speichern Sie alle Daten und Ausgaben für das Lernprogramm.

  4. Laden Sie die folgenden .zip-Dateien herunter:
    • smalldata.zip: Enthält ein kleines Training-Dataset und die Trainingsgrenze, ein kleines Validierungs-Dataset und die Validierungsgrenze sowie ein DEM-Raster.
    • testdata.zip: Enthält ein Test-Dataset, die Verarbeitungsgrenze und ein DEM-Raster.
    • outputs.zip: Enthält die Trainingsergebnisse aus dem großen Dataset, die Sie verwenden können, anstatt das Modell für das große Dataset zu trainieren.
  5. Extrahieren Sie aus den heruntergeladenen Dateien alle .zip-Dateien in den Ordner LearnArcGIS/DL.
    Hinweis:

    Zum Extrahieren einer .zip klicken Sie mit der rechten Maustaste auf die Datei, wählen Sie Alle extrahieren aus, und navigieren Sie zum Ordner LearnArcGIS\DL.

    Entpackte Dateien

    Die Ordner enthalten verschiedene Informationen, die Sie zum Vorbereiten und Trainieren von Daten verwenden. Einige der wesentlichen Dateien im Ordner sind LAS-Dateien. Eine LAS-Datei ist ein Industriestandard-Binärformat zum Speichern von luftgestützten LIDAR-Daten. Mit einem LAS-Dataset können Sie LAS-Dateien rasch und bequem in ihrem nativen Format untersuchen und erhalten ausführliche statistische Angaben und Flächenbedeckung aus den LIDAR-Daten in den LAS-Dateien. Der Ergebnisordner enthält ein trainiertes Modell, in dem das große Dataset verwendet wird, das auf einem Computer mit einer 24-GB-GPU ausgeführt wurde. Im letzten Abschnitt dieses Lernprogramms verwenden Sie dieses trainierte Modell zum Klassifizieren eines LAS-Datasets.

    Als Nächstes betrachten Sie die heruntergeladenen Daten in ArcGIS Pro und machen sich mit ihnen vertraut.

Die Trainingsdaten und Validierungsdaten anzeigen

Sie erstellen ein ArcGIS Pro-Projekt und zeigen die kleinen Trainingsdaten- und Validierungsdatenmengen an.

  1. Starten Sie ArcGIS Pro.
  2. Melden Sie sich ggf. mit Ihrem ArcGIS-Organisationskonto an.
    Hinweis:

    Wenn Sie über keinen Zugriff auf ArcGIS Pro oder über kein ArcGIS-Organisationskonto verfügen, informieren Sie sich über die Optionen für den Zugriff auf die Software.

  3. Klicken Sie unter Neues Projekt auf Lokale Szene.

    Lokale Szene erstellen

  4. Geben Sie im Dialogfeld Neues Projekt für Name die Zeichenfolge Powerline Classification with DL ein. Klicken Sie für Speicherort auf Durchsuchen. Navigieren Sie zu C:\LearnArcGIS, klicken Sie auf den Ordner DL, und klicken Sie auf OK. Deaktivieren Sie die Option Einen Ordner für dieses lokale Projekt erstellen.

    Projektname und Speicherort

  5. Klicken Sie auf OK.
  6. Blenden Sie im Bereich Katalog die Option Ordner ein, und blenden Sie DL ein.
    Hinweis:

    Wenn der Bereich Katalog nicht geöffnet ist, klicken Sie im Menüband auf Ansicht und in der Gruppe Fenster auf Bereich "Katalog".

    Sie sehen die Datenordner, die Sie heruntergeladen und an diesem Speicherort extrahiert haben.

    Inhalt des Ordners "DL"

    Zunächst erkunden Sie die Dateien im Ordner smalldata und aktualisieren die Statistiken für das Dataset, um sicherzustellen, dass die richtigen Klassencodes angezeigt werden.

  7. Blenden Sie im Bereich Katalog den Ordner smalldata ein. Klicken Sie mit der rechten Maustaste auf train_small.lasd, und wählen Sie Eigenschaften aus.

    Option "Eigenschaften"

  8. Klicken Sie im Fenster Eigenschaften: LAS-Dataset auf die Registerkarte Statistiken.

    Statistiken für das LAS-Dataset

    Das Dataset enthält mehrere Klassencodes:

    • 1 – Nicht zugewiesen stellt nicht klassifizierte Punkte dar, zumeist niedrige Vegetation oder Objekte, die sich zwar über dem Boden befinden, aber niedriger als hohe Vegetation und Gebäude sind.
    • 2 – Boden stellt den Boden dar.
    • 5 – Hohe Vegetation stellt hohe Vegetation dar, beispielsweise Bäume.
    • 6 – Gebäude stellt Gebäude und andere Strukturen dar.
    • 7 – Rauschen stellt Tiefpunkte dar.
    • 14 – Drahtleiter stellt die eigentlichen Stromleitungen dar.
    • 15 – Strommast stellt Strommasten dar.

    Für Sie ist der Klassencode 14 Draht – Leiter relevant. Ihr Ziel ist es, ein Modell zu trainieren, mit dem LIDAR-Punkte erkannt werden können, bei denen es sich um Stromleitungen handelt. Auf diese Weise können Sie die Waldbrandgefahr bewerten, die von Stromleitungen in der Nähe von Bäumen ausgeht.

    Aus einer Meldung unten im Fenster geht hervor, dass für eine Datei veraltete oder keine Statistiken vorliegen. Sie beheben dieses Problem jetzt, damit Sie die richtigen Klassencodes in der Szene anzeigen können.

  9. Klicken Sie auf Update.

    Schaltfläche "Aktualisieren"

    Daraufhin wird eine Meldung angezeigt. Darin wird bestätigt, dass die Statistiken auf dem neuesten Stand sind.

    Statistiken sind auf dem neuesten Stand.

    Da die Statistiken jetzt aktuell sind, können Sie den Layer gemäß den Klassencodes stylen.

  10. Klicken Sie auf OK.
  11. Klicken Sie im Bereich Katalog mit der rechten Maustaste auf train_small.lasd, und wählen Sie Zu aktueller Karte hinzufügen.

    Option "Zu aktueller Karte hinzufügen"

    Der LAS-Dataset-Layer wird in der Szene angezeigt.

    Nachdem Sie die Statistiken für die LAS-Datei mit dem kleinen Dataset aktualisiert haben, aktualisieren Sie auch die Statistiken für das LAS-Dataset val_small.lasd, das zum Validieren des Modells verwendet werden soll.

  12. Öffnen Sie im Bereich Katalog die Eigenschaften für val_small.lasd, aktualisieren Sie die Statistiken, und klicken Sie auf OK. Fügen Sie val_small.lasd der aktuellen Karte hinzu.
  13. Halten Sie in der Szene die Taste V oder C gedrückt, während Sie den Mauszeiger ziehen, um die Szene zu neigen und zu schwenken und die Datasets in 3D zu erkunden.

    Szene mit hinzugefügter kleiner Datenmenge

    Sie verwenden train_small.lasd zum Trainieren des Modells und val_small.lasd zum Validieren des trainierten Modells, um eine Überanpassung während des Trainingsprozesses zu vermeiden.

    Als Nächstes aktualisieren Sie die Symbolisierung für jeden der LAS-Dataset-Layer so, dass je nach Klassencode unterschiedliche Farben angezeigt werden. Sie beginnen mit dem Layer train_small.lasd.

  14. Klicken Sie im Bereich Inhalt auf den Layer train_small.lasd, um ihn auszuwählen. Klicken Sie auf dem Menüband auf die Registerkarte LAS-Dataset-Layer.

    Registerkarte "LAS-Dataset-Layer"

  15. Klicken Sie auf der Registerkarte LAS-Dataset-Layer in der Gruppe Darstellung auf das Dropdown-Menü für Symbolisierung, und wählen Sie Klasse aus.

    Option "Klasse"

    Daraufhin wird der Bereich Symbolisierung angezeigt, und der Layer train_small.lasd wird nach Klassencodes symbolisiert.

    Klassencodes

    Hinweis:

    Wenn das LAS-Dataset weiße Flächen enthält, kann dies ein Hinweis auf ein Caching-Problem sein. Sie können das Problem beheben, indem Sie zu den Eigenschaften des LAS-Datasets wechseln, Cache auswählen und auf Cache löschen klicken. Alternativ können Sie das Problem automatisch beheben lassen, indem Sie ArcGIS Pro schließen und wieder öffnen.

  16. Klicken Sie im Bereich Inhalt auf val_small.lasd. Klicken Sie auf der Registerkarte LAS-Dataset-Layer auf das Dropdown-Menü für Symbolisierung, und wählen Sie Klasse aus.

    Mit Klassen symbolisierte kleine Datasets

    Der Layer val_small.lasd ist jetzt nach Klassencodes symbolisiert.

    Hinweis:

    LAS-Datasets können umfangreich sein, sodass sich die Anzeige im Vergleich zu anderen Layern verzögert. Zum Beschleunigen der Anzeige können Sie mit dem Werkzeug LAS-Dataset-Pyramide erstellen Pyramiden erstellen. Dieses Werkzeug erstellt oder aktualisiert einen LAS-Dataset-Anzeige-Cache, mit dem die Rendering-Performance optimiert wird.

  17. Klicken Sie über dem Menüband auf der Symbolleiste für den Schnellzugriff auf Speichern, um das Projekt zu speichern.

    Schaltfläche "Speichern"

Als Nächstes trainieren Sie ein Modell mithilfe der beiden Datasets, die Sie erkundet haben.


Ein Modell mithilfe eines kleinen Datasets trainieren

In diesem Modul verwenden Sie die kleinen Datasets, um den Prozess für das Trainieren eines Klassifizierungsmodells durchzuarbeiten. Da dieses Dataset nicht so viele Punkte enthält, wie zum Trainieren eines genaueren Klassifizierungsmodells notwendig sind, ergibt sich damit wahrscheinlich ein weniger genaues Modell. In diesem Abschnitt wird der Prozess für das Trainieren eines Modells gezeigt. Im weiteren Verlauf des Moduls verwenden Sie ein trainiertes Modell aus einer größeren Punktstichprobe, um ein LAS-Dataset zu klassifizieren und die Stromleitungen zu visualisieren.

Das Trainings-Dataset vorbereiten

LAS-Datasets können nicht direkt zum Trainieren des Modells verwendet werden. Die LAS-Datasets müssen in kleinere Trainingsblöcke konvertiert werden. Sie verwenden das Geoverarbeitungswerkzeug Punktwolken-Trainingsdaten vorbereiten in ArcGIS Pro, um die LAS-Dateien in Blöcke zu exportieren.

Ihr Ziel besteht darin, das Modell für das Identifizieren und Klassifizieren von Punkten, die Stromleitungen darstellen, zu trainieren. Dabei müssen nicht alle Punkte in der LAS-Datenwolke überprüft werden. Nur die Punkte in der Umgebung von Stromleitungen müssen überprüft werden. Sie verwenden vorbereitete Grenzdaten, bnd_train_small und bnd_val_small, um anzugeben, welche Punkte in Trainingsblöcke konvertiert werden sollen. Die nachstehende Abbildung zeigt die Trainings- und Validierungsgrenzen um Stromleitungen.

Abbildung der Grenzen

  1. Klicken Sie im Menüband auf die Registerkarte Analyse. Klicken Sie in der Gruppe Geoverarbeitung auf Werkzeuge.

    Schaltfläche "Werkzeuge"

    Daraufhin wird der Bereich Geoverarbeitung angezeigt.

  2. Suchen Sie im Bereich Geoverarbeitung nach dem Werkzeug Punktwolken-Trainingsdaten vorbereiten, und öffnen Sie es.

    Werkzeug "Punktwolken-Trainingsdaten vorbereiten"

    Hinweis:
    Für dieses Werkzeug ist die ArcGIS 3D Analyst extension erforderlich.

  3. Legen Sie im Werkzeug Punktwolken-Trainingsdaten vorbereiten die folgenden Parameter fest:
    • Wählen Sie für Eingabe-Punktwolke die Option train_small.lasd aus.
    • Klicken Sie für Trainings-Grenz-Features auf Durchsuchen, navigieren Sie zu C:\LearnArcGIS\DL\smalldata\boundaries.gdb, wählen Sie bnd_train_small aus, und klicken Sie auf OK.
    • Wählen Sie für Validierungspunktwolke die Option val_small.lasd aus.
    • Klicken Sie für Validierungs-Grenz-Features auf Durchsuchen, navigieren Sie zu C:\LearnArcGIS\DL\smalldata\boundaries.gdb, wählen Sie bnd_val_small aus, und klicken Sie auf OK.
    • Klicken Sie für Bezugsfläche auf Durchsuchen, und navigieren Sie zu C:\LearnArcGIS\DL\smalldata. Klicken Sie auf dem_small.tif und dann auf OK.

    Mit dem DEM-Raster wird die relative Höhe der Punkte vom Boden berechnet. Sie haben alle Trainingsdaten, Validierungsdaten und Verarbeitungsgrenzen eingegeben.

    Werkzeugparameter

    Als Nächstes geben Sie an, welche Klassencodes ausgeschlossen werden.

  4. Geben Sie für Ausgeschlossene Klassencodes den Wert 2 ein. Klicken Sie auf die Schaltfläche Weitere hinzufügen, und geben Sie 7 ein.

    Codes 2 und 7 ausgeschlossen

    Bodenpunkte (Klasse 2) und Punkte mit Rauschen (Klasse 7) werden aus den Trainingsdaten ausgeschlossen. Bodenpunkte machen in der Regel einen großen Teil aller Punkte aus, weshalb das Training durch den Ausschluss von Bodenpunkten beschleunigt wird.

  5. Lassen Sie die Option Blöcke nach Klassencode filtern leer.
  6. Klicken Sie für Ausgabe-Trainingsdaten auf Durchsuchen, und navigieren Sie zu C:\LearnArcGIS\DL\results. Geben Sie für Name die Zeichenfolge training_data_small.pctd ein.

    Name für Ausgabe-Trainingsdaten

    Hinweis:

    Die Erweiterung der Ausgabedatei (.pctd) steht für "Point Cloud Training Data" (Punktwolken-Trainingsdaten).

  7. Klicken Sie auf Speichern.
  8. Fahren Sie im Werkzeug Punktwolken-Trainingsdaten vorbereiten fort, und geben Sie die folgenden Parameter ein:
    • Geben Sie für Blockgröße den Wert 82 ein. Klicken Sie für Unbekannt auf das Dropdown-Menü, und wählen Sie Fuß (US Survey) aus.
    • Behalten Sie für Blockpunktgrenze den Standardwert 8192 bei.

    Übrige Parameter

    Mit Blockgröße und Blockpunktgrenze steuern Sie, wie viele Punkte in einem Block enthalten sind. Um diesen Wert zu bestimmen, müssen Sie beim Festlegen dieser beiden Parameter den durchschnittlichen Punktabstand, die relevanten Objekte, den verfügbaren GPU-Speicher und die Batch-Größe berücksichtigen. Als allgemeine Regel gilt, dass die Blockgröße ausreichen muss, um die relevanten Objekte mit dem geringsten Subsampling zu erfassen.

    Sie beginnen mit einer Blockgröße von 82 Fuß (ca. 25 Meter) und einer Blockpunktgrenze von 8.192. 82 Fuß ist eine geeignete Blockgröße zum Erfassen der Geometrie der Stromleitung. Sie untersuchen die Ausgabe, um herauszufinden, ob 8.192 eine geeignete Blockpunktgrenze ist. Wenn die meisten Blöcke mehr als 8.192 Punkte enthalten, müssen Sie die Blockpunktgrenze vergrößern, um das Subsampling zu reduzieren.

    Hinweis:

    Für die große Datenmenge wird empfohlen, vor der Ausführung des Werkzeugs Punktwolken-Trainingsdaten vorbereiten mit dem Werkzeug LAS-Punkt-Statistiken als Raster das Histogramm zu generieren, um die richtige Blockgröße und die richtige Blockpunktgrenze zu ermitteln. Um das Werkzeug zu verwenden, wählen Sie Punktanzahl als Methode und Zellengröße als Abtasttyp aus und probieren verschiedene Werte für Blockgröße aus.

  9. Klicken Sie auf Ausführen.

    Wenn die Ausführung des Werkzeugs abgeschlossen ist, wird unten im Werkzeugbereich eine Bestätigungsmeldung angezeigt.

  10. Klicken Sie auf Details anzeigen.

    Auf der Registerkarte Meldungen sehen Sie zwei Histogramme zur Blockpunktanzahl, eines für die Trainingsdaten und eines für die Validierungsdaten.

    Histogramme

    Aus den beiden Histogrammen geht hervor, dass alle Blöcke eine Punktanzahl von weniger als 8.000 aufweisen. Damit ist bestätigt, dass eine Blockgröße von 82 Fuß und die standardmäßige Blockpunktgrenze von 8.192 für diese Datasets geeignet sind.

  11. Schließen Sie das Fenster Punktwolken-Trainingsdaten vorbereiten.
  12. Öffnen Sie in Windows die Anwendung Explorer, und navigieren Sie zu C:\LearnArcGIS\DL\results. Der Ordner results enthält jetzt einen Ordner mit dem Namen training_data_small.pctd.

    Ausgabe der Vorbereitung der kleinen Datenmenge

  13. Doppelklicken Sie auf training_data_small.pctd, um den Ordner zu öffnen.

    Ausgabeordner

    Die Ausgabedatei enthält zwei Unterordner, train und val, in denen sich die exportierten Trainings- bzw. Validierungsdaten befinden.

  14. Öffnen Sie die einzelnen Ordner, um ihren Inhalt zu überprüfen.

    In jedem Ordner sehen Sie die Dateien Statistics.json, ListTable.h5, BlockPointCountHistogram.png und den Ordner 0, der die Datei Data_x.h5 enthält.

    Inhalt der Ordner "train" und "val"

    Die Dateien ListTable.h5 und Data_x.h5 enthalten die Informationen zu Punkten (XYZ und Attribute wie Rückgabenummer, Intensität usw.), die in Blöcken angeordnet sind.

    Nachdem Sie die Trainingsdaten vorbereitet haben, können Sie jetzt die Blöcke verwenden, um ein Klassifizierungsmodell mit Deep Learning zu trainieren.

Ein Klassifizierungsmodell trainieren

Als Nächstes trainieren Sie mithilfe des Geoverarbeitungswerkzeugs Punktwolken-Klassifizierungsmodell trainieren ein Modell für die Klassifizierung von Stromleitungen und verwenden dazu das kleine Trainings-Dataset. Die Ergebnisse können bei mehreren Ausführungen des Werkzeugs und verschiedenen Computerkonfigurationen unterschiedlich ausfallen.

  1. Klicken Sie in ArcGIS Pro im Bereich Geoverarbeitung auf die Schaltfläche "Zurück". Suchen Sie nach dem Werkzeug Punktwolken-Klassifizierungsmodell trainieren, und öffnen Sie es.

    Werkzeug "Punktwolken-Klassifizierungsmodell trainieren"

  2. Legen Sie im Werkzeug Punktwolken-Klassifizierungsmodell trainieren die folgenden Parameter fest:
    • Klicken Sie für Eingabe-Trainingsdaten auf Durchsuchen. Navigieren Sie zu C:\LearnArcGIS\DL\results, und doppelklicken Sie auf training_data_small.pctd.
    • Lassen Sie Vortrainiertes Modell leer.
    • Behalten Sie für Modellarchitektur den Standardwert RandLA-Net bei.
      Hinweis:

      Sie verwenden zum Trainieren des Klassifizierungsmodells die Architektur RandLA-Net. RandLA-Net nutzt zufällige Stichproben, um die Speicherauslastung und den Rechenaufwand zu senken. Weiterhin wird lokale Feature-Aggregation eingesetzt, um nützliche Features aus einer breiteren Nachbarschaft beizubehalten.

    • Aktivieren Sie unter Attributauswahl die Kontrollkästchen Intensität und Relative Höhe.
    Hinweis:

    Die Intensität von Stromleitungen ist im Vergleich zu anderen Features niedriger und eignet sich daher gut als Attribut für die Unterscheidung von Stromleitungen. Die relative Höhe von Stromleitungen liegt i. d. R. in einem bestimmten Bereich und eignet sich daher ebenfalls, um Stromleitungen von anderen Features zu unterscheiden.

    • Navigieren Sie für Speicherort des Ausgabemodells zum Ordner results. Klicken Sie darauf und danach auf OK.
    • Geben Sie für Name des Ausgabemodells die Zeichenfolge Powerline_classification_model_small_data ein.
    • Geben Sie für Minimale Anzahl an Punkten pro Block den Wert 1000 ein.

    Wenn Sie Minimale Anzahl an Punkten pro Block beim Training auf 1.000 festlegen, werden Blöcke mit weniger als 1.000 Punkten übersprungen. Blöcke mit einer geringeren Anzahl von Punkten befinden sich wahrscheinlich an den Grenzen, an denen sich keine Stromleitungspunkte befinden. Durch Überspringen dieser Blöcke beim Training wird das Training beschleunigt, und das Modell lernt effizienter. Dieser Parameter wird nur auf die Trainingsdatenblöcke angewendet nicht auf die Validierungsdatenblöcke.

    Parameter für "Punktwolken-Klassifizierungsmodell trainieren"

  3. Blenden Sie Klassen verwalten ein.
  4. Wählen Sie unter Klassenneuzuordnung für Aktuelle Klasse die Option 14 aus. Wählen Sie für Neu zugeordnete Klasse die Option 14 aus.

    Klasse 14 stellt die Drahtleiter dar, die Sie klassifizieren und in der Punktwolke suchen möchten.

  5. Wählen Sie in der nächsten Zeile für Aktuelle Klasse die Option ANDERE und für Neu zugeordnete Klasse die Option 1 aus.

    Klassenneuzuordnung

    Wenn Sie die Klassenneuzuordnung angeben, bleibt der Klassifizierungscode 14 unverändert, das heißt, Punkte im LAS-Dataset, die bereits als Stromleitungen klassifiziert sind, bleiben Stromleitungen. Alle anderen Klassencodes (1, 5 und 15) werden dem Klassencode 1 neu zugeordnet. Die sich ergebenden Trainingsdaten haben nur zwei Klassen, 1 und 14, sodass die Stromleitungen in der Szene leichter zu unterscheiden sind.

  6. Übernehmen Sie für Klassenbeschreibung die ausgefüllten Klassencodes und Beschreibungen.

    Klassenbeschreibungen

  7. Blenden Sie Trainingsparameter ein. Übernehmen Sie für Kriterien für die Modellauswahl die Standardeinstellung Recall.

    Parameter für "Kriterien für die Modellauswahl"

    Kriterien für die Modellauswahl gibt die statistische Grundlage für die Bestimmung des endgültigen Modells an. Mit der Standardeinstellung Recall wird das Modell ausgewählt, das für alle Klassencodes den besten Makrodurchschnitt des Recalls aufweist. Der Recall-Wert der einzelnen Klassencodes bestimmt sich aus dem Verhältnis der korrekt klassifizierten Punkte (True Positives) zur Gesamtzahl der Punkte, die mit diesem Wert klassifiziert werden sollten (erwartete Positives). Der Recall-Wert der einzelnen Klassen entspricht dem Verhältnis der richtig vorhergesagten Punkte der jeweiligen Klasse zu allen Referenzpunkten dieser Klasse in den Validierungsdaten. So entspricht zum Beispiel der Recall-Wert von Klassencode 14 dem Verhältnis der richtig vorhergesagten Stromleitungspunkte zu allen Referenzpunkten für Stromleitungen in den Validierungsdaten.

  8. Geben Sie für Maximale Anzahl an Epochen den Wert 10 ein.

    Eine Epoche ist der vollständige Zyklus der gesamten vom neuronalen Netzwerk gelernten Trainingsdaten. (Mit anderen Worten: Die gesamten Trainingsdaten werden einmal vorwärts und einmal rückwärts durch das neuronale Netz geleitet.) Sie trainieren das Modell für 10 Epochen, um Zeit zu sparen.

  9. Übernehmen Sie für Iterationen pro Epoche (%) den Standardwert 100.

    Durch Beibehalten des Wertes 100 für den Parameter Iterationen pro Epoche (%) stellen Sie sicher, dass alle Trainingsdaten pro Epoche weitergeleitet werden.

    Hinweis:

    Sie können wahlweise auch in jeder Epoche einen Prozentsatz der Trainingsdaten weiterleiten. Legen Sie diesen Parameter auf einen anderen Wert als 100 fest, wenn Sie durch zufällige Auswahl von weniger Batches die Ausführung für die einzelnen Epochen beschleunigen möchten. Dies kann jedoch zu mehr Epochen führen, bevor das Modell konvergiert. Dieser Parameter ist nützlich, wenn Sie schnell die Kennwerte des Modells im Meldungsfenster des Werkzeugs sehen möchten.

  10. Behalten Sie für Lernratenstrategie den Standardwert 1-Zyklus-Lernrate bei.
  11. Geben Sie für Lernrate den Wert 0,005 ein.
    Hinweis:

    Sie können den Parameter Lernrate auch leer lassen, sodass die optimale Lernrate vom Werkzeug ermittelt wird.

  12. Geben Sie für Batch-Größe den Wert 6 ein.

    Batch-Größe gibt an, wie viele Blöcke gleichzeitig verarbeitet werden. Die Trainingsdaten werden in Batches aufgeteilt. Wenn der Wert für Batch-Größe beispielsweise auf 20 festgelegt ist, werden 1.000 Blöcke in 50 Batches aufgeteilt, die jeweils in einer Epoche verarbeitet werden. Durch die Aufteilung der Blöcke in Batches wird für den Prozess weniger GPU-Speicher verwendet.

    Hinweis:

    Bei Verwendung einer 8-GB-Grafikkarte wird eine Batch-Größe von 20 empfohlen. Wenn der CUDA-Fehler "Nicht genügend Arbeitsspeicher" auftritt, sollten Sie eine kleinere Batch-Größe verwenden.

  13. Deaktivieren Sie die Option Training beenden, wenn sich das Modell nicht mehr verbessert.

    Wenn Sie diese Option deaktivieren, kann das Training für 10 Epochen ausgeführt werden. Wenn die Option aktiviert ist, wird das Training beendet, wenn sich das Modell nach mehreren Epochen nicht mehr verbessert, und zwar unabhängig von der angegebenen Anzahl der Epochen.

    Trainingsparameter

  14. Klicken Sie auf Ausführen.
    Hinweis:

    Abhängig von Ihrem System kann die Ausführung dieses Werkzeugs unterschiedlich lange dauern. Bei Verwendung der NVIDIA Quadro RTX 4000 als GPU mit 8 GB dediziertem Speicher beansprucht die Ausführung des Werkzeugs ungefähr 20 Minuten. Während der Ausführung des Werkzeugs können Sie den Fortschritt überwachen.

  15. Klicken Sie am unteren Rand des Bereichs Geoverarbeitung auf Details anzeigen.

    Details anzeigen

    Das Fenster Punktwolken-Klassifizierungsmodell trainieren (3D Analyst Tools) wird mit der Registerkarte Parameter angezeigt, auf der die für die Ausführung des Werkzeugs verwendeten Parameter angezeigt werden.

  16. Klicken Sie auf die Registerkarte Meldungen.

    Registerkarte "Meldungen"

    Hinweis:

    Die Geoverarbeitungsmeldungen werden während der Ausführung des Werkzeugs gefüllt. Nach Abschluss des Werkzeugs werden in den Geoverarbeitungsmeldungen die Ergebnisse für jede Epoche angezeigt.

    Fenster "Meldungen"

    Hinweis:

    Die Informationen in den Meldungen können je nach GPU und Systemkonfiguration vom gezeigten Beispiel abweichen.

    Das Werkzeug meldet die folgenden Informationen:

    • Die für das Training verwendete GPU
    • Die Anzahl der beim Training verwendeten Trainingsdatenblöcke (Beim Training werden nur Trainingsdatenblöcke mit mehr als 1.000 Punkten verwendet.)
    • Die Anzahl der bei der Validierung verwendeten Validierungsdatenblöcke. Bei der Validierung werden alle Validierungsdatenblöcke verwendet.
    • Die Iterationen pro Epoche, das heißt die Anzahl der Trainingsdatenblöcke geteilt durch die Batch-Größe

    Das Werkzeug meldet Trainingsverlust, Validierungsverlust, Accuracy, Precision, Recall, F-Maß und Zeit für jede Epoche.

    Mit dem Voranschreiten jeder Epoche können Sie sehen, wie die Werte für Trainings- und Validierungsverlust abnehmen. Das bedeutet, dass das Modell lernt.

    Nach 10 Epochen liegt der höchste Recall-Wert über 0,98.

    Trainingsstatistiken

    Das Modell ist nicht genau. Dies war zu erwarten, da das Modell mit einem kleinen Dataset trainiert wurde. Diese Ergebnisse verdeutlichen die Notwendigkeit, mehr Stichprobenpunkte in separaten Datasets zu verwenden, um bessere Ergebnisse zu erzielen.

  17. Schließen Sie das Fenster Punktwolken-Klassifizierungsmodell trainieren.

Die Trainingsausgaben untersuchen

Als Nächstes betrachten Sie die Ergebnisse des Trainings des Klassifizierungsmodells.

  1. Navigieren Sie in Explorer zu C:\LearnArcGIS\DL\results.

    Die Trainings- und Validierungs-Datasets enthalten je zwei Unterordner. Der eine Ordner ist der Modellordner und der andere der Ordner für Kontrollpunkte.

  2. Blenden Sie den Ordner Powerline_classification_model_small_data und dann den Ordner Model Characteristics ein.

    Der Ordner Powerline_classification_model_small_data enthält das bei Epoche 9 gespeicherte Modell. Der Modellordner enthält verschiedene Dateien. Darunter befindet sich die .pth-Datei, bei der es sich um die Modelldatei handelt, sowie die .emd-Datei, welche die Esri Modelldefinitionsdatei (eine Konfigurationsdatei im JSON-Format) ist. Die Datei model_metrics.htm enthält ein Diagramm des Lernverlusts. Die .dlpk-Datei ist das Deep-Learning-Modellpaket. Es handelt sich um eine komprimierte Datei, die in ArcGIS Online freigegeben werden kann.

    Der Ordner Model Characteristics enthält ein Verlustdiagramm und ein Diagramm der Überprüfungsdaten und Vorhersageergebnisse.

  3. Wechseln Sie zurück zum Ordner results. Öffnen Sie den Ordner Powerline_classification_model_small_data.checkpoints, und zeigen Sie seinen Inhalt an.

    Der Ordner Powerline_classification_model_small_data.checkpoints enthält den Ordner models, in dem sich Modelle für die einzelnen Epochenkontrollpunkte und zwei .csv-Dateien befinden. Bei der Ausführung des Trainingswerkzeugs wurde nach jeder Epoche ein Kontrollpunkt erstellt. Jeder Kontrollpunkt enthält eine .pth-Datei und eine .emd-Datei.

  4. Öffnen Sie im Ordner Powerline_classification_model_small_data.checkpoints die Microsoft Excel-Datei Powerline_classification_model_small_data_Epoch_Statistics, um die Statistiken anzuzeigen.

    Die CSV-Datei wird in Excel geöffnet.

    Tabelle der Epochenstatistiken

    Hinweis:

    Wenn das Microsoft Excel-Fenster mit der Frage angezeigt wird, ob große Zahlen in wissenschaftlicher Schreibweise angezeigt werden sollen, klicken Sie auf Konvertieren.

    Es handelt sich um dieselbe Tabelle, die Ihnen in der Werkzeugmeldung angezeigt wurde.

    Die Datei Powerline_classification_model_small_data_Statistics enthält die Precision-, Recall- und F-Maß-Werte für die einzelnen Klassen nach jeder Epoche. In bestimmten Fällen ist möglicherweise das Modell mit den insgesamt besten Kennwerten nicht das Modell mit der besten Leistung beim Klassifizieren eines bestimmten Klassencodes. Wenn Sie nur bestimmte Klassencodes klassifizieren möchten, können Sie das Kontrollpunktmodell mit den besten Kennwerten für den entsprechenden Klassencode verwenden. Wenn Sie die Statistiken in Excel anzeigen, können Sie die Spalten sortieren und leicht die Epoche mit dem höchsten Recall-Wert finden. Sie haben ein Modell mit einer kleineren Punktstichprobe trainiert. Als Nächstes verwenden Sie ein mit einer größeren Punktstichprobe trainiertes Modell, um ein LAS-Dataset zu klassifizieren.


Ein LAS-Dataset mithilfe des trainierten Modells klassifizieren

Sie klassifizieren das LAS-Dataset, das mehr als 3 Millionen Punkte enthält, mithilfe eines trainierten Modells. Durch Klassifizieren des LAS-Datasets mithilfe eines trainierten Modells können Sie Stromleitungen im Untersuchungsgebiet finden, um eine Risikobewertung und -analyse durchzuführen. Beim Trainieren des Modells wurden zwei Klassifizierungscodes zugewiesen, Nicht zugewiesen und Drahtleiter. Das Klassifizieren der Punkte in der Punktwolke als Drahtleiter und des Restes als nicht zugewiesen erhöht den Nutzen des Datasets, da Stromleitungen eindeutig identifiziert werden.

Modellergebnisse auswerten und die beste Epoche auswählen

Sie werten die Ergebnisse eines bereitgestellten Modelltrainings aus, bei dem das große Dataset verwendet wurde. Sie suchen nach dem besten Recall-Wert für Drahtleiter.

  1. Öffnen Sie Explorer, und navigieren Sie zu C:\LearnArcGIS\DL\results.

    Die Ordner enthalten Trainingsergebnisse für eine große Datenmenge unter Verwendung eines Computers mit 24 GB dediziertem GPU-Speicher.

  2. Öffnen Sie den Ordner Powerline_classification_model_large_data.checkpoints, und doppelklicken Sie auf Powerline_classification_model_large_data_Statistics, um die Statistik in Excel anzuzeigen.

    Die Datei wird in Excel geöffnet.

  3. Doppelklicken Sie in Excel auf die Spaltentrennlinien, um die Spalten zu erweitern, damit Sie den gesamten Text sehen.

    Spalten erweitern

    Sie sortieren die Spalte Recall, suchen den größten Wert für Drahtleiter und verwenden diese Epoche zum Klassifizieren des LAS-Datasets. Der größte Recall-Wert für Drahtleiter bedeutet, dass Sie diese Epoche für die Klassifizierung verwenden sollten.

  4. Klicken Sie auf den Kopf der Spalte Recall, um die gesamte Spalte zu markieren.

    Ausgewählte Spalte "Recall"

  5. Klicken Sie auf dem Menüband im Abschnitt Bearbeiten auf Sortieren und Filtern, und wählen Sie Nach Größe sortieren (absteigend) aus.

    Option "Nach Größe sortieren (absteigend)"

  6. Klicken Sie im angezeigten Fenster Sortierwarnung auf Sortieren.

    Die Zeilen in der Tabelle werden so sortiert, dass der höchste Wert für Drahtleiter angezeigt wird.

  7. Suchen Sie die erste Spalte mit dem CLASS_CODE-Wert 14 und der CLASS_Description mit der Beschreibung Drahtleiter (Zeile 23).

    Dies ist mit 0,993655113 der höchste Recall-Wert für Drahtleiter, und er trat in EPOCH 18 auf.

    Höchster Recall-Wert für "Drahtleiter"

    Sie verwenden beim Klassifizieren des LAS-Datasets die Epoche bzw. den Kontrollpunkt 18, da damit der höchste Recall-Wert für den Stromleitungs-Klassencode verbunden ist und Sie die besten Ergebnisse erhalten.

Stromleitungen mithilfe des trainierten Modells klassifizieren

Als Nächstes verwenden Sie ein trainiertes Modell, um die Stromleitungen aus einem Test-Dataset zu klassifizieren. Sie wenden Verarbeitungsgrenzen an, um nur Punkte innerhalb der Grenzen zu klassifizieren.

  1. Stellen Sie ArcGIS Pro wieder her.
  2. Blenden Sie im Bereich Katalog die Option Ordner ein, blenden Sie DL ein, und blenden Sie testdata ein. Öffnen Sie die Eigenschaften für test.lasd, und aktualisieren Sie die Statistiken. Klicken Sie auf OK.
  3. Klicken Sie mit der rechten Maustaste auf test.lasd, wählen Sie Hinzufügen zu neuer aus, und wählen Sie Lokale Szene aus.

    Layer zu einer lokalen Szene hinzufügen

    Das LAS-Dataset test.lasd wird in einer lokalen Szene angezeigt.

    Test-LAS-Dataset in Szene

  4. Klicken Sie im Bereich Inhalt auf test.lasd, um den Eintrag auszuwählen. Klicken Sie auf dem Menüband auf die Registerkarte LAS-Dataset-Layer, klicken Sie auf den Dropdown-Pfeil für Symbolisierung, und wählen Sie Klasse aus.

    Das LAS-Dataset test.lasd wird jetzt mit Klassencodes gerendert.

    Grau angezeigter Klassencode "Nicht zugewiesen"

    Bodenpunkte (Klasse 2) und Punkte mit niedrigem Rauschen (Klasse 7) sind bereits klassifiziert. Die übrigen Punkte sind nicht zugewiesen (Klasse 1).

  5. Suchen Sie im Bereich Geoverarbeitung nach dem Werkzeug Punktwolke mithilfe des trainierten Modells klassifizieren, und öffnen Sie es.
  6. Klicken Sie für Zielpunktwolke auf das Dropdown-Menü, und wählen Sie test.lasd aus.
  7. Klicken Sie für Definition des Eingabemodells auf Durchsuchen. Navigieren Sie zum Ordner C:\LearnArcGIS\DL\results\Powerline_classification_model_large_data.checkpoints\models\checkpoint_2023-03-28_18-21-34_epoch_18, und öffnen Sie ihn. Klicken Sie auf checkpoint_2023-03-28_18-21-34_epoch_18.emd, und klicken Sie auf OK.
    Hinweis:

    Für Definition des Eingabemodells können Sie eine .emd-Datei, eine .dlpk-Datei oder die URL des in ArcGIS Online oder ArcGIS Living Atlas of the World freigegebenen Modells auswählen.

    Nachdem Sie eine Modelldefinitionsdatei ausgewählt haben, wird der Parameter Zielklassifizierung angezeigt.

    Zielklassifizierung

    Lassen Sie die Batch-Größe leer, und lassen Sie vom Werkzeug basierend auf dem verfügbaren GPU-Speicher eine optimale Batch-Größe berechnen.

  8. Navigieren Sie für Verarbeitungsbegrenzung zu C:\LearnArcGIS\DL\testdata\boundaries.gdb, und doppelklicken Sie auf bnd_test.

    Wenn Sie eine Verarbeitungsbegrenzung auswählen, verwendet das Werkzeug das von Ihnen angegebene trainierte Modell, um nur die Punkte innerhalb der Begrenzung zu klassifizieren.

  9. Klicken Sie für Bezugsfläche auf die Schaltfläche Durchsuchen, und navigieren Sie zu C:\LearnArcGIS\DL\testdata. Klicken Sie auf dem_test.tif und dann auf OK.
    Hinweis:

    Da das Modell "Power Line Classification" mit Grenzen, einer Bezugsfläche und unter Ausschluss bestimmter Klassencodes trainiert wurde, sollten dieselben Parameter auch für das Werkzeug Punktwolke mithilfe des trainierten Modells klassifizieren festgelegt werden.

  10. Fügen Sie für Ausgeschlossene Klassencodes die Werte 2 und 7 hinzu.

    Die Klassencodes 2 und 7 sind von der Klassifizierung ausgeschlossen. Das Modell klassifiziert nur die übrigen Punkte (Klasse 1). Bei der Ausführung des Modells werden die Punkte als Stromleitungen vorhergesagt, und ihnen wird der Klassencode 14 zugewiesen. Andernfalls wird der Klassencode 1 beibehalten.

    Parameter für "Punktwolke mithilfe des trainierten Modells klassifizieren"

  11. Klicken Sie auf Ausführen.

    Das Werkzeug wird ausgeführt. Als Nächstes aktualisieren Sie die Symbolisierung so, dass die Ergebnisse des Klassifizierungsmodells angezeigt werden.

  12. Klicken Sie im Bereich Symbolisierung neben Wert auf Mehr und dann auf Alle Werte hinzufügen.

    Option "Alle Werte hinzufügen"

    Die Symbolisierung wird aktualisiert, und die Punkte in der Punktwolke, bei denen es sich um Drahtleiter handelt, werden in Gelb angezeigt.

  13. Verwenden Sie die Navigationswerkzeuge und Tastenkürzel, um die Klassifizierungsergebnisse in der lokalen Szene zu untersuchen.

    Szene mit klassifizierten Stromleitungen

    Mit dem trainierten Modell haben Sie richtige Klassifizierungsergebnisse erhalten. Nahezu alle Stromleitungspunkte sind richtig klassifiziert. Beachten Sie, dass die Strommasten noch als "Nicht zugewiesen" klassifiziert sind.

In diesem Lernprogramm haben Sie den Workflow für die Klassifizierung von Punktwolken mithilfe von Deep-Learning-Technologie kennengelernt. Sie haben Erfahrungen mit Deep-Learning-Konzepten, der Bedeutung von Validierungsdaten für den Trainingsprozess und dem Bewerten der Qualität der trainierten Modelle gesammelt. Sie können auch das Werkzeug Stromleitungen aus Punktwolke extrahieren verwenden, um 3D-Linien zum Modellieren der Stromleitungen zu generieren. Sie könnten mit dem Werkzeug Abstandsfläche generieren auch die Abstandszone um die Stromleitungen bestimmen. Die Punkte innerhalb der Abstandszone, bei denen es sich größtenteils um Bäume handelt, befinden sich zu nah an den Stromleitungen, sodass Stromausfälle oder Brände möglich sind. Diese Werkzeuge können weitere wichtige Informationen für versicherungsrelevante Risikobewertungen liefern.

Weitere Lernprogramme finden Sie in der Lernprogrammgalerie.