Künstliche Bilder für KI

Testdatengenerierung mittels metamorpher Bildtransformationen

2. April 2024, 12:50 Uhr | Autoren: Roman Krajewski und Sebastian Stritz, Redaktion: Harry Schubert
© TopMicrobialStock | stock.adobe.com

Testdaten für neuronale Netze zu generieren, bedeutet bisher, Aufnahmen sammeln und von Hand kennzeichnen. Einfacher lassen sich Testdaten per metamorpher Bildtransformationen generieren. Dabei verändern Algorithmen Bilder nur so weit, dass ihr Label erhalten bleibt.

Diesen Artikel anhören

Künstliche neuronale Netze zur Objekterkennung, als ein Teilbereich der künstlichen Intelligenz (KI), finden immer stärkere Anwendung in der Industrie, zum Beispiel bei der Realisierung autonomer Fahrfunktionen. Diese Netze werden mithilfe großer Datenmengen trainiert. Die Bilddaten dafür zu erstellen, ist ein sehr aufwendiger Prozess, da jedes Bild meist manuell mit Label gekennzeichnet werden muss. Label sind Zusatzinformationen, die Objekte im Bild identifizieren und diese dadurch für die Weiterverarbeitung mit KI-Methoden nutzbar machen.

Für Objekterkennungssysteme in sicherheitskritischen Bereichen wie Automotive und Bahntechnik besteht zusätzlich die Herausforderung, dass insbesondere kritische Szenarien in der Datenbasis des Trainingssatzes oft unzureichend repräsentiert sind, gerade weil es sich meistens um kontextuell seltene oder unerwartete Ereignisse handelt. Solche Störereignisse können beispielsweise extreme Wetterbedingungen aber auch Kamerafehler, wie Linsenverzerrung oder chromatische Aberration sein. Eine Verifikation des Systems für selten auftretende Gefahrensituationen ist gleichwohl zwingend notwendig.

Enthält ein Trainingsdatensatz zu wenige Bilddaten für einen aussagekräftigen Test, müssen neue Testbilder generiert werden. Allerdings ist die manuelle Erstellung von Testbildern aufgrund der benötigten Datenmenge oft sehr aufwendig oder schlicht nicht praktikabel. Durch die gezielte Veränderung bestehender Bildinformationen lassen sich jedoch neue Testdaten generieren und für den Test nutzbar machen.

Metamorphe Bildtransformationen

Metamorphe Bildtransformationen sind Veränderungen von Bildern, die so vorgenommen werden, dass sie keinen Einfluss auf das Label des Bildes haben. Wird beispielsweise die Helligkeit eines Bildes verringert, verändert sich zwar das Bild, nicht aber die Position und die Art der darauf zu erkennenden Objekte.

Für das Erstellen von metamorph veränderten Bildern ist es wichtig, das potenzielle Einsatzgebiet der Objekterkennung systematisch zu betrachten. Welche Fehler können auftreten? Welche seltenen Situationen sind denkbar?

Beispielbaum für das Kategorisieren von Umgebungsstörungen
Bild 1. Beispielbaum für das Kategorisieren von Umgebungsstörungen.
© ITPower Solutions

Eine geeignete Methode ist die Klassifikationsbaumanalyse. Die Pfade des Baumes beschreiben in Kategorien geordnete Umgebungsvariablen und Fehlerquellen (Bild 1). Sinnvolle Kategorien bei einem im Straßen- oder Zugverkehr eingesetzten System sind beispielsweise die Wetter- und Lichtverhältnisse, Bewegungsstörungen sowie Kamerahard- und -softwarefehler.

Die in so einem Baum enthaltenen Störungen sollen anschließend simuliert, also über Bildveränderungen erzeugt werden, ohne dass es zu einer Änderung der im Bild enthaltenen Label kommt. Andernfalls muss das Bildmaterial manuell neu gekennzeichnet werden. Veränderungen wie das Einfügen und vollständige Verdecken von Objekten sind also nicht sinnvoll.

