DE102021107247A1 - Domänenübersetzungsnetzwerk zur durchführung einer bildübersetzung - Google Patents

Domänenübersetzungsnetzwerk zur durchführung einer bildübersetzung Download PDF

Info

Publication number
DE102021107247A1
DE102021107247A1 DE102021107247.6A DE102021107247A DE102021107247A1 DE 102021107247 A1 DE102021107247 A1 DE 102021107247A1 DE 102021107247 A DE102021107247 A DE 102021107247A DE 102021107247 A1 DE102021107247 A1 DE 102021107247A1
Authority
DE
Germany
Prior art keywords
sequential
domain
decoder
image
latent
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
DE102021107247.6A
Other languages
English (en)
Inventor
Praveen Narayanan
Nikita Jaipuria
Punarjay Chakravarty
Vidya Nariyambut murali
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.)
Ford Global Technologies LLC
Original Assignee
Ford Global Technologies LLC
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 Ford Global Technologies LLC filed Critical Ford Global Technologies LLC
Publication of DE102021107247A1 publication Critical patent/DE102021107247A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • G06F18/2148Generating training patterns; Bootstrap methods, e.g. bagging or boosting characterised by the process organisation or structure, e.g. boosting cascade
    • 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/044Recurrent networks, e.g. Hopfield networks
    • 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/045Combinations of networks
    • 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/049Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
    • 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
    • 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
    • G06T3/04
    • 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
    • G06V10/7747Organisation of the process, e.g. bagging or boosting
    • 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

Landscapes

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

Abstract

Diese Offenbarung stellt ein Domänenübersetzungsnetzwerk zur Durchführung einer Bildübersetzung bereit. Die vorliegende Offenbarung offenbart ein System und ein Verfahren, welches das Empfangen einer latenten Darstellung eines Bildes mit einer ersten Domäne an einem Decoder und das Erzeugen eines rekonstruierten Bildes mit einer zweiten Domäne beinhaltet, wobei das rekonstruierte Bild basierend auf der latenten Darstellung erzeugt wird.

