DE102020127253A1 - Quantifizieren von fotorealismus in simulierten daten mit gan - Google Patents

Quantifizieren von fotorealismus in simulierten daten mit gan Download PDF

Info

Publication number
DE102020127253A1
DE102020127253A1 DE102020127253.7A DE102020127253A DE102020127253A1 DE 102020127253 A1 DE102020127253 A1 DE 102020127253A1 DE 102020127253 A DE102020127253 A DE 102020127253A DE 102020127253 A1 DE102020127253 A1 DE 102020127253A1
Authority
DE
Germany
Prior art keywords
image
neural network
synthetic image
vehicle
synthetic
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
DE102020127253.7A
Other languages
English (en)
Inventor
Nikita Jaipuria
Gautham Sholingar
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 DE102020127253A1 publication Critical patent/DE102020127253A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/088Non-supervised learning, e.g. competitive learning
    • 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
    • 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/217Validation; Performance evaluation; Active pattern learning techniques
    • 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/047Probabilistic or stochastic 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
    • 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
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • 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
    • 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/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
    • 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
    • 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
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30168Image quality inspection

Landscapes

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

Abstract

Diese Offenbarung stellt ein Quantifizieren von Fotorealismus in simulierten Daten mit GAN bereit. Die vorliegende Offenbarung offenbart ein System und ein Verfahren. In einer beispielhaften Umsetzung können das System und das Verfahren ein synthetisches Bild an einem ersten tiefen neuronalen Netzwerk empfangen; und über das erste tiefe neuronale Netzwerk eine Vorhersage bestimmen, die angibt, ob das synthetische Bild maschinell erzeugt wird oder aus der realen Datenverteilung stammt. Die Vorhersage kann ein quantitatives Maß des Fotorealismus des synthetischen Bildes umfassen.

