Die Anwendung von KI auf räumliche Fragestellungen wird immer populärer und kann GIS Anwender bei verschiedenen Fragestellungen unterstützen. Dabei sind Deep Learning Modelle aus dem Computer Vision Bereich besonders für die Anwendung auf Imagery Daten geeignet.
Deshalb wurden in ArcGIS Pro 2.5 verschiedene Tools entwickelt, welche einen End-to-End Workflow zur Anwendung dieser Modelle ermöglichen. Dieser Blog Beitrag behandelt primär den Workflow, die verschiedenen Anwendungsbereiche werden in einem begleitenden WhereNext Artikel beschrieben.
Workflow in ArcGIS Pro
Der Workflow zur Anwendung von Computer Vision Deep Learning Modellen auf Imagery lässt sich grob in vier Bereiche unterteilen:
- Trainingsdaten erstellen
- Modell trainieren
- Modell anwenden
- Ergebnisse überprüfen
ArcGIS Pro stellt für jeden dieser Schritte mehrere hilfreiche Tools zur Verfügung, welche es sowohl dem GIS Analysten, als auch dem Data Scientisten ermöglichen, einen End-to-end Workflow in ArcGIS Pro durchzuführen.
1. Trainingsdaten erstellen
Um ein Deep Learning Modell auf Ihren spezifischen Anwendungsfall zu trainieren, werden Trainingsdaten in Form von gelabelten Objekten benötigt. Hierbei gilt grundsätzlich, je mehr Trainingsdaten zur Verfügung stehen, desto besser! Die benötigte Menge an Trainingsdaten ist abhängig von Ihrem Anwendungsfall und der gewünschten Genauigkeit des Modells. Am einfachsten ist es dabei natürlich, wenn bereits existierende Features, wie zum Beispiel Gebäudeumrisse oder Landnutzungsklassifikationen, wiederverwendet werden können.
Sollte man nicht auf bereits bestehende Features zurückgreifen können, müssen diese Features per „Labeling“ selbst erstellt werden. Hierbei handelt es sich je nach Anzahl benötigter Trainingsdaten um einen zeitintensiven Prozess. Um diesen Prozess zu beschleunigen und Sie als Nutzer zu unterstützen, bietet Ihnen ArcGIS Pro ab der Version 2.5 ein intuitives Klassifizierungs-Tool zur Erzeugung von Trainingsdaten an: „Label Objects for Deep Learning“.
Mit dem Tool „Trainingsdaten für Deep Learning Exportieren“ bietet ArcGIS Pro eine Möglichkeit die Trainingsdaten inklusive der zugehörigen Metadaten für verschiedene Modelltypen (analog zu den verschiedenen Anwendungsgebieten) zu erstellen. Dafür wird neben des Imagery Layers auch eine Feature Klasse bzw. ein klassifiziertes Raster benötigt, welche die bekannten Features beinhaltet, wie beispielsweise markierte Solarzellen oder mit einem Rechteck umrandete Fahrzeuge.
2. Modell trainieren
Anhand der erstellten Trainingsdaten kann im nächsten Schritt nun ein Modell trainiert werden. ArcGIS Pro stellt hier mit dem in 2.5 neuen Tool „Train Deep Learning Model“ verschiedene Möglichkeiten bereit, bestehende Modelle auf den konkreten Anwendungsfall hin zu trainieren. Neben der Implementation in ArcGIS Pro sei an dieser Stelle auch noch erwähnt, dass die ArcGIS API for Python, weitere Modelle in ihrem arcgis.learn Modul zur Verfügung stellt, welche mit etwas Python Skripting in den hier beschriebenen Workflow integriert werden können.
Analog zu den im WhereNext Artikel beschriebenen verschiedenen Anwendungsbereichen stehen unterschiedliche Modelle zur Verfügung. Zur Erkennung von Objekten können beispielsweise der „Single Shot Detector“ sowie ein „RetinaNet“ genutzt werden. Pixel können über ein „U-Net“ oder das „Pyramid Scene Parsing Network“ klassifiziert werden, für die Object Segmentation ist ein „MaskRCNN“ Modell vorhanden und der „Feature Classifier“ ermöglicht die Klassifizierung von gesamten Bildausschnitten. Da der aktuelle Fortschritt auf diesem Gebiet immens ist, werden zusätzlich zu den bestehenden Modellen fortlaufend weitere Modelle, zunächst in der ArcGIS API for Python und anschließend in ArcGIS Pro, ergänzt.
3. Modell anwenden
Das trainierte Modell kann nun im dritten Schritt auf unbekannte Daten bzw. in unserem Fall auf räumliche Regionen der Imagery angewandt werden. Hierbei spricht man auch von „Inference“.
Je nach Anwendungsbereich, stehen drei verschiedene Tools in ArcGIS zur Verfügung.
Mit dem Tool „Objekte mit Deep Learning ermitteln“ können die trainierten Modelle zur Object Detection angewandt werden, um als Ergebnis eine neue Feature Klasse mit den erkannten Objekten zu erhalten. Dabei ist es von großer Bedeutung, dass alle Modelltypen nur auf ihren eigenen Use-Case angewandt werden können. Ein Modell zur Detektion von Objekten kann nicht zur Klassifizierung von Pixeln eingesetzt werden. Das Tool „Pixel mit Deep Learning klassifizieren“ gibt die Ergebnisse der Pixel Classification Modelle als klassifiziertes Raster zurück und „Objekte mit Deep Learning klassifizieren“ kategorisiert die eingehenden Features (wie z.B. Gebäudeumrisse) auf Basis der Imagery (z.B. beschädigt / nicht beschädigt).
4. Ergebnisse überprüfen
Das Modell liefert natürlich nicht (nur) perfekte Ergebnisse zurück und interpretiert die Bilder auch nur in dem spezifisch trainierten Kontext, weshalb es zu Verwechslungen mit ähnlich aussehenden Objekten kommen kann. Bilder die ähnlich aussehen, aber in einem ganz anderen Kontext zu sehen sind, bezeichnet man auch als „Adversarial Images“. Ein paar lustige Beispiele neben dem Folgenden lassen sich hier finden.
Diese Beispiele sollen auch nochmal verdeutlichen, dass diese spezifisch trainierten Modelle, keineswegs den Menschen ersetzen, sondern für die trainierten Anwendungsbereiche eine wertvolle Unterstützung bieten können.
Das Modell gibt also die Daten mit einer bestimmten statistischen Sicherheit zurück und Daten mit einer geringeren Sicherheit sollten manuell überprüft werden. Hierfür bietet ArcGIS ebenfalls verschiedene Möglichkeiten. In ArcGIS Pro 2.5 können die Attribute der Ergebnis Feature Klasse mit dem „Bearbeiten von Feature-Attributen“ Tool sequenziell untersucht werden. Eine ähnliche Funktionalität bietet ein WebApp Template „Image Visit“, welches hier beispielhaft konfiguriert wurde. Die falsch identifizierten Features können anschließend natürlich wieder zum Training des Modells genutzt werden und so kann das Modell über diese Feedback-Schleife optimiert werden.
Zusammenfassung
Die Anwendung von Computer Vision Deep Learning Modellen ermöglicht es, das Potential von Imagery Daten noch besser nutzbar zu machen und kann als eine wertvolle Unterstützung in vielen Anwendungsfällen dienen. ArcGIS Pro bietet Tools die den kompletten Workflow, von dem Erstellen der Trainingsdaten, über das Trainieren des Modells, bis hin zur Anwendung und abschließenden Qualitätskontrolle der Ergebnisse, unterstützen und möglichst nutzerfreundlich gestalten. So können Sie selbst ohne Programmierkenntnis loslegen und erste Ergebnisse mit KI im GIS Kontext erzielen! Viel Spaß!
Lesen Sie in unserem WhereNext Artikel mehr zum Thema:
GIS & KI: Objekte in Bildern intelligent erkennen