Description

  • GEBIET DER TECHNIK
  • Die Offenbarung betrifft im Allgemeinen tiefe neuronale Netzwerke.
  • ALLGEMEINER STAND DER TECHNIK
  • Tiefe neuronale Netzwerke (deep neural networks - DNNs) können verwendet werden, um viele Aufgaben zum Verstehen von Bildern durchzuführen, einschließlich Klassifizierung, Segmentierung und Beschriftung. Üblicherweise erfordern DNNs große Mengen an Trainingsbildern (Zehntausende bis Millionen). Des Weiteren müssen diese Trainingsbilder üblicherweise zum Zwecke des Trainings und der Vorhersage mit Anmerkungen versehen werden.
  • KURZDARSTELLUNG
  • Offenbart wird ein System, das einen Computer einschließlich eines Prozessors und eines Speichers beinhaltet. Der Speicher beinhaltet Anweisungen, sodass der Prozessor dazu programmiert ist, an einem Decoder eine latente Darstellung eines Bildes mit einer ersten Domäne zu empfangen; und ein rekonstruiertes Bild mit einer zweiten Domäne zu erzeugen, wobei das rekonstruierte Bild basierend auf der latenten Darstellung erzeugt wird.
  • In anderen Merkmalen ist der Prozessor ferner dazu programmiert, das Bild mit der ersten Domäne zu empfangen; und an einem Codierer die latente Darstellung zu erzeugen.
  • In anderen Merkmalen umfasst der Codierer einen sequenziellen Codierer.
  • In anderen Merkmalen umfasst der sequenzielle Codierer ein Faltungsfilter und ein Autobahnnetzwerk.
  • In anderen Merkmalen umfasst der sequenzielle Codierer eine rekurrente Einheit mit Gate, die mit dem Faltungsfilter und dem Autobahnnetzwerk verbunden ist.
  • In anderen Merkmalen umfasst der Decoder einen sequenziellen Decoder.
  • In anderen Merkmalen beinhaltet der sequenzielle Decoder eine Aufmerksamkeitsschicht des rekurrenten neuronalen Netzwerkes.
  • In anderen Merkmalen beinhaltet der sequenzielle Decoder eine Decoderschicht des rekurrenten neuronalen Netzwerkes, die mit der Aufmerksamkeitsschicht des rekurrenten neuronalen Netzwerkes verbunden ist.
  • In anderen Merkmalen beinhaltet der sequenzielle Decoder eine Entfaltungsschicht des neuronalen Netzwerkes, die mit der Decoderschicht des rekurrenten neuronalen Netzwerkes verbunden ist.
  • In anderen Merkmalen wird das Bild durch einen Generator erzeugt.
  • Offenbart wird ein Verfahren, welches das Empfangen einer latenten Darstellung eines Bildes mit einer ersten Domäne an einem Decoder; und das Erzeugen eines rekonstruierten Bildes mit einer zweiten Domäne beinhaltet, wobei das rekonstruierte Bild basierend auf der latenten Darstellung erzeugt wird.
  • In anderen Merkmalen beinhaltet das Verfahren das Empfangen des Bildes mit der ersten Domäne; und das Erzeugen der latenten Darstellung an einem Codierer.
  • In anderen Merkmalen umfasst der Codierer einen sequenziellen Codierer.
  • In anderen Merkmalen umfasst der sequenzielle Codierer ein Faltungsfilter und ein Autobahnnetzwerk.
  • In anderen Merkmalen umfasst der sequenzielle Codierer eine rekurrente Einheit mit Gate, die mit dem Faltungsfilter und dem Autobahnnetzwerk verbunden ist.
  • In anderen Merkmalen umfasst der Decoder einen sequenziellen Decoder.
  • In anderen Merkmalen beinhaltet der sequenzielle Decoder eine Aufmerksamkeitsschicht des rekurrenten neuronalen Netzwerkes.
  • In anderen Merkmalen beinhaltet der sequenzielle Decoder eine Decoderschicht des rekurrenten neuronalen Netzwerkes, die mit der Aufmerksamkeitsschicht des rekurrenten neuronalen Netzwerkes verbunden ist.
  • In anderen Merkmalen beinhaltet der sequenzielle Decoder eine Entfaltungsschicht des neuronalen Netzwerkes, die mit der Decoderschicht des rekurrenten neuronalen Netzwerkes verbunden ist.
  • In anderen Merkmalen wird das Bild durch einen Generator erzeugt.
  • Figurenliste
    • 1 ist ein Diagramm eines beispielhaften Systems zum Trainieren eines kontradiktorischen Netzwerkes.
    • 2 ist ein Diagramm eines beispielhaften Servers innerhalb des Systems.
    • 3 ist ein Diagramm eines beispielhaften Domänenübersetzungsnetzwerkes.
    • 4 ist ein Diagramm eines beispielhaften sequenziellen Codierers.
    • 5 ist ein Diagramm eines beispielhaften sequenziellen Decoders.
    • 6 ist ein Diagramm eines beispielhaften kontradiktorischen Netzwerkes.
    • 7 ist ein Diagramm eines beispielhaften Diskriminators.
    • 8 ist ein Diagramm eines beispielhaften tiefen neuronalen Netzwerkes.
    • 9 ist ein Ablaufdiagramm für einen beispielhaften Prozess zum Trainieren eines Domänenübersetzungsnetzwerkes.
    • 10 ist ein Ablaufdiagramm für einen beispielhaften Prozess zum Trainieren eines Di skriminators.
  • DETAILLIERTE BESCHREIBUNG
  • Autonome Fahrzeuge setzen typischerweise Wahrnehmungsalgorithmen oder -agenten ein, um die Umgebung um das Fahrzeug herum wahrzunehmen. Das Trainieren der Wahrnehmungsalgorithmen erfordert jedoch typischerweise große Datenmengen. Es können Spiel-Engines verwendet werden, um Daten, wie etwa synthetische Bilder, zu simulieren, die für die Wahrnehmungsalgorithmen Objekte von Interesse abbilden. Die Objekte von Interesse können andere Fahrzeuge, Anhänger, Fußgänger, Straßenmarkierungen, Schilder oder dergleichen beinhalten. Die synthetischen Daten erscheinen jedoch möglicherweise nicht als „real“. Infolgedessen entspricht das Training von Wahrnehmungsalgorithmen unter Verwendung synthetischer Daten möglicherweise nicht dem Training von Wahrnehmungsalgorithmen unter Verwendung von realen, das heißt nichterzeugten, Daten.
  • Die vorliegende Offenbarung ist auf ein Domänenübersetzungsnetzwerk gerichtet, das eine Sequenz von Bildern erzeugt. Zum Beispiel kann eine Sequenz von Bildern mit einer ersten Domäne in das Domänenübersetzungsnetzwerk eingegeben werden, und das Domänenübersetzungsnetzwerk erzeugt eine Sequenz von Bildern mit einer zweiten Domäne basierend auf der Sequenz von Bildern mit der ersten Domäne. Wie in dieser Schrift beschrieben, kann das Domänenübersetzungsnetzwerk eine Codierer-Decoder-Architektur einsetzen. Der Codiererabschnitt kann die Sequenzbilder mit der ersten Domäne in eine latente Darstellung der Bilder codieren. Der Decoder kann dazu konfiguriert sein, Daten basierend auf der latenten Darstellung zu decodieren, um Bilder mit der zweiten Domäne zu rekonstruieren.
  • Wenngleich die vorliegende Offenbarung ein Fahrzeugsystem und einen Server beschreibt, versteht es sich, dass ein beliebiges geeignetes Computersystem verwendet werden kann, um die Techniken und/oder die Funktion des in dieser Schrift beschriebenen kontradiktorischen neuronalen Netzwerkes durchzuführen.
  • 1 ist ein Blockdiagramm eines beispielhaften Fahrzeugsystems 100. Das System 100 beinhaltet ein Fahrzeug 105, bei dem es sich um ein Landfahrzeug handelt, wie etwa ein Auto, einen Lastwagen usw. Das Fahrzeug 105 beinhaltet einen Computer 110, Fahrzeugsensoren 115, Aktoren 120 zum Betätigen verschiedener Fahrzeugkomponenten 125 und ein Fahrzeugkommunikationsmodul 130. Über ein Netzwerk 135 ermöglicht das Kommunikationsmodul 130, dass der Computer 110 mit einem Server 145 kommuniziert.
  • Der Computer 110 beinhaltet einen Prozessor und einen Speicher. Der Speicher beinhaltet eine oder mehrere Formen computerlesbarer Medien und speichert Anweisungen, die durch den Computer 110 zum Durchführen verschiedener Vorgänge, einschließlich der in dieser Schrift offenbarten, ausgeführt werden können.
  • Der Computer 110 kann ein Fahrzeug 105 in einem autonomen, einem halbautonomen oder einem nichtautonomen (manuellen) Modus betreiben. Für die Zwecke dieser Offenbarung ist ein autonomer Modus als einer definiert, bei dem jedes von Antrieb, Bremsung und Lenkung des Fahrzeugs 105 durch den Computer 110 gesteuert wird; in einem halbautonomen Modus steuert der Computer 110 eines oder zwei von Antrieb, Bremsung und Lenkung des Fahrzeugs 105; in einem nichtautonomen Modus steuert ein menschlicher Fahrzeugführer jedes von Antrieb, Bremsung und Lenkung des Fahrzeugs 105.
  • Der Computer 110 kann Programmierung zum Betreiben eines oder mehrerer von Bremsen, Antrieb (z. B. Steuern der Beschleunigung in dem Fahrzeug durch Steuern eines oder mehrere von einer Brennkraftmaschine, einem Elektromotor, einem Hybridmotor usw.), Lenkung, Klimasteuerung, Innen- und/oder Außenbeleuchtung usw. des Fahrzeugs und zum Bestimmen, ob und wann der Computer 110 derartige Vorgänge anstelle eines menschlichen Fahrzeugführers steuern soll, beinhalten. Des Weiteren kann der Computer 110 dazu programmiert sein, zu bestimmen, ob und wann ein menschlicher Fahrzeugführer derartige Vorgänge steuern soll.
  • Der Computer 110 kann mehr als einen Prozessor, die z. B. in elektronischen Steuereinheiten (electronic controller units - ECUs) oder dergleichen beinhaltet sind, die in dem Fahrzeug 105 zum Überwachen und/oder Steuern verschiedener Fahrzeugkomponenten 125, sind, z. B. einer Antriebsstrangsteuerung, einer Bremssteuerung, einer Lenkungssteuerung usw., beinhalten oder kommunikativ an diese gekoppelt sein, z. B. über ein Kommunikationsmodul 130 des Fahrzeugs 105, wie nachfolgend ausführlicher beschrieben. Ferner kann der Computer 110 über das Kommunikationsmodul 130 des Fahrzeugs 105 mit einem Navigationssystem kommunizieren, welches das globale Positionsbestimmungssystem (GPS) verwendet. Als ein Beispiel kann der Computer 110 Standortdaten des Fahrzeugs 105 anfordern und empfangen. Die Standortdaten können in einer bekannten Form vorliegen, z. B. in Geokoordinaten (Breiten- und Längenkoordinaten).
  • Der Computer 110 ist im Allgemeinen für Kommunikationen über das Kommunikationsmodul 130 des Fahrzeugs 105 und zudem mithilfe eines internen drahtgebundenen und/oder drahtlosen Netzwerkes des Fahrzeugs 105, z. B. einem Bus oder dergleichen in dem Fahrzeug 105, wie etwa einem Controller Area Network (CAN) oder dergleichen, und/oder anderen drahtgebundenen und/oder drahtlosen Mechanismen angeordnet.
  • Über das Kommunikationsnetzwerk des Fahrzeugs 105 kann der Computer 110 Nachrichten an verschiedene Vorrichtungen in dem Fahrzeug 105 übertragen und/oder Nachrichten von den verschiedenen Vorrichtungen empfangen, z.B. Fahrzeugsensoren 115, Aktoren 120, Fahrzeugkomponenten 125, einer Mensch-Maschine-Schnittstelle (human machine interface - HMI) usw. Alternativ oder zusätzlich dazu kann das Kommunikationsnetzwerk des Fahrzeugs 105 in Fällen, in denen der Computer 110 tatsächlich eine Vielzahl von Vorrichtungen umfasst, zur Kommunikation zwischen Vorrichtungen verwendet werden, die in dieser Offenbarung als der Computer 110 dargestellt sind. Ferner können, wie nachstehend erwähnt, verschiedene Steuerungen und/oder Fahrzeugsensoren 115 dem Computer 110 Daten bereitstellen.
  • Die Fahrzeugsensoren 115 können vielfältige Vorrichtungen beinhalten, die bekanntermaßen dem Computer 110 Daten bereitstellen. Beispielsweise können die Fahrzeugsensoren 115 (einen) Light-Detection-and-Ranging-Sensor(en) (LIDAR-Sensor(en)) 115 usw. beinhalten, der/die auf einer Oberseite des Fahrzeugs 105, hinter einer Windschutzscheibe des Fahrzeugs 105, um das Fahrzeug 105 herum usw. angeordnet ist/sind und diesbezügliche Standorte, Größen und Formen von Objekten und/oder Verhältnissen bereitstellen, die das Fahrzeug 105 umgeben. Als ein weiteres Beispiel können ein oder mehrere Radarsensoren 115, der/die an Stoßfängern des Fahrzeugs 105 befestigt ist/sind, Daten bereitstellen, um die Geschwindigkeit von Objekten (möglicherweise einschließlich zweiter Fahrzeuge 106) usw. in Bezug auf den Standort des Fahrzeugs 105 bereitzustellen und zu klassifizieren. Die Fahrzeugsensoren 115 können ferner (einen) Kamerasensor(en) 115 einschließen, der/die z. B. nach vorne, zur Seite, nach hinten usw. gerichtet ist/sind und der/die Bilder von einem Sichtfeld innerhalb und/oder außerhalb des Fahrzeugs 105 bereitstellt/bereitstellen.
  • Die Aktoren 120 des Fahrzeugs 105 sind über Schaltungen, Chips, Elektromotoren oder andere elektronische und/oder mechanische Komponenten umgesetzt, die verschiedene Fahrzeugteilsysteme gemäß geeigneten Steuersignalen, wie bekannt, betätigen können. Die Aktoren 120 können verwendet werden, um Komponenten 125, einschließlich Bremsung, Beschleunigung und Lenkung eines Fahrzeugs 105, zu steuern.
  • Im Kontext der vorliegenden Offenbarung handelt es sich bei einer Fahrzeugkomponente 125 um eine oder mehrere Hardwarekomponenten, die dazu ausgelegt sind, eine(n) mechanische(n) oder elektromechanische(n) Funktion oder Vorgang durchzuführen - wie etwa Bewegen des Fahrzeugs 105, Abbremsen oder Anhalten des Fahrzeugs 105, Lenken des Fahrzeugs 105 usw. Nicht einschränkende Beispiele für die Komponenten 125 beinhalten eine Antriebskomponente (die z. B. eine Brennkraftmaschine und/oder einen Elektromotor usw. beinhaltet), eine Getriebekomponente, eine Lenkkomponente (die z. B. eines oder mehrere von einem Lenkrad, einer Lenkzahnstange usw. beinhalten kann), eine Bremskomponente (wie nachstehend beschrieben), eine Parkassistenzkomponente, eine Komponente zur adaptiven Geschwindigkeitsregelung, eine Komponente zur adaptiven Lenkung, einen bewegbaren Sitz usw.
  • Darüber hinaus kann der Computer 110 dazu konfiguriert sein, über ein(e) Fahrzeug-zu-Fahrzeug-Kommunikationsmodul oder -schnittstelle 130 mit Vorrichtungen außerhalb des Fahrzeugs 105 zu kommunizieren, z. B. über drahtlose Kommunikation von Fahrzeug-zu-Fahrzeug (vehicle-to-vehicle - V2V) oder Fahrzeug-zu-Infrastruktur (vehicle-to-infrastructure - V2X) zu einem anderen Fahrzeug mit einem entfernten Server 145 (in der Regel über das Netzwerk 135). Das Modul 130 könnte einen oder mehrere Mechanismen beinhalten, durch die der Computer 110 kommunizieren kann, einschließlich einer beliebigen gewünschten Kombination aus drahtlosen (z. B. Mobilfunk-, Drahtlos-, Satelliten-, Mikrowellen- und Hochfrequenz-) Kommunikationsmechanismen und einer beliebigen gewünschten Netzwerktopologie (oder -topologien, wenn eine Vielzahl von Kommunikationsmechanismen genutzt wird). Beispielhafte über das Modul 130 bereitgestellte Kommunikation beinhaltet Mobilfunk, Bluetooth®, IEEE 802.11, dedizierte Nahbereichskommunikation (dedicated short range communication - DSRC) und/oder Weitverkehrsnetzwerke (wide area networks - WAN), einschließlich des Internets, die Datenkommunikationsdienste bereitstellen.
  • Bei dem Netzwerk 135 kann es sich um einen oder mehrere von verschiedenen drahtgebundenen oder drahtlosen Kommunikationsmechanismen handeln, einschließlich einer beliebigen gewünschten Kombination aus drahtgebundenen (z. B. Kabel- und Glasfaser-) und/oder drahtlosen (z. B. Mobilfunk-, Drahtlos-, Satelliten-, Mikrowellen- und Hochfrequenz-) Kommunikationsmechanismen und einer beliebigen gewünschten Netzwerktopologie (oder -topologien, wenn mehrere Kommunikationsmechanismen genutzt werden). Zu beispielhaften Kommunikationsnetzwerken gehören drahtlose Kommunikationsnetzwerke (z. B. unter Verwendung von Bluetooth, Bluetooth Low Energy (BLE), IEEE 802.11, Fahrzeug-zu-Fahrzeug (V2V), wie etwa dedizierter Nahbereichskommunikation (DSRC) usw.), lokale Netzwerke (local area network - LAN) und/oder Weitverkehrsnetzwerke (WAN), einschließlich des Internets, die Datenkommunikationsdienste bereitstellen.
  • Ein Computer 110 kann im Wesentlichen kontinuierlich, periodisch und/oder wenn durch einen Server 145 usw. angewiesen Daten von den Sensoren 115 empfangen und analysieren. Ferner können herkömmliche Techniken zur Klassifizierung oder Identifizierung von Objekten verwendet werden, z. B. in einem Computer 110 basierend auf Daten von einem LIDAR-Sensor 115, einem Kamerasensor 115 usw., um eine Objektart, z. B. Fahrzeug, Person, Stein, Schlagloch, Fahrrad, Motorrad usw., und physische Merkmale von Objekten zu identifizieren.
  • 2 ist ein Blockdiagramm eines beispielhaften Servers 145. Der Server 145 beinhaltet einen Computer 235 und ein Kommunikationsmodul 240. Der Computer 235 beinhaltet einen Prozessor und einen Speicher. Der Speicher beinhaltet eine oder mehrere Formen computerlesbarer Medien und speichert Anweisungen, die durch den Computer 235 zum Durchführen verschiedener Vorgänge, einschließlich der in dieser Schrift offenbarten, ausgeführt werden können. Das Kommunikationsmodul 240 ermöglicht, dass der Computer 235 mit anderen Vorrichtungen, wie etwa dem Fahrzeug 105, kommuniziert.
  • 3 ist ein Diagramm eines beispielhaften Domänenanpassungsnetzwerkes 300, das domänenübersetzte Bildsequenzen erzeugt.Bei dem Domänenanpassungsnetzwerk 300 kann es sich beispielsweise um ein Softwareprogramm handeln, das in einen Speicher geladen und durch einen Prozessor in dem Fahrzeug 105 und/oder auf dem Server 145 ausgeführt werden kann. Zum Beispiel kann das Domänenanpassungsnetzwerk 300 eine Sequenz von Bildern in einer ersten Domäne (Tag) empfangen, die ein Video darstellt, und eine Sequenz von Bildern in einer zweiten Domäne (Nacht) ausgeben. Das Domänenanpassungsnetzwerk 300 beinhaltet einen ersten latenten Merkmalsextraktor 305-1, einen zweiten latenten Merkmalsextraktor 305-2, einen ersten sequenziellen Codierer 310-1, einen zweiten sequenziellen Codierer 310-2, einen ersten sequenziellen Decoder 315-1, einen zweiten sequenziellen Decoder 315-2, einen ersten Decoder 320-1 und einen zweiten Decoder 320-2.
  • Die latenten Merkmalsextraktoren 305-1, 305-2 umfassen trainierte neuronale Netzwerke von Variationsautocodierern (variational autoencoder - VAE), die ein oder mehrere Bilder als Eingabe empfangen und die Bilder in einen latenten, d. h. verborgenen Darstellungsraum (z. B. latente Merkmale) codieren. Die verborgene Darstellung kann als latente Darstellung oder latente Vektoren 325 bezeichnet werden. Die latenten Merkmalsextraktoren 305-1, 305-2 können als eine oder mehrere verborgene Faltungsschichten und eine vollständig verbundene Ausgabeschicht umgesetzt sein.
  • Die latenten Vektoren 325, die durch die latenten Merkmalsextraktoren 305-1, 305-2 erzeugt werden, weisen eine geringere Dimensionalität als die Bilder auf, die in die latenten Merkmalsextraktoren 305-1, 305-2 eingegeben werden. Beispielsweise könnte die Eingabe in das Codierernetzwerk ein 28 x 28 Pixel großes Eingabebild sein, das 784-dimensional ist. Die latente Darstellung des Eingabebildes 323 ist weniger als 784-dimensional.
  • Die sequenziellen Codierer 310-1, 310-2 empfangen die latenten Vektoren 325 von den entsprechenden latenten Merkmalsextraktoren 305-1, 305-2. Wie nachstehend ausführlicher beschrieben, umfassen die sequenziellen Codierer 310-1, 310-2 Codierer von Convolutional Banks, Highway- und Gated Recurrent Units (CBHG), welche die latenten Vektoren 325 empfangen, um codierte Darstellungen 328 der latenten Vektoren 325 zu erzeugen.
  • Die sequenziellen Decoder 315-1, 315-2 empfangen die codierten Darstellungen 328 und erzeugen eine sequenziell decodierte latente Darstellung. Die decodierte latente Darstellung, z. B. latente Vektoren, entsprechen sequenziellen Bildrahmen, die in entsprechende Decoder 320-1, 320-2 eingegeben werden. Die Decoder 320-1, 320-2 können trainierte VAE-Decoder umfassen, die eine vollständig verbundene Eingabeschicht und eine oder mehrere verborgene Entfaltungsschichten beinhalten. Die Decoder 320-1, 320-2 empfangen die decodierte latente Darstellung und erzeugen rekonstruierte sequenzielle Bilder 330 basierend auf der decodierten latenten Darstellung. Die rekonstruierten sequenziellen Bilder 330 können einer Domäne entsprechen, die sich in Bezug auf eine Domäne der latenten Vektoren 325 unterscheidet, welche in den sequenziellen Decoder 315-1, 315-2 eingegeben werden. Die latenten Merkmalsextraktoren 305-1, 305-2 und die Decoder 320-1, 320-2 können unter Verwendung von Trainingsbildern trainiert werden. Wie gezeigt, beinhaltet das Domänenanpassungsnetzwerk 300 einen Aufmerksamkeitsmechanismus 335, der einen Kontextvektor und/oder Domänenaufmerksamkeitskontext basierend auf der Ausgabe der sequenziellen Codierer 315-1, 315-2 erzeugt.
  • 4 veranschaulicht einen beispielhaften sequenziellen Codierer 310 gemäß einer beispielhaften Umsetzung der vorliegenden Offenbarung. Wie gezeigt, beinhaltet der sequenzielle Codierer 310 Faltungsfilter und ein Autobahnnetzwerk 405. Die Faltungsfilter und das Autobahnnetzwerk 405 können eine Bank von 1-D-Faltungsfiltern beinhalten, die eine latente Sequenz 410 des Eingabebildes empfangen, z. B. xo bis x1. Die latente Sequenz 410 des Eingabebildes kann den latenten Vektoren 325 entsprechen. Die 1-D-Faltungsfilter erzeugen Faltungsausgaben der latenten Sequenz 410 des Bildes. Die Faltungsfilter und das Autobahnnetzwerk 405 beinhalten zudem ein Autobahnnetzwerk, das die Faltungsausgaben verarbeitet, um codierte Darstellungen der Sequenz von latenten Merkmalen 415 des Bildes, z. B. f0 bis f2, zu erzeugen. Der sequenzielle Codierer 310 kann zudem eine oder mehrere rekurrente Einheiten mit Gate (gated recurrent units - GRUs) 420 beinhalten, welche die codierten Darstellungen der Sequenz von latenten Merkmalen 415 des Bildes empfangen und latenten Kontext 425 ausgeben, z. B. ho bis h2. Der latente Ausgabekontext 425 kann als „verborgene Codierereinheiten“ bezeichnet werden. Wie gezeigt, können nachfolgende GRUs 420 als Eingabe den latenten Kontext 425 von einer vorherigen GRU 420 und die entsprechende latente Sequenz des Bildes empfangen. Die GRUs 420 können bidirektionale GRUs sein, um sequenzielle Merkmale sowohl aus dem Vorwärts- als auch aus dem Rückwärtskontext zu extrahieren.
  • 5 veranschaulicht einen beispielhaften sequenziellen Decoder 315 gemäß einer beispielhaften Umsetzung der vorliegenden Offenbarung. Der sequenzielle Decoder 315 kann eine oder mehrere Aufmerksamkeitsschichten 505 des rekurrenten neuronalen Netzwerkes (recurrent neural network - RNN) beinhalten, die einen Kontextvektor 507 und einen Domänenaufmerksamkeitskontext 510 (ci) als Eingabe empfangen. Der Kontextvektor 507 kann basierend auf dem latenten Kontext 425 durch den Aufmerksamkeitsmechanismus 335 erzeugt werden. Der Domänenaufmerksamkeitskontext 510 kann durch einen Aufmerksamkeitsmechanismus 335 (siehe 3) erzeugt werden, der dem Domänenanpassungsnetzwerk 300 zugeordnet ist. Der Domänenaufmerksamkeitskontext 510 kann dem sequenziellen Decoder 315 eine Stelle von Interesse innerhalb des sequenziellen latenten Kontextes 425 bereitstellen. Die Stelle von Interesse kann einer Handlung entsprechen, die unter Verwendung von Informationen zur Erscheinungsbewegung bestimmt wird. In einer oder mehreren Umsetzungen können die RNN-Aufmerksamkeitsschichten 505 eine oder mehrere GRUs umfassen. Zum Beispiel können die RNN-Aufmerksamkeitsschichten 505 eine 1-Schicht-GRU umfassen.
  • In einer oder mehreren Umsetzungen kann der Aufmerksamkeitsmechanismus 335 die sequenziellen Decoder 315-1, 315-2 auf relevante Abschnitte der Eingabesequenz fokussieren.Eine nicht einschränkende Umsetzung des Aufmerksamkeitsmechanismus 335 ist in „Effective Approaches to Attention-based Neural Machine Translation“ von Minh-Thang Luong, Hieu Pham und Christopher Manning, veröffentlicht am 17. August 2015 beschrieben, das in seiner Gesamtheit durch Bezugnahme in diese Schrift aufgenommen ist. Eine weitere nicht einschränkende Umsetzung des Aufmerksamkeitsmechanismus 335 ist in „Hierarchiacal Sequence to Sequence Voice Conversion with Limited Data“ von Praveen Narayanan, Punarjay Chakravarty, Francis Charette und Gint Puskorius, veröffentlicht am 15. Juli 2019, beschrieben, das in seiner Gesamtheit durch Bezugnahme in diese Schrift aufgenommen ist.
  • Die Aufmerksamkeitsschicht des rekurrenten neuronalen Netzwerkes 505 geben versteckte Einheiten 515 des Decoders aus, z. B. Si, ... Si+1, die als Eingabe für eine Decoder-RNN-Schicht 520 dienen. Die Decoder-RNN-Schicht 520 kann eine oder mehrere GRUs umfassen. Zum Beispiel kann die Decoder-RNN-Schicht 520 eine 2-Schicht-Rest-GRU umfassen. Die Ausgabe der Decoder-RNN-Schicht 520 wird einer oder mehreren Entfaltungsschichten 525 bereitgestellt. Anfänglich decodieren oder rekonstruieren die Entfaltungsschichten 525 einen Rahmen 530, yi, der dem anfänglichen latenten Kontext 425 und dem Domänenaufmerksamkeitskontext 510 entspricht. Der decodierte Rahmen 530 dient dann als Eingabe in die RNN-Schichten 505 des rekurrenten neuronalen Netzwerkes (RNN). Die decodierten Rahmen können dann den Decodern 320-1, 320-2 bereitgestellt werden, sodass die Decoder 320-1, 320-2 einen Bildrahmen rekonstruieren können.
  • 6 ist ein Diagramm eines beispielhaften kontradiktorischen neuronalen Netzwerkes 600. Bei dem kontradiktorischen neuronalen Netzwerk 600 kann es sich um ein Softwareprogramm handeln, das in einen Speicher geladen und beispielsweise durch einen Prozessor in dem Fahrzeug 105 und/oder auf dem Server 145 ausgeführt werden kann. Wie gezeigt, beinhaltet das kontradiktorische neuronale Netzwerk 600 einen Generator 602, einen Codierer 605 und einen Diskriminator 610. Im vorliegenden Kontext umfassen der Generator 602 und der Diskriminator 610 ein kontradiktorisches Netzwerk. Bei dem kontradiktorischen Netzwerk handelt es sich um ein tiefes neuronales Netzwerk, das eine Klasse von Algorithmen mit künstlicher Intelligenz einsetzt, die beim maschinellen Lernen verwendet werden und durch ein System von zwei neuronalen Netzwerken umgesetzt werden, welche in einem kontradiktorischen Nullsummenspielrahmen gegeneinander antreten.
  • In einer beispielhaften Umsetzung empfängt der Codierer 605 ein durch den Generator 602 erzeugtes Eingabebild. Die Eingabebilder können basierend auf den Objekten, Bildansichten und/oder Parametern der in den Bildern abgebildeten Objekte einander entsprechen. Der Codierer 605 codiert das Bild in eine latente (d. h. versteckte) Darstellung des Eingabebildes. Der latente Merkmalsextraktor 305 kann als eine oder mehrere verborgene Faltungsschichten und eine vollständig verbundene Ausgabeschicht umgesetzt sein.
  • Der Diskriminator 610 ist dazu konfiguriert, die latenten Vektoren 607 zu empfangen, die latenten Vektoren 607 auszuwerten und eine Vorhersage zu erzeugen, die angibt, ob die empfangenen Vektoren 607 einem maschinell erzeugten Bild oder einem Bild entspricht, das aus einer realen Datenverteilung stammt. Der Diskriminator 610 empfängt die durch den Generator 602 erzeugten latenten Vektoren und latente Vektoren, die einem Bild aus einer realen Datenverteilung entsprechen, während des Trainings, sodass der Diskriminator 610 zwischen latenten Vektoren 607 von synthetischen Bildern und latenten Vektoren 607 von Bildern aus einer realen Datenverteilung unterscheiden kann.
  • Wie in 6 gezeigt, wird die Vorhersage dem Generator 602 bereitgestellt. Der Generator 602 kann die Vorhersage verwenden, um eine oder mehrere Gewichtungen des Codierers 605 zu modifizieren, d. h. zu aktualisieren, um die Vorhersagen zu minimieren, die angeben, dass die erzeugten latenten Vektoren des Bildes als synthetisch, d. h. als falsch, klassifiziert werden. Zum Beispiel kann der Generator 602 eine oder mehrere Gewichtungen innerhalb des Generators 602 unter Verwendung von Rückpropagierung oder dergleichen aktualisieren.
  • Der Diskriminator 610 kann zudem basierend auf der Vorhersage aktualisiert werden. Wenn zum Beispiel die Vorhersage angibt, dass die erzeugten latenten Vektoren einem Bild aus einer realen Datenverteilung entsprechen, kann der Diskriminator 610 eine Rückmeldung empfangen, die angibt, dass die latenten Vektoren 607 einem synthetischen Bild entsprechen. Basierend auf der Rückmeldung können eine oder mehrere Gewichtungen des Diskriminators 610 aktualisiert werden, um inkorrekte Vorhersagen zu minimieren.
  • 7 veranschaulicht eine beispielhafte Umsetzung des Diskriminators 610. Wie gezeigt, beinhaltet der Diskriminator 610 eine oder mehrere CBHGs 705. Zum Beispiel kann die CBHG 705 ein Faltungsfilter 710, eine Autobahnschicht 715 und eine GRU 720 beinhalten. Das Faltungsfilter 710 kann eine Bank von 1-D-Faltungsfiltern umfassen, welche die empfangene Eingabe 725 faltet. Zum Beispiel kann die empfangene Eingabe 725 latente Darstellungen von Bildern umfassen, z. B. x0 bis x2. Die Faltungsausgaben können der Autobahnschicht 715 bereitgestellt werden, um Merkmale auf hoher Ebene zu extrahieren. Die GRU 720 kann die extrahierten Merkmale auf hoher Ebene empfangen, und die GRU 720 kann sequenzielle Merkmale sowohl aus dem Vorwärts- als auch aus dem Rückwärtskontext extrahieren. Die Ausgabe, z. B. Vorhersage, des Diskriminators 610 kann die letzte verborgene Ausgabe H2 umfassen.
  • 8 ist ein Diagramm eines beispielhaften tiefen neuronalen Netzwerkes (DNN) 800. Das DNN 800 kann repräsentativ für eines oder mehrere der vorstehend beschriebenen rekurrenten neuronalen Netzwerke sein. Das DNN 800 beinhaltet mehrere Knoten 805, und die Knoten 805 sind derart angeordnet, dass das DNN 800 eine Eingabeschicht, eine oder mehrere verborgene Schichten und eine Ausgabeschicht beinhaltet. Jede Schicht des DNN 800 kann eine Vielzahl von Knoten 805 beinhalten. Während 8 drei (3) verborgene Schichten veranschaulicht, versteht es sich, dass das DNN 800 zusätzliche oder weniger verborgene Schichten beinhalten kann. Die Eingabe- und Ausgabeschichten können auch mehr als einen (1) Knoten 505 beinhalten.
  • Die Knoten 805 werden mitunter als künstliche Neuronen 805 bezeichnet, da sie dazu ausgestaltet sind, biologische, z. B. menschliche, Neuronen nachzubilden. Ein Satz von Eingaben (dargestellt durch die Pfeile) in jedes Neuron 805 wird jeweils mit jeweiligen Gewichtungen multipliziert. Die gewichteten Eingaben können dann in einer Eingabefunktion summiert werden, um eine, unter Umständen um eine Vorspannung angepasste, Nettoeingabe bereitzustellen. Die Nettoeingabe kann dann einer Aktivierungsfunktion bereitgestellt werden, die wiederum einem verbundenen Neuron 805 eine Ausgabe bereitstellt. Bei der Aktivierungsfunktion kann es sich um eine Vielfalt geeigneter Funktionen handeln, die in der Regel basierend auf einer empirischen Analyse ausgewählt werden. Wie durch die Pfeile in 8 veranschaulicht, können die Ausgaben des Neurons 805 dann in einer nächsten Schicht zur Aufnahme in einen Satz von Eingaben in ein oder mehrere Neuronen 805 bereitgestellt werden.
  • Das DNN 800 kann dazu trainiert sein, Daten als Eingabe anzunehmen und basierend auf der Eingabe eine Ausgabe zu erzeugen. Das DNN 800 kann mithilfe von Ground-Truth-Daten trainiert werden, d. h. Daten über eine reale Bedingung oder einen realen Zustand. Zum Beispiel kann das DNN 800 durch einen Prozessor mithilfe von Ground-Truth-Daten trainiert oder mit zusätzlichen Daten aktualisiert werden. Die Gewichtungen können zum Beispiel unter Verwendung einer Gauß-Verteilung initialisiert werden und eine Vorspannung für jeden Knoten 805 kann auf null gesetzt werden. Das Trainieren des DNN 800 kann das Aktualisieren der Gewichtungen und Vorspannungen über geeignete Techniken beinhalten, wie etwa Rückpropagierung mit Optimierungen. Ground-Truth-Daten können unter anderem Daten, die Objekte innerhalb eines Bildes spezifizieren, oder Daten beinhalten, die einen physikalischen Parameter vorgeben, z. B. Winkel, Geschwindigkeit, Abstand oder Winkel eines Objektes relativ zu einem anderen Objekt. Beispielsweise kann es sich bei den Ground-Truth-Daten um Daten handeln, die Objekte und Objektbeschriftungen darstellen.
  • 9 ist ein Ablaufdiagramm eines beispielhaften Prozesses 900 zum Trainieren eines Domänenanpassungsnetzwerkes, wie etwa des Domänenanpassungsnetzwerkes 300. Blöcke des Prozesses 900 können durch den Computer 110 oder den Computer 235 ausgeführt werden. Bei Block 905 wird bestimmt, ob ein Eingabebild aus einer Sequenz von Bildern, die einer ersten Domäne zugeordnet sind, empfangen wird. Wenn kein Bild empfangen wurde, kehrt der Prozess 900 zu Block 905 zurück. Andernfalls codiert bei Block 910 ein Codierer, wie etwa der latente Merkmalsextraktor 305-1, 305-2, das empfangene Bild in eine latente Darstellung, z. B. latente Merkmale, des Bildes. Bei Block 915 werden codierte Darstellungen der latenten Merkmale durch einen sequenziellen Codierer erzeugt, wie etwa den sequenziellen Codierer 310-1, 310-2.
  • Bei Block 920 wird eine sequenziell decodierte latente Darstellung bei einem sequenziellen Decoder, wie etwa dem sequenziellen Decoder 315-1, 315-2, erzeugt. Die sequenziell decodierte latente Darstellung kann auf codierten Darstellungen der latenten Merkmale basieren, die durch den sequenziellen Codierer erzeugt wurden. Bei Block 925 erzeugen die Decoder, wie etwa die Decoder 320-1, 320-2, einen rekonstruierten Bildrahmen basierend auf der sequenziell decodierten latenten Darstellung. Bei dem rekonstruierte Rahmen kann es sich um einen einzelnen Bildrahmen aus einer Sequenz von Bildern handeln, die ein Video umfassen. In einigen Beispielen ist der rekonstruierte Bildrahmen einer zweiten Domäne zugeordnet. Wenn zum Beispiel die erste Domäne einem Tagesbild entspricht, entspricht die zweite Domäne einem Nachtbild.
  • 10 ist ein Ablaufdiagramm eines beispielhaften Prozesses 1000 zum Trainieren eines Diskriminators innerhalb eines kontradiktorischen neuronalen Netzwerkes. Blöcke des Prozesses 1000 können durch den Computer 110 oder den Computer 235 ausgeführt werden. Der Prozess 1000 beginnt bei Block 1005, in dem eine oder mehrere latente Darstellungen, z. B. latente Vektoren, eines Bildes empfangen werden. Die latenten Darstellungen können durch einen Codierer 605 erzeugt werden, und das Bild kann durch den Generator 602 erzeugt werden.
  • Bei Block 1010 erzeugt der Diskriminator 610 eine Vorhersage, die angibt, ob die empfangenen latenten Darstellungen aus einer realen Datenverteilung stammen oder ein maschinell erzeugtes Bild sind. Bei Block 1015 werden Parameter des Diskriminators 610 und/oder des Generators 602 basierend auf der Vorhersage und/oder der Rückmeldung modifiziert. Zum Beispiel werden eine oder mehrere Gewichtungen des Generators 602 und/oder des Diskriminators 610 unter Verwendung von Rückpropagierung basierend auf der dem Generator 602 bereitgestellten Vorhersage und/oder der dem Diskriminator 610 bereitgestellten Rückmeldung aktualisiert.
  • Bei Block 1020 erfolgt eine Bestimmung, ob ein Zähler N unter einem vorbestimmten Trainingsschwellenwert liegt. Wenn der Zähler N unter dem vorbestimmten Trainingsschwellenwert liegt, wird der Zähler N bei Block 1025 erhöht, und der Prozess 1000 kehrt zu Block 1005 zurück, um den Diskriminator 610 weiter zu trainieren. Andernfalls endet der Prozess 1000. Der vorbestimmte Trainingsschwellenwert kann basierend auf einer empirischen Analyse, die dem Training von kontradiktorischen Netzwerken zugeordnet ist, ausgewählt werden.
  • Im Allgemeinen können die beschriebenen Rechensysteme und/oder -vorrichtungen ein beliebiges aus einer Reihe von Computerbetriebssystemen einsetzen, einschließlich unter anderem Versionen und/oder Varianten der Anwendung Ford Sync®, der Middleware AppLink/Smart Device Link, des Betriebssystems Microsoft Automotive®, des Betriebssystems Microsoft Windows®, des Betriebssystems Unix (z. B. des Betriebssystems Solaris®, vertrieben durch die Oracle Corporation in Redwood Shores, Kalifornien), des Betriebssystems AIX UNIX, vertrieben durch International Business Machines in Armonk, New York, des Betriebssystems Linux, der Betriebssysteme Mac OSX und iOS, vertrieben durch die Apple Inc. in Cupertino, Kalifornien, des BlackBerry OS, vertrieben durch die Blackberry, Ltd. in Waterloo, Kanada, und des Betriebssystems Android, entwickelt durch die Google, Inc. und die Open Handset Alliance, oder QNX® CAR Platform for Infotainment, angeboten durch QNX Software Systems. Beispiele für Rechenvorrichtungen beinhalten unter anderem einen Fahrzeugbordcomputer, einen Computerarbeitsplatz, einen Server, einen Desktop-, Notebook-, Laptop- oder Handheld-Computer oder ein anderes Rechensystem und/oder eine andere Rechenvorrichtung.
  • Computer und Rechenvorrichtungen beinhalten im Allgemeinen computerausführbare Anweisungen, wobei die Anweisungen durch eine oder mehrere Rechenvorrichtungen ausgeführt werden können, wie etwa durch die vorstehend aufgeführten. Computerausführbare Anweisungen können von Computerprogrammen zusammengestellt oder ausgewertet werden, die unter Verwendung einer Vielfalt von Programmiersprachen und/oder -technologien erstellt werden, einschließlich unter anderem und entweder für sich oder in Kombination Java™, C, C++, Matlab, Simulink, Stateflow, Visual Basic, Java Script, Perl, HTML usw. Einige dieser Anwendungen können auf einer virtuellen Maschine zusammengestellt und ausgeführt werden, wie etwa der Java Virtual Machine, der Dalvik Virtual Machine oder dergleichen. Im Allgemeinen empfängt ein Prozessor (z. B. ein Mikroprozessor) Anweisungen, z. B. von einem Speicher, einem computerlesbaren Medium usw., und führt diese Anweisungen aus, wodurch er einen oder mehrere Prozesse durchführt, einschließlich eines oder mehrerer der in dieser Schrift beschriebenen Prozesse. Derartige Anweisungen und andere Daten können unter Verwendung einer Vielfalt an computerlesbaren Medien gespeichert und übermitteln werden. Eine Datei in einer Rechenvorrichtung ist im Allgemeinen eine Sammlung von Daten, die auf einem computerlesbaren Medium, wie etwa einem Speichermedium, einem Direktzugriffsspeicher usw., gespeichert sind.
  • Ein Speicher kann ein computerlesbares Medium (auch als prozessorlesbares Medium bezeichnet) beinhalten, das ein beliebiges nichttransitorisches (z. B. materielles) Medium beinhaltet, das am Bereitstellen von Daten (z. B. Anweisungen) beteiligt ist, die durch einen Computer (z. B. durch einen Prozessor eines Computers) ausgelesen werden können. Ein derartiges Medium kann viele Formen annehmen, nichtflüchtige Medien und flüchtige Medien beinhalten, ohne darauf beschränkt zu sein. Zu nicht flüchtigen Medien können zum Beispiel Bild- und Magnetplatten und sonstige dauerhafte Speicher gehören. Zu flüchtigen Medien kann zum Beispiel dynamischer Direktzugriffsspeicher (dynamic random-access memory - DRAM) gehören, der typischerweise einen Hauptspeicher darstellt. Derartige Anweisungen können durch ein oder mehrere Übertragungsmedien übertragen werden, darunter Koaxialkabel, Kupferdraht und Glasfaser, einschließlich der Drähte, die einen an einen Prozessor einer ECU gekoppelten Systembus umfassen. Gängige Formen computerlesbarer Medien schließen zum Beispiel Folgendes ein: eine Diskette, eine Folienspeicherplatte, eine Festplatte, ein Magnetband, ein beliebiges anderes magnetisches Medium, eine CD-ROM, eine DVD, ein beliebiges anderes optisches Medium, Lochkarten, Lochstreifen, ein beliebiges anderes physisches Medium mit Lochmustern, einen RAM, einen PROM, einen EPROM, einen FLASH-EEPROM, einen beliebigen anderen Speicherchip oder eine beliebige andere Speicherkassette oder ein beliebiges anderes Medium, das von einem Computer ausgelesen werden kann.
  • Datenbanken, Datendepots oder andere Datenspeicher, die in dieser Schrift beschrieben sind, können verschiedene Arten von Mechanismen zum Speichern von, Zugreifen auf und Abrufen von verschiedene(n) Arten von Daten beinhalten, einschließlich einer hierarchischen Datenbank, eines Satzes von Dateien in einem Dateisystem, einer Anwendungsdatenbank in einem anwendereigenen Format, eines relationalen Datenbankverwaltungssystems (relational database management system - RDBMS) usw. Jeder derartige Datenspeicher ist im Allgemeinen in einer Rechenvorrichtung enthalten, die ein Computerbetriebssystem einsetzt, wie etwa eines der vorstehend erwähnten, und es wird auf eine oder mehrere von vielfältigen Weisen über ein Netzwerk darauf zugegriffen. Auf ein Dateisystem kann von einem Computerbetriebssystem zugegriffen werden und es kann in verschiedenen Formaten gespeicherte Dateien beinhalten. Ein RDBMS setzt im Allgemeinen die Structured Query Language (SQL) zusätzlich zu einer Sprache zum Erzeugen, Speichern, Editieren und Ausführen gespeicherter Prozeduren ein, wie etwa die vorstehend erwähnte PL/SQL-Sprache.
  • In einigen Beispielen können Systemelemente als computerlesbare Anweisungen (z. B. Software) auf einer oder mehreren Rechenvorrichtungen (z. B. Servern, Personal Computern usw.) umgesetzt sein, die auf damit assoziierten computerlesbaren Medien (z. B. Platten, Speichern usw.) gespeichert sind. Ein Computerprogrammprodukt kann derartige auf computerlesbaren Medien gespeicherte Anweisungen zum Ausführen der in dieser Schrift beschriebenen Funktionen umfassen.
  • Hinsichtlich der in dieser Schrift beschriebenen Medien, Prozesse, Systeme, Verfahren, Heuristiken usw. versteht es sich, dass, auch wenn die Schritte derartiger Prozesse usw. als gemäß einer bestimmten Reihenfolge erfolgend beschrieben worden sind, derartige Prozesse jedoch so umgesetzt werden können, dass die beschriebenen Schritte in einer Reihenfolge durchgeführt werden, die von der in dieser Schrift beschriebenen Reihenfolge verschieden ist. Es versteht sich ferner, dass gewisse Schritte gleichzeitig durchgeführt, andere Schritte hinzugefügt oder gewisse in dieser Schrift beschriebene Schritte weggelassen werden können. Anders gesagt dienen hier die Beschreibungen von Prozessen dem Zwecke der Veranschaulichung bestimmter Ausführungsformen und sie sollten keinesfalls dahingehend ausgelegt werden, dass sie die Ansprüche einschränken.
  • Dementsprechend versteht es sich, dass die vorstehende Beschreibung veranschaulichend und nicht einschränkend sein soll. Viele Ausführungsformen und Anwendungen, bei denen es sich nicht um die bereitgestellten Beispiele handelt, werden dem Fachmann beim Lesen der vorstehenden Beschreibung ersichtlich. Der Umfang der Erfindung sollte nicht unter Bezugnahme auf die vorstehende Beschreibung festgelegt werden, sondern stattdessen unter Bezugnahme auf die beigefügten Patentansprüche in Zusammenhang mit dem vollständigen Umfang von Äquivalenten, zu denen solche Patentansprüche berechtigen. Es ist davon auszugehen und beabsichtigt, dass es zukünftige Entwicklungen im in dieser Schrift erörterten Stand der Technik geben wird und dass die offenbarten Systeme und Verfahren in derartige zukünftige Ausführungsformen aufgenommen werden. Insgesamt versteht es sich, dass die Erfindung modifiziert und variiert werden kann und lediglich durch die folgenden Patentansprüche eingeschränkt ist.
  • Alle in den Patentansprüchen verwendeten Ausdrücke sollen ihre klare und gewöhnliche Bedeutung aufweisen, wie sie von einem Fachmann verstanden wird, sofern in dieser Schrift nicht ausdrücklich das Gegenteil angegeben wird. Insbesondere ist die Verwendung der Singularartikel, wie etwa „ein“, „eine“, „der“, „die“, „das“ usw., dahingehend auszulegen, dass ein oder mehrere der aufgeführten Elemente genannt werden, sofern ein Anspruch nicht eine ausdrückliche gegenteilige Einschränkung enthält.
  • Gemäß der vorliegenden Erfindung ist ein System bereitgestellt, das einen Computer aufweist, der einen Prozessor und einen Speicher beinhaltet, wobei der Speicher Anweisungen beinhaltet, sodass der Prozessor zu Folgendem programmiert ist: Empfangen einer latenten Darstellung eines Bildes mit einer ersten Domäne an einem Decoder; und Erzeugen eines rekonstruierten Bildes mit einer zweiten Domäne, wobei das rekonstruierte Bild basierend auf der latenten Darstellung erzeugt wird.
  • Gemäß einer Ausführungsform ist der Prozessor ferner zu Folgendem programmiert: Empfangen des Bildes mit der ersten Domäne; und Erzeugen der latenten Darstellung an einem Codierer.
  • Gemäß einer Ausführungsform umfasst der Codierer einen sequenziellen Codierer.
  • Gemäß einer Ausführungsform umfasst der sequenzielle Codierer ein Faltungsfilter und ein Autobahnnetzwerk.
  • Gemäß einer Ausführungsform umfasst der sequenzielle Codierer eine rekurrente Einheit mit Gate, die mit dem Faltungsfilter und dem Autobahnnetzwerk verbunden ist.
  • Gemäß einer Ausführungsform umfasst der Decoder einen sequenziellen Decoder.
  • Gemäß einer Ausführungsform beinhaltet der sequenzielle Decoder eine Aufmerksamkeitsschicht des rekurrenten neuronalen Netzwerkes.
  • Gemäß einer Ausführungsform beinhaltet der sequenzielle Decoder eine Decoderschicht des rekurrenten neuronalen Netzwerkes, die mit der Aufmerksamkeitsschicht des rekurrenten neuronalen Netzwerkes verbunden ist.
  • Gemäß einer Ausführungsform beinhaltet der sequenzielle Decoder eine Entfaltungsschicht des neuronalen Netzwerkes, die mit der Decoderschicht des rekurrenten neuronalen Netzwerkes verbunden ist.
  • Gemäß einer Ausführungsform wird das Bild durch einen Generator erzeugt.
  • Gemäß der vorliegenden Erfindung beinhaltet ein Verfahren Folgendes: Empfangen einer latenten Darstellung eines Bildes mit einer ersten Domäne an einem Decoder; und Erzeugen eines rekonstruierten Bildes mit einer zweiten Domäne, wobei das rekonstruierte Bild basierend auf der latenten Darstellung erzeugt wird.
  • In einem Aspekt der Erfindung ist der Prozessor ferner zu Folgendem programmiert: Empfangen des Bildes mit der ersten Domäne; und Erzeugen der latenten Darstellung an einem Codierer.
  • In einem Aspekt der Erfindung umfasst der Codierer einen sequenziellen Codierer.
  • In einem Aspekt der Erfindung umfasst der sequenzielle Codierer ein Faltungsfilter und ein Autobahnnetzwerk.
  • In einem Aspekt der Erfindung umfasst der sequenzielle Codierer eine rekurrente Einheit mit Gate, die mit dem Faltungsfilter und dem Autobahnnetzwerk verbunden ist.
  • In einem Aspekt der Erfindung umfasst der Decoder einen sequenziellen Decoder.
  • In einem Aspekt der Erfindung beinhaltet der sequenzielle Decoder eine Aufmerksamkeitsschicht des rekurrenten neuronalen Netzwerkes.
  • In einem Aspekt der Erfindung beinhaltet der sequenzielle Decoder eine Decoderschicht des rekurrenten neuronalen Netzwerkes, die mit der Aufmerksamkeitsschicht des rekurrenten neuronalen Netzwerkes verbunden ist.
  • In anderen Merkmalen beinhaltet der sequenzielle Decoder eine Entfaltungsschicht des neuronalen Netzwerkes, die mit der Decoderschicht des rekurrenten neuronalen Netzwerkes verbunden ist.
  • In einem Aspekt der Erfindung wird das Bild durch einen Generator erzeugt.

