-
Technisches Gebiet
-
Die Erfindung betrifft Verfahren zum Trainieren eines neuronalen Netzes zur Umsetzung eines Eingangsbildes einer ersten Domäne bzw. in einem ersten Darstellungsstil in ein Ausgangsbild einer zweiten Domäne bzw. in einem zweiten Darstellungsstil.
-
Technischer Hintergrund
-
Kraftfahrzeuge sind häufig mit Kamerasystemen ausgestattet, die eine Bildinformation über eine Fahrzeugumgebung, insbesondere ein Bild einer in Fahrtrichtung vorausliegenden Fahrzeugumgebung, erfassen. Diese Bildinformation wird zur Durchführung von Fahrerassistenzfunktionen zur Unterstützung des Fahrers und von autonomen Fahrfunktionen verwendet. Beispiele für solche Fahrerassistenzfunktionen können ein Erkennungssystem für Verkehrsschilder oder einen Bremsassistenten umfassen, der beispielsweise erkennt, dass sich ein Fußgänger in einem Kollisionsbereich vor dem Kraftfahrzeug befindet oder sich in diesen hineinbewegt.
-
Ein Problem bei der Entwicklung derartigen Funktionen besteht darin, dass nur unzureichend Bilddaten vorhanden sind, an denen diese Funktionen getestet bzw. trainiert werden können. Insbesondere ist es mühsam, Bilddaten für kritische Situationen zur Verfügung zu stellen.
-
Weiterhin beinhalten bereitgestellte Bilddaten in der Regel keine Metainformationen, die z. B. Bildsegmentierungsinformation aufweisen, d. h. die angeben, welche Pixelregionen der Bilddaten zu einem Fußgänger, zu einem Umgebungsbereich, zu einem Straßenbereich, zu einem Gebäudebereich und dergleichen gehören. Oftmals müssen derartige Bildinformationen manuell erstellt werden, was ein kostspieliger und vor allem zeitaufwendiger Prozess ist.
-
Bekannte Ansätze, Bilddaten für mögliche Verkehrssituationen als künstliches Kamerabild künstlich zu erzeugen, bestehen darin, gewünschte Verkehrssituationen per Skript, d. h. mit einer Formalsprache zu beschreiben und mit einer Graphik-Engine zu visualisieren. Die so ermittelten Bilder bzw. Bilddaten stellen die Verkehrssituationen jedoch künstlich und nicht photorealistisch dar, was für das Entwickeln und Testen von Fahrerassistenzfunktionen und autonomen Fahrfunktionen unter realistischen Bedingungen ungeeignet ist.
-
Weitere Verfahren sind aus dem Stand der Technik bekannt, die einen Stiltransfer von einem Eingangsbild zu einem Ausgangsbild vorschlagen. Während einfache Ansätze zum Training eines solchen Systems einander zugeordnete Bilddaten des Eingangsbilds und des Ausgangsbilds verwenden, die beide denselben Bildinhalt aufzeigen und nur im Stil (mit ihrer Domäne) voneinander abweichen, können fortgeschrittene Verfahren Eingangs- und Ausgangsbilddaten der entsprechenden Stile verwenden, die keinen Bezug zueinander aufweisen müssen.
-
Ein Nachteil der oben beschriebenen Verfahren besteht darin, dass während des Trainings eine sogenannte Cycle Consistency berechnet werden muss, wodurch im Training explizit die Eingangsbilddaten in die Ausgangsbilddaten und umgekehrt berechnet werden müssen, was das Training sehr rechenintensiv und damit zeitaufwendig macht.
-
Offenbarung der Erfindung
-
Erfindungsgemäß sind ein Verfahren zum Trainieren eines neuronalen Netzes zur Umsetzung eines Eingangsbildes einer ersten Domäne in ein Ausgangsbild einer zweiten Domäne gemäß Anspruch 1 sowie eine entsprechende Vorrichtung gemäß dem nebengeordneten Anspruch vorgesehen.
-
Weitere Ausgestaltungen sind in den abhängigen Ansprüchen angegeben.
-
Gemäß einem ersten Aspekt ist ein Verfahren zum Trainieren eines ersten neuronalen Netzes zur Umwandlung eines Eingangsbildes einer ersten Domäne in ein Ausgangsbild einer zweiten Domäne vorgesehen, wobei das Training auf für das Training bereitgestellten Eingangsbildern der ersten Domäne und Trainingsbildern der zweiten Domäne durchgeführt wird; mit folgenden Schritten:
- - Bereitstellen eines GAN-Netzwerks mit einem Generatornetzwerk, das das erste neuronale Netz umfasst, und einem Diskriminatornetzwerk, das ein zweites neuronales Netz umfasst;
- - Trainieren des Diskriminatornetzwerks basierend auf einem Diskriminatorfehlerwert und einem oder mehreren Trainingsbildern und/oder einem oder mehreren Ausgangsbildern, die durch Verarbeiten eines oder mehrerer der Eingangsbilder durch das Generatornetzwerk erzeugt werden, wobei der Diskriminatorfehlerwert abhängig von einer jeweiligen Güte des einen oder der mehreren Trainingsbilder und/oder des einen oder der mehreren Ausgangsbilder bestimmt wird;
- - Trainieren des Generatornetzwerks basierend auf einem für das Training bereitgestellten Eingangsbild und einem Generatorfehlerwert, der von einer Güte des von dem Generatornetzwerk abhängig von dem Eingangsbild bereitgestellten Ausgangsbilds und einer Ähnlichkeitsgröße zwischen dem Eingangsbild und dem Ausgangsbild abhängt, die ein Maß für eine strukturelle Ähnlichkeit angibt.
-
Ziel des obigen Verfahrens ist es, ein neuronales Netz so zu trainieren, dass ein vorgegebenes Eingangsbild in ein Ausgangsbild umgewandelt wird. Dabei sollen Eingangs- und Ausgangsbild unterschiedliche Stile aufweisen, d. h. die Eingangsbilddaten sollen in einer ersten Domäne und die Ausgangsbilddaten in einer zweiten Domäne zur Verfügung stehen. Die Stile entsprechen Darstellungsstilen, wie z.B. eine Segmentierungsdarstellung, in der z.B. farblich unterschiedliche Bereiche unterschiedlichen Objekten oder Bildbereichen zugeordnet sind, ein photorealistisches Bild, ein Comic-Bild, eine Strichzeichnung, eine Aquarell-Skizze und dergleichen.
-
Zum Erstellen und Testen von Fahrerassistenzfunktionen und/oder autonomen Fahrfunktionen für ein Kraftfahrzeug, die auf einer Auswertung von Kamerabildern der aktuellen Fahrzeugumgebung basieren, ist es notwendig, eine ausreichende Anzahl von photorealistischen Bildern der Fahrzeugumgebung bereitzustellen. Diese Bilder sollen Kamerabilder ersetzen und von solchen möglichst nicht unterscheidbar sein. Diese Bilder können zudem optional mit einer Metainformation zur Verfügung gestellt werden, die beispielsweise eine Segmentierungsinformation umfassen, die Bildbereiche des photorealistischen Bildes bestimmten Objekten oder Hintergründen zuordnet. Somit ist eine wichtige Anwendung für ein so trainiertes neuronales Netz die Umwandlung eines z. B. durch eine Skriptsprache oder als Handskizze beschriebenen Eingangsbilds in ein künstlich erzeugtes photorealistisches Ausgangsbild, das dem Eingangsbild inhaltlich bzw. szenarisch entspricht, jedoch in der Darstellungsweise, dem Darstellungsstil, von diesem abweicht.
-
Im Folgenden wird von einer Umwandlung eines Eingangsbilds eines ersten Stiles in ein Ausgangsbild eines zweiten Stiles bzw. eines Eingangsbilds in einer ersten Domäne in ein Ausgangsbild in einer zweiten Domäne gesprochen, um diesen Generierungsprozess zu beschreiben. Beispielsweise kann ein Eingangsbild, das lediglich Bildbereiche für bestimmte Objekte und/oder Hintergründe angibt, wie beispielsweise Bildbereiche zur Darstellung einer Person, eines Fahrradfahrers, eines Straßenbereichs, eines Bebauungsbereichs, eines Vegetationsbereichs und dergleichen, so durch das trainierte neuronale Netz verarbeitet werden, dass die entsprechenden Bildbereiche mit realistischen Strukturen der entsprechenden Objekte versehen werden.
-
Dazu sieht das obige Verfahren vor, ein GAN-Netzwerk zu verwenden (GAN: Generative Adversarial Network), bei dem ein Generatornetzwerk, das einem ersten neuronalen Netz entspricht, mithilfe eines Diskriminatornetzwerks, das einem zweiten neuronalen Netz entspricht, trainiert werden soll. Das Generatornetzwerk erzeugt dann aus bereitgestellten Eingangsbilddaten in einer ersten Domäne Ausgangsbilddaten in einer zweiten Domäne.
-
Bei einem GAN-Netzwerk wird die Güte des Trainings des Generatornetzwerks mithilfe des Diskriminatornetzwerks verbessert. Das Diskriminatornetzwerk liefert für das Training des Generatornetzwerks als relevante Information ein Bewertungslabel für das vom Generatornetzwerk generierte Ausgangsbild. Zum Bereitstellen des Bewertungslabels wird das Diskriminatornetzwerk so trainiert, dass dieses bewerten kann, ob ein an dessen Eingang bereitgestelltes Bild ein Bild in einer zweiten Domäne ist. Das Diskriminatornetzwerk wird zeitgleich oder im Wechsel mit dem Generatornetzwerk basierend auf vom Generatornetzwerk generierten Ausgangsbildern und Trainingsbildern in einer zweiten Domäne trainiert, wobei den Trainingsbildern ein Bewertungslabel zugeordnet wird, das ein hohes Zuordnungsmaß zur zweiten Domäne angibt (d. h. angibt, dass die betreffenden Bilder der zweiten Domäne zuzuordnen sind). Zudem werden dem Diskriminatornetzwerk die Ausgangsbilder zugeführt, die vom Generatornetzwerk erstellt wurden, zusammen mit einem Bewertungslabel, das ein niedriges Zuordnungsmaß zur zweiten Domäne angibt (d. h. angibt, dass die betreffenden Bilder der zweiten Domäne künstlich durch das Generatornetzwerk erzeugt wurden).
-
Generatornetzwerk und Diskriminatornetzwerk können wechselweise trainiert werden, wodurch iterativ beide neuronale Netze verbessert werden und das Generatornetzwerk letztlich lernt, ein bereitgestelltes Eingangsbild in der ersten Domäne in ein Ausgangsbild in der zweiten Domäne umzuwandeln.
-
Zum Training des Generatornetzwerks und des Diskriminatornetzwerks werden Verlustfunktionen bzw. Kostenfunktionen verwendet. Zum Training des Generatornetzwerks wird als Kostenfunktion eine Generatorfehlerfunktion verwendet, die zwei Teile umfasst. Ein erster Teil erzwingt, dass das generierte Ausgangsbild der zweiten Domäne zugeordnet wird. Hierfür wird das durch das Generatornetzwerk generierte Ausgangsbild dem Diskriminatornetzwerk zugeführt und der Abstand zum gewünschten Bewertungslabel (Bewertungslabel für ein Trainingsbild der zweiten Domäne) minimiert. Der zweite Teil stellt sicher, dass die Bildinhalte des durch das Generatornetzwerk generierten Ausgangsbildes dem Ursprungsbild entsprechen, indem ein struktureller Abstand des Ausgangsbildes zum Eingangsbild minimiert wird, d. h. das Ausgangsbild unterscheidet sich von dem Eingangsbild lediglich durch den Darstellungsstil (Domäne) aber nur wenig durch den Bildinhalt bzw. die dargestellte Szene.
-
Der strukturelle Abstand kann beispielsweise durch einen Ähnlichkeitswert bestimmt werden, der ein Maß für die strukturelle Ähnlichkeit von zwei Bildern in unterschiedlichen Domänen ist. Beispielsweise eignet sich hierfür ein SSIM-Index (SSIM: Structural Similarity Index), der die strukturelle Ähnlichkeit zwischen dem Eingangs- und dem Ausgangsbild in bekannter Weise angibt.
-
Auf diese Weise wird ermöglicht, dass das Generatornetzwerk darauf trainiert wird, ein Eingangsbild in der ersten Domäne bzw. eines ersten Darstellungsstils in ein Ausgangsbild in einer zweiten Domäne, d.h. eines zweiten Darstellungsstils, umzuwandeln. Dazu müssen die Eingangsbilder des ersten Darstellungsstils und die Trainingsbilder des zweiten Darstellungsstils vorgegeben werden, wobei eine Ähnlichkeit oder Identität der Darstellung der Eingangsbilder und der Trainingsbilder nicht notwendig ist, d. h. es ist nicht notwendig, Eingangsbilder bereitzustellen, die sich von den Trainingsbildern nur durch den Darstellungsstil unterscheiden.
-
Durch das obige Verfahren kann somit ein neuronales Netz (Generatornetzwerk) trainiert werden, das automatisiert und überwacht aus synthetischen Eingangsbildern, die beispielsweise eine Verkehrssituation schematisch bzw. stilisiert zeigen, photorealistische Ausgangsbilder der entsprechenden Verkehrssituation generiert. Die Ausgangsbilder können dann dazu verwendet werden, Fahrerassistenzfunktionen bzw. autonome Fahrfunktionen zu entwickeln und/oder zu testen. Ein Vorteil besteht insbesondere darin, dass Situationen erstellt werden können, die in der Realität nicht getestet werden können, wie z. B. eine auf die Fahrbahn rennende Person zum Testen eines Bremsassistenzsystems bzw. zum Testen eines Ausweichverhaltens einer autonomen Fahrfunktion.
-
Insgesamt lässt sich durch das oben beschriebene Trainingsverfahren eine deutlich verbesserte Umsetzung eines Eingangsbildes eines ersten Darstellungsstils in ein entsprechendes Ausgangsbild eines zweiten Darstellungsstils erreichen, wobei das Trainingsverfahren in einfacher Weise implementiert werden kann und eine hohe Zuverlässigkeit und Robustheit aufweist. Auch führt das obige Trainingsverfahren zu besseren Resultaten, d. h. eine verbesserte präzisere Umsetzung des Eingangsbildes des ersten Darstellungsstils in das Ausgangsbild des zweiten Darstellungsstils, als entsprechende herkömmliche Verfahren.
-
Weiterhin kann das Trainieren des Diskriminatornetzwerks und des Generatornetzwerks gleichzeitig oder wechselweise wiederholt durchgeführt werden, insbesondere mithilfe eines Backpropagation-Verfahrens, bis eine Abbruchbedingung erfüllt ist.
-
Es kann vorgesehen sein, dass die Abbruchbedingung erfüllt ist, wenn eine Anzahl von Durchgängen oder eine vorbestimmte Güte der vom Generatornetzwerk generierten Ausgangsbilder erreicht ist.
-
Weiterhin kann die Güte des einen oder der mehreren Trainingsbilder und/oder des einen oder der mehreren Ausgangsbilder jeweils durch das Diskriminatornetzwerk bestimmt werden und einer Bewertung entsprechen, in welchem Maß es sich bei dem betreffenden Bild um ein Bild der zweiten Domäne handelt.
-
Insbesondere kann der Diskriminatorfehlerwert abhängig von einem Abweichungsmaß für die Abweichung zwischen der jeweiligen Güte des betreffenden einen Trainingsbildes oder der betreffenden mehreren Trainingsbilder und einem Bewertungslabel, das ein Trainingsbild als ein echtes Bild der zweiten Domäne angibt, und abhängig von einem Abweichungsmaß für die Abweichung zwischen der jeweiligen Güte des betreffenden einen Ausgangsbildes oder der betreffenden mehreren Ausgangsbilder und einem Bewertungslabel, das ein von dem Generatornetzwerk generiertes Ausgangsbild als unechtes Bild der zweiten Domäne angibt, bestimmt werden, wobei das Abweichungsmaß insbesondere einem Mean Squared Error oder einer binären Cross Entropy entspricht.
-
Es kann vorgesehen sein, dass die Ähnlichkeitsgröße von einem SSIM-Index für eine strukturelle Ähnlichkeit zwischen einem der Eingangsbilder und einem durch das Generatornetzwerk aus dem betreffenden Eingangsbild generierten Ausgangsbild abhängt oder diesem entspricht.
-
Weiterhin kann das erste und/oder das zweite neuronale Netz als Convolutional Neural Network) (faltendes neuronales Netz) ausgebildet sein, wobei insbesondere das erste und/oder das zweite neuronale Netz eine Hintereinanderschaltung von einigen Convolutional Layer-Blöcken (Faltungsblöcken), einigen ResNet-Blöcken und einigen Deconvolutional-Blöcken aufweisen, wobei jeder der Blöcke als eine Aktivierungsfunktion eine ReLU-, leaky-ReLU-, tanh- oder Sigmoid-Funktion enthalten kann.
-
Weiterhin kann der Generatorfehlerwert von einem Abweichungsmaß für die Abweichung zwischen der jeweiligen Güte des von dem Generatornetzwerk abhängig von dem Eingangsbild bereitgestellten Ausgangsbilds und einem Bewertungslabel aus dem Diskriminatornetzwerk, das ein Bild der zweiten Domäne angibt, abhängen, wobei das Abweichungsmaß insbesondere einem Mean Squared Error oder einer binären Cross Entropy entspricht.
-
Gemäß einer Ausführungsform kann das Training des Diskriminatornetzwerks und/oder des Generatornetzwerks nur dann durchgeführt werden, wenn eine von dem aktuellen Diskriminatorfehlerwert und/oder von dem Generatorfehlerwert abhängige Bedingung erfüllt ist.
-
Weiterhin kann ein Verfahren zum Bereitstellen einer Steuerung für ein technisches System, insbesondere für einen Roboter, ein Fahrzeug, ein Werkzeug oder eine Werkmaschine, vorgesehen sein, wobei das obige Verfahren zum Trainieren eines ersten neuronalen Netzes ausgeführt wird, wobei das trainierte erste neuronale Netz verwendet wird, um Trainingsbilder, d.h. Ausgangsbilder der zweiten Domäne, zu erzeugen, mit denen die Steuerung, die insbesondere ein neuronales Netz enthält, trainiert wird. Insbesondere kann das technische System mithilfe der Steuerung betrieben werden.
-
Gemäß einem weiteren Aspekt ist eine Verwendung eines ersten neuronalen Netzes, das entsprechend dem obigen Verfahren trainiert ist, zum Generieren von photorealistischen Ausgangsbildern in einer zweiten Domäne abhängig von vorgegebenen Eingangsbildern in einer ersten Domäne, die insbesondere über eine Skript-basierte Beschreibung erstellt werden
-
Weiterhin können die erzeugten photorealistischen Ausgangsbilder als künstliche Kamerabilder zum Herstellen eines Klassifikators für Umgebungssituationen verwendet werden.
-
Gemäß einem weiteren Aspekt ist ein GAN-Netzwerk zum Trainieren eines ersten neuronalen Netzes zur Umwandlung eines Eingangsbildes einer ersten Domäne in ein Ausgangsbild einer zweiten Domäne, wobei das Training auf für das Training bereitgestellten Eingangsbildern der ersten Domäne und Trainingsbildern der zweiten Domäne durchgeführt wird, wobei das GAN-Netzwerk ein Generatornetzwerk, das das erste neuronale Netz umfasst, und ein Diskriminatornetzwerk aufweist, das ein zweites neuronales Netz umfasst, wobei das GAN-Netzwerk ausgebildet ist, um
- - das Diskriminatornetzwerk basierend auf einem Diskriminatorfehlerwert und einem oder mehreren Trainingsbildern und/oder einem oder mehreren Ausgangsbildern, die durch Verarbeiten eines oder mehrerer der Eingangsbilder durch das Generatornetzwerk erzeugt werden, zu trainieren, wobei der Diskriminatorfehlerwert abhängig von einer jeweiligen Güte des einen oder der mehreren Trainingsbilder und/oder des einen oder der mehreren Ausgangsbilder bestimmt wird; und
- - das Generatornetzwerk basierend auf einem für das Training bereitgestellten Eingangsbild und einem Generatorfehlerwert zu trainieren, der von einer Güte des von dem Generatornetzwerk abhängig von dem Eingangsbild bereitgestellten Ausgangsbilds und einer Ähnlichkeitsgröße zwischen dem Eingangsbild und dem Ausgangsbild abhängt, die ein Maß für eine strukturelle Ähnlichkeit angibt.
-
Figurenliste
-
Ausführungsformen werden nachfolgend anhand der beigefügten Zeichnungen näher erläutert. Es zeigen:
- 1a und 1b beispielhafte Darstellungen eines Bildes eines ersten Darstellungsstils und eines zugeordneten Bildes eines zweiten Darstellungsstils;
- 2 ein Blockdiagramm zur Veranschaulichung eines Systems zum Trainieren eines GAN-Netzes zur Umsetzung eines Eingangsbildes eines ersten Darstellungsstils und eines Ausgangsbildes eines zweiten Darstellungsstils; und
- 3 ein Flussdiagramm zur Veranschaulichung eines Verfahrens zum Trainieren eines neuronalen Netzes zur Umsetzung eines Eingangsbildes in ein Ausgangsbild eines davon verschiedenen Darstellungsstils.
-
Beschreibung von Ausführungsformen
-
Es soll ein neuronales Netz trainiert werden, das in der Lage ist, ein Eingangsbild in ein Ausgangsbild umzuwandeln. Ziel ist es, dass das Eingangsbild in einer ersten Domäne, d. h. in einem ersten Darstellungsstil, bereitgestellt wird und in ein dem Eingangsbild entsprechendes Ausgangsbild in einer zweiten Domäne, d. h. in einem zweiten von dem ersten verschiedenen Darstellungsstil, bereitgestellt wird. „Darstellungsstil“ bezeichnet hierin eine Darstellungsweise einer in dem entsprechenden Bild enthaltenen Information.
-
So können beispielsweise ein Segmentierungsbild, das eine Segmentierung von Objekt- und Hintergrundbereichen eines photorealistischen Bilds angibt, oder ein sonstiges künstlich erzeugtes (synthetisches Bild), wie z.B. eine Skizze, als Eingangsbild eine Vorlage darstellen, aus der ein photorealistisches Bild als Ausgangsbild generiert wird, so dass das Eingangsbild und das Ausgangsbild unterschiedlichen Darstellungsstilen entsprechen. 1a und 1b zeigen beispielhafte Darstellungen eines synthetischen Bildes bzw. eines dem synthetischen Bild entsprechenden photorealistischen Bildes in Skizzenform und als realistische Darstellungen.
-
Eine mögliche Anwendung eines so trainierten neuronalen Netzes könnte darin bestehen, ein vorgegebenes Eingangsbild in Form eines Segmentierungsbildes, bei dem lediglich Segmentierungsbereiche vorgegeben sind, in ein künstlich erzeugtes photorealistisches Ausgangsbild umzuwandeln. So kann, wie in 1 als Realbild und als Skizzenbild gezeigt, beispielsweise ein Segmentierungsbild (1a), in dem lediglich Flächen gekennzeichnet sind, die beispielsweise Darstellungsbereiche für einen Fahrbahnbereich, einen Bebauungsbereich, einen Vegetationsbereich, von Fremdfahrzeugen, von Fußgängern, von Fahrradfahrern oder von sonstigen Objekten aufweisen, in ein entsprechendes photorealistisches Bild (1b) umgewandelt werden. Ein solches photorealistisches Bild kann dann in einer Test- oder Entwicklungsumgebung zum Testen und/oder Erstellen von Fahrerassistenzfunktionen oder autonomen Fahrfunktionen verwendet werden.
-
Zum Trainieren eines neuronalen Netzes kann ein System verwendet werden, das strukturell dem Blockschaltbild der 2 entspricht. 2 zeigt im Wesentlichen eine Grundstruktur eines GAN-Netzwerks 1 mit einem Generatornetzwerk 2, das ein erstes neuronales Netz umfasst, und einem Diskriminatornetzwerk 3, das ein zweites neuronales Netz umfasst. Das erste und/oder zweite neuronale Netz können insbesondere als faltende neuronale Netze (convolutional neural networks) oder andere Arten von neuronalen Netzen ausgebildet sein.
-
Für das erste neuronale Netz des Generatornetzwerks 2 sind verschiedene an sich bekannte Architekturen denkbar. Insbesondere kann eine Hintereinanderschaltung von einigen Convolutional Layer-Blöcken (Faltungsblöcken), einigen ResNet-Blöcken und einigen Deconvolutional-Blöcken gewählt werden. Jeder dieser Blöcke kann optional eine Batch- oder andere Art der Normalisierung umfassen. Jeder der Blöcke kann weiterhin keine, eine oder mehrere Aktivierungsfunktionen enthalten, wie beispielsweise eine ReLU-, leaky-ReLU-, tanh- oder Sigmoid-Funktion.
-
Für das zweite neuronale Netz des Diskriminatornetzwerks 3 können ebenfalls verschiedene an sich bekannte Netzwerkarchitekturen vorgesehen werden. Als Netzwerkarchitektur können eine Hintereinanderschaltung von Blöcken, wie mehreren Convolutional Layer-Blöcken (Faltungsblöcken), einigen ResNet-Blöcken und einigen Deconvolutional-Blöcken verwendet werden. Jeder dieser Blöcke kann ein Batch- oder eine andere Art der Normalisierung enthalten. Weiterhin kann jeder der Blöcke keine, eine oder mehrere Aktivierungsfunktionen enthalten, wie beispielsweise eine ReLU-, leaky-ReLU-, tanh- oder Sigmoid-Funktion.
-
Das Generatornetzwerk 2 ist ausgebildet, um basierend auf einem Eingangsbild E eines ersten Darstellungsstils ein Ausgangsbild A eines zweiten Darstellungsstils zu erzeugen. Das Eingangsbild E kann ein Bild mit einem oder mehreren Farbkanälen, insbesondere drei Farbkanälen, sein und das Ausgangsbild A ein Tensor desselben oder abweichenden Formats. Alternativ kann dem Eingangsbild E ein Zufallstensor hinzugefügt werden, der dafür sorgt, dass das Ausgangsbild A eine höhere Variabilität aufweist.
-
Das Generatornetzwerk 2 wird basierend auf einem bereitgestellten Generatorfehlerwert GF trainiert, insbesondere mithilfe eines Backpropagation-Verfahrens. Der Generatorfehlerwert GF wird in einem Bewertungsblock 4 erzeugt, der einerseits die strukturelle Ähnlichkeit S bzw. Unähnlichkeit des Eingangsbilds E und des von dem Generatornetzwerk 2 basierend auf einem vorgegebenen Eingangsbild E generierten Ausgangsbilds A (Bildähnlichkeit (Ähnlichkeit des Bildinhalts bzw. der Szene) ungeachtet der Domäne bzw. des Darstellungsstils) und andererseits die Güte C des Ausgangsbildes A angibt. Die Güte C des Ausgangsbildes A gibt die Nähe des Darstellungsstils des Ausgangsbildes A zu dem Darstellungsstil von vorgegebenen Trainingsbildern T an.
-
Die Güte C des Ausgangsbildes A wird mithilfe des Diskriminatornetzwerks 3 bestimmt, dem als Eingang das erstellte Ausgangsbild A bereitgestellt wird. Durch Berücksichtigung der Güte C beim Training des Generatornetzwerks 3 wird erreicht, dass das generierte Ausgangsbild A den zweiten Darstellungsstil annimmt. Zusätzlich wird durch Berücksichtigung der strukturellen Ähnlichkeit S zwischen Eingangsbild E und Ausgangsbild A erreicht, dass die Bilder denselben Bildinhalt haben.
-
Zum Training können dem Diskriminatornetzwerk 3 Trainingsbilder T zugeführt werden, die Bilder des zweiten Darstellungsstils sind und die jeweils mit einem Bewertungslabel BT versehen sind, das den zweiten Darstellungsstil der Trainingsbilder bestätigt. Beispielsweise können die Trainingsbilder T mit einem Bewertungslabel BT von 1 versehen werden, was angibt, dass die Trainingsbilder T dem zweiten Darstellungsstil entsprechen. Um die Diskriminierungsfähigkeit des Diskriminatornetzwerks 3 zu verbessern, können zum Training dem Diskriminatornetzwerk 3 auch die durch das Generatornetzwerk 2 erzeugten Ausgangsbilder A bereitgestellt, die mit einem Bewertungslabel BA von 0 versehen sind, was angibt, dass der Darstellungsstil dieser Bilder sich von dem zweiten Darstellungsstil erheblich unterscheidet. Durch Bereitstellen der Trainingsbilder T und der Ausgangsbilder mit den zugehörigen Bewertungslabels BT , BA kann das Diskriminatornetzwerk 3 z. B. mithilfe des Backpropagation-Verfahrens oder eines sonstigen Trainingsverfahrens trainiert werden, die Güte C von durch das Generatornetzwerk 2 bereitgestellten Ausgangsbildern A zu bestimmen.
-
Beim Training des Diskriminatornetzwerks 3 kann dieses mithilfe einer Diskriminatorfehlerfunktion DFK, wie z. B. einer Mean Squared Error, binären Cross Entropy oder anderer geeigneter Kostenfunktionen trainiert werden. Dadurch erhält das Diskriminatornetzwerk 3 durch Beeinflussung des Generatorfehlerwerts die Fähigkeit, dass das Generatornetzwerk 2 nicht nur Ausgangsbilder A erzeugt, die dem zweiten Darstellungsstil entsprechen, sondern dass gleichzeitig die Ausgangsbilder A denselben Bildinhalt haben, wie das dem Generatornetzwerk 2 zugeführte Eingangsbild E des ersten Darstellungsstils.
-
Durch eine wechselseitige oder gleichzeitige Trainingsphase von Generatornetzwerk 2 und Diskriminatornetzwerk 3 können diese iterativ verbessert werden. Dabei wird das Generatornetzwerk 2 mit dem Generatorfehlerwert GF mithilfe eines Backpropagation-Verfahrens oder eines sonstigen Trainingsverfahren trainiert, wobei der Generatorfehlerwert GF durch die strukturelle Ähnlichkeit zwischen dem Eingangsbild E und dem durch das Generatornetzwerk 2 generierten Ausgangsbild A und durch die von dem Diskriminatornetzwerk 3 bestimmte Güte C des durch das Generatornetzwerk 2 generierten Ausgangsbilds A bestimmt ist.
-
Abhängig von dem Trainingsbild T als Eingang des Diskriminatornetzwerks 3 wird ein Tensor Bx bereitgestellt. Dieser kann mehrdimensional sein oder einer reellen Zahl entsprechen. Der Tensor Bx entspricht dem Bewertungslabel und kann für die Trainingsbilder elementweise jeweils 1 und für die durch das Generatornetzwerk erzeugten Bilder jeweils 0 angeben. Die Bewertungslabel entsprechen somit B1 für ein Trainingsbild T und B0 für ein von dem Generatornetzwerk generiertes Ausgangsbild A. Die Dimension des Bewertungslabels B ist im Wesentlichen frei wählbar und abhängig von der gewählten Netzwerkarchitektur. Das Bewertungslabel B kann auch mit einer anderen Normierung versehen sein, und insbesondere können sogenannte weiche Bewertungslabel B angesetzt werden. d. h., dass anstelle der Werte 1 und 0 auch entsprechend leicht verrauschte Werte angenommen werden können, wodurch die Stabilität des Trainings je nach Anwendungsfall verbessert werden kann.
-
Die Abbildung des Diskriminatornetzwerks 3 entspricht Dθ
D , wobei θD die zu optimierenden Diskriminatorparameter (Gewichtungen) des neuronalen Netzes des Diskriminatornetzwerks sind. Analog entspricht die Abbildung, die vom Generatornetzwerk 2 durchgeführt wird, Gθ
C , wobei θG die zu optimierenden Generatorparameter (Gewichtungen) des neuronalen Netzes des Generatornetzwerks 2 sind.
-
Die Diskriminatorfehlerfunktion zum Training des Diskriminatornetzwerks
2 dient der Bestimmung des Diskriminatorfehlerwerts
DF, der im Training zur Parameteroptimierung der Diskriminatorparameter
θD verwendet wird. Die Verlustfunktion weist mehrere Summanden
ID auf. Die Diskriminatorfehlerfunktion ist in dem Diskriminatorbewertungsblock
4 implementiert und bewertet zum Training eine Abweichung
lD zwischen einer für ein angelegtes Bild (Trainingsbild T oder Ausgangsbild A) ermittelten Güte C (T) = D
θ
D (T) oder C (A) = D
θ
D (A) und einem dem angelegten (zugeführten) Bild zugeordneten Bewertungslabel
BA ,
BT (z. B. 1 für Trainingsbild T oder 0 für ein Ausgangsbild A). Die Diskriminatorfehlerfunktion DFK, die für dieses Training des Diskriminatornetzwerks
3 verwendet wird, muss ein Abweichungsmaß
lD realisieren, wie weit C(T), C(A) und das entsprechende Bewertungslabel
Ba , ,
BT voneinander abweichen. Zur Bestimmung des Abweichungsmaßes
lD kann man jede geeignete Funktion zur Abstandsbewertung annehmen, wobei insbesondere der Mean Squared Error (MSE) oder die binäre Cross Entropy (BCE) hierfür geeignet sind. Somit gehen die beiden Größen
und
in die Verlustfunktion des Diskriminatornetzwerks
3 ein, so dass beispielsweise DF = l
D(T) + l
D(A) gewählt werden kann.
-
Zum Training des Generatornetzwerks 2 wird eine Generatorfehlerfunktion verwendet, um einen Generatorfehlerwert, der aus zwei Teilen besteht, wobei ein erster Teil einem Abweichungsmaß lG zwischen der Güte C des Ausgangsbilds AT entspricht, das basierend auf einem zum Training angelegten Eingangsbild ET generiert wurde, und einem Bewertungslabel B, das ein vollständiges Erreichen des zweiten Darstellungsstils angibt, insbesondere einem Bewertungslabel BT , das Trainingsbildern T für das Training des Diskriminatornetzwerks 3 vorgegeben wird, vorzugsweise einem Bewertungslabel von 1.
-
Zur Bestimmung des Abweichungsmaßes
lG mithilfe der Generatorfehlerfunktion kann man jede geeignete Funktion zur Abstandsbewertung annehmen, wobei insbesondere der Mean Squared Error (MSE) oder die binäre Cross Entropy (BCE) hierfür geeignet sind.
wobei A
T = G(E
T) entspricht.
-
Der zweite Teil der Generatorfehlerfunktion entspricht einer Ähnlichkeitsgröße S, die in einem Ähnlichkeitsblock 6 mithilfe einer Ähnlichkeitsbewertungsfunktion ermittelt wird. Die Ähnlichkeitsbewertungsfunktion berechnet basierend auf dem für das Training verwendeten Eingangsbild ET des ersten Darstellungsstils und dem entsprechend durch das Generatornetzwerk 2 generierte Ausgangsbild AT des zweiten Darstellungsstils ein Maß für eine strukturelle Ähnlichkeit der beiden Bilder. Insbesondere kann als eine Ähnlichkeitsbewertungsfunktion eine Funktion vorgesehen sein, die bei einer hohen strukturellen Ähnlichkeit einem Wert nahe 1 und bei keinerlei struktureller Ähnlichkeit nahe -1 annimmt. Geeignet als Ähnlichkeitsbewertungsfunktion ist beispielsweise, eine sogenannte SSIM-Funktion zu wählen, die einen Index struktureller Ähnlichkeit angibt oder eine darauf aufbauende MSSIM, wie beispielsweise aus Zhou Wang et al., „Image Quality Assessment: From Error Visibility to Structural Similarity", IEEE TRANSACTIONS ON IMAGE PROCESSING, VOL. 13, NO. 4, APRIL 2004, Seite 600 - 612 bekannt, verwendet.
-
In dem Flussdiagramm der 3 wird anschaulich das Trainingsverfahren für das erste neuronale Netz des Generatornetzwerks 2 beschrieben, so dass das trainierte Generatornetzwerk 2 zur Änderung eines Darstellungsstils eines Eingangsbildes E verwendet werden kann. Dabei wird initial von einer Anfangsparametrisierung des ersten neuronalen Netzes mit den Generatorparametern θG und dem zweiten neuronalen Netz mit den Diskriminatorparametern θD ausgegangen.
-
In Schritt S1 wird basierend auf einem zum Training bereitgestellten Eingangsbild ET eines ersten Darstellungsstils ein Ausgangsbild AT eines zweiten Darstellungsstils berechnet: AT = Gθ
D (ET).
-
Mithilfe des Diskriminatornetzwerks
3 wird in Schritt
S2 eine Güte
des von dem Generatornetzwerk
2 generierten Ausgangsbildes
AT und daraus das Abweichungsmaß
ermittelt.
-
In Schritt
S3 wird die Ähnlichkeitsgröße S zwischen dem zum Training bereitgestellten Eingangsbild
ET und dem entsprechenden Ausgangsbild
AT berechnet:
-
Basierend auf dem Abweichungsmaß
lG und dem Ähnlichkeitsmaß S wird mithilfe der Generatorfehlerfunktion GFF in Schritt
S4 ein Generatorfehlerwert GF für das generierte Ausgangsbild
AT ermittelt.
-
Beispielsweise kann der Generatorfehlerwert GF bestimmt sein als: GF = lG+k*S, wobei der Optimierungsfaktor k entsprechend empirisch gewählt werden kann und insbesondere zwischen -1...-3 gewählt werden kann, wenn lG ∈ {0; 1} und S∈ {-1; 1} sind.
-
Basierend auf dem Generatorfehlerwert GF wird in Schritt S5 ein Lernschritt für das erste neuronale Netz des Generatornetzwerk 2 durchgeführt, insbesondere basierend auf einem Backpropagation-Verfahren. Dadurch werden die Generatorparameter θG basierend auf den partiellen Ableitungen dGF/dθG aktualisiert.
-
Gegebenenfalls können die Schritte S1 bis S5 des Trainings des Generatornetzwerks 2 mit demselben oder einem anderen zum Training bereitgestellten Eingangsbild ET wiederholt werden.
-
Nun beginnt das Training des Diskriminatornetzwerks
3. In einem nachfolgenden Schritt
S6 wird für ein oder mehrere vorgegebene Trainingsbilder T
1..n in dem zweiten Darstellungsstil eine Güte C(T
1..n) entsprechend dem aktuellen Trainingszustand des Diskriminatornetzwerks
3 ermittelt und daraus in Schritt
S7 das bzw. die Abweichungsmaße l
D(T
1..n) bestimmt:
-
Weiterhin wird in Schritt
S8 für ein oder mehrere zuletzt generierte Ausgangsbilder A
1..m entsprechend eine Güte C(A
1..m) ermittelt und daraus in Schritt
S9 das bzw. die Abweichungsmaße l
D(A
1..m) bestimmt:
-
In einem nächsten Schritt
S10 wird ein Diskriminatorfehlerwert DF beispielsweise entsprechend folgender Formel ermittelt:
-
Basierend auf dem Diskriminatorfehlerwert DF kann in Schritt S11 ein Lernschritt für das zweite neuronale Netz des Diskriminatornetzwerks 3 durchgeführt werden. Dadurch werden die Diskriminatorparameter θD in einem Backpropagation-Verfahren entsprechend mithilfe der partiellen Ableitungen dDF/dθD aktualisiert.
-
Selbstverständlich kann das Backpropagation-Verfahren auch nur basierend auf einem Trainingsbild T und/oder einem Ausgangsbild A durchgeführt werden.
-
Zusätzlich können für das Trainieren des Diskriminatornetzwerks 3 nicht nur generierte Bilder in dem zweiten Darstellungsstil, sondern auch sonstige Trainingsbilder in dem ersten Darstellungsstil mit der Güte 0 (oder nahe 0) verwendet werden. Hierdurch erleichtert man es dem Diskriminator ggf. die Unterschiede zwischen beiden Domänen besser zu lernen.
-
Nun wird in Schritt S12 eine Abbruchbedingung überprüft. Ist die Abbruchbedingung nicht erfüllt (Alternative: Nein), wird das Verfahren mit Schritt S1 fortgesetzt, anderenfalls (Alternative: Ja) wird das Verfahren mit Schritt S13 fortgesetzt. Eine Abbruchbedingung kann beispielsweise das Erreichen einer Anzahl von Durchgängen sein oder das Erreichen eines vorbestimmten Diskriminatorfehlerwerts DF und/oder Generatorfehlerwerts GF, oder das Erreichen einer vorbestimmten Güte C(A) der vom Generatornetzwerk 2 generierten Ausgangsbilder A.
-
Der Schritt S13 stellt nun das Generatornetzwerk 2 als System zur Umsetzung eines Eingangsbildes E eines ersten Darstellungsstils bzw. einer ersten Domäne in ein Ausgangsbild A eines zweiten Darstellungsstils bzw. einer zweiten Domäne dar.
-
Das oben beschriebene Verfahren kann in vielfältiger Weise modifiziert werden. So ist es möglich, dass die Diskriminatorparameter θD und Generatorparameter θG nur unter bestimmten Bedingungen aktualisiert werden, z. B. abhängig von dem aktuellen Diskriminatorfehlerwert DF zum Training des Diskriminatornetzwerks 3 bzw. des Generatorfehlerwerts GF zum Training des Generatornetzwerks 2. Auch die Größe der Batches für das Training des Diskriminatornetzwerks 3 oder des Generatornetzwerks 2 kann variiert werden.
-
Weiterhin kann bei der Diskriminatorfehlerfunktion DFK des Diskriminatornetzwerks 3 noch ein Eingangsbild-Abweichungsmaß additiv hinzugefügt werden, die eine Abweichung der Güte C des Eingangsbildes von einem Bewertungslabel BA für ein unechtes Bild, d. h. eines vom Generatornetzwerk generierten Ausgangsbildes A angibt. Dadurch kann die Stabilität des Trainings erhöht werden.
-
Das trainierte Generatornetzwerk 2 kann dann dazu benutzt werden, aus Eingangsbildern E, die über eine Skript-basierte Beschreibung erstellt wurden, die z. B. Verkehrssituationen zeigen, Eingangsbilder E eines ersten Darstellungsstils zu erzeugen. Ist das Generatornetzwerk 2 basierend auf Bildern des ersten Darstellungsstils und photorealistischen Bildern von Verkehrssituationen trainiert worden, so lassen sich den künstlich erzeugten Eingangsbildern E photorealistische Bilder zuordnen, die eine entsprechende Verkehrssituation darstellen. Dadurch können mithilfe des Generatornetzwerks 2 beliebig viele photorealistische Bilder erstellt werden, die gewünschte Verkehrssituationen abbilden.
-
Das Generatornetzwerk 2 lässt sich auch in umgekehrter Weise trainieren, um photorealistische Bilder in synthetische Bilder umzuwandeln, um beispielsweise Reflexionen oder Ähnliches aus den photorealistischen Bildern zu entfernen, wenn beispielsweise ein Klassifikator synthetische Bilder besser klassifizieren kann als photorealistische Bilder.
-
Weiterhin kann das obige System auch so trainiert werden, um aus photorealistischen Bildern segmentierte Bilder zu erstellen, wobei in diesem Fall die photorealistischen Bilder dem ersten Darstellungsstil entsprechen und die segmentierten Bilder den Bildern des zweiten Darstellungsstils.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Nicht-Patentliteratur
-
- Zhou Wang et al., „Image Quality Assessment: From Error Visibility to Structural Similarity“, IEEE TRANSACTIONS ON IMAGE PROCESSING, VOL. 13, NO. 4, APRIL 2004, Seite 600 - 612 [0052]