Description

  • TECHNISCHES GEBIET
  • Die Offenbarung betrifft im Allgemeinen Fotorealismus in tiefen neuronalen Netzwerken.
  • 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 Untertitelung. Typischerweise erfordern DNNs große Mengen an Trainingsbildern (Zehntausende bis Millionen). Zusätzlich müssen diese Trainingsbilder typischerweise zum Zwecke des Trainings und der Vorhersage mit Anmerkungen versehen werden.
  • KURZDARSTELLUNG
  • Ein System umfasst einen Computer, der einen Prozessor und einen Speicher beinhaltet, wobei der Speicher Anweisungen beinhaltet, so dass der Prozessor dazu programmiert ist, ein synthetisches Bild an einem ersten tiefen neuronalen Netzwerk zu empfangen; und über das erste tiefe neuronale Netzwerk eine Vorhersage zu bestimmen, die angibt, ob das synthetische Bild maschinell erzeugt wird oder aus der realen Datenverteilung stammt, wobei die Vorhersage ein quantitatives Maß des Fotorealismus des synthetischen Bildes umfasst.
  • In anderen Merkmalen gibt das quantitative Maß des Fotorealismus an, wie nahe das synthetische Bild mit einem Bild aus der realen Datenverteilung übereinstimmt.
  • In anderen Merkmalen bildet das synthetische Bild eine Vielzahl von Objekten ab.
  • In anderen Merkmalen bildet das synthetische Bild die Vielzahl von Objekten entsprechend einer Bildansicht eines simulierten Bildes ab.
  • In anderen Merkmalen wird das simulierte Bild durch einen Bildgenerator erzeugt.
  • In anderen Merkmalen umfasst der Bildgenerator eine Spiel-Engine.
  • In anderen Merkmalen wird das synthetische Bild über ein zweites tiefes neuronales Netzwerk basierend auf dem simulierten Bild erzeugt.
  • In anderen Merkmalen umfasst das zweite tiefe neuronale Netzwerk ein neuronales Codierer-Decodierer-Netzwerk, und das erste tiefe neuronale Netzwerk umfasst ein neuronales Faltungsnetzwerk.
  • In anderen Merkmalen ist der Prozessor ferner dazu programmiert, zu bestimmen, dass das synthetische Bild aus der realen Datenverteilung stammt, wenn die Vorhersage größer oder gleich einem vorbestimmten Schwellenwert ist.
  • In anderen Merkmalen ist der Prozessor ferner dazu programmiert, das synthetische Bild in einer Datenbank zu speichern, wenn die Vorhersage größer oder gleich dem vorbestimmten Schwellenwert ist.
  • Ein Verfahren umfasst Empfangen eines synthetischen Bildes an einem ersten tiefen neuronalen Netzwerk; und Bestimmen, über das erste tiefe neuronale Netzwerk, einer Vorhersage, die angibt, ob das synthetische Bild maschinell erzeugt wird oder aus der realen Datenverteilung stammt, wobei die Vorhersage ein quantitatives Maß des Fotorealismus des synthetischen Bildes umfasst.
  • In anderen Merkmalen gibt das quantitative Maß des Fotorealismus an, wie nahe das synthetische Bild mit einem Bild aus der realen Datenverteilung übereinstimmt.
  • In anderen Merkmalen bildet das synthetische Bild eine Vielzahl von Objekten ab.
  • In anderen Merkmalen bildet das synthetische Bild die Vielzahl von Objekten entsprechend einer Bildansicht eines simulierten Bildes ab.
  • In anderen Merkmalen wird das simulierte Bild durch einen Bildgenerator erzeugt.
  • In anderen Merkmalen umfasst der Bildgenerator eine Spiel-Engine.
  • In anderen Merkmalen wird das synthetische Bild über ein zweites tiefes neuronales Netzwerk basierend auf dem simulierten Bild erzeugt.
  • In anderen Merkmalen umfasst das zweite tiefe neuronale Netzwerk ein neuronales Codierer-Decodierer-Netzwerk, und das erste tiefe neuronale Netzwerk umfasst ein neuronales Faltungsnetzwerk.
  • In anderen Merkmalen beinhaltet das Verfahren Bestimmen, dass das synthetische Bild aus der realen Datenverteilung stammt, wenn die Vorhersage größer oder gleich einem vorbestimmten Schwellenwert ist.
  • In anderen Merkmalen beinhaltet das Verfahren Speichern des synthetischen Bildes in einer Datenbank, wenn die Vorhersage größer oder gleich dem vorbestimmten Schwellenwert ist.
  • Figurenliste
    • 1 ist ein Diagramm eines beispielhaften Systems zum Trainieren eines Adversarial-Netzwerks.
    • 2 ist ein Diagramm eines beispielhaften Servers innerhalb des Systems.
    • 3A ist ein Diagramm eines beispielhaften Adversarial-Netzwerks.
    • 3B ist ein Diagramm eines trainierten Diskriminators.
    • 4A ist ein beispielhaftes simuliertes Bild, das durch einen Generator des Adversarial-Netzwerks erzeugt wird.
    • 4B ist ein beispielhaftes Bild aus einer realen Datenverteilung, die dem simulierten Bild aus 4A entspricht.
    • 4C ist ein beispielhaftes synthetisches Bild, das durch einen Generator des Adversarial-Netzwerks erzeugt wird.
    • 5 ist ein Diagramm eines beispielhaften tiefen neuronalen Netzwerks.
    • 6 ist ein Ablaufdiagramm, das einen beispielhaften Prozess zum Trainieren eines Adversarial-Netzwerks veranschaulicht.
    • 7 ist ein Ablaufdiagramm, das einen beispielhaften Prozess zum Erzeugen einer Vorhersage veranschaulicht, die angibt, ob ein Bild aus einer realen Datenverteilung stammt oder maschinell erzeugt wurde.
  • 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. Spiel-Engines können verwendet werden, um Daten, wie etwa synthetische Bilder, zu simulieren, die Objekte darstellen, die für die Wahrnehmungsalgorithmen von Interesse sind. 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, d. h. nicht generierten Daten.
  • In einigen Fällen werden Generative-Adversarial-Netzwerke (GAN) verwendet, um simulierte Daten zu transformieren, so dass die simulierten Daten fotorealistischer erscheinen. Zusätzlich kann der Fotorealismus von simulierten Bildern von Person zu Person variieren. Daher gibt es möglicherweise keinen Standardprozess zum Bewerten des Fotorealismus eines simulierten Bildes. Zusätzlich können simulierte Bilder möglicherweise keine Nuancen innerhalb der realen Welt berücksichtigen, wie etwa Beleuchtung, Teilchenphysik, Materialtexturen und/oder Gesamterscheinungen.
  • Die vorliegende Offenbarung offenbart ein neuronales Adversarial-Netzwerk, das einen Diskriminator trainiert, um den Fotorealismus von simulierten Bildern zu bewerten. Das Adversarial-Netzwerk kann einen Generator, der simulierte Bilder erzeugt, und einen Diskriminator, der die simulierten Bilder auswertet, beinhalten. Auf Grundlage der Bewertung können der Diskriminator und/oder der Generator derart aktualisiert werden, dass der Generator realistischere simulierte Bilder erzeugen kann und der Diskriminator falsche Bewertungen minimieren kann.
  • Während 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 Funktionalität des hierin beschriebenen neuronalen Adversarial-Netzwerks durchzuführen. Zusätzlich können die hierin beschriebenen Techniken das Trainieren eines Generators für Bilderzeugungszwecke beinhalten, was zu verbesserten Verarbeitungseffizienzen innerhalb von Fahrzeugsystemen führen kann.
  • 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 es das Kommunikationsmodul 130 dem Computer 110, mit einem Server 145 zu kommunizieren.
  • Der Computer 110 beinhaltet einen Prozessor und einen Speicher. Der Speicher beinhaltet eine oder mehrere Formen von computerlesbaren Medien und auf diesem sind Anweisungen gespeichert, 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 teilautonomen oder einem nichtautonomen (manuellen) Modus betreiben. Für die Zwecke dieser Offenbarung ist ein autonomer Modus als ein Modus definiert, in dem jedes von Antrieb, Bremsung und Lenkung des Fahrzeugs 105 durch den Computer 110 gesteuert wird; in einem teilautonomen Modus steuert der Computer 110 eines oder zwei von Antrieb, Bremsen und Lenken des Fahrzeugs 105; in einem nichtautonomen Modus steuert ein menschlicher Fahrzeugführer jedes von Antrieb, Bremsen und Lenken des Fahrzeugs 105.
  • Der Computer 110 kann eine Programmierung beinhalten, um eines oder mehrere von Bremsen, Antrieb (z.B. Steuerung der Beschleunigung des Fahrzeugs durch Steuern von einem oder mehreren von einer Brennkraftmaschine, einem Elektromotor, einem Hybridmotor usw.), Lenken, Steuerung der Klimaanlage, Innen- und/oder Außenbeleuchtung usw. des Fahrzeugs 105 zu betreiben, sowie um zu bestimmen, ob und wann der Computer 110 solche Vorgänge anstelle eines menschlichen Fahrzeugführers steuern soll. Des Weiteren kann der Computer 110 programmiert sein, um zu bestimmen, ob und wann ein menschlicher Fahrzeugführer solche Vorgänge steuern soll.
  • Der Computer 110 kann mehr als einen Prozessor, die z. B. in Elektroniksteuerungseinheiten (electronic Controller units - ECUs) oder dergleichen eingeschlossen sind, die in dem Fahrzeug 105 zum Überwachen und/oder Steuern verschiedener Fahrzeugkomponenten 125, z. B. einer Antriebsstrangsteuerung, einer Bremssteuerung, einer Lenkungssteuerung usw., eingeschlossen sind, beinhalten oder kommunikativ an diese gekoppelt sein, z. B. über das Kommunikationsmodus 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. Geokoordinaten (Breiten- und Längskoordinaten).
  • Der Computer 110 ist im Allgemeinen zur Kommunikation in dem Kommunikationsmodul 130 des Fahrzeugs 105 und außerdem mit einem internen drahtgebundenen und/oder drahtlosen Netzwerk des Fahrzeugs 105 angeordnet, z. B. in einem Bus in dem Fahrzeug 105 oder dergleichen, wie etwa in einem Controller Area Network (CAN) oder dergleichen, und/oder in anderen drahtgebundenen und/oder drahtlosen Mechanismen.
  • Ü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 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 nachfolgend erwähnt, verschiedene Steuerungen und/oder Fahrzeugsensoren 115 Daten an dem Computer 110 bereitstellen.
  • Die Fahrzeugsensoren 115 können eine Vielfalt von Vorrichtungen einschließen, die bekanntermaßen Daten an dem Computer 110 bereitstellen. Zum Beispiel können die Fahrzeugsensoren 115 (einen) Light-Detection-and-Ranging-Sensor(en) (LIDAR-Sensor(en)) 115 usw. beinhalten, die auf einer Oberseite des Fahrzeugs 105, hinter einer Windschutzscheibe des Fahrzeugs 105, um das Fahrzeug 105 herum usw. angeordnet sind und relative Standorte, Größen und Formen von Objekten und/oder Bedingungen bereitstellen, die das Fahrzeug 105 umgeben. Als ein weiteres Beispiel können ein oder mehrere Radarsensoren 115, die an Stoßfängern des Fahrzeugs 105 befestigt sind, Daten bereitstellen, um die Geschwindigkeit von Objekten (möglicherweise einschließlich zweiter Fahrzeuge 106) usw. in Bezug zu der Position des Fahrzeugs 105 bereitzustellen und zu klassifizieren. Die Fahrzeugsensoren 115 können ferner (einen) Kamerasensor(en) 115 beinhalten, 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 unterschiedliche Fahrzeugteilsysteme gemäß geeigneten Steuersignalen, wie bekannt, betätigen können. Die Aktoren 120 können verwendet werden, um Steuerelemente 125, einschließlich Bremsung, Beschleunigung und Lenkung, eines Fahrzeugs 105 zu steuern.
  • Im Zusammenhang mit der vorliegenden Offenbarung handelt es sich bei einer Fahrzeugkomponente 125 um eine oder mehrere Hardwarekomponenten, die angepasst sind, um eine(n) mechanische(n) oder elektromechanische(n) Funktion oder Vorgang durchzuführen - wie etwa das Fahrzeug 105 bewegen, das Fahrzeug 105 abbremsen oder anhalten, das Fahrzeug 105 lenken usw. Nicht einschränkende Beispiele für Komponenten 125 schließen Folgendes ein: 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 Zahnstange usw. beinhalten kann), eine Bremskomponente (wie nachfolgend beschrieben), eine Einparkhilfekomponente, eine Komponente für adaptive Geschwindigkeitsregelung, eine Komponente zum adaptiven Lenken, einen beweglichen Sitz usw.
  • Des Weiteren kann der Computer 110 zur Kommunikation über ein(e) Fahrzeug-zu-FahrzeugKommunikationsmodul oder -Schnittstelle 130 mit Vorrichtungen außerhalb des Fahrzeugs 105 konfiguriert sein, z.B. durch drahtlose Fahrzeug-zu-Fahrzeug-(V2V-) oder Fahrzeug-zu-Infrastruktur-(V2X-)Kommunikation mit einem anderen Fahrzeug, (üblicherweise über das Netzwerk 135) mit einem Remote-Server 145. Das Modul 130 könne einen Mechanismus 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 Netztopologie (oder Netztopologien, 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 Weitverkehrsnetze (wide area networks - WAN), einschließlich des Internets, die Datenkommunikationsdienste bereitstellen.
  • Das Netzwerk 135 kann einer oder mehrere von verschiedenen drahtgebundenen oder drahtlosen Kommunikationsmechanismen sein, einschließlich jeder gewünschten Kombination aus drahtgebundenen (z. B. Kabel- und Glasfaser-) und/oder drahtlosen (z. B. Mobilfunk-, Drahtlos-, Satelliten-, Mikrowellen- und Hochfrequenz-) Kommunikationsmechanismen und jeder 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 Nahbereichskommunikation (dedicated short range communication - DSRC) usw.), lokale Netzwerke (local area network - LAN) und/oder Weitverkehrsnetzwerke (wide area network - WAN), einschließlich des Internets, die Datenkommunikationsdienste bereitstellen.
  • Ein Computer 110 kann im Wesentlichen kontinuierlich, regelmäßig und/oder wenn durch einen Server 145 angewiesen usw. Daten von den Sensoren 115 empfangen und analysieren. Ferner können herkömmliche Klassifizierungs- oder Identifizierungstechniken 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. ein Fahrzeug, eine Person, einen Stein, ein Schlagloch, ein Fahrrad, ein Motorrad usw., sowie 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 von computerlesbaren Medien und speichert Anweisungen, die durch den Computer 235 zum Durchführen verschiedener Vorgänge, einschließlich der in dieser Schrift offenbarten, ausführbar sind. Das Kommunikationsmodul 240 ermöglicht es dem Computer 235, mit anderen Vorrichtungen, wie etwa dem Fahrzeug 105, zu kommunizieren.
  • 3A ist ein Diagramm eines beispielhaften neuronalen Adversarial-Netzwerks 300 und 3B ist ein Diagramm eines beispielhaften trainierten Diskriminatorsystems 350. Das neuronale Adversarial-Netzwerk 300 kann ein Softwareprogramm sein, das in einen Speicher geladen und beispielsweise durch einen Prozessor in dem Fahrzeug 145 und/oder den Server 145 ausgeführt werden kann. Wie gezeigt, beinhaltet das neuronale Adversarial-Netzwerk 300 einen Generator 305 und einen Diskriminator 310. Im vorliegenden Kontext umfassen der Generator 305 und der Diskriminator 310 ein generatives Adversarial-Netzwerk (generative adversarial network - GAN). Das GAN ist 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, die in einem Adversarial-Nullsummenspielrahmen gegeneinander antreten.
  • In einer beispielhaften Umsetzung empfängt der Generator 305 ein synthetisches Eingabebild. Das synthetische Eingabebild kann durch einen Generator für synthetische Bilder 315 erzeugt werden. In einer beispielhaften Umsetzung umfasst der Bildgenerator 315 eine Spiel-Engine. Die Eingabebilder können auf Grundlage der Objekte, Bildansichten und/oder Parameter der in den Bildern abgebildeten Objekte übereinstimmen. Wenn zum Beispiel das synthetische Eingabebild eine Draufsicht eines Fahrzeuganhängers ist, ist das entsprechende Eingabebild eine Draufsicht eines Fahrzeuganhängers. 4A ist eine Draufsicht eines Fahrzeuganhängers 405, der durch eine Spielmaschine erzeugt wird, und 4B ist eine Draufsicht eines Fahrzeuganhängers 410, der aus einer realen Datenverteilung ausgewählt ist.
  • Der Generator 305 erzeugt ein synthetisches Bild basierend auf Grundlage dem synthetischen Eingabebild. Zum Beispiel empfängt der Generator 305 ein simuliertes Rot-Grün-Blau (RGB)-Bild, das ein oder mehrere Merkmale oder Objekte beinhaltet, die in den Eingabebildern abgebildet sind. Im vorliegenden Zusammenhang kann das synthetische Bild eine Bild-zu-Bild-Übersetzung des simulierten Bilds sein, z.B. wird das eingegebene Bild von einer Domäne (Simulation) in eine andere Domäne (real) übersetzt. 4C ist eine Draufsicht eines Fahrzeuganhängers 415, der durch den Generator 305 basierend auf dem Eingabebild erzeugt wird. In einer oder mehreren Umsetzungen kann der Generator 305 ein neuronales Codierer-Decodierer-Netzwerk umfassen. Es versteht sich jedoch, dass andere neuronale Netzwerke gemäß der vorliegenden Offenbarung verwendet werden können.
  • Der Diskriminator 310 ist dazu konfiguriert, ein Bild zu empfangen, das empfangene Bild zu bewerten und eine Vorhersage zu erzeugen, die angibt, ob das empfangene Bild durch den Generator 305 maschinell erzeugt wird oder aus einer realen Datenverteilung stammt. Der Diskriminator 310 empfängt durch den Generator 305 erzeugte synthetische Bilder und Bilder aus einer realen Datenverteilung während des Trainings, so dass der Diskriminator 310 zwischen synthetischen Bildern und Bildern aus einer realen Datenverteilung unterscheiden kann. In einer oder mehreren Umsetzungen kann der Diskriminator 310 ein neuronales Faltungsnetzwerk umfassen. Es versteht sich jedoch, dass andere neuronale Netzwerke gemäß der vorliegenden Offenbarung verwendet werden können.
  • Das Training des Generators 305 kann verstärkendes Lernen verwenden, um das generative Modell zu trainieren. Verstärkendes Lernen ist eine Art von dynamischer Programmierung, die Algorithmen unter Verwendung eines Systems von Belohnung und Bestrafung trainiert. Ein Algorithmus zum verstärkenden Lernen oder ein Agent zum verstärkenden Lernen lernt durch Interaktion mit seiner Umgebung. Der Agent erhält Belohnungen durch korrektes Verhalten und Strafen für falsches Verhalten. Zum Beispiel lernt der Agent für verstärkendes Lernen ohne Eingreifen eines Menschen, indem er die Belohnung maximiert und die Strafe minimiert.
  • Wie in 3A gezeigt, wird die Vorhersage dem Generator 305 bereitgestellt. Der Generator 305 kann die Vorhersage verwenden, um eine oder mehrere Gewichtungen des Generators 305 zu modifizieren, d. h. zu aktualisieren, um die Vorhersagen zu minimieren, die angeben, dass das erzeugte synthetische Bild als synthetisch, d. h. als falsch, klassifiziert ist. Zum Beispiel kann der Generator 305 ein oder mehrere Gewichtungen innerhalb des Generators 305 unter Verwendung von Rückpropagierung oder dergleichen aktualisieren.
  • Der Diskriminator 310 kann auch auf Grundlage der Vorhersage aktualisiert werden. Wenn zum Beispiel die Vorhersage angibt, dass das erzeugte synthetische Bild aus einer realen Datenverteilung stammt, kann der Diskriminator 310 eine Rückmeldung empfangen, die angibt, dass das Bild ein synthetisches Bild ist. Auf Grundlage der Rückmeldung können eine oder mehrere Gewichtungen des Generators 305 aktualisiert werden, um falsche Vorhersagen zu minimieren. Durch den Trainingsprozess kann der Generator 305 die Qualität der erzeugten synthetischen Bilder verbessern, z. B. realistischere synthetische Bilder erzeugen, und der Diskriminator 310 kann die Identifizierung von Nuancen und Eigenschaften von synthetisch erzeugten Bildern verbessern.
  • Unter Bezugnahme auf 3B beinhaltet das trainierte Diskriminatorsystem 350 einen trainierten Diskriminator 310. In einer beispielhaften Umsetzung umfasst der trainierte Diskriminator 310 den Diskriminator 310, der innerhalb des Adversarial-Netzwerks 300 nach mehreren Iterationen trainiert wird. Der trainierte Diskriminator 310 ist dazu konfiguriert, ein synthetisch erzeugtes von einem Bildgenerator 315 zu empfangen, und erzeugt eine Wahrscheinlichkeit, dass das empfangene Bild aus der realen Datenverteilung stammt oder maschinell erzeugt ist. Wenn der trainierte Diskriminator 310 bestimmt, dass das simulierte Bild aus der realen Datenverteilung stammt, kann das simulierte Bild in einem Speicher gespeichert werden, auf den der Server 145 zugreifen kann. Zum Beispiel kann das simulierte Bild in einer Datenbank 355 gespeichert werden.
  • In einer oder mehreren Umsetzungen wird der Diskriminator 310 trainiert, um eine Wahrscheinlichkeit auszugeben, dass das eingegebene Bild real ist, was als P(x) bezeichnet wird. Während des Trainings ist die Verlustfunktion des Diskriminators 310 derart, dass er P(x) ⊔ 0 für erzeugte synthetische Bilder und P(x) ⊔ 1 für reale Bilder, die der Diskriminator während des Trainings im Verlauf des Trainingsprozesses empfängt, bewegt. Wenn P(x) im Durchschnitt für erzeugte synthetische Bilder gleich oder größer als 0,5 ist, wird der Trainingsprozess als konvergiert betrachtet, da die Wahrscheinlichkeit angibt, dass der Diskriminator 310 durchgehend unsicher ist, ob das erzeugte synthetische Bild real ist oder nicht. In diesem Zusammenhang ist das P(x) ein quantitatives Maß des Fotorealismus eines synthetischen Bildes. Der Fotorealismus kann ein Parameter sein, der angibt, wie nahe ein synthetisches Bild mit einem Bild aus einer realen Datenverteilung übereinstimmt.
  • 5 ist eine Darstellung eines beispielhaften tiefen neuronalen Netzwerks (DNN) 500. Das DNN 500 kann repräsentativ für den vorstehend beschriebenen Generator 305 und/oder Diskriminator 310 sein. Das DNN 500 beinhaltet mehrere Knoten 505 und die Knoten 505 sind so angeordnet, dass das DNN 500 eine Eingangsschicht, eine oder mehrere verborgene Schichten und eine Ausgangsschicht beinhaltet. Jede Schicht des DNN 500 kann eine Vielzahl von Knoten 505 beinhalten. Während 6 drei (3) verborgene Schichten veranschaulicht, versteht es sich, dass das DNN 500 zusätzliche oder weniger verborgene Schichten beinhalten kann. Die Eingangs- und Ausgangsschichten können auch mehr als einen (1) Knoten 505 beinhalten.
  • Die Knoten 505 werden manchmal als künstliche Neuronen 505 bezeichnet, da sie dazu ausgestaltet sind, biologische, z. B. menschliche, Neuronen zu emulieren. Ein Satz von Eingaben (dargestellt durch die Pfeile) für jedes Neuron 505 wird jeweils mit den jeweiligen Gewichtungen multipliziert. Die gewichteten Eingaben können dann in einer Eingabefunktion summiert werden, um eine Nettoeingabe bereitzustellen, die möglicherweise um eine Verzerrung angepasst ist. Die Nettoeingabe kann dann der Aktivierungsfunktion bereitgestellt werden, die wiederum einem verbundenen Neuron 505 eine Ausgabe liefert. Bei der Aktivierungsfunktion kann es sich um eine Vielfalt von geeigneten Funktionen handeln, die üblicherweise auf Grundlage einer empirischen Analyse ausgewählt werden. Wie durch die Pfeile in 6 veranschaulicht, können die Ausgaben des Neurons 505 dann zur Aufnahme in einen Satz Eingaben in ein oder mehrere Neuronen 505 in einer nächsten Schicht bereitgestellt werden.
  • Das DNN 500 kann dazu trainiert werden, Daten als Eingabe anzunehmen und eine Ausgabe auf Grundlage der Eingabe zu erzeugen. Das DNN 500 kann mit Ground-Truth-Daten trainiert werden, d. h. Daten über eine(n) reale(n) Bedingung oder Zustand. Beispielsweise kann das DNN 500 durch einen Prozessor mit 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 Verzerrung für jeden Knoten 505 kann auf null gesetzt werden. Das Trainieren des DNN 500 kann Aktualisieren von Gewichtungen und einer Verzerrung durch geeignete Techniken beinhalten, wie die 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, z. B. Winkel, Geschwindigkeit, Abstand oder Winkel eines Objekts in Bezug zu einem anderen Objekt, spezifizieren. Beispielsweise kann es sich bei den Ground-Truth-Daten um Daten handeln, die Objekte und Objektkennzeichnungen darstellen.
  • 6 ist ein Ablaufdiagramm eines beispielhaften Prozesses 600 zum Trainieren eines Diskriminators innerhalb eines neuronalen Adversarial-Netzwerks. Blöcke des Prozesses 600 können durch den Computer 110 oder den Computer 235 ausgeführt werden. Der Prozess 600 beginnt bei Block 605, in dem ein simuliertes Bild empfangen wird. In einer beispielhaften Umsetzung empfängt der Generator 305 ein simuliertes Eingabebild von einem Bildgenerator 315. Bei Block 610 erzeugt der Generator 305 ein synthetisches Bild, z.B. ein maschinengeneriertes Bild, auf Grundlage des simulierten Eingabebilds. In einer oder mehreren Umsetzungen versucht der Generator 305, ein fotorealistisches synthetisches Bild auf Grundlage des empfangenen simulierten Bildes zu erzeugen.
  • Bei Block 615 erzeugt der Diskriminator 310 eine Vorhersage, die angibt, ob das empfangene synthetische Bild aus der realen Datenverteilung stammt oder maschinell erzeugt wurde. Es versteht sich, dass dem Diskriminator 310 anfangs zu Trainingszwecken Bilder aus der realen Datenverteilung bereitgestellt worden sein können. Bei Block 620 werden Parameter des Diskriminators 310 und/oder des Generators 305 auf Grundlage der Vorhersage und/oder der Rückmeldung modifiziert. Zum Beispiel werden eine oder mehrere Gewichtungen des Generators 305 und/oder des Diskriminators 310 unter Verwendung von Rückpropagierung auf Grundlage der dem Generator 305 bereitgestellten Vorhersage und/oder der dem Diskriminator 310 bereitgestellten Rückmeldung aktualisiert.
  • Bei Block 625 erfolgt eine Bestimmung, ob ein Zähler N kleiner als ein vorbestimmter Trainingsschwellenwert ist. Wenn der Zähler N kleiner als der vorbestimmte Trainingsschwellenwert ist, wird der Zähler N bei Block 630 inkrementiert und der Prozess 600 kehrt zu Block 605 zurück, um den Diskriminator 310 weiter zu trainieren. Andernfalls endet der Prozess 600. Der vorbestimmte Trainingsschwellenwert kann auf Grundlage einer empirischen Analyse, die mit dem Training von Adversarial-Netzwerken assoziiert ist, ausgewählt werden.
  • 7 ist ein Ablaufdiagramm eines beispielhaften Prozesses 700 zum Erzeugen einer Vorhersage, die angibt, ob ein Bild maschinell erzeugt ist. Blöcke des Prozesses 700 können durch den Computer 110 oder den Computer 235 ausgeführt werden. Der Prozess 700 beginnt bei Block 705, in dem eine Bestimmung, ob ein Bild empfangen wird, erfolgt. In einer beispielhaften Umsetzung bestimmt der trainierte Diskriminator 310, ob ein simuliertes Bild von dem Bildgenerator 315 empfangen wurde. Wenn kein Bild empfangen wird, kehrt der Prozess 700 zu Block 705 zurück.
  • Andernfalls bewertet der trainierte Diskriminator 310 bei Block 710 das empfangene Bild und erzeugt eine Vorhersage, d.h. eine Wahrscheinlichkeit, basierend auf dem empfangenen Bild. Zum Beispiel wendet der trainierte Diskriminator 310 eine oder mehrere neuronale Faltungsnetzwerktechniken auf das empfangene Bild an, um eine Wahrscheinlichkeit zu erzeugen, dass das evaluierte Bild maschinell erzeugt ist oder aus einer realen Datenverteilung stammt. Bei Block 715 wird eine Bestimmung vorgenommen, ob das empfangene Bild synthetisch ist, z. B. maschinengeneriert. Wenn zum Beispiel die Wahrscheinlichkeit, z. B. P(x), größer als ein vorbestimmter Schwellenwert ist, z. B. größer als oder gleich 0,5, bestimmt der Diskriminator 310, dass das Bild aus einer realen Datenverteilung stammt.
  • Wenn die Bestimmung feststellt, dass empfangene Bild als synthetisch bestimmt ist, endet der Prozess 700. Andernfalls, wenn die Bestimmung feststellt, dass das empfangene Bild als aus einer realen Datenverteilung stammend bestimmt ist, wird das simulierte Bild bei Block 720 gespeichert. Wenn zum Beispiel der Diskriminator 310 eine Vorhersage erzeugt, die angibt, dass das simulierte Bild aus einer realen Datenverteilung stammt, z. B. nicht maschinengeneriert, kann das simulierte Bild in der Datenbank 355 für ein späteres Training gespeichert werden. Die Vorhersage kann ein quantitatives Maß des Fotorealismus des simulierten Bildes darstellen und kann verwendet werden, um andere neuronale Netzwerke zu trainieren.
  • 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 der 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. Solche Anweisungen und andere Daten können unter Verwendung einer Vielfalt von computerlesbaren Medien gespeichert und übertragen 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) einschließen, das ein beliebiges nichttransitorisches (z. B. materielles) Medium einschließt, das am Bereitstellen von Daten (z. B. Anweisungen) beteiligt ist, die durch einen Computer (z. B. durch einen Prozessor eines Computers) gelesen werden können. Ein derartiges Medium kann viele Formen annehmen, einschließlich unter anderem nichtflüchtiger Medien und flüchtiger Medien. Nichtflüchtige Medien beinhalten zum Beispiel Bild- und Magnetplatten und sonstige dauerhafte Speicher. Flüchtige Medien können zum Beispiel dynamischen Direktzugriffsspeicher (dynamic random access memory - DRAM) einschließen, der in der Regel einen Hauptspeicher darstellt. DSolche Anweisungen können durch ein oder mehrere Übertragungsmedien übertragen werden, darunter Koaxialkabel, Kupferdraht und Glasfaser, einschließlich den Drähten, aus denen ein Systembus besteht, der an einen Prozessor einer ECU gekoppelt ist. Gängige Formen computerlesbarer Medien beinhalten zum Beispiel 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, PCs usw.) umgesetzt sein, die auf computerlesbaren Medien gespeichert sind (z. B. Platten, Speicher usw.), die den Rechenvorrichtungen zugeordnet sind. Ein Computerprogrammprodukt kann derartige auf computerlesbaren Medien gespeicherte Anweisungen zum Ausführen der in dieser Schrift beschriebenen Funktionen umfassen.
  • Hinsichtlich der hierin beschriebenen Medien, Prozesse, Systeme, Verfahren, Heuristiken usw. versteht es sich, dass die Schritte solcher Prozesse usw. zwar als gemäß einer bestimmten Reihenfolge erfolgend beschrieben worden sind, solche Prozesse jedoch so umgesetzt werden könnten, dass die beschriebenen Schritte in einer Reihenfolge durchgeführt werden, die von der hierin beschriebenen Reihenfolge abweicht. 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 sein. Der Umfang der Erfindung sollte nicht unter Bezugnahme auf die vorstehende Beschreibung festgelegt werden, sondern stattdessen unter Bezugnahme auf die beigefügten Ansprüche in Zusammenhang mit dem vollständigen Umfang von Äquivalenten, zu denen solche Ansprüche berechtigen. Es wird vorweggenommen und ist 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 ausschließlich 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 hierin 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, aufweisend einen Computer, der einen Prozessor und einen Speicher beinhaltet, wobei der Speicher Anweisungen beinhaltet, so dass der Prozessor zu Folgendem programmiert ist: ein synthetisches Bild an einem ersten tiefen neuronalen Netzwerk zu empfangen; und über das erste tiefe neuronale Netzwerk eine Vorhersage zu bestimmen, die angibt, ob das synthetische Bild maschinell erzeugt wird oder aus der realen Datenverteilung stammt, wobei die Vorhersage ein quantitatives Maß des Fotorealismus des synthetischen Bildes umfasst.
  • Gemäß einer Ausführungsform gibt das quantitative Maß des Fotorealismus an, wie nahe das synthetische Bild mit einem Bild aus der realen Datenverteilung übereinstimmt.
  • Gemäß einer Ausführungsform bildet das synthetische Bild eine Vielzahl von Objekten ab.
  • Gemäß einer Ausführungsform bildet das synthetische Bild die Vielzahl von Objekten entsprechend einer Bildansicht eines simulierten Bildes ab.
  • Gemäß einer Ausführungsform wird das simulierte Bild durch einen Bildgenerator erzeugt.
  • Gemäß einer Ausführungsform umfasst der Bildgenerator eine Spiel-Engine.
  • Gemäß einer Ausführungsform wird das synthetische Bild über ein zweites tiefes neuronales Netzwerk basierend auf dem simulierten Bild erzeugt.
  • Gemäß einer Ausführungsform umfasst das zweite tiefe neuronale Netzwerk ein neuronales Codierer-Decodierer-Netzwerk, und das erste tiefe neuronale Netzwerk umfasst ein neuronales Faltungsnetzwerk.
  • Gemäß einer Ausführungsform ist der Prozessor ferner zu Folgendem programmiert: zu bestimmen, dass das synthetische Bild aus der realen Datenverteilung stammt, wenn die Vorhersage größer oder gleich einem vorbestimmten Schwellenwert ist.
  • Gemäß einer Ausführungsform ist der Prozessor ferner zu Folgendem programmiert: das synthetische Bild in einer Datenbank zu speichern, wenn die Vorhersage größer oder gleich dem vorbestimmten Schwellenwert ist.
  • Gemäß einer Ausführungsform beinhaltet ein Verfahren Folgendes: Empfangen eines synthetischen Bildes an einem ersten tiefen neuronalen Netzwerk; und Bestimmen, über das erste tiefe neuronale Netzwerk, einer Vorhersage, die angibt, ob das synthetische Bild maschinell erzeugt wird oder aus der realen Datenverteilung stammt, wobei die Vorhersage ein quantitatives Maß des Fotorealismus des synthetischen Bildes umfasst.
  • In einem Aspekt der Erfindung gibt das quantitative Maß des Fotorealismus an, wie nahe das synthetische Bild mit einem Bild aus der realen Datenverteilung übereinstimmt.
  • In einem Aspekt der Erfindung bildet das synthetische Bild eine Vielzahl von Objekten ab.
  • In einem Aspekt der Erfindung bildet das synthetische Bild die Vielzahl von Objekten entsprechend einer Bildansicht eines simulierten Bildes ab.
  • In einem Aspekt der Erfindung wird das simulierte Bild durch einen Bildgenerator erzeugt.
  • In einem Aspekt der Erfindung umfasst der Bildgenerator eine Spiel-Engine.
  • In einem Aspekt der Erfindung wird das synthetische Bild über ein zweites tiefes neuronales Netzwerk basierend auf dem simulierten Bild erzeugt.
  • In einem Aspekt der Erfindung umfasst das zweite tiefe neuronale Netzwerk ein neuronales Codierer-Decodierer-Netzwerk, und das erste tiefe neuronale Netzwerk umfasst ein neuronales Faltungsnetzwerk.
  • In einem Aspekt der Erfindung beinhaltet das Verfahren Folgendes: Bestimmen, dass das synthetische Bild aus der realen Datenverteilung stammt, wenn die Vorhersage größer oder gleich einem vorbestimmten Schwellenwert ist.
  • In einem Aspekt der Erfindung beinhaltet das Verfahren Folgendes: Speichern des synthetischen Bildes in einer Datenbank, wenn die Vorhersage größer oder gleich dem vorbestimmten Schwellenwert ist.

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: ein synthetisches Bild an einem ersten tiefen neuronalen Netzwerk zu empfangen; und über das erste tiefe neuronale Netzwerk eine Vorhersage zu bestimmen, die angibt, ob das synthetische Bild maschinell erzeugt ist oder aus der realen Datenverteilung stammt, wobei die Vorhersage ein quantitatives Maß des Fotorealismus des synthetischen Bildes umfasst.
  2. System nach Anspruch 1, wobei das quantitative Maß des Fotorealismus angibt, wie nahe das synthetische Bild mit einem Bild aus der realen Datenverteilung übereinstimmt.
  3. System nach Anspruch 1, wobei das synthetische Bild eine Vielzahl von Objekten darstellt.
  4. System nach Anspruch 3, wobei das synthetische Bild die Vielzahl von Objekten entsprechend einer Bildansicht eines simulierten Bildes abbildet.
  5. System nach Anspruch 4, wobei das simulierte Bild durch einen Bildgenerator erzeugt wird.
  6. System nach Anspruch 5, wobei der Bildgenerator eine Spiel-Engine umfasst.
  7. System nach Anspruch 4, wobei das synthetische Bild über ein zweites tiefes neuronales Netzwerk basierend auf dem simulierten Bild erzeugt wird.
  8. System nach Anspruch 7, wobei das zweite tiefe neuronale Netzwerk ein neuronales Codierer-Decodierer-Netzwerk umfasst und das erste tiefe neuronale Netzwerk ein neuronales Faltungsnetzwerk umfasst.
  9. System nach Anspruch 1, wobei der Prozessor ferner zu Folgendem programmiert ist: zu bestimmen, dass das synthetische Bild aus der realen Datenverteilung stammt, wenn die Vorhersage größer oder gleich einem vorbestimmten Schwellenwert ist.
  10. System nach Anspruch 9, wobei der Prozessor ferner zu Folgendem programmiert ist: das synthetische Bild in einer Datenbank zu speichern, wenn die Vorhersage größer oder gleich dem vorbestimmten Schwellenwert ist.