Claims (10)

  1. System, umfassend einen Computer, der einen Prozessor und einen Speicher beinhaltet, wobei der Speicher Anweisungen beinhaltet, sodass der Prozessor zu Folgendem programmiert ist: Empfangen einer latenten Darstellung eines Bildes mit einer ersten Domäne an einem Decoder; und Erzeugen eines rekonstruierten Bildes mit einer zweiten Domäne, wobei das rekonstruierte Bild basierend auf der latenten Darstellung erzeugt wird.
  2. System nach Anspruch 1, wobei der Prozessor ferner zu Folgendem programmiert ist: Empfangen des Bildes mit der ersten Domäne; und Erzeugen der latenten Darstellung an einem Codierer.
  3. System nach Anspruch 2, wobei der Codierer einen sequenziellen Codierer umfasst.
  4. System nach Anspruch 3, wobei der sequenzielle Codierer ein Faltungsfilter und ein Autobahnnetzwerk umfasst.
  5. System nach Anspruch 4, wobei der sequenzielle Codierer eine rekurrente Einheit mit Gate umfasst, die mit dem Faltungsfilter und dem Autobahnnetzwerk verbunden ist.
  6. System nach Anspruch 1, wobei der Decoder einen sequenziellen Decoder umfasst.
  7. System nach Anspruch 6, wobei der sequenzielle Decoder eine Aufmerksamkeitsschicht des rekurrenten neuronalen Netzwerkes beinhaltet.
  8. System nach Anspruch 7, wobei der sequenzielle Decoder eine Decoderschicht des rekurrenten neuronalen Netzwerkes beinhaltet, die mit der Aufmerksamkeitsschicht des rekurrenten neuronalen Netzwerkes verbunden ist.
  9. System nach Anspruch 8, wobei der sequenzielle Decoder eine Entfaltungsschicht des neuronalen Netzwerkes beinhaltet, die mit der Decoderschicht des rekurrenten neuronalen Netzwerkes verbunden ist.
  10. System nach Anspruch 1, wobei das Bild durch einen Generator erzeugt wird.