Um den Erhalt der korrekten Label sicherzustellen, erfolgt die Generierung von Bilddaten in diesem Ansatz ausschließlich mithilfe von deterministischen Algorithmen, da diese bei gleicher Eingabe immer eine identische Ausgabe produzieren. Andere Ansätze der Datengenerierung, wie zum Beispiel neuronale Netzwerke, sind für das Verifizieren von Objekterkennungssystemen weniger geeignet, da sie aufgrund ihrer probabilistischen Natur eigene Unsicherheiten in den Verifikationsprozess einbringen.

Simulation von Umgebungsstörungen
Bild 2. Simulation von Umgebungsstörungen
© ITPower Solutions

Zur Störungssimulation können sowohl einfache Änderungen am Farbraum und an den Pixelwerten vorgenommen, also auch komplexere Algorithmen verwendet werden (Bild 2). Die Simulation sollte zudem parametrierbar sein, um die Stärke der Bildveränderung einstellen zu können. Dadurch kann das System unter unterschiedlich starken Bedingungsänderungen getestet werden.

Metamorphe Transformation in der Praxis

Im Rahmen des Forschungsprojektes KI-LOK hat ITPower Solutions einige solcher Algorithmen erstellt und zur Testdatengenerierung verwendet. Das Projekt wird vom Bundesministerium für Wirtschaft und Energie im Rahmen der Förderrichtlinie »Neue Fahrzeug- und Systemtechnologien« gefördert und finanziert. Projektträger ist der TÜV-Rheinland. Um die Bildtransformationen zu realisieren, wurden die Python Bibliothek Numpy und OpenCV, eine Bibliothek für Bildverarbeitungsmethoden, verwendet.

Beispiel für Regentropfensimulation (rechts) im Vergleich zum Originalbild (links)
Bild 3. Beispiel für Regentropfensimulation (rechts) im Vergleich zum Originalbild (links).
© ITPower Solutions

Als Beispiel für eine Transformation dient hier ein implementierter Algorithmus, der Regentropfen auf einer Scheibe simuliert (Bild 3). Um die Regentropfen zu simulieren, wurden lichtbrechende, zufällig platzierte und verformte Kreise in das Bild eingefügt.

Tropfenposition und -größe wurden dabei zufällig festgelegt, die Anzahl der Tropfen kann vom Benutzer eingestellt werden. Über eine Wahrscheinlichkeitsverteilung wurde sichergestellt, dass kleinere Tropfen häufiger auftreten als große. Anschließend wurde für den jeweiligen Tropfen dessen Höhe an jeder Position bestimmt. Diese wird durch eine Cosinus-Funktion festgelegt und mit Simplex Noise versehen, sodass die Tropfen eine zufällige Form erhalten.

Ausschnitt des Quellcodes zur Regensimulation
Bild 4. Ausschnitt des Quellcodes zur Regensimulation.
© ITPower Solutions

Anschließend wird der Normalenvektor des Tropfens an der aktuellen Position ermittelt. Von diesem werden anschließend nur die X- und Y-Werte verwendet und von der aktuellen Position im Bild abgezogen, um einen Lichtbrechungseffekt zu erzeugen. Ein Ausschnitt des Quellcodes für diesen Algorithmus ist in Bild 4 dargestellt.

Um zu evaluieren, inwieweit metamorphe Transformationen ein Objekterkennungssystem stören können, wurden weitere Veränderungsalgorithmen implementiert. Darunter simple Effekte wie die Verdunklung des Bildes, aber auch komplexe Wettereffekte wie Hitzeflimmern, Nebel oder Schnee.