DE102020127253.7A 2019-10-15 2020-10-15 Quantifizieren von fotorealismus in simulierten daten mit gan Pending DE102020127253A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/653182 2019-10-15
US16/653,182 US10977783B1 (en) 2019-10-15 2019-10-15 Quantifying photorealism in simulated data with GANs

Publications (1)

Publication Number Publication Date
DE102020127253A1 true DE102020127253A1 (de) 2021-04-15

Family

ID=75155620

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102020127253.7A Pending DE102020127253A1 (de) 2019-10-15 2020-10-15 Quantifizieren von fotorealismus in simulierten daten mit gan

Country Status (3)

Country Link
US (1) US10977783B1 (de)
CN (1) CN112668692A (de)
DE (1) DE102020127253A1 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4051549A4 (de) * 2019-11-15 2024-04-24 Waymo Llc Erzeugung von umgebungsdaten

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10482609B2 (en) 2017-04-04 2019-11-19 General Electric Company Optical flow determination system
US10475174B2 (en) 2017-04-06 2019-11-12 General Electric Company Visual anomaly detection system
US10262236B2 (en) 2017-05-02 2019-04-16 General Electric Company Neural network training image generation system
US10643320B2 (en) * 2017-11-15 2020-05-05 Toyota Research Institute, Inc. Adversarial learning of photorealistic post-processing of simulation with privileged information
US10970765B2 (en) * 2018-02-15 2021-04-06 Adobe Inc. Generating user-customized items using a visually-aware image generation network
US20190286938A1 (en) * 2018-03-13 2019-09-19 Recogni Inc. Real-to-synthetic image domain transfer
US11537277B2 (en) * 2018-07-19 2022-12-27 Palo Alto Research Center Incorporated System and method for generating photorealistic synthetic images based on semantic information
US20200380652A1 (en) * 2019-05-30 2020-12-03 Signify Holding B.V. Automated generation of synthetic lighting scene images using generative adversarial networks