DE102021107247.6A 2020-03-25 2021-03-23 Domänenübersetzungsnetzwerk zur durchführung einer bildübersetzung Pending DE102021107247A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/829,114 2020-03-25
US16/829,114 US11620475B2 (en) 2020-03-25 2020-03-25 Domain translation network for performing image translation

Publications (1)

Publication Number Publication Date
DE102021107247A1 true DE102021107247A1 (de) 2021-09-30

Family

ID=77659011

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021107247.6A Pending DE102021107247A1 (de) 2020-03-25 2021-03-23 Domänenübersetzungsnetzwerk zur durchführung einer bildübersetzung

Country Status (3)

Country Link
US (1) US11620475B2 (de)
CN (1) CN113449845A (de)
DE (1) DE102021107247A1 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11622117B2 (en) * 2020-07-21 2023-04-04 Tencent America LLC Method and apparatus for rate-adaptive neural image compression with adversarial generators

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10192327B1 (en) * 2016-02-04 2019-01-29 Google Llc Image compression with recurrent neural networks
US20180247201A1 (en) * 2017-02-28 2018-08-30 Nvidia Corporation Systems and methods for image-to-image translation using variational autoencoders
US11049243B2 (en) 2017-04-19 2021-06-29 Siemens Healthcare Gmbh Target detection in latent space
NL2018758B1 (en) 2017-04-20 2018-11-05 Univ Amsterdam Optical music recognition (OMR) assembly for converting sheet music
CN110892424A (zh) 2017-05-23 2020-03-17 英特尔公司 用于深度学习中的特征的区分性语义转移和物理启发优化的方法和装置
CN110599557B (zh) * 2017-08-30 2022-11-18 深圳市腾讯计算机系统有限公司 图像描述生成方法、模型训练方法、设备和存储介质
DE102017222600B3 (de) 2017-12-13 2018-12-27 Audi Ag Optische Positionsermittlung eines Fahrzeugs mittels eines Convolutional Autoencoders und/oder eines tiefen neuronalen Netzes
US20190287217A1 (en) 2018-03-13 2019-09-19 Microsoft Technology Licensing, Llc Machine learning system for reduced network bandwidth transmission of content

