Die Anwendungen künstlicher Intelligenz (KI) sind inzwischen im Alltag angekommen. Beispielsweise bietet die Verbindung aus KI und Computer Vision faszinierende neue Möglichkeiten. Egal ob im privaten Bereich bei der Gesichtserkennung auf Smartphones, in der Industrie bei der automatisierten Prüfung von Produkten oder bei der Erkennung von Schäden in der Qualitätskontrolle und im Rahmen von Predictive Maintenance-Maßnahmen: KI und Computer Vision erzielen bereits hochqualitative Ergebnisse, die das Benutzererlebnis verbessern, Prozesse vereinfachen und Aufwände reduzieren können. Im Folgenden zeigen wir, wie mit Hilfe von Sonar Object Detection in Echtzeit missionskritische Aufgaben unterstützt werden können.
EvoLogics ist ein Bionik- und Robotikunternehmen, das seit 20 Jahren innovative Produkte für die Industrie entwickelt. Mit Sitz in Berlin und weltweiten Verbindungen in die Bionikforschung bietet EvoLogics effiziente Systeme zur Unterwasserkommunikation und autonome Surveyroboter - USVs (unmanned surface vessels). Der neu entwickelte Sonobot 5 gehört zu den schnellsten schwimmenden Sonar-USVs der Welt. Dieser wird weltweit für Vermessungs- und Suchoperationen in Seen, Kanälen oder Küstengewässern eingesetzt. Ein Hauptinteresse dieser Suchoperationen liegt darin, unter Wasser verborgene Objekte aufzuspüren. Solche Objekte können Schrott in Fahrrinnen oder militärische Altlasten, wie Fliegerbomben oder Unterwasserminen sein. Von Polizei und Küstenwache wird der Sonobot auch zum Lokalisieren und Bergen von ertrunkenen Menschen eingesetzt.
Bei solchen Missionen werden Sonarbilder in Echtzeit zu den Operatoren übertragen. Sonarbilder sind nicht mit Kamerabildern zu vergleichen. Sie sind beeinflusst durch zahlreiche Parameter, wie Wassertiefe, Untergrund, Reflektivität der Suchobjekte und insbesondere die physikalische Natur von Sonarsystemen. In den errechneten Bildern sind Unterwasserobjekte schwieriger zu erkennen. Ungeübte Anwender können wichtige Signale schwer interpretieren oder übersehen und selbst Sonarexperten können Fehler unterlaufen. Zudem stellt die kontinuierliche, konzentrierte Beobachtung der eingehenden Bilder eine Herausforderung dar.
Man kann die Erfolgswahrscheinlichkeit und Geschwindigkeit bei missionskritischen Aufgaben stark erhöhen. Dies erreicht man, indem man die Anwender gezielt bei der Interpretation der Sonarbilder unterstützt. Das KI-Team von Steadforce schuf eine End-to-End Lösung, die es erlaubt moderne Machine Learning-Modelle basierend auf State-of-the-Art Algorithmen zu trainieren und direkt (on the edge) auf einem USV zu betreiben. Dadurch können mittels Sonar Object Detection in Echtzeit relevante Details in den Sonarbildern visuell deutlich hervorgehoben werden.
Der aktuelle Erfolg von KI-Systemen beruht auf technischen Entwicklungen neuer Hardware, theoretischen und praktischen Fortschritten in der Informatik und der Verfügbarkeit von großen Datenmengen.
Die Object Detection ist ein spezieller Anwendungsfall von Computer Vision, der Analyse von Bildern oder Videos. Bilddaten stehen heute in großer Zahl zur Verfügung. Diese sind annotiert, gelabelt sowie vorsortiert und für verschiedenste Domänen auch frei verfügbar (z.B. über das OpenImage-Projekts). Diese Datensätze haben die Entwicklung von Object Detection-Methoden dramatisch beschleunigt und verbessert.
Convolutional Neural Networks wurden schon vor mehr als 30 Jahren entwickelt und sind Grundbaustein vieler Computer Vision-Methoden. Kombiniert mit Netzwerkarchitekturen der neusten Generation fällt die Fehlerrate dieser Methoden in den letzten Jahren exponentiell (vgl. hier) und hat die Performance von Menschen in einigen Domänen erreicht oder sogar bereits übertroffen.
Die dafür nötige Rechenleistung wiederum wird vorzugsweise von GPUs oder zunehmend von dedizierten Tensor Processing Units (TPUs) geliefert. Diese können die mathematischen Operationen der neuronalen Netze hochparallelisiert und somit optimiert ausführen. Cloudanbieter stellen diese Rechenleistung und die sonstige nötige technische Infrastruktur, wie Datenspeicherung, aber auch spezialisierte, vorkonfigurierte KI-Frameworks, je nach Bedarf und hochskalierbar zur Verfügung.
Object Detection ist die Kombination zweier komplementärer Aufgaben: Objektlokalisierung und Bildklassifikation. Das heißt, einerseits wird identifiziert, ob und wo auf einem digitalen Bild Objekte vorhanden sind. Andererseits wird zugeordnet, welchen Objekttyp ein Bildausschnitt höchstwahrscheinlich darstellt.
Die besten Ergebnisse erzielen Machine Learning-Modelle auf Basis von tiefen neuronalen Netzwerken, die aus einem Bild eine Vielzahl von visuellen Signalen extrahieren und kombinieren. Die sehr häufig verwendeten und bereits erwähnten Convolutional Neural Networks verwenden dazu Filterkernel. Diese erkennen unter anderem unterschiedliche Arten von Kanten oder Farbwerte, trennen Vorder- oder Hintergrund des Bildes und reagieren allgemein auf informative Muster im Bild. Mehrere Schichten dieser Convolutional Layer hierarchisch hintereinander geschaltet ermöglichen es, sowohl gröbere Elemente wie Umrisse, als auch feinere Details zu erlernen, die als Feature für Objektlokalisierung und -klassifikation dienen. Aktuelle Netzwerkarchitekturen erweitern diese Faltungen mit anderen Bausteinen und optimieren sie für die Object Detection.
Sonaraufnahmen zeigen einige Unterschiede zu optischen Kamerabildern. Statt eines 3-dimensionalen Farbraums, wie etwa RGB, sieht man nur die eindimensionale Intensität eines reflektierten Signals. Auch die Ortsbestimmung eines reflektierten Signals ist nur indirekt über die Laufzeit des Signals möglich. Die fächerförmige Ausbreitung der Sonarsignale, Wellenbewegungen an der Oberfläche, Sonarschatten und andere physikalische Unterschiede erzeugen Verzerrungen und Artefakte in den dargestellten Bildern. Diese Artefakte kann man teilweise korrigieren. Allerdings muss ein Machine Learning-Modell robust genug sein, um das Objekt zu erkennen und das Auftreten dieser Störsignale zu kompensieren.
Die Anforderungen an das Projekt lauteten: Ein Sonobot-Nutzer kann sein eigenes Modell für ausgewählte Objektklassen konfigurieren und sein eigenes Sonarbildmaterial beisteuern. Das Modell muss auf dem Sonobot selbst und in Isolation, ohne Netzwerkverbindung zu zusätzlichen Datenspeichern oder Rechenressourcen, lauffähig sein. Dabei muss das Modell aber auch große Sonaraufnahmen (mehrere Millionen Pixel) verarbeiten können. Außerdem muss die Detektorkomponente durch geeignete Schnittstellen nahtlos in die bestehende Command & Control (CC) -Steuerungssoftware des Sonobots integriert werden. Das Modell muss mehrere Frames pro Sekunde verarbeiten, um Resultate live zu liefern. Der Detektor soll mit bestmöglicher Güte in Bezug auf falsche Alarme oder übersehene Objekte arbeiten.
Um den kompletten Prozess zu unterstützen, benötigte EvoLogics drei aufeinander aufbauende Elemente:
Das neu entwickelte Sonobot Userportal Argos dient als benutzerfreundliche zentrale Daten- und Modellverwaltungsplattform. Das gesamte System ist für multi-tenancy ausgelegt - Daten und Prozesse jedes Nutzers bleiben im gesamten Betrieb strikt voneinander getrennt, so dass das System auch vertrauliche Daten verarbeiten kann. Jeder Nutzer kann seine eigenen Daten unkompliziert in das Portal hochladen, beispielsweise von zuvor durchgeführten Surveymissionen, um diese zusätzlich für das Training zukünftiger Modelle zu nutzen. Der Benutzer hat die Möglichkeit auf hochgeladenen Bildern Objekte zu markieren (siehe Bild 3) und jedes Objekt einer Klasse zuzuordnen. Die gelabelten Daten werden in einem Cloudspeicher vorgehalten und erlauben so einfache und dynamische Anpassung des Speicherbedarfs bei neu hinzugefügten Daten.
Bei diesem Labelling ist es wichtig, keine relevanten Objekte zu übersehen, die Objektkanten passgenau zu wählen, und die Klassen konsistent anzuwenden. Andernfalls werden diese Unsauberkeiten und Widersprüche im Trainingsdatensatz das Modelltraining negativ beeinflussen. Dieser Einfluss ist umso stärker, je kleiner der genutzte Datensatz für die betroffene Objektklasse ist. Argos bietet daher die Möglichkeit für einen Reviewprozess: Experten können die Annotationen hochgeladener Bilder durch Nutzer, ebenso wie automatisch generierte Annotationen bestehender Modelle, prüfen und verifizieren, um Fehler in der weiteren Nutzung zu minimieren. Neben den privat nutzbaren Daten stellt EvoLogics eine kuratierte Bibliothek von Sonaraufnahmen zur Verfügung, die die User frei und gemeinsam mit ihren privaten Aufnahmen nutzen können. Jedem Nutzer steht es offen, Bilder zu dieser Bibliothek beizutragen und der Sonobot Community zur Verfügung zu stellen.
Die Datenverwaltung und Steuerungsfunktionen des Backends, z.B. zur Datenvalidierung und -aktualisierung, stellen die Verbindung zur aufgebauten Cloud-Infrastruktur her, sind selbst serverless implementiert und entsprechend skalierbar.
Über das Userportal erfolgt auch die Steuerung des Modelltrainings: Aus allen verfügbaren Objektklassen kann ein Nutzer die für seinen Use-Case relevanten auswählen und ein Modell anfordern, das diese Klassen erkennt und unterscheidet. An dieser Stelle lassen sich auch fortgeschrittene Parameter festlegen, die einen Trade-Off zwischen Genauigkeit, Sensitivität und Geschwindigkeit ermöglichen. Als Basis des Trainings dient eine Auswahl von Modellen, die auf großen Bild- und Objektmengen vortrainiert und für die ausgewählten Sonarobjektklassen detailliert abgestimmt wurden.
Das eigentliche Training erfolgt im Hintergrund auf GPU-fähigen Cloudressourcen. Diese sind nach Bedarf verfügbar und praktisch beliebig skalierbar. Es können also mehrere Nutzer verschiedene Modelle gleichzeitig ohne Wartezeiten bearbeiten. Die abgerufenen Cloudressourcen sind beliebig auf Modellgröße und Trainingsdatenmenge anpassbar. Die Trainingsläufe sind dabei wieder technisch strikt getrennt, um maximale Sicherheit und Vertraulichkeit zu gewährleisten.
Ein kundenspezifisches Modell zu erstellen kann je nach Bildmenge und gewählten Parametern zwischen einigen Minuten bis zu einigen Stunden dauern. Der Nutzer wird im Userportal über den Fortschritt und Erfolg des Trainings auf dem Laufenden gehalten. Er erhält für jedes Modell einen detaillierten Evaluierungsreport, der über eine Vielzahl von Metriken die zu erwartende Performance hinsichtlich fälschlich erkannten, verpassten oder falsch klassifizierten Objekten und die Konfidenz des Modells angibt. Jedes erstellte Modell wird kryptographisch signiert und kann direkt als einfaches Update auf dem Sonobot des Nutzers eingespielt werden.
Machine Learning-Systeme on-the-edge zu verwenden, in diesem Fall auf einem USV, birgt Herausforderungen durch begrenzte Hardwareleistung sowie durch fehlende oder unzuverlässige Netzwerkverbindungen zu externen Komponenten. Auch muss die Verlässlichkeit des Deployment-Prozesses gewährleistet werden, um ein eingebettetes System produktiv zu halten.
Neue Modelle werden auf Hardwarekompatibilität und Funktion getestet, bevor sie als Update eingespielt werden. Für jedes Modell lassen sich klassenindividuelle Alarmschwellen setzen, um Detektionen szenariospezifisch optimal zu ermöglichen. Die Modellarchitektur wurde dahin evaluiert und ausgewählt, auf den verfügbaren Hardwarekomponenten von Edge-Devices wie dem Sonobot so performant zu laufen, um off-the-grid und komplett unabhängig die Sonardaten in Echtzeit auszuwerten. Erkannte Objekte werden dem Operator direkt graphisch angezeigt, die Geokoordinaten der Fundstelle markiert und die Daten für spätere Evaluationen geloggt. Der Sonar-Operator erhält also zu seiner Tätigkeit missionsspezifisch konfigurierbare Unterstützung. Die Fähigkeit zur Sonar Object Detection in Echtzeit bietet die Grundlage für weitere Entwicklungsstufen, etwa in Zukunft automatisch Objekte aufzufinden sowie Hindernissen auszuweichen und somit Missionen vollständig autonom durchzuführen.
Alternativ lassen sich die Sonardaten bereits durchgeführter Missionen im Replay-Modus abspielen. Dadurch können Modelle mit unterschiedlichem Objektfokus angewandt werden. Hier besteht auch die Möglichkeit Modelle mit Fokus auf Genauigkeit, statt Framerate zu verwenden, deren größere Hardwareanforderungen eine Echtzeitauswertung verhindern.
Durch die Integration mit dem Userportal können erkannte Objekte dort wieder hochgeladen, validiert und als neues Trainingsmaterial für laufende Modellverbesserungen verwendet werden.
Alle Entwicklungsschritte sind über eine cross-platform-kompatible CI/CD-Pipeline integriert, die eine schnelle, agile Weiterentwicklung, automatische Tests, sowie nahtlose Auslieferung aller Komponenten ermöglicht.
Die Umsetzung des Projekts erfolgte in enger Zusammenarbeit zwischen den KI-Experten von Steadforce und den Ingenieuren von EvoLogics. EvoLogics übernahm die kontinuierliche technische Implementierung in den Sonobot und die Kontrollsysteme. Das Steadforce-Team war dabei für die Konzeption und Operationalisierung der Lösung für Sonar Object Detection auf dem Edge Device zuständig. Das Team plante und implementierte zudem die Steuerungsfunktionen und ML-Pipelines in der Cloud.
Aktuell laufen bereits praxisnahe Pilotanwendungen in enger Kooperation mit einer europäischen Polizeibehörde in echten Einsatzszenarien.