Im Rahmen des Projekts wurden diese metamorphen Transformationen auf einen Objekterkennungsdatensatz angewendet, um die Auswirkungen auf ein damit trainiertes System zu untersuchen. Bei dem Datensatz handelt es sich um Microsoft COCO. Dies ist ein umfangreicher Datensatz für Objekterkennung, Bildsegmentierung und Kennzeichnung, der oft für Machine Learning und Bildererkennungsprojekte verwendet wird.

Die so transformierten Bilder wurden anschließend verwendet, um ein Ob- jekterkennungssystem beispielhaft zu testen. Dazu wurden Transformationen in verschiedenen Varianten und Stärken benutzt und die Genauigkeit des Systems bei der Objekterkennung in Abhängigkeit von der Transformationsstärke mit seiner Genauigkeit bei der Erkennung unveränderter Bilder verglichen. Bei dem System unter Test (SUT) handelt es sich um das neuronale Netzwerk Centernet Hourglass von Duan et al (2019). Dieses weist eine hohe Genauigkeit auf und eignet sich dadurch besonders gut für das Evaluieren der metamorphen Transformationen.

Genauigkeit des Netzwerkes bei transformierten Bildern
Bild 5. Genauigkeit des Netzwerkes bei transformierten Bildern.
© ITPower Solutions

In Bild 5 ist ein Auszug der Ergebnisse des Experiments zu sehen. Bei unveränderten Bildern ist die Genauigkeit mit 0,52 am höchsten. Die Genauigkeit nimmt mit zunehmender Transformationsstärke unterschiedlich stark ab. Es ist deutlich zu sehen, dass das Objekterkennungssystem am stärksten durch Effekte gerichteter Bewegungsunschärfe gestört wird. Das Verfahren gibt also Hinweise, worauf sich die Entwicklungsarbeit konzentrieren muss. In diesem Fall müssen Maßnahmen ergriffen werden, um das Auftreten von Bewegungsunschärfe zu vermeiden oder zu minimieren.

Metamorphe Testdaten finden Schwachstellen

Ausgehend von der Frage, ob sich metamorphe Bildtransformationen dazu eignen, ein Objekterkennungssystem zu testen, wurden im dargestellten Forschungsansatz verschiedene Transformationen implementiert, auf einen Datensatz angewandt und anschließend ein Beispielsystem mit den transformierten Bildern getestet. Die Ergebnisse zeigen, dass metamorphe Transformationen durchaus dazu geeignet sind, Testdaten zu generieren, um besondere Schwachstellen in einem Objekterkennungssystem aufzudecken und die Zuverlässigkeit von neuronalen Netzen zu erhöhen. Interessant wäre in einem nächsten Schritt die Überlegung, ob sich dieses Verfahren auch auf die Generierung von Trainingsdaten ausweiten lässt.

 

Die Autoren

 

Sebastian Stritz von ITPower Solutions
Sebastian Stritz von ITPower Solutions
© ITPower Solutions

Sebastian Stritz

arbeitet als Sales & Marketing Manager bei ITPower Solutions. Nach seiner Ausbildung zum IT-Systemkaufmann arbeitete er zunächst bei Sohnix im Vertrieb und betreute dort den Bereich Datacenter und Cloud. 2018 wechselte er zu ITPower Solutions und ist dort zuständig für die Bereiche Vertrieb, PR und Marketing.
sebastian.stritz@itpower.de

 

Roman Krajewski

arbeitet als Technical Scientist bei ITPower Solutions. Er studierte Internationale Medien und Informatik an der Fachhochschule für Technik und Wirtschaft Berlin. Seit 2021 beschäftigt er sich mit der Erforschung von Computer Vision Systemen, insbesondere mit Objekterkennungssystemen für autonome Züge.
roman.krajewski@itpower.de


Lesen Sie mehr zum Thema


Das könnte Sie auch interessieren

Jetzt kostenfreie Newsletter bestellen!

Weitere Artikel zu Componeers GmbH

Weitere Artikel zu Automatisiertes Fahren

Weitere Artikel zu Künstliche Intelligenz (KI)