Also Published As

Publication number Publication date
CN113449845A (zh) 2021-09-28
US20210303926A1 (en) 2021-09-30
US11620475B2 (en) 2023-04-04

Similar Documents

Publication Publication Date Title
DE102018121595B4 (de) Unbeaufsichtigtes anlernen von agenten für autonome fahranwendungen
DE102021108470A1 (de) Realistische bildperspektiventransformation unter verwendung neuronaler netze
DE102019114577A1 (de) Systeme, vorrichtungen und verfahren für eingebettete codierungen von kontextbezogenen informationen unter verwendung eines neuronalen netzwerks mit vektorraummodellierung
DE102020128978A1 (de) Trainieren von tiefen neuronalen netzwerken mit synthetischen bildern
DE102020122357A1 (de) Fahrerbewusstseinserfassungssystem
DE102021104044A1 (de) Neuronales netzwerk zur positionsbestimmung und objektdetektion
DE102021112616A1 (de) Selbstüberwachte schätzung einer beobachteten fahrzeugpose
DE102022114201A1 (de) Neuronales Netz zur Objekterfassung und -Nachverfolgung
DE102021109395A1 (de) Verfahren, systeme und vorrichtungen für benutzerverständliche erklärbare lernmodelle
DE102022123187A1 (de) Adaptives Reduzieren von neuronalen Netzsystemen
DE102021131991A1 (de) Fahrzeugsensorreinigung und -kühlung
DE102021122407A1 (de) Segmentierung und klassifizierung von punktwolkendaten
DE102020122086A1 (de) Messen von vertrauen in tiefen neuronalen netzwerken
DE102021104178A1 (de) Dynamisch gerouteter felddiskriminator
DE102021107247A1 (de) Domänenübersetzungsnetzwerk zur durchführung einer bildübersetzung
DE102022123358A1 (de) Frequenzbasierte merkmalsbeschränkung für ein neuronales netz
DE102022123257A1 (de) Selektives Ausscheiden der Merkmale für entgegenwirkende Robustheit neuronaler Netze
DE102020127253A1 (de) Quantifizieren von fotorealismus in simulierten daten mit gan
DE102023101951A1 (de) Fahrzeugsteuerung für optimierten betrieb
DE102022124848A1 (de) System und prozess unter verwendung homomorpher verschlüsselung, um parameter neuronaler netze für ein kraftfahrzeug zu sichern
DE102022125228A1 (de) Automatisiertes fahrsystem mit gewünschtem niveau der fahraggresivität
US20220188621A1 (en) Generative domain adaptation in a neural network
DE102022100545A1 (de) Verbesserte objekterkennung
DE102020200876B4 (de) Verfahren zum Verarbeiten von Sensordaten einer Sensorik eines Fahrzeugs
DE102020126154A1 (de) Zertifizierte robustheit gegenüber gegnerischen angriffen für tiefes bestärkendes lernen

Legal Events

Date Code Title Description
R082 Change of representative

Representative=s name: BONSMANN - BONSMANN - FRANK PATENTANWAELTE, DE