DE102022204263A1 - Verfahren und Vorrichtung zum Trainieren eines neuronalen Netzes - Google Patents

Verfahren und Vorrichtung zum Trainieren eines neuronalen Netzes Download PDF

Info

Publication number
DE102022204263A1
DE102022204263A1 DE102022204263.8A DE102022204263A DE102022204263A1 DE 102022204263 A1 DE102022204263 A1 DE 102022204263A1 DE 102022204263 A DE102022204263 A DE 102022204263A DE 102022204263 A1 DE102022204263 A1 DE 102022204263A1
Authority
DE
Germany
Prior art keywords
patch
source
target
patches
training
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102022204263.8A
Other languages
English (en)
Inventor
Maximilian Menke
Thomas Wenzel
Reiko Lettmoden
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE102022204263.8A priority Critical patent/DE102022204263A1/de
Priority to US18/302,230 priority patent/US20230351741A1/en
Priority to CN202310483635.0A priority patent/CN116977669A/zh
Publication of DE102022204263A1 publication Critical patent/DE102022204263A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/761Proximity, similarity or dissimilarity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0475Generative networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/094Adversarial learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/26Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/751Comparing pixel values or logical combinations thereof, or feature values having positional relevance, e.g. template matching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/49Segmenting video sequences, i.e. computational techniques such as parsing or cutting the sequence, low-level clustering or determining units such as shots or scenes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • G06V20/58Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/07Target detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/12Acquisition of 3D measurements of objects

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Molecular Biology (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Image Analysis (AREA)

Abstract

Computerimplementiertes Verfahren (700) zum Trainieren eines maschinellen Lernsystems (70), wobei das maschinelle Lernsystem (70) für ein Transferieren von Bildern einer Quellendomäne in eine Zieldomäne trainiert wird, wobei das Verfahren die folgenden Schritte umfasst:• Ermitteln einer Mehrzahl von Quellenpatches (A21) basierend auf einer Mehrzahl von Quellenbildern (A11) einer Quellendomäne und einer Mehrzahl von Zielpatches (A22) basierend auf einer Mehrzahl von Zielbildern (A12) einer Zieldomäne, wobei den Quellenpatches (A21) und den Zielpatches (A22) jeweils pixelweise Meta-Informationen (B41, B42) zugeordnet sind;• Ermitteln einer Mehrzahl von Tupeln (B21, B62), wobei jeweils ein Tupel einen Quellenpatch (B21) der Mehrzahl von Quellenpatches (A21) und zumindest einen Zielpatch (B62) der Mehrzahl von Zielpatches (A22) enthält, wobei der zumindest eine Zielpatch (B62) gemäß eines Ähnlichkeitsmaßes einen von k nächsten Nachbarn des Quellenpatches (B21)charakterisiert, wobei k ein Hyperparameter des Verfahrens ist und das Ähnlichkeitsmaß eine Ähnlichkeit zwischen einem Quellenpatch (B21) und einem Zielpatch (B62) basierend auf den pixelweisen Meta-Informationen des Quellenpatches und den pixelweisen Meta-Informationen des Zielpatches charakterisiert;• Trainieren des maschinellen Lernsystems basierend auf den Quellenpatches der Tupel und der Zielpatches der Tupel.

Description

  • Die vorliegende Erfindung betrifft ein Verfahren zum Trainieren eines maschinellen Lernsystems, ein Verfahren zum Trainieren eines Objektdetektors, ein Verfahren zum Betreiben eines Steuerungssystems, ein Computerprogramm und ein maschinenlesbares Speichermedium.
  • Stand der Technik
  • Aus der nicht vorveröffentlichten DE 10 2022 201 679.3 ist ein Verfahren zum Trainieren eines maschinellen Lernsystems bekannt, welches die folgenden Schritte umfasst:
    • • Bereitstellen eines Quellenbildes aus einer Quellendomäne und eines Zielbildes einer Zieldomäne;
    • • Ermitteln eines ersten generierten Bildes basierend auf dem Quellenbild mittels eines ersten Generators des maschinellen Lernsystems und ermitteln einer ersten Rekonstruktion basierend auf dem ersten generierten Bild mittels eines zweiten Generators des maschinellen Lernsystems;
    • • Ermitteln eines zweiten generierten Bildes basierend auf dem Zielbild mittels des zweiten Generators und ermitteln einer zweiten Rekonstruktion basierend auf dem zweiten generierten Bild mittels des ersten Generators;
    • • Ermitteln eines ersten Verlustwertes, wobei der erste Verlustwert einen ersten Unterschied des Quellenbildes und der ersten Rekonstruktion charakterisiert, wobei der erste Unterschied gemäß einer ersten Aufmerksamkeitskarte gewichtet wird, und ermitteln eines zweiten Verlustwertes, wobei der zweite Verlustwert einen zweiten Unterschied des Zielbildes und der zweiten Rekonstruktion charakterisiert, wobei der zweite Unterschied gemäß einer zweiten Aufmerksamkeitskarte gewichtet wird;
    • • Trainieren des maschinellen Lernsystems durch Trainieren des ersten Generators und/oder des zweiten Generators basierend auf dem ersten Verlustwert und/oder dem zweiten Verlustwert.
  • Aus Richter et al. „Enhancing photorealism enhancement“, 2021, https://arxiv.org/pdf/2105.04619v1.pdf ist ein Verfahren zum Verbessern der Realitätsnähe von synthetischen Bildern bekannt. Bei dem die Bilder durch ein Faltungsnetzwerk verbessert werden, das die von herkömmlichen Rendering-Pipelines erzeugten Zwischendarstellungen nutzt. Das Netzwerk wird durch ein adversarialles Training trainiert, das eine starke Überwachung auf mehreren Wahrnehmungsebenen bietet. Hierbei wird eine neue Strategie für die Auswahl von Bildfeldern während des Trainings vorgeschlagen.
  • Vorteile der Erfindung
  • Viele moderne technische Systeme verarbeiten Daten, die aus einer Umgebung des technischen Systems aufgenommen wird, mit Verfahren des maschinellen Lernens. Diese Verfahren sind typischerweise in der Lage, Prädiktionen bezüglich der Daten aufzustellen, und zwar basierend auf statistischem Wissen, welches basierend auf einer Menge von Trainingsdaten erworben wurde.
  • Maschinelle Lernsysteme begegnen typischerweise Problemen, falls eine statistische Verteilung von Daten, die das maschinelle Lernsystem zur Inferenzzeit verarbeitet, sich von einer statistischen Verteilung von Daten, die zum Training des maschinellen Lernsystems verwendet werden, unterscheidet. Dieses Problem ist im Bereich des maschinellen Lernens auch als Domänenverschiebung (engl. domain shift) bekannt.
  • Es gibt viele Beispiele von technischen Systemen, die einer mehr oder weniger natürlichen oder zwangsläufigen Domänenverschiebung unterliegen. Zum Beispiel im Bereich der zumindest teilweise autonomen Fahrzeuge, ergibt sich die Situation, dass in regelmäßigen Zyklen neue Fahrzeuge auf der Straße zu beobachten sind. Für Sensoren von zumindest teilweise autonomen Fahrzeugen, wie etwa LIDAR-Sensoren, Kamerasensoren oder Radarsensoren, resultieren solche Fahrzeuge typischerweise auch in Messungen, die so in potenziellen Trainingsmengen unbekannt sind, da die Fahrzeuge per Definition neu sind und somit auch die Sensormessungen, die von Ihnen aufgezeichnet werden.
  • Eine andere Form der Domänenverschiebung kann sich beim Wechsel von zwei Produktgenerationen eines Produkts ergeben. Beispielsweise gibt es Kamerasensoren, die maschinelle Lernsysteme umfassen, um eine von der Kamera aufgezeichnete Umgebung (also ein Kamerabild der Umgebung) bezüglich z.B. Positionen von Objekten auszuwerten. Zum Training solcher maschineller Lernsystem sind regelmäßig eine große Anzahl an Trainingsdaten notwendig. Wechselt nun die Produktgeneration der Kamera, wird z.B. ein neuer Bildsensor (engl. Image) verwendet, erzielt das maschinelle Lernsystem ohne Anpassung typischerweise nicht mehr die gleiche Prädiktionsgenauigkeit, wie bei der vorherigen Kamerageneration. Ein Produktgenerationenwechsel würde daher bedeutet, neue Trainingsdaten für das maschinelle Lernsystem zu ermitteln. Während die reinen Daten selbst typischerweise kostengünstig zu erlangen sind, sind die zum Training notwendigen Annotationen ungleich schwieriger zu erhalten und kostenintensiver, da typischerweise menschliche Experten die Annotationen erstellen müssen.
  • Zur Adaption von einer Quellendomäne auf eine Zieldomäne werden bei Bilddaten typischerweise Verfahren des maschinellen Lernens verwendet. Diesen Verfahren ist gemein, dass für die jeweiligen Verfahren benötigten Modelle typischerweise sehr groß sind und somit im praktischen Sinne unhandhabbar werden. Ein bekanntes Vorgehen ist daher, nicht jeweils komplette Bilder von der Quellendomäne in die Zieldomäne zu transferieren, sondern jeweils Ausschnitte eines Bildes (engl. patches) zu transferieren. Hierbei ergibt sich jedoch der bekannte Nachteil, dass eine zufällige Auswahl von Patches aus Quellen- und Zieldomäne zum Training eines maschinellen Lernverfahrens für einen Domänentransfer zu einer ungenügenden Genauigkeit des maschinellen Lernverfahrens führen kann. Dies liegt daran, dass die zufällig ausgewählten Patches vom semantischen Inhalt zu unterschiedlich sein können als das ein Domänentransfer sinnvoll möglich ist.
  • Vorteilhafterweise erlaubt das Verfahren mit Merkmalen des unabhängigen Anspruchs 1 ein maschinelles Lernsystem zu trainieren, welches ausgebildet ist, eine Quellendomäne auf eine Zieldomäne zu adaptieren (engl. domain adaption), wobei die Trainingsdaten derart ausgewählt werden, dass der Inhalt von Patches aus der Quellendomäne und Patches aus der Zieldomäne
  • Offenbarung der Erfindung
  • In einem ersten Aspekt betrifft die Erfindung ein computerimplementiertes Verfahren zum Trainieren eines maschinellen Lernsystems, wobei das maschinelle Lernsystem für ein Transferieren von Bildern einer Quellendomäne in eine Zieldomäne trainiert wird, wobei das Verfahren die folgenden Schritte umfasst:
    • • Ermitteln einer Mehrzahl von Quellenpatches basierend auf einer Mehrzahl von Quellenbildern einer Quellendomäne und einer Mehrzahl von Zielpatches basierend auf einer Mehrzahl von Zielbildern einer Zieldomäne, wobei den Quellenpatches und den Zielpatches jeweils pixelweise Meta-Informationen zugeordnet sind;
    • • Ermitteln einer Mehrzahl von Tupeln, wobei jeweils ein Tupel einen Quellenpatch der Mehrzahl von Quellenpatches und zumindest einen Zielpatch der Mehrzahl von Zielpatches enthält, wobei der zumindest eine Zielpatch gemäß eines Ähnlichkeitsmaßes einen von k nächsten Nachbarn des Quellenpatches charakterisiert, wobei k ein Hyperparameter des Verfahrens ist und das Ähnlichkeitsmaß eine Ähnlichkeit zwischen einem Quellenpatch und einem Zielpatch basierend auf den pixelweisen Meta-Informationen des Quellenpatches und den pixelweisen Meta-Informationen des Zielpatches charakterisiert;
    • • Trainieren des maschinellen Lernsystems basierend auf den Quellenpatches der Tupel und der Zielpatches der Tupel.
  • Ein Patch kann als ein Ausschnitt eines Bildes verstanden werden und somit wieder selbst als ein Bild. Patches aus Bildern einer Quellendomäne werden als Quellenpatches bezeichnet und Patches aus Bildern einer Zieldomäne als Zielpatches.
  • Das maschinelle Lernsystem kann insoweit verstanden werden, als dass es ausgebildet ist, ein Bild als Eingabe entgegenzunehmen und basierend auf dieser Eingabe ein weiteres Bild als Ausgabe zu ermitteln. Mittels des Verfahrens kann das maschinelle Lernsystem derart trainiert werden, dass es Bilder der Quellendomäne in Bilder der Zieldomäne umwandeln kann. Mit anderen Worten, das maschinelle Lernsystem ist ausgebildet, Bilder zu erzeugen, nämlich Zielbilder basierend auf Quellenbildern.
  • Eine Domäne kann als eine Wahrscheinlichkeitsverteilung verstanden werden, aus der Bilder generiert werden können. Das Verfahren kann daher auch derart verstanden werden, dass es Bilder aus einer Wahrscheinlichkeitsverteilung (Quellendomäne) in eine weitere Wahrscheinlichkeitsverteilung (Zieldomäne) transformiert.
  • Ein Bild kann insbesondere als eine Sensoraufzeichnung oder auch Messung eines Sensors verstanden werden. Als Sensoren, die Bilder als Messungen ermitteln können, können insbesondere Kamerasensoren, LIDAR-Sensoren, Radarsensoren, Ultraschallsensoren oder Wärmebildkameras verwendet werden. Ein Bild kann jedoch auch synthetisch generiert werden, zum Beispiel basierend auf einer Computersimulation, zum Beispiel mittels rendering einer virtuellen Welt. Für solche synthetische Bilder ist es oft sehr einfach möglich automatisiert Annotationen zu ermitteln, wobei mittels des Verfahrens dann aus den synthetischen Bildern weitere Bilder generiert werden können, die in ihrem Erscheinungsbild einem Bild z.B. eines Kamerasensors gleicht.
  • Im Verfahren sind den Quellenbildern und den Zielbildern, die zum Training verwendet werden, jeweils pixelweise Meta-Informationen zugeordnet. Mit anderen Worten, jeder Pixel ist mit zusätzlichen Informationen annotiert. Basierend auf diesen Informationen kann ein Ähnlichkeitsmaß ausgewertet werden, um so eine Ähnlichkeit zwischen einem Patch eines Quellenbildes und einem Patch eines Zielbildes zu ermitteln. Zum Training können dann die Patches so ausgewählt werden, dass durch ähnliche Patches in Quellen- und Zieldomäne das maschinelle Lernsystem mit ähnlichen semantischen Inhalten der Patches konfrontiert wird. Während des Trainings wird so verhindert, dass sich zufällige Korrelationen zwischen Quellenpatches und Zielpatches dahingehend negativ auswirken, dass das maschinelle Lernsystem falsche Zusammenhänge zwischen Quellen- und Zieldomäne lernt. Dadurch wird die Abbildungsfähigkeit des maschinellen Lernsystems von der Quellen- auf die Zieldomäne verbessert.
  • Nach dem Training kann das maschinelle Lernsystem entweder auf ganze Bilder angewendet werden oder zum Transfer ein Quellenbild in Patches unterteilen und jeden Patch einzeln transferieren, zum Beispiel nach einem Rutschfenster (engl. sliding window) Ansatz. Die so ermittelten Patches können dann zu einem erzeugten Zielbild zusammengesetzt werden.
  • In bevorzugten Ausführungsformen können die pixelweisen Meta-Informationen eine semantische Segmentierung eines Quellenpatches oder eines Zielpatches charakterisieren. Alternativ oder zusätzlich können die pixelweisen Meta-Informationen eine Instanzsegmentierung des Quellenpatches oder des Zielpatches charakterisieren.
  • Die Meta-Informationen können insbesondere während des Trainings erzeugt werden und müssen daher nicht zu Beginn des Trainings vorliegen. Zum Beispiel kann ein vortrainiertes zweites maschinelles Lernsystem, wie etwa ein neuronales Netz, dazu ausgebildet sein für ein Bild (und damit für einen Patch) eine semantische Segmentierung und/oder eine Instanzsegmentierung durchzuführen. Während des Trainings können Patches aus der Quellen- und/oder Zieldomäne diesem zweiten maschinellen Lernsystem präsentiert werden, um so die Meta-Informationen für die jeweiligen Patches zu erhalten.
  • Bevorzugt kann dann die Ähnlichkeit zwischen dem Quellenpatch und dem Zielpatch einen Anteil von gleichen Klassen der semantischen Segmentierung des Quellenpatches und der semantischen Segmentierung des Zielpatches charakterisieren und/oder die Ähnlichkeit zwischen dem Quellenpatch und dem Zielpatch einen Anteil von gleichen Klassen der Instanzsegmentierung des Quellenpatches und der Instanzsegmentierung des Zielpatches charakterisieren.
  • Insbesondere können der Quellenpatch und der Zielpatch eine gleiche Größe haben und so die Meta-Informationen jeweils pixelweise miteinander verglichen werden. Die Ähnlichkeit kann dann beispielsweise an Anteil der Positionen der Meta-Informationen der beiden Patches sein, an denen beide Meta-Informationen die gleiche Klasse charakterisieren.
  • Die Erfinder konnten herausfinden, dass ein so ausgeprägtes Ähnlichkeitsmaß darin resultiert, dass Ähnlichkeiten zwischen Patches sehr genau Ähnlichkeiten von semantischen Inhalten der Patches charakterisiert und das maschinelle Lernsystem so besser trainiert werden kann.
  • Alternativ oder zusätzlich ist möglich, dass die pixelweisen Meta-Informationen eine Tiefeninformationen der Pixel des Quellenpatches oder eine Tiefeninformation der Pixel des Zielpatches charakterisieren.
  • Beispielsweise ist denkbar, dass die Bilder, aus denen die Patches extrahiert werden, mit einer 3D Kamera oder einer 2,5D Kamera aufgezeichnet werden und so bereits mit Tiefeninformationen pro Pixel an das Verfahren bereitgestellt werden können. Alternativ ist möglich, dass die Tiefeninformationen mittels eines Verfahrens des maschinellen Lernens ermittelt werden, zum Beispiel basierend auf einem neuronalen Netz zur Tiefenschätzung von Bildern, zum Beispiel einem DepthNet.
  • Die Ähnlichkeit zwischen dem Quellenpatch und dem Zielpatch kann dann außerdem eine Abweichung der Tiefeninformationen des Quellenpatches und der Tiefeninformationen des Zielpatches charakterisieren, insbesondere eine durchschnittliche quadratische Abweichung. Zum Beispiel können die Tiefeninformationen der Meta-Informationen für Quellenpatch und Zielpatch jeweils pixelweise verglichen werden, jeweils eine Abweichung, beispielsweise ein quadratischer euklidischer Abstand, ermittelt werden und ein Durchschnitt dieser Abweichungen mit in die Ähnlichkeit einfließen. Falls die Meta-Informationen nur die Tiefeninformationen umschließen, kann die Ähnlichkeit auch nur die oben beschriebene Abweichung sein.
  • Es ist jedoch auch möglich, dass die Meta-Informationen eines Patches verschiedene Artem von Mittelformation umfassen. In diesen Fällen kann die Ähnlichkeit eine Linearkombination von Ähnlichkeiten der jeweiligen Arten von Metainformationen sein. Zum Beispiel können die Metainformationen eines Patches sowohl eine semantische Segmentierung als auch Tiefeninformationen umfassen und die Ähnlichkeit eine Linearkombination von Anteil gleicher Klassifikationen der semantischen Segmentierung und durchschnittlichen quadratischen Abweichung der Tiefeninformationen sein.
  • Alternativ ist auch möglich, dass die Ähnlichkeit zusätzlich eine perzeptuelle Merkmalsähnlichkeit (engl. perceptual feature similarity) zwischen dem Quellenpatch und dem Zielpatch charakterisiert. Die perzeptuelle Merkmalsähnlichkeit kann ebenfalls in die Linearkombination mit einfließen.
  • In bevorzugten Ausführungsformen ist außerdem möglich, dass der Schritt des Trainierens die folgenden Schritte umfasst:
    • • Auswählen eines Quellenpatches aus den Quellenpatches der Tupel und eines Zielpatches aus den Zielpatches der Tupel;
    • • Ermitteln eines ersten generierten Bildes basierend auf dem Quellenpatch mittels eines ersten Generators des maschinellen Lernsystems und ermitteln einer ersten Rekonstruktion basierend auf dem ersten generierten Bild mittels eines zweiten Generators des maschinellen Lernsystems;
    • • Ermitteln eines zweiten generierten Bildes basierend auf dem Zielpatch mittels des zweiten Generators und ermitteln einer zweiten Rekonstruktion basierend auf dem zweiten generierten Bild mittels des ersten Generators;
    • • Ermitteln eines ersten Verlustwertes, wobei der erste Verlustwert einen ersten Unterschied des Quellenpatches und der ersten Rekonstruktion charakterisiert, wobei der erste Unterschied gemäß einer ersten Aufmerksamkeitskarte gewichtet wird, und ermitteln eines zweiten Verlustwertes, wobei der zweite Verlustwert einen zweiten Unterschied des Zielpatches und der zweiten Rekonstruktion charakterisiert, wobei der zweite Unterschied gemäß einer zweiten Aufmerksamkeitskarte gewichtet wird;
    • • Trainieren des maschinellen Lernsystems durch Trainieren des ersten Generators und/oder des zweiten Generators basierend auf dem ersten Verlustwert und/oder dem zweiten Verlustwert.
  • Zur Ermittlung des ersten generierten Bildes kann das maschinelle Lernsystem einen ersten Generator verwenden, der während des Verfahrens trainiert werden kann. Ein Generator kann im Kontext der Erfindung als ein maschinelles Lernverfahren verstanden werden, welches basierend auf einem Eingabebild ein Ausgabebild ermittelt. Im speziellen können die beschriebenen Generatoren derart verstanden werden, dass sie ein Bild ermittelt, welches die gleiche Größe hat, wie das Bild, welches als Eingabe verwendet wird.
  • Um einen Zusammenhang und damit eine geeignete Adaption von der Quellendomäne zur Zieldomäne zu ermöglichen, umfasst das maschinelle Lernsystem ferner einen zweiten Generator, welcher ausgebildet ist, Bilder aus der Zieldomäne zurück in die Quellendomäne zu projizieren. Wird ein Bild zunächst von einem Generator des maschinellen Lernsystems verarbeitet und das so ermittelte Bild dann vom anderen Generator verarbeitet, so kann das vom anderen Generator ermittelte Bild als Rekonstruktion verstanden werden. Ziel bei bekannten Verfahren ist es, für jeweils ein Bild aus der Quellendomäne und ein Bild aus der Zieldomäne die Generatoren so zu trainieren, dass die eine jeweilige Rekonstruktion identisch zum jeweiligen Bild ist. Vorteilhafterweise ermöglicht der Einsatz der ersten Aufmerksamkeitskarte und der zweiten Aufmerksamkeitskarte das Training derart zu steuern, dass bestimmte Bereiche des Bildes der Quellendomäne und des Bildes der Zieldomäne als besonders wichtig eingestuft werden können. Vorzugsweise können die von den Aufmerksamkeitskarten so deklarierten Bereiche Objekte enthalten, die auf dem Bild zu erkennen sind. Das maschinelle Lernverfahren wird so in die Lage versetzt, den Fokus bei der Rekonstruktion insbesondere auf Objekte zu legen. Die Erfinder konnten feststellen, dass hierdurch eine Domänenadaption möglich ist, die Objekte von Bilden der Quellendomäne sehr genau in Bilder der Zieldomäne übertragen kann. Auf diese Weise kann beispielsweise ein Trainingsdatensatz für einen Objektdetektor der Zieldomäne ermittelt werden, wobei die Trainingsbilder aus den Bildern eines Datensatzes aus der Quellendomäne generiert werden können und die Annotationen der Bilder des Datensatzes als Annotationen der generierten Trainingsbilder verwendet werden können.
  • Im Gegensatz zu bekannten Verfahren, werden dabei während des Trainings dem maschinellen Lernsystem mittels der ersten Aufmerksamkeitskarte und der zweiten Aufmerksamkeitskarte a priori Informationen zugeführt, die dem maschinellen Lernsystem anzeigen, welche Teile bei der Domänenadaption besonders relevant sind.
  • In bevorzugten Ausführungsformen ist möglich, dass die erste Aufmerksamkeitskarte für Pixel des Quellenpatches jeweils charakterisiert, ob ein Pixel zu einem auf dem Quellenpatch abgebildeten Objekt gehört oder nicht und/oder wobei die zweite Aufmerksamkeitskarte für Pixel des Zielpatches jeweils charakterisiert, ob ein Pixel zu einem auf dem Zielpatch abgebildeten Objekt gehört oder nicht.
  • Ein Bild und eine entsprechend ermittelte Rekonstruktion können insbesondere pixelweise verglichen werden, d.h. es kann jeweils ein Unterschied zwischen Pixeln an gleichen Positionen in Bild und Rekonstruktion ermittelt werden, zum Beispiel ein Euklidischer Abstand oder ein Quadrat des Euklidischen Abstands. Eine Aufmerksamkeitskarte kann dann verwendet werden, um jedem dieser ermittelten Unterschiede ein Gewicht zuzuordnen, welches ein Unterschied gemäß der Aufmerksamkeitskarte erhalten soll. Pixel des Bildes können insbesondere danach gewichtet werden, ob sie ein Objekt charakterisieren oder nicht. Eine Aufmerksamkeitskarte kann dabei als ein Bild mit einem Kanal oder eine Matrix verstanden werden. Die zwischen dem Bild und der Rekonstruktion ermittelten Unterschiede können ebenfalls als ein Bild mit einem Kanal oder eine Matrix verstanden werden, in der ein Unterschied an einer bestimmten Position jeweils den Unterschied der Pixel des Bildes und der Rekonstruktion an gleicher Position charakterisiert. Eine Gewichtung der Werte der Matrix von Unterschiedswerten kann dann mittels eines Hadamard Produkts der Aufmerksamkeitskarte mit Matrix von Unterschiedswerten ermittelt werden. Basierend hierauf kann dann ein Verlustwert ermittelt werden, indem Beispielsweise alle Elemente des Ergebnisses des Hadamard Produkts summiert, vorzugsweise gewichtet summiert werden.
  • In einer Ausführungsform ist möglich, dass die erste Aufmerksamkeitskarte den Pixeln des Quellenpatches jeweils ein Gewicht 1 zuordnet, falls der Pixel zu einem Objekt gehört, was im Bild abgebildet ist, und ein Gewicht 0 zuordnet, falls der Pixel zu keinem Objekt gehört. In typischer Sprechweise aus dem Feld der Objektdetektion kann eine Aufmerksamkeitskarte daher derart ausgebildet sein, dass sie Vordergrund von Hintergrund abgrenzt, und zwar angezeigt durch die Unterschiedlichen Werte (1 für Vordergrund, 0 für Hintergrund). Alternativ oder zusätzlich ist möglich, dass die zweite Aufmerksamkeitskarte den Pixeln des Zielpatches jeweils ein Gewicht 1 zuordnet, falls der Pixel zu einem Objekt gehört, was im Bild abgebildet ist, und ein Gewicht 0 zuordnet, falls der Pixel zu keinem Objekt gehört.
  • Alternativ ist auch möglich, dass die erste Aufmerksamkeitskarte und/oder die zweite Aufmerksamkeitskarte jeweils Wahrscheinlichkeiten charakterisiert, mit denen entsprechende Pixel zu einem Objekt gehören.
  • In bevorzugten Ausführungsformen ist möglich, dass die erste Aufmerksamkeitskarte basierend auf dem Quellenpatch mittels eines Objektdetektors ermittelt wird und/oder wobei die zweite Aufmerksamkeitskarte basierend auf dem Zielpatch mittels des Objektdetektors ermittelt wird.
  • Der Objektdetektor kann insbesondere ein maschinelles Lernsystem sein, beispielsweise ein neuronales Netz, welches zur Objektdetektion ausgebildet ist. Der Objektdetektor kann vorzugsweise auf Bildern der Quellendomäne trainiert sein. Zum Training des in der Erfindung vorgeschlagenen maschinellen Lernsystems kann er Objektdetektor dann die erste Aufmerksamkeitskarte basierend auf dem Quellenpatch ermitteln. Beispielsweise können vom Objektdetektor alle Pixel des Quellenpatches, die der Objektdetektor als zu einem Objekt zugehörig erkennt, in der ersten Aufmerksamkeitskarte den Wert 1 zugewiesen bekommen und alle anderen Werte der Aufmerksamkeitskarte auf den Wert 0 gesetzt werden. Ähnlich können vom Objektdetektor alle Pixel des Zielpatches, die der Objektdetektor als zu einem Objekt zugehörig erkennt, in der zweiten Aufmerksamkeitskarte den Wert 1 zugewiesen bekommen und alle anderen Werte der Aufmerksamkeitskarte auf den Wert 0 gesetzt werden.
  • Typischerweise sind Objektdetektoren ausgebildet, dass sie jedem Pixel im Bild eine Wahrscheinlichkeit zuweisen können, mit der es sich bei dem Pixel um ein Objekt handelt. Zum Beispiel geben gängige neuronale Netze zur Objektdetektion eine Objektdetektion in Form einer Begrenzungsbox (engl. bounding box) und einer Wahrscheinlichkeit aus, mit der es sich bei der Bounding Box um ein dem neuronalen Netz bekanntes Objekt handelt. Die Pixel innerhalb der Bounding Box können in der Aufmerksamkeitskarte jeweils mit der Wahrscheinlichkeit belegt werden. Falls das neuronale Netz überlappende Objektdetektionen ermittelt, kann die für einen Pixel jeweils größte ermittelte Wahrscheinlichkeit verwendet werden.
  • Bevorzugt ist in den jeweiligen Ausführungsformen des Verfahrens auch möglich, dass die Schritte des Verfahrens iterativ durchgeführt werden und der Objektdetektor in jeder Iteration eine erste Aufmerksamkeitskarte für ein Quellenpatch ermittelt und/oder in jeder Iteration eine zweite Aufmerksamkeitskarte für ein Zielpatch ermittelt.
  • Generell kann ein Quellenpatch aus einem Datensatz der Quellendomäne entstammend verstanden werden und ein Zielpatch aus einem Datensatz der Zieldomäne entstammend verstanden werden. Zum Training können insbesondere mehrere Bilder der jeweiligen Datensätze verwendet werden und die Schritte des Trainingsverfahrens iterativ ausgeführt werden. Insbesondere können die Bilder der Zieldomäne nicht annotiert sein. Der Objektdetektor kann dann in jedem Iterationsschritt des Trainings jeweils für das Quellenpatch und das Zielpatch der Iteration Objektdetektionen ermitteln, auf deren Basis dann, wie in einer der oben beschriebenen Ausführungsformen erklärt, die erste Aufmerksamkeitskarte bzw. die zweite Aufmerksamkeitskarte ermittelt werden kann. Der Vorteil hieran ist, dass durch das iterative Training die Bilder des Datensatzes der Quellendomäne mit jedem Iterationsschritt besser transformiert werden können, also die aus der Quellendomäne transformierten Bilder immer mehr denen der Zieldomäne ähneln.
  • Vorzugsweise charakterisiert das im Verfahren trainierte maschinelle Lernsystem ein neuronales Netz, insbesondere ein CycleGAN. Alternativ kann das maschinelle Lernsystem auch ein anderes neuronales Netz charakterisieren, dass eine Bild-zu-Bild Transformation (engl. image-to-image translation) ermöglicht, zum Beispiel ein MADAN oder ein VAE-GAN.
  • In einem weiteren Aspekt betrifft die Erfindung ein computerimplementiertes Verfahren zum Trainieren eines Objektdetektors umfassend die Schritte:
    • • Bereitstellen eines Eingabebildes und einer Annotation, wobei die Annotation eine Position zumindest eines im Eingabebild abgebildeten Objekts charakterisiert;
    • • Ermitteln eines Zwischenbildes mittels des ersten Generators eines maschinellen Lernsystems, welches gemäß einer der Ausführungsformen des ersten Aspekts der Erfindung trainiert wurde;
    • • Trainieren des Objektdetektors, wobei der Objektdetektor derart trainiert wird, dass der Objektdetektor für das Zwischenbild als Eingabe das Objekt oder die Objekte prädiziert, welche durch die Annotation charakterisiert werden.
  • Das Verfahren zum Trainieren des Objektdetektors kann derart verstanden werden, dass zunächst mittels eines trainierten maschinellen Lernsystems basierend auf Bildern der Quellendomäne Bilder ermittelt werden, die im Erscheinungsbild Bildern der Zieldomäne entsprechen und der Objektdetektor anschließend basierend auf diesen Bildern (also den Zwischenbildern) trainiert wird. Dabei kann der Objektdetektor insbesondere iterativ trainiert werden, wobei ein Datensatz von Trainingsbildern der Quellendomäne vor dem Training in einen Datensatz von Zwischenbildern transformiert werden kann, mit denen der Objektdetektor dann trainier wird. Alternativ ist auch möglich, dass in jedem Iterationsschritt jeweils ein Bild aus der Quellendomäne in ein Zwischenbild transformiert wird und der Objektdetektor dann mit diesem Zwischenbild trainiert wird.
  • Vorteilhafterweise kann so der Objektdetektor unüberwacht an die Zieldomäne angepasst werden, ohne dass Objektannotation für Bilder der Zieldomäne benötigt werden. Dies beschleunigt das Trainingsverfahren des Objektdetektors, da die Zeit für die Annotation von Bildern der Zieldomäne entfällt. Bei gleichem Zeitbudget können so mehr Bilder durch den Objektdetektor angelernt werden. Im Umkehrschluss kann dadurch die Performanz des Objektdetektors verbessert werden, da er mit mehr Bildern trainiert werden kann.
  • Im Allgemeinen kann ein Objektdetektor im Sinne der Erfindung als derart eingerichtet verstanden werden, dass er zu einer Objektdetektion, also neben einer Position und Größe eines Objekts im Bild, auch eine Klasse für ermittelt, welche das Objekt der Detektion charakterisiert.
  • Das maschinelle Lernsystem kann im Verfahren zum Trainieren des Objektdetektors derart verstanden werden, dass es gemäß einer Ausführungsform des Verfahrens zum Trainieren des maschinellen Lernsystems trainiert wurde. Insbesondere können daher die Verfahrensschritte zum Trainieren des maschinellen Lernsystems Teil des Verfahrens zum Trainieren des Objektdetektors sein. Insbesondere können die Verfahrensschritte des Trainierens des maschinellen Lernsystems den Verfahrensschritten des Trainierens des Objektdetektors vorangestellt sein.
  • In einem weiteren Aspekt betrifft die Erfindung ein computerimplementiertes Verfahren zum Ermitteln eines Ansteuersignals zur Ansteuerung eines Aktors und/oder einer Anzeigevorrichtung umfassend die Schritte:
    • • Bereitstellen eines Eingabebildes;
    • • Ermitteln von Objekten, die auf dem Eingabebild abgebildet sind, mittels eines Objektdetektors, wobei der Objektdetektor basierend auf einer Ausprägung des Verfahrens zum Trainieren des Objektdetektors trainiert wurde;
    • • Ermitteln des Ansteuersignals basierend auf den ermittelten Objekten;
    • • Ansteuern des Aktors und/oder der Anzeigevorrichtung gemäß des Ansteuersignals.
  • Der Aktor kann insbesondere als eine Komponente eines technischen Systems verstanden werden, die eine Bewegung des technischen Systems oder innerhalb des technischen Systems beeinflusst. Zum Beispiel kann der Aktor ein Motor sein, der die Bewegung eines Roboters beeinflusst, zum Beispiel ein Elektromotor. Alternativ ist auch möglich, dass der Aktor eine Hydraulik steuert, zum Beispiel kann der Aktor eine Pumpe sein, die einen hydraulischen Zylinder antreibt. Der Aktor kann des Weiteren auch ein Ventil sein, welches eine Zuflussmenge einer Flüssigkeit oder eines Gases kontrolliert.
  • Nachfolgend werden Ausführungsformen der Erfindung unter Bezugnahme auf die beiliegenden Zeichnungen näher erläutert. In den Zeichnungen zeigen:
    • 1 schematisch ein Verfahren zur Auswahl von Quellenpatches und Zielpatches;
    • 2 ein maschinelles Lernsystem;
    • 3 schematisch ein Verfahren zum Trainieren des maschinellen Lernsystems;
    • 4 schematisch ein Trainingssystem;
    • 5 schematisch einen Aufbau eines Steuerungssystems zur Ansteuerung eines Aktors;
    • 6 schematisch ein Ausführungsbeispiel zur Steuerung eines wenigstens teilautonomen Roboters;
    • 7 schematisch ein Ausführungsbeispiel zur Steuerung eines Fertigu ngssystems;
    • 8 schematisch ein Ausführungsbeispiel zur Steuerung eines Zugangssystems;
    • 9 schematisch ein Ausführungsbeispiel zur Steuerung eines Überwachungssystems.
  • Beschreibung der Ausführungsbeispiele
  • 1 zeigt ein Verfahren zur Auswahl von Patches (A21) aus Bildern (A11) einer Quellendomäne und Patches (A22) Bildern (A12) einer Zieldomäne. Zu den Bildern (A11) der Quellendomäne existieren entsprechende pixelweise Meta-Informationen (B31) (zum Beispiel semantische Segmentierungen, Tiefeninformationen oder dergleichen) und zu den Bildern (A12) der Quellendomäne existieren entsprechende pixelweise Meta-Informationen (B32) gleicher Art.
  • Im Verfahren werden zunächst aus den jeweiligen Quellenbildern (A11) und Zielbildern (A12) vorzugsweise zufällig Patches (A21, A22) extrahiert. Für Patches (A21) der Quellenbilder (A11) und Patches (A22) der Zielbilder (A12) werden dann mittels eines entsprechend konfigurierten neuronalen Netzes (A3) perzeptuelle Merkmale (A41, A42) ermittelt.
  • Anschließend können dann für alle oder eine Untermenge der Patches (A21) der Quellenbilder (A11) jeweils mittels eines nächsten Nachbar Verfahrens (B1) eine vordefinierte Anzahl von k nächsten Nachbarn unter den Patches (A22) der Zielbilder (A22) ermittelt werden, und zwar auf Basis einer Ähnlichkeit der perzeptuellen Merkmale der jeweiligen Patches. So entstehen Tupel aus Quellenpatch (B21) und Zielpatches (B22). Die so ermittelten Tupel können anschließend verfeinert werden. Hierzu werden für die Meta-Informationen des Quellenpatches (B21)und dem oder den Zielpatches (B22) des Tupels miteinander verglichen. Dabei kann das Tupel insbesondere auf den Quellenpatch (B21)und einen Zielpatch (B62) reduziert werden, der gemäß einer Ähnlichkeit der Meta-Informationen der nächste Nachbar innerhalb der Zielpatches (B22) des Tupels ist.
  • Auf diese Weise können jeweils Tupel ermittelt werden, die anschließend für ein Training eines maschinellen Lernsystems verwendet werden können.
  • 2 zeigt, wie mittels eines Quellenpatches (x1) und eins Zielpatches (x2) Verlustwerte ( L 1 , L 2 , L 3 , L 4 )
    Figure DE102022204263A1_0001
    zum Trainieren eines maschinellen Lernsystems (70) ermittelt werden können.
  • Das Quellenpatch (x1) wird an einen ersten Generator (71) des maschinellen Lernsystem (70) übergeben, wobei der Generator (71) basierend auf dem Quellenpatch (x1) ein erstes generiertes Bild (a1) ermittelt. Des Weiteren wird das Zielpatch (x2) an einen zweiten Generator (72) des maschinellen Lernsystem (70) übergeben, wobei der zweite Generator (72) basierend auf dem Zielpatch (x2) ein zweites generiertes Bild (a2) ermittelt.
  • Das erste generierte Bild (a1) wird dem zweiten Generator (72) zugeführt, um eine erste Rekonstruktion (r1) zu ermitteln. Anschließend werden pixelweise Unterschiede des ersten generierten Bildes (a1) und der ersten Rekonstruktion (r1) ermittelt, zum Beispiel jeweils ein pixelweiser Abstand gemäß einer Lp-Norm. Die Unterschiede werden anschließend mittels einer ersten Aufmerksamkeitskarte (m1) gewichtet und die gewichteten Unterschiede summier, um einen ersten Verlustwert ( L 1 )
    Figure DE102022204263A1_0002
    zu ermitteln.
  • Das zweite generierte Bild (a2) wird dem ersten Generator (71) zugeführt, um eine zweite Rekonstruktion (r2) zu ermitteln. Anschließend werden pixelweise Unterschiede des zweiten generierten Bildes (a2) und der zweiten Rekonstruktion (r2) ermittelt, zum Beispiel jeweils ein pixelweiser Abstand gemäß einer Lp-Norm. Die Unterschiede werden anschließend mittels einer zweiten Aufmerksamkeitskarte (m2) gewichtet und die gewichteten Unterschiede summier, um einen zweiten Verlustwert ( L 2 )
    Figure DE102022204263A1_0003
    zu ermitteln.
  • Das Zielpatch (x2) und das erste generierte Bild (a1) werden weiterhin einem ersten Diskriminator (73) zugeführt. Der erste Generator (71) und erste Diskriminator (73) können als ein generatives adversarielles Netzwerk (engl. generative adversarial network, GAN) verstanden werden. Basierend auf dem Zielpatch (x2) und dem ersten generierten Bild (x1) ermittelt der erste Diskriminator (73) dann einen ersten GAN-Verlustwert für jeden Pixel des ersten generierten Bildes (a1) und jeden Pixel des Zielpatches (x2). Mit anderen Worten, im Gegensatz zum normalen GAN-Verlustwert wird nicht der Durchschnitt der pixelweisen Verlustwerte verwendet. Die ersten GAN-Verlustwerte können als Matrix von Verlustwerten verstanden werden, in der ein Verlustwert an einer Position mit einer Pixel Position des Zielpatches (x2) und des ersten generierten Bildes (a1) korrespondiert. Die ersten GAN-Verlustwerte werden anschließend mittels der ersten Aufmerksamkeitskarte (m1) gewichtet, und die gewichteten Verlustwerte summiert, um einen dritten Verlustwert ( L 3 )
    Figure DE102022204263A1_0004
    zu ermitteln.
  • Das Quellenpatch (x1) und das zweite generierte Bild (a2) werden weiterhin einem zweiten Diskriminator (74) zugeführt. Der zweite Generator (72) und zweite Diskriminator (74) können als ein GAN verstanden werden. Basierend auf dem Quellenpatch (x1) und dem zweiten generierten Bild (x2) ermittelt der zweite Diskriminator (74) dann einen zweiten GAN-Verlustwert für jeden Pixel des zweiten generierten Bildes (a2) und jeden Pixel des Zielpatches (x1). Mit anderen Worten, im Gegensatz zum normalen GAN-Verlustwert wird nicht der Durchschnitt der pixelweisen Verlustwerte verwendet. Die zweiten GAN-Verlustwerte können als Matrix von Verlustwerten verstanden werden, in der ein Verlustwert an einer Position mit einer Pixel Position des Quellenpatches (x1) und des zweiten generierten Bildes (a2) korrespondiert. Die zweiten GAN-Verlustwerte werden anschließend mittels der zweiten Aufmerksamkeitskarte (m2) gewichtet, und die gewichteten Verlustwerte summiert, um einen vierten Verlustwert ( L 4 )
    Figure DE102022204263A1_0005
    zu ermitteln.
  • Die Verlustwerte ( L 1 , L 2 , L 3 , L 4 )
    Figure DE102022204263A1_0006
    können anschließend summiert, vorzugsweise gewichtet summiert werden, um einen einzigen Verlustwert zu erhalten, mittels dem Parameter des ersten Generators (71) und/oder Parameter des zweiten Generators (72) und/oder Parameter des ersten Diskriminators (73) und/oder des zweiten Diskriminators (74) verändert werden können. Die Gewichte der einzelnen Verlustwerte ( L 1 , L 2 , L 3 , L 4 )
    Figure DE102022204263A1_0007
    stellen dabei Hyperparameter des Verfahrens dar.
  • 3 zeigt in Form eines Flussdiagramms den Ablauf eines Trainingsverfahrens (100) des maschinellen Lernsystems (70). Das maschinelle Lernsystem ist im Ausführungsbeispiel als CycleGAN gemäß 1 ausgebildet. IN anderen Ausführungsformen sind auch andere Ausbildungen möglich.
  • In einem ersten Schritt (101) wird ein Quellenpatch aus einem Datensatz einer Quellendomäne bereitgestellt und ein Zielpatch aus einem Datensatz einer Zieldomäne.
  • In einem zweiten Schritt (102) werden mittels eines vortrainierten Objektdetektors, zum Beispiel einem zur Objektdetektion ausgebildeten neuronalen Netz, das Quellenpatch (x1) und das Zielpatch (x2) verarbeitet, um jeweils Objektdetektionen zu ermitteln. Basierend auf den Objektdetektionen wird dann eine erste Aufmerksamkeitskarte (m1) bezüglich des Quellenpatches (x1) ermittelt und eine zweite Aufmerksamkeitskarte (m2) bezüglich des Zielpatches (x2) ermittelt.
  • In einem dritten Schritt (103) wird gemäß der 1 die erste Rekonstruktion (r1) ermittelt.
  • In einem vierten Schritt (104) wird gemäß der 1 die zweite Rekonstruktion ermittelt.
  • In einem fünften Schritt (105) wird gemäß der 1 der einzige Verlustwert ermittelt
  • In einem sechsten Schritt (106) werden die Parameter des ersten Generators (71), die Parameter des zweiten Generators (72), die Parameter des ersten Diskriminators (73) und die Parameter des zweiten Diskriminators (74) mittels eines Gradientenabstiegsverfahrens trainiert und somit das maschinelle Lernsystem (70) trainiert.
  • Bevorzugt können die Schritte des Verfahrens iterativ wiederholt werden. Als Abbruchkriterium der Iterationsschleife kann beispielsweise gewählt werden, dass eine bestimmte Anzahl von Iterationen abgeschlossen wurde. Alternativ ist auch möglich, dass das Training basierend auf dem einzigen Verlustwert oder einem auf einem weiteren Datensatz ermittelten Verlustwert beendet wird.
  • 4 zeigt ein Ausführungsbeispiel eines Trainingssystems (140) zum Trainieren eines Objektdetektors (60) mittels eines Trainingsdatensatzes (T). Der Trainingsdatensatz (T) umfasst eine Mehrzahl von Quellenpatches (xi) einer der Quellendomäne, die zum Trainieren des Objektdetektors (60) verwendet werden, wobei der Trainingsdatensatz (T) ferner zu jeweils einem Quellenpatch (xi) ein gewünschtes Ausgabesignal (ti) umfasst, welches mit dem Quellenpatch (xi) korrespondiert und eine Objektdetektion des Quellenpatches (xi) charakterisiert.
  • Zum Training greift eine Trainingsdateneinheit (150) auf eine computerimplementierte Datenbank (St2) zu, wobei die Datenbank (St2) den Trainingsdatensatz (T) zur Verfügung stellt. Die Trainingsdateneinheit (150) ermittelt aus dem Trainingsdatensatz (T) vorzugsweise zufällig zumindest ein Quellenpatch (xi) und das zum Quellenpatch (xi) korrespondierende gewünschte Ausgabesignal (ti) und übermittelt das Quellenpatch (xi) an den ersten Generator (71) des trainierten maschinellen Lernsystem (70). Der erste Generator (71) ermittelt auf Basis des Quellenpatches (xi) ein Zwischenbild. Das Zwischenbild ist vom Erscheinungsbild Bildern der Zieldomäne ähnlich. Das Zwischenbild wird anschließend dem Objektdetektor (60) zugeführt. Der Objektdetektor (60) ermittelt auf Basis des Zwischenbildes ein Ausgabesignal (yi).
  • Das gewünschte Ausgabesignal (ti) und das ermittelte Ausgabesignal (yi) werden an eine Veränderungseinheit (180) übermittelt.
  • Basierend auf dem gewünschten Ausgabesignal (ti) und dem ermittelten Ausgabesignal (yi) werden dann von der Veränderungseinheit (180) neue Parameter (Φ') für den Objektdetektor (60) bestimmt. Hierfür vergleicht die Veränderungseinheit (180) das gewünschte Ausgabesignal (ti) und das ermittelte Ausgabesignal (yi) mittels einer Verlustfunktion (engl. Loss Function). Die Verlustfunktion ermittelt einen ersten Verlustwert, der charakterisiert, wie weit das ermittelte Ausgabesignal (yi) vom gewünschten Ausgabesignal (ti) abweicht. Als Verlustfunktion wird im Ausführungsbeispiel eine negative logarithmierte Plausibilitätsfunktion (engl. negative log-likehood function) gewählt. In alternativen Ausführungsbeispielen sind auch andere Verlustfunktion denkbar.
  • Weiterhin ist vorstellbar, dass das ermittelte Ausgabesignal (yi) und das gewünschte Ausgabesignal (ti) jeweils eine Mehrzahl von Untersignalen, zum Beispiel in Form von Tensoren, umfassen, wobei jeweils ein Untersignal des gewünschten Ausgabesignals (ti) mit einem Untersignal des ermittelten Ausgabesignals (yi) korrespondiert. Zum Beispiel ist vorstellbar, dass ein erstes Untersignal des Ausgabesignals (ti) jeweils eine Auftretenswahrscheinlichkeit eines Objekts bezüglich eines Teils des Quellenpatches (xi) charakterisiert und zweites Untersignal des Ausgabesignals (yi) die exakte Position des Objekts charakterisiert. Für den Fall, dass das ermittelte Ausgabesignal (yi) und das gewünschte Ausgabesignal (ti) eine Mehrzahl von korrespondierenden Untersignalen umfasst, wird vorzugsweise für jeweils korrespondierende Untersignale mittels einer geeigneten Verlustfunktion ein zweiter Verlustwert ermittelt und die ermittelten zweiten Verlustwerte geeignet zum ersten Verlustwert zusammengeführt, beispielsweise über eine gewichtete Summe.
  • Die Veränderungseinheit (180) ermittelt auf Grundlage des ersten Verlustwertes die neuen Parameter (Φ'). Im Ausführungsbeispiel geschieht dies mittels eines Gradientenabstiegsverfahren, vorzugsweise Stochastic Gradient Descent, Adam, oder AdamW. In weiteren Ausführungsbeispielen kann das Training auch auf einem evolutionären Algorithmus oder einer Zweite-Grad-Optimierung (engl. second-order optimization) beruhen.
  • Die ermittelten neuen Parameter (Φ') werden in einem Modellparameterspeicher (St1) gespeichert. Vorzugsweise werden die ermittelten neuen Parameter (Φ') als Parameter (Φ) dem Objektdetektor (60) bereitgestellt.
  • In weiteren bevorzugten Ausführungsbeispielen wird das beschriebene Training iterativ für eine vordefinierte Anzahl an Iterationsschritten wiederholt oder iterativ wiederholt, bis der erste Verlustwert einen vordefinierten Schwellenwert unterschreitet. Alternativ oder zusätzlich ist auch vorstellbar, dass das Training beendet wird, wenn ein durchschnittlicher erster Verlustwert bezüglich eines Test- oder Validierungsdatensatzes einen vordefinierten Schwellenwert unterschreitet. In mindestens einer der Iterationen werden die in einer vorherigen Iteration bestimmten neuen Parameter (Φ') als Parameter (Φ) des Objektdetektors (60) verwendet.
  • Des Weiteren kann das Trainingssystem (140) mindestens einen Prozessor (145) und mindestens ein maschinenlesbares Speichermedium (146) umfassen, welches Befehle enthält, welche, wenn sie durch den Prozessor (145) ausgeführt werden, das Trainingssystem (140) veranlassen, ein Trainingsverfahren nach einem der Aspekte der Erfindung auszuführen.
  • 5 zeigt die Verwendung des Objektdetektors (60) innerhalb eines Steuerungssystems (40) zur Steuerung eines Aktors (10) in einer Umgebung (20) des Aktors (10). In vorzugsweise regelmäßigen zeitlichen Abständen wird die Umgebung (20) in einem Sensor (30), insbesondere einem bildgebenden Sensor wie einem Kamerasensor, erfasst, der auch durch eine Mehrzahl von Sensoren gegeben sein kann, beispielsweise eine Stereokamera. Das Sensorsignal (S) - bzw. im Fall mehrerer Sensoren je ein Sensorsignal (S) - des Sensors (30) wird an das Steuerungssystem (40) übermittelt. Das Steuerungssystem (40) empfängt somit eine Folge von Sensorsignalen (S). Das Steuerungssystem (40) ermittelt hieraus Ansteuersignale (A), welche an den Aktor (10) übertragen werden.
  • Das Steuerungssystem (40) empfängt die Folge von Sensorsignalen (S) des Sensors (30) in einer optionalen Empfangseinheit (50), die die Folge von Sensorsignalen (S) in eine Folge von Eingabesignalen (x) umwandelt (alternativ kann auch unmittelbar je das Sensorsignal (S) als Eingangssignal (x) übernommen werden). Das Eingabesignal (x) kann beispielsweise ein Ausschnitt oder eine Weiterverarbeitung des Sensorsignals (S) sein. Mit anderen Worten wird das Eingabesignal (x) abhängig von Sensorsignal (S) ermittelt. Die Folge von Eingabesignalen (x) wird dem Objektdetektor (60) zugeführt.
  • Der Objektdetektor (60) wird vorzugsweise parametriert durch Parameter (Φ), die in einem Parameterspeicher (P) hinterlegt sind und von diesem bereitgestellt werden.
  • Der Objektdetektor (60) ermittelt aus den Eingangssignalen (x) Ausgabesignale (y). Die Ausgabesignale (y) werden einer optionalen Umformeinheit (80) zugeführt, die hieraus Ansteuersignale (A) ermittelt, welche dem Aktor (10) zugeführt werden, um den Aktor (10) entsprechend anzusteuern.
  • Der Aktor (10) empfängt die Ansteuersignale (A), wird entsprechend angesteuert und führt eine entsprechende Aktion aus. Der Aktor (10) kann hierbei eine (nicht notwendigerweise baulich integrierte) Ansteuerlogik umfassen, welches aus dem Ansteuersignal (A) ein zweites Ansteuersignal ermittelt, mit dem dann der Aktor (10) angesteuert wird.
  • In weiteren Ausführungsformen umfasst das Steuerungssystem (40) den Sensor (30). In noch weiteren Ausführungsformen umfasst das Steuerungssystem (40) alternativ oder zusätzlich auch den Aktor (10).
  • In weiteren bevorzugten Ausführungsformen umfasst das Steuerungssystem (40) zumindest einen Prozessor (45) und zumindest ein maschinenlesbares Speichermedium (46), auf dem Anweisungen gespeichert sind, die dann, wenn sie auf dem zumindest einen Prozessor (45) ausgeführt werden, das Steuerungssystem (40) veranlassen, das erfindungsgemäße Verfahren auszuführen.
  • In alternativen Ausführungsformen ist alternativ oder zusätzlich zum Aktor (10) eine Anzeigeeinheit (10a) vorgesehen.
  • 6 zeigt, wie das Steuerungssystem (40) zur Steuerung eines wenigstens teilautonomen Roboters, hier eines wenigstens teilautonomen Kraftfahrzeugs (100), eingesetzt werden kann.
  • Bei dem Sensor (30) kann es sich beispielsweise um einen vorzugsweise im Kraftfahrzeug (100) angeordneten Videosensor handeln.
  • Der Objektdetektor (60) ist eingerichtet, auf den Eingabebildern (x) erkennbare Objekte zu identifizieren.
  • Bei dem vorzugsweise im Kraftfahrzeug (100) angeordneten Aktor (10) kann es sich beispielsweise um eine Bremse, einen Antrieb oder eine Lenkung des Kraftfahrzeugs (100) handeln. Das Ansteuersignal (A) kann dann derart ermittelt werden, dass der Aktor oder die Aktoren (10) derart angesteuert wird, dass das Kraftfahrzeug (100) beispielsweise eine Kollision mit den vom Objektdetektor (60) identifizierten Objekten verhindert, insbesondere, wenn es sich um Objekte bestimmter Klassen, z.B. um Fußgänger, handelt.
  • Alternativ oder zusätzlich kann mit dem Ansteuersignal (A) die Anzeigeeinheit (10a) angesteuert werden, und beispielsweise die identifizierten Objekte dargestellt werden. Auch ist es denkbar, dass die Anzeigeeinheit (10a) mit dem Ansteuersignal (A) derart angesteuert wird, dass sie ein optisches oder akustisches Warnsignal ausgibt, wenn ermittelt wird, dass das Kraftfahrzeug (100) droht, mit einem der identifizierten Objekte zu kollidieren. Die Warnung mittels eines Warnsignals kann auch mittels eines haptischen Warnsignals erfolgen, beispielsweise über ein Vibrieren eines Lenkrads des Kraftfahrzeugs (100).
  • Alternativ kann es sich bei dem wenigstens teilautonomen Roboter auch um einen anderen mobilen Roboter (nicht abgebildet) handeln, beispielsweise um einen solchen, der sich durch Fliegen, Schwimmen, Tauchen oder Schreiten fortbewegt. Bei dem mobilen Roboter kann es sich beispielsweise auch um einen wenigstens teilautonomen Rasenmäher oder einen wenigstens teilautonomen Putzroboter handeln. Auch in diesen Fällen kann das Ansteuersignal (A) derart ermittelt werden, dass Antrieb und/oder Lenkung des mobilen Roboters derart angesteuert werden, dass der wenigstens teilautonome Roboter beispielsweise eine Kollision mit vom Objektdetektor (60) identifizierten Objekten verhindert.
  • 7 zeigt ein Ausführungsbeispiel, in dem das Steuerungssystem (40) zur Ansteuerung einer Fertigungsmaschine (11) eines Fertigungssystems (200) verwendet wird, indem ein die Fertigungsmaschine (11) steuernder Aktor (10) angesteuert wird. Bei der Fertigungsmaschine (11) kann es sich beispielsweise um eine Maschine zum Stanzen, Sägen, Bohren, Schweißen und/oder Schneiden handeln. Weiterhin ist denkbar, dass die Fertigungsmaschine (11) ausgebildet ist mittels eines Greifers ein Fertigungserzeugnis (12a, 12b) zu greifen.
  • Bei dem Sensor (30) kann es sich beispielsweise um einen Videosensor handeln, der z.B. die Förderfläche eines Förderbandes (13) erfasst, wobei sich auf dem Förderband (13) Fertigungserzeugnissen (12a, 12b) befinden können. Die Eingabesignale (x) sind in diesem Fall Eingabebilder (x). Der Objektdetektor (60) kann beispielsweise eingerichtet sein eine Position der Fertigungserzeugnisse (12a, 12b) auf dem Förderband zu ermitteln. Der die Fertigungsmaschine (11) steuernde Aktor (10) kann dann abhängig von den ermittelten Positionen der Fertigungserzeugnisse (12a, 12b) angesteuert werden. Beispielsweise kann der Aktor (10) derart angesteuert werden, dass er ein Fertigungserzeugnis (12a, 12b) an einer vorbestimmten Stelle des Fertigungserzeugnisses (12a, 12b) stanzt, sägt, bohrt und/oder schneidet.
  • Weiterhin ist denkbar, dass der Objektdetektor (60) ausgebildet ist, alternativ oder zusätzlich zur Position weitere Eigenschaften eines Fertigungserzeugnisses (12a, 12b) zu ermitteln. Insbesondere ist vorstellbar, dass der Objektdetektor (60) ermittelt, ob ein Fertigungserzeugnis (12a, 12b) defekt und/oder beschädigt ist. In diesem Fall kann der Aktor (10) derart angesteuert werden, dass die Fertigungsmaschine (11) ein defektes und/oder beschädigtes Fertigungserzeugnis (12a, 12b) aussortiert.
  • 8 zeigt ein Ausführungsbeispiel, bei dem das Steuerungssystem (40) zur Steuerung eines Zugangssystems (300) eingesetzt wird. Das Zugangssystem (300) kann eine physische Zugangskontrolle umfassen, beispielsweise eine Tür (401). Der Sensor (30) kann insbesondere ein Videosensor oder Wärmebildsensor sein, der eingerichtet ist, einen Bereich vor der Tür (401) zu erfassen. Insbesondere kann der Objektdetektors (60) Personen auf einem übermittelten Eingabebild (x) detektieren. Sind mehrere Personen gleichzeitig detektiert worden, kann durch eine Zuordnung der Personen (also der Objekte) zueinander beispielweise die Identität der Personen besonders zuverlässig ermittelt werden, beispielsweise durch eine Analyse ihrer Bewegungen.
  • Der Aktor (10) kann ein Schloss sein, dass abhängig vom Ansteuersignal (A) die Zugangskontrolle freigibt, oder nicht, beispielsweise die Tür (401) öffnet, oder nicht. Hierzu kann das Ansteuersignal (A) abhängig vom mittels des Objektdetektors (60) zum Eingabebild (x) ermittelten Ausgabesignal (y) gewählt werden. Beispielsweise ist denkbar, dass das Ausgabesignal (y) Informationen umfasst, die die Identität einer vom Objektdetektor (60) detektierten Person charakterisiert, und das Ansteuersignal (A) basierend auf der Identität der Person gewählt wird.
  • Anstelle der physischen Zugangskontrolle kann auch eine logische Zugangskontrolle vorgesehen sein.
  • 9 zeigt ein Ausführungsbeispiel, bei dem das Steuerungssystem (40) zur Steuerung eines Überwachungssystems (400) verwendet wird. Von dem in 4 dargestellten Ausführungsbeispiel unterscheidet sich dieses Ausführungsbeispiel dadurch, dass an Stelle des Aktors (10) die Anzeigeeinheit (10a) vorgesehen ist, die vom Steuerungssystem (40) angesteuert wird. Beispielsweise kann der Sensor (30) ein Eingabebild (x) aufzeichnen, auf dem zumindest eine Person zu erkennen ist, und die Position der zumindest einen Person mittels des Objektdetektors (60) detektiert werden. Das Eingabebild (x) kann dann auf der Anzeigeeinheit (10a) dargestellt werden, wobei die detektierten Personen farblich hervorgehoben dargestellt werden können.
  • Der Begriff „Computer“ umfasst beliebige Geräte zur Abarbeitung vorgebbarer Rechenvorschriften. Diese Rechenvorschriften können in Form von Software vorliegen, oder in Form von Hardware, oder auch in einer Mischform aus Software und Hardware.
  • Im Allgemeinen kann eine Mehrzahl als indexiert verstanden werden, d.h. jedem Element der Mehrzahl wird ein eindeutiger Index zugewiesen, vorzugsweise durch Zuweisung aufeinanderfolgender Ganzzahlen an die in der Mehrzahl enthaltenen Elemente. Vorzugsweise, wenn eine Mehrzahl N Elemente umfasst, wobei N die Anzahl der Elemente in der Mehrzahl ist, werden den Elementen die ganzen Zahlen von 1 bis N zugewiesen.
  • 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 Patentliteratur
    • DE 102022201679 [0002]

Claims (17)

  1. Computerimplementiertes Verfahren (700) zum Trainieren eines maschinellen Lernsystems (70), wobei das maschinelle Lernsystem (70) für ein Transferieren von Bildern einer Quellendomäne in eine Zieldomäne trainiert wird, wobei das Verfahren die folgenden Schritte umfasst: • Ermitteln einer Mehrzahl von Quellenpatches (A21) basierend auf einer Mehrzahl von Quellenbildern (A11) einer Quellendomäne und einer Mehrzahl von Zielpatches (A22) basierend auf einer Mehrzahl von Zielbildern (A12) einer Zieldomäne, wobei den Quellenpatches (A21) und den Zielpatches (A22) jeweils pixelweise Meta-Informationen (B41, B42) zugeordnet sind; • Ermitteln einer Mehrzahl von Tupeln (B21, B62), wobei jeweils ein Tupel einen Quellenpatch (B21) der Mehrzahl von Quellenpatches (A21) und zumindest einen Zielpatch (B62) der Mehrzahl von Zielpatches (A22) enthält, wobei der zumindest eine Zielpatch (B62) gemäß eines Ähnlichkeitsmaßes einen von k nächsten Nachbarn des Quellenpatches (B21)charakterisiert, wobei k ein Hyperparameter des Verfahrens ist und das Ähnlichkeitsmaß eine Ähnlichkeit zwischen einem Quellenpatch (B21) und einem Zielpatch (B62) basierend auf den pixelweisen Meta-Informationen des Quellenpatches und den pixelweisen Meta-Informationen des Zielpatches charakterisiert; • Trainieren des maschinellen Lernsystems basierend auf den Quellenpatches der Tupel und der Zielpatches der Tupel.
  2. Verfahren (700) nach Anspruch 1, wobei die pixelweisen Meta-Informationen (B41, B42) eine semantische Segmentierung eines Quellenpatches (A21) oder eines Zielpatches (A22) charakterisieren und/oder wobei die pixelweisen Meta-Informationen (B41, B42) eine Instanzsegmentierung des Quellenpatches (A21) oder des Zielpatches (A22) charakterisieren.
  3. Verfahren (700) nach Anspruch 2, wobei die Ähnlichkeit zwischen dem Quellenpatch (A21) und dem Zielpatch (A22) einen Anteil von gleichen Klassen der semantischen Segmentierung des Quellenpatches (A21) und der semantischen Segmentierung des Zielpatches (A22) charakterisiert und/oder die Ähnlichkeit zwischen dem Quellenpatch (A21) und dem Zielpatch (A22) einen Anteil von gleichen Klassen der Instanzsegmentierung des Quellenpatches (A21) und der Instanzsegmentierung des Zielpatches (A22) charakterisiert.
  4. Verfahren (700) nach einem der Ansprüche 1 bis 3, wobei die pixelweisen Meta-Informationen (B41, B42) alternativ oder zusätzlich eine Tiefeninformationen der Pixel des Quellenpatches (A21) oder eine Tiefeninformation der Pixel des Zielpatches (A22) charakterisieren.
  5. Verfahren (700) nach Anspruch 4, wobei die Ähnlichkeit zwischen dem Quellenpatch (A21) und dem Zielpatch (A22) eine Abweichung der Tiefeninformationen des Quellenpatches (A22) und der Tiefeninformationen des Zielpatches (A22) charakterisiert, insbesondere eine durchschnittliche quadratische Abweichung.
  6. Verfahren (700) nach einem der Ansprüche 1 bis 5, wobei die Ähnlichkeit zusätzlich eine perzeptuelle Merkmalsähnlichkeit zwischen dem Quellenpatch (A21) und dem Zielpatch (A22) charakterisiert.
  7. Verfahren (700) nach einem der Ansprüche 1 bis 6, wobei der Schritt des Trainierens die folgenden Schritte umfasst: • Auswählen (701) eines Quellenpatches (x1) aus den Quellenpatches der Tupel und eines Zielpatches (x2) aus den Zielpatches der Tupel; • Ermitteln (703) eines ersten generierten Bildes (a1) basierend auf dem Quellenpatch (x1) mittels eines ersten Generators (71) des maschinellen Lernsystems (70) und ermitteln einer ersten Rekonstruktion (r1) basierend auf dem ersten generierten Bild (a1) mittels eines zweiten Generators (72) des maschinellen Lernsystems (70); • Ermitteln (704) eines zweiten generierten Bildes (a2) basierend auf dem Zielpatch (x2) mittels des zweiten Generators (72) und ermitteln einer zweiten Rekonstruktion (r2) basierend auf dem zweiten generierten Bild (a2) mittels des ersten Generators (71); • Ermitteln (705) eines ersten Verlustwertes ( L 1 ) ,
    Figure DE102022204263A1_0008
    wobei der erste Verlustwert ( L 1 )
    Figure DE102022204263A1_0009
    einen ersten Unterschied des Quellenpatches (x1) und der ersten Rekonstruktion (r1) charakterisiert, wobei der erste Unterschied gemäß einer ersten Aufmerksamkeitskarte (m1) gewichtet wird, und ermitteln eines zweiten Verlustwertes ( L 2 ) ,
    Figure DE102022204263A1_0010
    wobei der zweite Verlustwert ( L 2 )
    Figure DE102022204263A1_0011
    einen zweiten Unterschied des Zielpatches (x2) und der zweiten Rekonstruktion (r2) charakterisiert, wobei der zweite Unterschied gemäß einer zweiten Aufmerksamkeitskarte (m2) gewichtet wird; • Trainieren (706) des maschinellen Lernsystems (70) durch Trainieren des ersten Generators (71) und/oder des zweiten Generators (72) basierend auf dem ersten Verlustwert ( L 1 )
    Figure DE102022204263A1_0012
    und/oder dem zweiten Verlustwert ( L 2 ) .
    Figure DE102022204263A1_0013
  8. Verfahren (700) nach Anspruch 7, wobei die erste Aufmerksamkeitskarte (m1) für Pixel des Quellenpatches (x1) jeweils charakterisiert, ob ein Pixel zu einem auf dem Quellenpatches (x1) abgebildeten Objekt gehört oder nicht und/oder wobei die zweite Aufmerksamkeitskarte (m2) für Pixel des Zielpatches (x2) jeweils charakterisiert, ob ein Pixel zu einem auf dem Zielpatch (x2) abgebildeten Objekt gehört oder nicht.
  9. Verfahren (700) nach einem der Ansprüche 7 oder 8, wobei die erste Aufmerksamkeitskarte (m1) basierend auf dem Quellenpatch (x1) mittels eines Objektdetektors ermittelt wird und/oder wobei die zweite Aufmerksamkeitskarte (m2) basierend auf dem Zielpatch (x2) mittels des Objektdetektors ermittelt wird.
  10. Verfahren (700) nach Anspruch 9, wobei die Schritte des Verfahrens iterativ durchgeführt werden und der Objektdetektor in jeder Iteration eine erste Aufmerksamkeitskarte (m1) für ein Quellenpatch (x1) ermittelt und/oder in jeder Iteration eine zweite Aufmerksamkeitskarte (m2) für ein Zielpatch (x2) ermittelt.
  11. Verfahren (700) nach Anspruch 10, wobei der Objektdetektor ausgebildet ist, Objekte in Bildern von Szenen des Straßenverkehrs zu ermitteln.
  12. Verfahren (700) nach einem der Ansprüche 7 bis 11, wobei das maschinelle Lernsystem (70) ein CycleGAN charakterisiert.
  13. Computerimplementiertes Verfahren zum Trainieren eines Objektdetektors umfassend die Schritte: • Bereitstellen eines Eingabebildes und einer Annotation, wobei die Annotation eine Position zumindest eines im Eingabebild abgebildeten Objekts charakterisiert; • Ermitteln eines Zwischenbildes mittels des ersten Generators (71) eines maschinellen Lernsystems (70), welches nach einem der Ansprüche 7 bis 12 trainiert wurde; • Trainieren des Objektdetektors, wobei der Objektdetektor derart trainiert wird, dass der Objektdetektor für das Zwischenbild als Eingabe das Objekt oder die Objekte prädiziert, welche durch die Annotation charakterisiert werden.
  14. Computerimplementiertes Verfahren zum Ermitteln eines Ansteuersignals (A) zur Ansteuerung eines Aktors (10) und/oder einer Anzeigevorrichtung (10a) umfassend die Schritte: • Bereitstellen eines Eingabebildes (x); • Ermitteln von Objekten, die auf dem Eingabebild (x) abgebildet sind, mittels eines Objektdetektors, wobei der Objektdetektor nach Anspruch 13 trainiert wurde; • Ermitteln des Ansteuersignals (A) basierend auf den ermittelten Objekten; • Ansteuern des Aktors (10) und/oder der Anzeigevorrichtung (10a) gemäß des Ansteuersignals.
  15. Trainingsvorrichtung (140), welche eingerichtet ist, das Verfahren nach einem der Ansprüche 1 bis 13 auszuführen.
  16. Computerprogramm, welches eingerichtet ist, das Verfahren nach einem der Ansprüche 1 bis 14 auszuführen, wenn es durch einen Prozessor (45, 145) ausgeführt wird.
  17. Maschinenlesbares Speichermedium (46, 146), auf dem das Computerprogramm nach Anspruch 16 gespeichert ist.
DE102022204263.8A 2022-04-29 2022-04-29 Verfahren und Vorrichtung zum Trainieren eines neuronalen Netzes Pending DE102022204263A1 (de)

Priority Applications (3)

Application Number Priority Date Filing Date Title
DE102022204263.8A DE102022204263A1 (de) 2022-04-29 2022-04-29 Verfahren und Vorrichtung zum Trainieren eines neuronalen Netzes
US18/302,230 US20230351741A1 (en) 2022-04-29 2023-04-18 Method and device for training a neural network
CN202310483635.0A CN116977669A (zh) 2022-04-29 2023-04-28 用于训练神经网络的方法及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102022204263.8A DE102022204263A1 (de) 2022-04-29 2022-04-29 Verfahren und Vorrichtung zum Trainieren eines neuronalen Netzes

Publications (1)

Publication Number Publication Date
DE102022204263A1 true DE102022204263A1 (de) 2023-11-02

Family

ID=88306764

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102022204263.8A Pending DE102022204263A1 (de) 2022-04-29 2022-04-29 Verfahren und Vorrichtung zum Trainieren eines neuronalen Netzes

Country Status (3)

Country Link
US (1) US20230351741A1 (de)
CN (1) CN116977669A (de)
DE (1) DE102022204263A1 (de)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE112020005609T5 (de) 2019-11-14 2022-09-15 NEC Laboratories America, Inc. Domainanpassung für semantische Segmentierung durch Ausnutzen schwacher Etiketten
DE102022201679A1 (de) 2022-02-17 2023-08-17 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren und Vorrichtung zum Trainieren eines neuronalen Netzes

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE112020005609T5 (de) 2019-11-14 2022-09-15 NEC Laboratories America, Inc. Domainanpassung für semantische Segmentierung durch Ausnutzen schwacher Etiketten
DE102022201679A1 (de) 2022-02-17 2023-08-17 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren und Vorrichtung zum Trainieren eines neuronalen Netzes

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
LIU, Weixing; LUO, Bin; LIU, Jun. Synthetic data augmentation using multiscale attention CycleGAN for aircraft detection in remote sensing images. IEEE Geoscience and Remote Sensing Letters, 2021, 19. Jg., S. 1-5.
MORI, Keisuke, et al. Visual explanation by attention branch network for end-to-end learning-based self-driving. In: 2019 IEEE intelligent vehicles symposium (IV). IEEE, 2019. S. 1577-1582.
RICHTER, Stephan R. ; AlHaija, Hassan Abu; KOLTUN, Vladlen: Enhancing photorealism enhancement. Version 1, 10-05-2021. S. 1-16. URL: https://arxiv.org/pdf/2105.04619 [abgerufen am 2022-06-07].

Also Published As

Publication number Publication date
US20230351741A1 (en) 2023-11-02
CN116977669A (zh) 2023-10-31

Similar Documents

Publication Publication Date Title
DE202017102381U1 (de) Vorrichtung zum Verbessern der Robustheit gegen "Adversarial Examples"
WO2020260020A1 (de) Verfahren und vorrichtung zum überprüfen der robustheit eines künstlichen neuronalen netzes
DE102018128531A1 (de) System und Verfahren zum Analysieren einer durch eine Punktwolke dargestellten dreidimensionalen Umgebung durch tiefes Lernen
DE112017005651T5 (de) Vorrichtung zur Klassifizierung von Daten
EP3847578A1 (de) Verfahren und vorrichtung zur klassifizierung von objekten
EP3788552B1 (de) Verfahren und vorrichtung zum ermitteln eines tiefeninformationsbilds aus einem eingangsbild
DE69330021T2 (de) Verbessertes System zur Mustererkennung für Sonar und andere Anwendungen
EP2005361A1 (de) Multisensorieller hypothesen-basierter objektdetektor und objektverfolger
EP3393875B1 (de) Verfahren zum verbesserten erkennen von objekten durch ein fahrerassistenzsystem
DE102021201124A1 (de) Trainieren von bildklassifizierernetzen
DE102019205085A1 (de) Selbstüberwachung einer auf künstlicher Intelligenz basierenden Funktion
DE102021207613A1 (de) Verfahren zur Qualitätssicherung eines Systems
DE102022201679A1 (de) Verfahren und Vorrichtung zum Trainieren eines neuronalen Netzes
DE102020208828A1 (de) Verfahren und Vorrichtung zum Erstellen eines maschinellen Lernsystems
DE102018216078A1 (de) Verfahren und Vorrichtung zum Betreiben eines Steuerungssystems
DE102019202523A1 (de) Verfahren und Vorrichtung zum Betreiben eines Steuerungssystems
DE102022204263A1 (de) Verfahren und Vorrichtung zum Trainieren eines neuronalen Netzes
DE102021204040A1 (de) Verfahren, Vorrichtung und Computerprogramm zur Erstellung von Trainingsdaten im Fahrzeug
DE102021133977A1 (de) Verfahren und System zur Klassifikation von Szenarien eines virtuellen Tests sowie Trainingsverfahren
WO2020260016A1 (de) Verfahren und vorrichtung zum trainieren eines maschinellen lernsystems
DE102020203135A1 (de) Verfahren zur Qualitätssicherung eines beispielbasierten Systems
DE102019220615A1 (de) Verfahren und Vorrichtung zum Erkennen und Klassifizieren von Objekten
DE102019209228A1 (de) Verfahren und Vorrichtung zum Überprüfen der Robustheit eines künstlichen neuronalen Netzes
DE102019217951A1 (de) Verfahren und Vorrichtung zum Bestimmen einer Domänendistanz zwischen mindestens zwei Datendomänen
DE102021209212A1 (de) Verfahren und Vorrichtung zum Ermitteln von Objektdetektionen eines Bildes

Legal Events

Date Code Title Description
R163 Identified publications notified