Sonar Object Detection in Echtzeit

Unterstützung der Operatoren bei der Erkennung von missionskritischen Objekten in einem Echtzeit-Stream von Sonardaten durch künstliche Intelligenz

Geschäftsbereich
Robotik
Technologien
Flask
Python
AWS

Projekt
Zusammenfassung

Ein deutsches Hightech Unternehmen wollte eine Lösung zur Echtzeit-Objekterkennung implementieren, um die Operatoren der autonomen Untersuchungsroboter zu unterstützen. Ihr Ziel war es, einsatzkritische Objekte in schwer interpretierbaren Sonar-Bilddaten zu finden und zu identifizieren.
Challenge
Der Kunde benötigte einen vollautomatischen Detektor, der in Echtzeit auf einer begrenzten Edge-Hardware-Infrastruktur arbeiten kann. Die unterstützende Cloud-basierte Anwendungsplattform sollte es den Kunden ermöglichen, Modelle mit benutzerspezifischen Objekttypen zu trainieren und bereitzustellen.
Solution
Unsere Cloud-basierte Datenmanagement- und Machine Learning-Plattform sorgt für die kontinuierliche Bereitstellung von individuell trainierten Modellen. Ein Modul für eingebettete Systeme für Edge-Geräte ermöglicht den Betrieb von Detektoren, die für den jeweiligen Anwendungsfall konfiguriert und trainiert sind.
Outcome
Eine hoch skalierbare Pipeline zum Training von Erkennungsmodellen und eine AI-IoT-Lösung ermöglichen die Erkennung von benutzerspezifischen Objekten.

Was unser Kunde sagt

“Trotz mehrerer Entwicklungsteams an drei weltweiten Standorten und von zwei unterschiedlichen Unternehmen lief die gemeinsame Entwicklung dieser State-of-the-Art Sensorikanwendung ausgesprochen zielorientiert und reibungslos. Unsere Kooperation mit Steadforce hat sich (erneut) als Garant für anspruchsvolle Entwicklungen auf technisch höchstem Niveau herausgestellt.”
Fabian Bannasch - Geschäftsführer von EvoLogics

Unterstützung der Operatoren bei der Erkennung von missionskritischen Objekten in einem Echtzeit-Stream von Sonardaten durch künstliche Intelligenz

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.

Herausforderungen eines modernen Bionik- und Robotikunternehmens

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.

Ausschnitt aus einem Sonarbild eines Sonobots
Ausschnitt aus einem Sonarbild (@EvoLogics)

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.

Welche Fortschritte ermöglichen Sonar Object Detection?

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-Projekt). 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.

Grundlagen der Objekterkennung

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.

Convolutional neural network
Convolutional Neural Network (Aphex34, CC BY-SA 4.0, via Wikimedia Commons)

Besonderheiten in Sonarbildern

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.

Arbeitsweise des Sonobot
Arbeitsweise des Sonobot (Quelle: EvoLogics)

Sonarauswertung mit maßgeschneiderten Detektions-Modellen

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:

  • Ein Userportal für die Nutzer und Nutzerverwaltung
  • eine performante Training-Infrastruktur und ML-Pipeline einschließlich Modell-Evaluierung und
  • eine integrierte Detektorkomponente für das CC-System des Sonobots.

Self-Service Machine Learning-Plattform für Endanwender

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.

Sonaraufnahme mit Bounding Box des Object Detection-Modells
Sonaraufnahme mit gesetzter Bounding Box zum Markieren eines POI
EvoLogics)

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.

Cloud-basierte ML-Pipeline

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

Embedded Deployment im Sonobot

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.

Sonar Object Detection - Erfolgreiche Zusammenarbeit

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.

Let's talk technology 🚀

Haben Sie Fragen oder sind Sie bereit, Ihr Projekt zu starten?
Sind Sie bereit, in die digitale Welt einzutauchen? Schreiben Sie uns eine Nachricht, und lassen Sie uns einen persönlichen Termin vereinbaren, um gemeinsam die unendlichen Möglichkeiten zu erkunden.
Wie können wir Ihnen helfen?
Danke! Ihre Nachricht wurde erhalten!
Hoppla! Etwas ist beim Einreichen des Formulars schiefgegangen.
Mehr zu technologischen Themen

Ausgewählte Beiträge

mehr anzeigen