Also Published As

Publication number Publication date
US10977783B1 (en) 2021-04-13
US20210110526A1 (en) 2021-04-15
CN112668692A (zh) 2021-04-16

Similar Documents

Publication Publication Date Title
DE102018121595B4 (de) Unbeaufsichtigtes anlernen von agenten für autonome fahranwendungen
DE102021108470A1 (de) Realistische bildperspektiventransformation unter verwendung neuronaler netze
DE102020122357A1 (de) Fahrerbewusstseinserfassungssystem
DE102020128978A1 (de) Trainieren von tiefen neuronalen netzwerken mit synthetischen bildern
DE102021104044A1 (de) Neuronales netzwerk zur positionsbestimmung und objektdetektion
DE102021112616A1 (de) Selbstüberwachte schätzung einer beobachteten fahrzeugpose
DE102021109413A1 (de) Augmentation von fahrzeugdaten
DE102021128041A1 (de) Verbesserung eines neuronalen fahrzeugnetzwerks
DE102021104176A1 (de) Detektion von federungskomponentenschäden mit markierung
DE102021124810A1 (de) Neuronales fahrzeugnetzwerk
DE102022109164A1 (de) Verbessserter fahrzeugbetrieb
DE102022100549A1 (de) Mit einem rang versehene fehlerzustände
DE102021104178A1 (de) Dynamisch gerouteter felddiskriminator
DE102021122407A1 (de) Segmentierung und klassifizierung von punktwolkendaten
DE102020122086A1 (de) Messen von vertrauen in tiefen neuronalen netzwerken
DE102021104184A1 (de) Fahrzeugsteuersystem
DE102021104323A1 (de) Vorfahrtsgewährungentscheidung eines fahrzeugs
DE102020127253A1 (de) Quantifizieren von fotorealismus in simulierten daten mit gan
DE102022123358A1 (de) Frequenzbasierte merkmalsbeschränkung für ein neuronales netz
DE102022123187A1 (de) Adaptives Reduzieren von neuronalen Netzsystemen
DE102017201796A1 (de) Steuervorrichtung zum Ermitteln einer Eigenbewegung eines Kraftfahrzeugs sowie Kraftfahrzeug und Verfahren zum Bereitstellen der Steuervorrichtung
DE102022125228A1 (de) Automatisiertes fahrsystem mit gewünschtem niveau der fahraggresivität
DE102022123257A1 (de) Selektives Ausscheiden der Merkmale für entgegenwirkende Robustheit neuronaler Netze
DE102023101951A1 (de) Fahrzeugsteuerung für optimierten betrieb
DE102022132111A1 (de) Systeme und verfahren zum erfassen einer inferenzqualität eines tiefen neuronalen netzes unter verwendung von bild-/datenmanipulation ohne ground-truth-informationen

Legal Events

Date Code Title Description
R082 Change of representative

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

R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06K0009780000

Ipc: G06V0030200000