DE102022123358A1 - Frequenzbasierte merkmalsbeschränkung für ein neuronales netz - Google Patents

Frequenzbasierte merkmalsbeschränkung für ein neuronales netz Download PDF

Info

Publication number
DE102022123358A1
DE102022123358A1 DE102022123358.8A DE102022123358A DE102022123358A1 DE 102022123358 A1 DE102022123358 A1 DE 102022123358A1 DE 102022123358 A DE102022123358 A DE 102022123358A DE 102022123358 A1 DE102022123358 A1 DE 102022123358A1
Authority
DE
Germany
Prior art keywords
data
frequency
neural network
vehicle
computer
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
DE102022123358.8A
Other languages
English (en)
Inventor
Jordan B. Chipka
Wei Tong
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.)
GM Global Technology Operations LLC
Original Assignee
GM Global Technology Operations 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 GM Global Technology Operations LLC filed Critical GM Global Technology Operations LLC
Publication of DE102022123358A1 publication Critical patent/DE102022123358A1/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
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • 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/048Activation functions
    • 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
    • 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/7715Feature extraction, e.g. by transforming the feature space, e.g. multi-dimensional scaling [MDS]; Mappings, e.g. subspace methods
    • 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/776Validation; Performance evaluation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/88Image or video recognition using optical means, e.g. reference filters, holographic masks, frequency domain filters or spatial domain filters
    • G06V10/89Image or video recognition using optical means, e.g. reference filters, holographic masks, frequency domain filters or spatial domain filters using frequency domain filters, e.g. Fourier masks implemented on spatial light modulators

Landscapes

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

Abstract

Ein System umfasst einen Computer, der einen Prozessor und einen Speicher enthält. Der Speicher enthält Anweisungen, so dass der Prozessor programmiert ist: an einem neuronalen Netz frequenzgefilterte Daten aus dem Raumbereich zu empfangen, eine durch das neuronale Netz erzeugte Ausgabe mit einer Verlustfunktion zu vergleichen, die eine frequenzbasierte Merkmalskonsistenzbeschränkung enthält, und wenigstens ein Gewicht des neuronalen Netzes gemäß der Verlustfunktion zu aktualisieren.

Description

  • EINLEITUNG
  • Die vorliegende Offenbarung bezieht sich auf das Training eines neuronalen Netzes mit einer Verlustfunktion, die eine frequenzbasierte Merkmalskonsistenzbeschränkung enthält.
  • Tiefe neuronale Netze (DNNs) können verwendet werden, um viele Bildverständnisaufgaben, einschließlich Klassifikation, Segmentierung und Betiteln, auszuführen. Normalerweise benötigen DNNs große Mengen an Trainingsbildern (Zehntausende bis Millionen). Zusätzlich müssen diese Trainingsbilder für die Zwecke des Trainings und der Vorhersage typischerweise kommentiert, d. h., etikettiert werden.
  • ZUSAMMENFASSUNG
  • Ein System umfasst einen Computer, der einen Prozessor und einen Speicher enthält. Der Speicher enthält Anweisungen, so dass der Prozessor programmiert ist, um an einem neuronalen Netz frequenzgefilterte Raumbereichsdaten zu empfangen, eine durch das neuronale Netz erzeugte Ausgabe mit einer Verlustfunktion, die eine frequenzbasierte Merkmalskonsistenzbeschränkung enthält, zu vergleichen und wenigstens ein Gewicht des neuronalen Netzes gemäß der Verlustfunktion zu aktualisieren.
  • Gemäß weiteren Merkmalen ist der Prozessor ferner programmiert, Daten unter Verwendung eines Prozesses einer Fourier-Transformation aus einem Raumbereich in einen Frequenzbereich zu transformieren.
  • Gemäß weiteren Merkmalen ist der Prozessor ferner programmiert, Merkmale aus den transformierten Daten basierend auf einer vorgegebenen Frequenz zu filtern.
  • Gemäß weiteren Merkmalen ist der Prozessor ferner programmiert, die gefilterten transformierten Daten aus dem Frequenzbereich in den Raumbereich zu transformieren, um die frequenzgefilterten Raumbereichsdaten zu erzeugen.
  • Gemäß weiteren Merkmalen ist der Prozessor ferner programmiert, die Merkmale basierend auf einer Hochpassfrequenz und/oder einer Tiefpassfrequenz zu filtern.
  • Gemäß weiteren Merkmalen umfasst der Prozess einer Fourier-Transformation einen Prozess einer schnellen Fourier-Transformation.
  • Gemäß weiteren Merkmalen umfasst die durch das neuronale Netz erzeugte Ausgabe eine latente Darstellung der frequenzgefilterten Raumbereichsdaten.
  • Gemäß weiteren Merkmalen umfasst das neuronale Netz ein neuronales Faltungsnetz.
  • Gemäß weiteren Merkmalen entsprechen die frequenzgefilterten Raumbereichsdaten einem innerhalb eines Sehfeldes einer Fahrzeugkamera aufgenommenen Bild.
  • Gemäß weiteren Merkmalen umfasst das Bild ein Rot-Grün-Blau-Bild.
  • Ein Verfahren enthält in einem ersten neuronalen Netz das Empfangen von frequenzgefilterten Raumbereichsdaten an einem neuronalen Netz, das Vergleichen einer durch das neuronale Netz erzeugten Ausgabe mit einer Verlustfunktion, die eine frequenzbasierte Merkmalskonsistenzbeschränkung enthält, und das Aktualisieren wenigstens eines Gewichts des neuronalen Netzes gemäß der Verlustfunktion.
  • Gemäß weiteren Merkmalen enthält das Verfahren das Transformieren von Daten aus einem Raumbereich in einen Frequenzbereich unter Verwendung eines Prozesses einer Fourier-Transformation.
  • Gemäß weiteren Merkmalen enthält das Verfahren das Filtern von Merkmalen aus den transformierten Daten basierend auf einer vorgegebenen Frequenz.
  • Gemäß weiteren Merkmalen enthält das Verfahren das Transformieren der gefilterten transformierten Daten aus dem Frequenzbereich in den Raumbereich, um die frequenzgefilterten Raumbereichsdaten zu erzeugen.
  • Gemäß weiteren Merkmalen enthält das Verfahren das Filtern der Merkmale basierend auf einer Hochpassfrequenz und/oder einer Tiefpassfrequenz.
  • Gemäß weiteren Merkmalen umfasst der Prozess einer Fourier-Transformation einen Prozess einer schnellen Fourier-Transformation.
  • Gemäß weiteren Merkmalen umfasst die durch das neuronale Netz erzeugte Ausgabe eine latente Darstellung der frequenzgefilterten Raumbereichsdaten.
  • Gemäß weiteren Merkmalen umfasst das neuronale Netz ein neuronales Faltungsnetz.
  • Gemäß weiteren Merkmalen entsprechen die frequenzgefilterten Raumbereichsdaten einem innerhalb eines Sehfeldes einer Fahrzeugkamera aufgenommenen Bild.
  • Gemäß weiteren Merkmalen umfasst das Bild ein Rot-Grün-Blau-Bild.
  • Weitere Anwendungsbereiche werden aus der hier bereitgestellten Beschreibung offensichtlich. Es soll erkannt werden, dass die Beschreibung und die spezifischen Beispiele nur der Veranschaulichung dienen und den Schutzumfang der vorliegenden Offenbarung nicht einschränken sollen.
  • Figurenliste
  • Die hier beschriebenen Zeichnungen dienen nur der Veranschaulichung und sollen den Schutzumfang der vorliegenden Offenbarung in keiner Weise einschränken; es zeigen:
    • 1 einen Blockschaltplan eines beispielhaften Systems, das ein Fahrzeug enthält;
    • 2 einen Blockschaltplan eines beispielhaften Servers innerhalb des Systems;
    • 3 eine graphische Darstellung eines beispielhaften neuronalen Netzes;
    • 4 einen Blockschaltplan eines beispielhaften Frequenzmerkmals-Extraktionssystems;
    • 5 einen Blockschaltplan eines beispielhaften neuronalen Faltungsnetzes;
    • 6A bis 6C einen Blockschaltplan, der einen beispielhaften Prozess zum Trainieren eines neuronalen Netzes veranschaulicht;
    • 7 einen Blockschaltplan eines beispielhaften Bereichsanpassungsnetzes;
    • 8 einen Ablaufplan, der einen beispielhaften Prozess zum Steuern eines Fahrzeugs veranschaulicht; und
    • 9 einen Ablaufplan, der einen beispielhaften Prozess zum Trainieren eines neuronalen Netzes veranschaulicht.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Die folgende Beschreibung ist lediglich beispielhaft und soll die vorliegende Offenbarung, Anwendung oder Verwendungen nicht einschränken.
  • Typischerweise werden standardmäßige tiefe neuronale Netze (DNNs) mit etikettierten Trainingsdatensätzen vortrainiert. Diese DNNs können während des Testens durch Vergleichen der Ausgabe des Modells mit einer Grundwahrheit validiert werden. In Testszenarien der echten Welt kann es jedoch schwierig sein, Grundwahrheitsdaten zu erhalten.
  • Die Bereichsanpassung ist auf das Verallgemeinern eines Modells aus einem Quellbereich in einen Zielbereich gerichtet. Typischerweise weist der Quellbereich eine große Menge von Trainingsdaten auf, während die Daten im Zielbereich knapp sein können. Die Verfügbarkeit von Sicherungs-Fahrspurdaten einer Kamera kann aufgrund von Einschränkungen bei den Kameralieferanten, Problemen bei der Neuverdrahtung, einem Mangel an relevanten Anwendungen und dergleichen eingeschränkt sein. Es kann jedoch eine Anzahl von Datensätzen geben, die Bilder einer nach vorn schauenden Kamera enthalten, die Fahrspuren enthalten.
  • Die vorliegende Offenbarung offenbart Systeme und Verfahren, die ein neuronales Netz unter Verwendung einer Verlustfunktion trainieren, die eine frequenzbasierte Merkmalskonsistenzbeschränkung enthält. Das trainierte neuronale Netz kann Daten in einem Quellbereich empfangen und Daten in einem Zielbereich erzeugen. Das trainierte neuronale Netz kann z. B. Bilder empfangen, die ein oder mehrere Merkmale enthalten, die bei Tageslicht aufgenommen worden sind, und Bilder erzeugen, die die Merkmale enthalten, so dass das Bild so erscheint, dass es bei Nacht aufgenommen worden ist.
  • 1 ist ein Blockschaltplan eines beispielhaften Fahrzeugsystems 100. Das System 100 enthält ein Fahrzeug 105, das ein Landfahrzeug, wie z. B. ein Personenkraftwagen, ein Lastkraftwagen usw., ist. Das Fahrzeug 105 enthält einen Computer 110, die Fahrzeugsensoren 115, die Aktuatoren 120, um verschiedene Fahrzeugkomponenten 125 zu betätigen, und ein Fahrzeugkommunikationsmodul 130. Über ein Netz 135 ermöglicht das Kommunikationsmodul 130 dem Computer 110, mit einem Server 145 zu kommunizieren.
  • Der Computer 110 enthält einen Prozessor und einen Speicher. Der Speicher enthält eine oder mehrere Formen computerlesbarer Medien und speichert Anweisungen, die durch den Computer 110 ausführbar sind, um verschiedene Operationen einschließlich der hier offenbarten auszuführen.
  • Der Computer 110 kann ein Fahrzeug 105 in einer autonomen, einer halbautonomen Betriebsart oder einer nichtautonomen (manuellen) Betriebsart betreiben. Für die Zwecke dieser Offenbarung ist eine autonome Betriebsart als eine Betriebsart definiert, in der jedes des Antriebs, des Bremsens und des Lenkens des Fahrzeugs 105 durch den Computer 110 gesteuert ist; wobei in einer halbautonomen Betriebsart der Computer 110 eines oder zwei des Antriebs, des Bremsens und des Lenkens der Fahrzeuge 105 steuert; während in einer nichtautonomen Betriebsart eine menschliche Bedienungsperson jedes des Antriebs, des Bremsens und des Lenkens des Fahrzeugs 105 steuert.
  • Der Computer 110 kann eine Programmierung enthalten, um sowohl eines oder mehreres der Bremsen, des Antriebs (z. B. die Steuerung der Beschleunigung des Fahrzeugs durch Steuern eines oder mehrerer einer Brennkraftmaschine, eines Elektromotors, einer Hybrid-Kraftmaschine usw.), der Lenkung, der Klimatisierung, der Innen- und/oder Außenbeleuchtung usw. des Fahrzeugs 105 zu steuern als auch zu bestimmen, ob und wann der Computer 110 im Gegensatz zu einer menschlichen Bedienungsperson derartige Operationen steuern soll. Zusätzlich kann der Computer 110 programmiert sein, zu bestimmen, ob und wann eine menschliche Bedienungsperson derartige Operationen steuern soll.
  • Der Computer 110 kann mehr als einen Prozessor enthalten oder mit diesen, z. B. über das Kommunikationsmodul 130 des Fahrzeugs 105, wie im Folgenden weiter beschrieben wird, kommunikationstechnisch gekoppelt sein, die z. B. in elektronischen Controller-Einheiten (ECUs) oder dergleichen enthalten sind, die in dem Fahrzeug 105 enthalten sind, um verschiedene Fahrzeugkomponenten 125, z. B. einen Antriebsstrang-Controller, einen Brems-Controller, einen Lenkungs-Controller usw., zu überwachen und/oder zu steuern. Ferner kann der Computer 110 über das Kommunikationsmodul 130 des Fahrzeugs 105 mit einem Navigationssystem kommunizieren, das das Globale Positionierungssystem (GPS) verwendet. Als ein Beispiel kann der Computer 110 z. B. Ortsdaten des Fahrzeugs 105 anfordern und empfangen. Die Ortsdaten können sich in einer bekannten Form, z. B. Geokoordinaten (Breiten- und Längenkoordinaten), befinden.
  • Der Computer 110 ist im Allgemeinen für die Kommunikation mit dem Kommunikationsmodul 130 des Fahrzeugs 105 und außerdem mit einem internen drahtgebundenen und/oder drahtlosen Netz des Fahrzeugs 105, z. B. einem Bus oder dergleichen im Fahrzeug 105, wie z. B. einem Controller-Bereichsnetz (CAN) oder dergleichen, und/oder anderen drahtgebundenen und/oder drahtlosen Mechanismen ausgelegt.
  • Der Computer 110 kann über das Kommunikationsnetz des Fahrzeugs 105 Nachrichten an verschiedene Vorrichtungen im Fahrzeug 105 senden und/oder Nachrichten von den verschiedenen Vorrichtungen, z. B. den Fahrzeugsensoren 115, den Aktuatoren 120, den Fahrzeugkomponenten 125, einer Mensch-Maschine-Schnittstelle (HMI) usw., empfangen. Alternativ oder zusätzlich kann in den Fällen, in denen der Computer 110 tatsächlich mehrere Vorrichtungen umfasst, das Kommunikationsnetz des Fahrzeugs 105 für die Kommunikation zwischen den in dieser Offenbarung als der Computer 110 dargestellten Vorrichtungen verwendet werden. Ferner können, wie im Folgenden erwähnt wird, verschiedene Controller und/oder Fahrzeugsensoren 115 Daten dem Computer 110 bereitstellen. Das Kommunikationsnetz des Fahrzeugs 105 kann ein oder mehrere Gateway-Module enthalten, die die Zusammenarbeitsfähigkeit zwischen verschiedenen Netzen und Vorrichtungen innerhalb des Fahrzeugs 105, wie z. B. Protokollübersetzer, Impedanzanpasser, Ratenumsetzer und dergleichen, bereitstellen.
  • Die Fahrzeugsensoren 115 können verschiedene Vorrichtungen enthalten, wie sie z. B. bekannt sind, um dem Computer 110 Daten bereitzustellen. Die Fahrzeugsensoren 115 können z. B. einen Lichtdetektions- und -ortungssensor(en) (Lidar-Sensor(en)) 115 usw. enthalten, der (die) auf einer Oberseite des Fahrzeugs 105, hinter einer Front-Windschutzscheibe des Fahrzeugs 105, um das Fahrzeug 105 herum usw. angeordnet sind, die relative Positionen, Größen und Formen von Objekten und/oder Bedingungen, die das Fahrzeug 105 umgeben, bereitstellen. Als ein weiteres Beispiel können ein oder mehrere Radarsensoren 115, die an den Stoßfängern des Fahrzeugs 105 befestigt sind, Daten bereitstellen, um die Geschwindigkeit von Objekten (möglicherweise einschließlich zweiter Fahrzeuge 106) usw. bezüglich des Orts des Fahrzeugs 105 bereitzustellen und zu klassifizieren. Die Fahrzeugsensoren 115 können ferner Kamerasensor(en) 115 enthalten, z. B. Frontansicht, Seitenansicht, Rückansicht usw., die Bilder aus einem Sehfeld innerhalb und/oder außerhalb des Fahrzeugs 105 bereitstellen.
  • Die Aktuatoren 120 des Fahrzeugs 105 sind über Schaltungen, Chips, Motoren oder andere elektronische und/oder mechanische Komponenten implementiert, die verschiedene Fahrzeug-Teilsysteme gemäß geeigneten Steuersignalen betätigen können, wie bekannt ist. Die Aktuatoren 120 können verwendet werden, um die Komponenten 125, einschließlich des Bremsens, des Beschleunigens und des Lenkens eines Fahrzeugs 105, zu steuern.
  • Im Kontext der vorliegenden Offenbarung ist eine Fahrzeugkomponente 125 eine oder mehrere Hardware-Komponenten, die dafür ausgelegt sind, eine mechanische oder elektromechanische Funktion oder Operation auszuführen, - wie z. B. das Bewegen des Fahrzeugs 105, das Abbremsen oder Stoppen des Fahrzeugs 105, das Lenken des Fahrzeugs 105 usw. Nicht einschränkende Beispiele der Komponenten 125 enthalten eine Antriebskomponente (die z. B. eine Brennkraftmaschine und/oder einen Elektromotor usw. enthält), eine Getriebekomponente, eine Lenkkomponente (die z. B. eines oder mehreres eines Lenkrads, einer Lenkzahnstange usw. enthalten kann), eine Bremskomponente (wie im Folgenden beschrieben wird), eine Einparkhilfekomponente, eine Komponente einer adaptiven Geschwindigkeitsregelung, eine Komponente einer adaptiven Lenkung, einen beweglichen Sitz usw.
  • Zusätzlich kann der Computer 110 konfiguriert sein, über ein Fahrzeug-zu-Fahrzeug-Kommunikationsmodul oder eine Fahrzeug-zu-Fahrzeug-Kommunikationsschnittstelle 130 mit Vorrichtungen außerhalb des Fahrzeugs 105, z. B. über eine drahtlose Fahrzeug-zu-Fahrzeug- (V2V-) oder Fahrzeug-zu-Infrastruktur- (V2X-) Kommunikation mit einem weiteren Fahrzeug, (typischerweise über das Netz 135) mit einem entfernten Server 145 zu kommunizieren. Das Modul 130 könnte einen oder mehrere Mechanismen, durch die der Computer 110 kommunizieren kann, einschließlich irgendeiner gewünschten Kombination von drahtlosen (z. B. Zellen-, drahtlosen, Satelliten-, Mikrowellen- und Hochfrequenz-) Kommunikationsmechanismen und irgendeiner gewünschten Netztopologie (oder -topologien, wenn mehrere Kommunikationsmechanismen verwendet werden) enthalten. Beispielhafte Kommunikationen, die über das Modul 130 bereitgestellt werden, enthalten Zellen-, Bluetooth®-, IEEE 802.11-, dedizierte Kurzstreckenkommunikation (DSRC) und/oder Weitbereichsnetze (WAN) einschließlich des Internets, die Datenkommunikationsdienste bereitstellen.
  • Das Netz 135 kann einer oder mehrere von verschiedenen drahtgebundenen oder drahtlosen Kommunikationsmechanismen sein, einschließlich irgendeiner gewünschten Kombination von drahtgebundenen (z. B. Kabel und Glasfaser) und/oder drahtlosen (z. B. Zellen-, drahtlosen, Satelliten-, Mikrowellen- und Hochfrequenz-) Kommunikationsmechanismen und irgendeiner gewünschten Netztopologie (oder -topologien, wenn mehrere Kommunikationsmechanismen verwendet werden). Beispielhafte Kommunikationsnetze enthalten drahtlose Kommunikationsnetze (z. B. unter Verwendung von Bluetooth, Bluetooth Low Energy (BLE), IEEE 802.11, Fahrzeug-zu-Fahrzeug (V2V), wie z. B. dedizierte Nahbereichskommunikation (DSRC) usw.), lokale Netze (LAN) und/oder Weitbereichsnetze (WAN) einschließlich des Internets, die Datenkommunikationsdienste bereitstellen.
  • Ein Computer 110 kann Daten von Sensoren 115 im Wesentlichen kontinuierlich, periodisch und/oder nach Anweisung durch einen Server 145 usw. empfangen und analysieren. Ferner können in einem Computer 110 z. B. basierend auf Daten des Lidar-Sensors 115, des Kamera-Sensors 115 usw. Objektklassifikations- oder -identifikationstechniken verwendet werden, um sowohl einen Typ des Objekts, z. B. Fahrzeug, Person, Stein, Schlagloch, Fahrrad, Motorrad usw., als auch physische Merkmale von Objekten zu identifizieren.
  • 2 ist ein Blockschaltplan eines beispielhaften Servers 145. Der Server 145 enthält einen Computer 235 und ein Kommunikationsmodul 240. Der Computer 235 enthält einen Prozessor und einen Speicher. Der Speicher enthält eine oder mehrere Formen computerlesbarer Medien und speichert Anweisungen, die durch den Computer 235 ausführbar sind, um verschiedene Operationen einschließlich der hier offenbarten auszuführen. Das Kommunikationsmodul 240 ermöglicht es dem Computer 235, mit anderen Vorrichtungen, wie z. B. dem Fahrzeug 105, zu kommunizieren.
  • 3 ist eine graphische Darstellung eines beispielhaften tiefen neuronalen Netzes (DNN) 300, das hier verwendet werden kann. Das DNN 300 enthält mehrere Knoten 305, wobei die Knoten 305 so angeordnet sind, dass das DNN 300 eine Eingangsschicht, eine oder mehrere verborgene Schichten und eine Ausgangsschicht enthält. Jede Schicht des DNN 300 kann mehrere Knoten 305 enthalten. Während 3 drei (3) verborgene Schichten 415 veranschaulicht, wird erkannt, dass das DNN 300 zusätzliche oder weniger verborgene Schichten enthalten kann. Die Eingangs- und die Ausgangsschicht können außerdem mehr als einen (1) Knoten 305 enthalten.
  • Die Knoten 305 werden manchmal als künstliche Neuronen bezeichnet, weil sie entworfen sind, biologische, z. B. menschliche, Neuronen zu emulieren. Ein Satz von Eingaben (die durch die Pfeile dargestellt sind) in jedes Neuron 305 wird jeweils mit entsprechenden Gewichten multipliziert. Die gewichteten Eingaben können dann in einer Eingabefunktion summiert werden, um, möglicherweise durch eine Verzerrung eingestellt, eine Nettoeingabe bereitzustellen. Die Nettoeingabe kann dann einer Aktivierungsfunktion bereitgestellt werden, die wiederum ein verbundenes Neuron 305 einem Ausgang bereitstellt. Die Aktivierungsfunktion kann verschiedene geeignete Funktionen sein, die typischerweise basierend auf einer empirischen Analyse ausgewählt werden. Wie durch die Pfeile in 3 veranschaulicht ist, können die Ausgaben des Neurons 305 dann zur Einbeziehung in einen Satz von Eingaben in ein oder mehrere Neuronen 305 in einer nächsten Schicht bereitgestellt werden.
  • Das DNN 300 kann trainiert werden, um Daten als eine Eingabe zu akzeptieren und basierend auf der Eingabe eine Ausgabe zu erzeugen. In einem Beispiel kann das DNN 300 mit Grundwahrheitsdaten, d. h., mit Daten über eine Bedingung oder einen Zustand in der echten Welt trainiert werden. Das DNN 300 kann durch einen Prozessor z. B. mit Grundwahrheitsdaten trainiert oder mit zusätzlichen Daten aktualisiert werden. Die Gewichte können z. B. unter Verwendung einer Gaußschen Verteilung initialisiert werden, wobei eine Verzerrung für jeden Knoten 305 auf null gesetzt werden kann. Das Training des DNN 300 kann das Aktualisieren der Gewichte und der Verzerrungen mittels geeigneter Techniken, wie z. B. Rückausbreitung mit Optimierungen, enthalten. Die Grundwahrheitsdaten können Daten, die Objekte innerhalb eines Bildes spezifizieren, oder Daten, die einen physikalischen Parameter, z. B. einen Winkel, eine Geschwindigkeit, eine Entfernung, eine Farbe, einen Farbton oder einen Winkel eines Objekts bezüglich eines weiteren Objekts, spezifizieren, enthalten, sind aber nicht darauf eingeschränkt. Die Grundwahrheitsdaten können z. B. Daten sein, die Objekte und Objektetiketten darstellen.
  • Dienste des maschinellen Lernens, wie z. B. jene, die auf rekurrenten neuronalen Netzen (RNNs), neuronalen Faltungsnetzen (CNNs), neuronalen Netzen mit langem Kurzzeitgedächtnis (LSTM) oder torgesteuerten rekurrenten Einheiten (GRUs) basieren, können unter Verwendung der in dieser Offenbarung beschriebenen DNNs 300 implementiert werden. In einem Beispiel kann der dienstbezogene Inhalt oder andere Informationen, wie z. B. Wörter, Sätze, Bilder, Videos oder anderer derartiger Inhalt/andere derartige Informationen, in eine Vektordarstellung übersetzt werden.
  • 4 ist eine graphische Darstellung eines Beispiels eines Frequenzmerkmals-Extraktionssystems 400. Das Frequenzmerkmal-Extraktionssystem 400 kann ein Software-Programm sein, das z. B. in den Speicher geladen und durch einen Prozessor in dem Fahrzeug 105 und/oder dem Server 145 ausgeführt werden kann. Wie gezeigt ist, kann das Frequenzmerkmal-Extraktionssystem 400 ein Transformationsmodul 405 und ein inverses Transformationsmodul 410 enthalten. In verschiedenen Implementierungen führen das Transformationsmodul 405 und das inverse Transformationsmodul 410 geeignete Prozesse einer Fourier-Transformation, wie z. B. Prozesse einer schnellen Fourier-Transformation, an den empfangenen Daten aus. Das Transformationsmodul 405 setzt z. B. die Eingangsdaten 415 aus dem Raumbereich in den Frequenzbereich um. Die Eingangsdaten 415 können Bilddaten, Audiodaten oder dergleichen umfassen.
  • Das Transformationsmodul 405 liefert die transformierten Daten, d. h., die im Frequenzbereich dargestellten Daten, an ein Hochpassfilter 420 und an ein Tiefpassfilter 425. Das Hochpassfilter 420 lässt Daten mit einer Frequenz durch, die höher als eine vorgegebene Hochpass-Grenzfrequenz ist, während das Tiefpassfilter 425 Daten mit einer Frequenz durchlässt, die niedriger als eine vorgegebene Tiefpass-Grenzfrequenz ist. Das Hochpassfilter 420 liefert die gefilterten Daten an das Modul 410 für die inverse Transformation, das die gefilterten Daten aus dem Frequenzbereich in den Raumbereich umsetzt, während das Tiefpassfilter 425 die gefilterten Daten an das Modul 410 für die inverse Transformation liefert, das die gefilterten Daten aus dem Frequenzbereich in den Raumbereich umsetzt. Das Modul 410 für die inverse Transformation kann z. B. ein geändertes Bild basierend auf der jeweiligen Filterung durch das Hochpassfilter 420 oder das Tiefpassfilter 425 erzeugen.
  • Wie im Folgenden ausführlicher beschrieben wird, können die gefilterten Raumbereichsdaten, wie z. B. die geänderten Bilder, einem DNN 300 bereitgestellt werden, um basierend auf dem Frequenzmerkmal Merkmalsbeschränkungen auf die Eingangsdaten anzuwenden. Das DNN 300 kann z. B. unter Verwendung einer Verlustfunktion trainiert werden, die eine frequenzbasierte Merkmalskonsistenzbeschränkung enthält, um dem DNN 300 zu ermöglichen, bereichsunabhängige Merkmale zu erlernen. Derartige etikettierte Merkmale können in einem Bild innerhalb des Quellbereichs aufrechterhalten werden.
  • 5 ist ein Blockschaltplan, der ein Beispiel eines DNN 300 veranschaulicht. In der in 5 veranschaulichten Implementierung ist das DNN 300 ein neuronales Faltungsnetz 500. Das neuronale Faltungsnetz 500 kann mehrere verschiedene Typen von Schichten basierend auf einer Verbindbarkeit und einer Gewichtsteilung enthalten. Wie gezeigt ist, enthält das neuronale Faltungsnetz 500 die Faltungsblöcke 505A, 505B. Jeder der Faltungsblöcke 505A, 505B kann mit einer Faltungsschicht (CONV) 510, einer Normierungsschicht (LNorm) 515 und einer Maximal-Zusammenlegungs-Schicht (MAX POOL) 520 konfiguriert sein.
  • Die Faltungsschichten 510 können ein oder mehrere Faltungsfilter enthalten, die auf die Eingangsdaten 545 angewendet werden, um eine Ausgabe 540 zu erzeugen. Während 5 nur zwei Faltungsblöcke 505A, 505B veranschaulicht, kann die vorliegende Offenbarung irgendeine Anzahl von Faltungsblöcken 505A, 505B enthalten. Die Normierungsschicht 515 kann die Ausgabe der Faltungsfilter normieren. Die Normierungsschicht 515 kann z. B. eine Aufhellung oder eine seitliche Hemmung bereitstellen. Die Maximal-Zusammenlegungs-Schicht 520 kann eine Abwärtsabtastungs-Ansammlung über den Raum für lokale Invarianz und Dimensionalitätsverringerung bereitstellen.
  • Das tiefe Faltungsnetz 500 kann außerdem eine oder mehrere vollständig verbundene Schichten 525 (FC1 und FC2) enthalten. Das tiefe Faltungsnetz 500 kann ferner eine logistische Regressionsschicht (LR) 530 enthalten. Zwischen den jeweiligen Schichten 510, 515, 520, 525, 530 des tiefen Faltungsnetzes 500 befinden sich Gewichte, die aktualisiert werden können. Die Ausgabe jeder der Schichten (z. B. 510, 515, 520, 525, 530) kann als eine Eingabe einer nachfolgenden der Schichten (z. B. 510, 515, 520, 525, 530) im neuronalen Faltungsnetz 500 dienen, um Merkmale aus Eingangsdaten 540, z. B. Bildern, Audio, Video, Sensordaten und/oder anderen Eingangsdaten, die am ersten der Faltungsblöcke 505A bereitgestellt werden, zu erlernen. Die Ausgabe 535 kann eine latente Darstellung eines oder mehrerer Merkmale basierend auf den Eingangsdaten darstellen. Die Ausgabe 535 kann z. B. latente Merkmale eines Eingangsbildes innerhalb eines ersten Bereichs umfassen, das aus einer echten Datenverteilung bezogen wird, wie z. B. ein bei Tageslicht aufgenommenes Rot-Grün-Blau-Bild (RGB). Die Ausgabe 535 kann mittels eines Decodierers in ein synthetisches Bild innerhalb eines zweiten Bereichs, wie z. B. ein synthetisches RGB-Bild, das Merkmale aus dem Eingangsbild bei Nacht veranschaulicht, umgesetzt werden.
  • Die 6A und 6B veranschaulichen einen beispielhaften Prozess zum Trainieren des DNN 300 gemäß einer oder mehreren Implementierungen der vorliegenden Offenbarung. Wie in 6A gezeigt ist, empfängt ein DNN 300 während einer anfänglichen Trainingsphase einen festgelegten Satz von etikettierten Trainingsdaten 605 und Trainingsetiketten 610. Die Trainingsdaten 605 können gemäß dem oben bezüglich 4 beschriebenen Prozess transformierte frequenzgefilterte Raumbereichsdaten umfassen. Die gefilterten Raumbereichsdaten können z. B. ein oder mehrere Bilder umfassen, die Objekte innerhalb eines Sehfeldes (FOV) einer Fahrzeugkamera darstellen. Die Trainingsetiketten 610 können Objektetiketten, Objekttypetiketten, den Bereichstyp und/oder den Abstand des Objekts bezüglich der Quelle des Bildes umfassen.
  • Nach der anfänglichen Trainingsphase wird in einer überwachten Trainingsphase ein Satz von N Trainingsdaten 615 in das DNN 300 eingegeben. Das DNN 300 erzeugt für jede der N Eingaben von Trainingsdaten 615 übersetzte Ausgangsdaten. Das DNN 300 kann z. B. ein synthetisches Bild erzeugen, das die Merkmale innerhalb der Trainingsdaten im zweiten Bereich enthält. 6B veranschaulicht ein Beispiel des Erzeugens einer Ausgabe basierend auf den Trainingsdaten 615, z. B. den nicht etikettierten Trainingsbildern, der N Trainingsdaten 615. Basierend auf dem anfänglichen Training gibt das DNN 300 eine Vektordarstellung 620 der Ausgangsdaten, z. B. latente Darstellungen der Trainingsdaten, aus. Die Vektordarstellung 620 wird mit den Grundwahrheitsdaten 625 verglichen. Die Grundwahrheitsdaten 625 können eine frequenzbasierte Merkmalskonsistenzbeschränkung enthalten. Die frequenzbasierte Merkmalskonsistenzbeschränkung kann z. B. einen Abschnitt einer Verlustfunktion umfassen, so dass die Merkmale innerhalb der Daten, die einer niedrigen Frequenz entsprechen, über die Bereiche hinweg konsistent sind, und die Merkmale innerhalb der Daten, die einer hohen Frequenz entsprechen, über die Bereiche hinweg abgeschwächt oder verringert werden.
  • Das DNN 300 aktualisiert die Netzparameter basierend auf dem Vergleich mit den Grundwahrheitsdaten 625. Die Netzparameter, z. B. die den Neuronen zugeordneten Gewichte, könne z. B. mittels Rückausbreitung aktualisiert werden. Das DNN 300 kann auf dem Server 145 trainiert und dem Fahrzeug 105 über das Kommunikationsnetz 135 bereitgestellt werden. Das Fahrzeug 105 kann außerdem durch die Systeme des Fahrzeugs 105 erfasste Daten dem Server 145 für weitere Trainingszwecke bereitstellen.
  • 7 ist eine graphische Darstellung eines beispielhaften Bereichsanpassungsnetzes 700, das Daten innerhalb des Quellbereichs zum Quellbereich in Daten innerhalb des Zielbereichs umsetzen kann. Das Bereichsanpassungsnetz 700 kann ein Software-Programm sein, das z. B. in den Speicher geladen und durch einen Prozessor im Fahrzeug 105 und/oder den Server 145 ausgeführt werden kann. In einer beispielhaften Implementierung kann das Bereichsanpassungsnetz 700 eine Folge von Bildern im Quellbereich, z. B. zur Tageszeit, empfangen und eine Folge von Bildern im Zielbereich, z. B. zur Nachtzeit, ausgeben.
  • Wie gezeigt ist, umfasst das Bereichsanpassungsnetz 700 einen Autoencoder, der einen Codierer 705 und einen Decodierer 710 enthält. In einer beispielhaften Implementierung kann der Codierer 705 das trainierte DNN 300 umfassen, wie oben bezüglich der 6A und 6B beschrieben worden ist. In verschiedenen Implementierungen ist der Decodierer 710 zum Codierer 705 symmetrisch. Der Codierer 705 empfängt die Eingangsdaten aus dem Quellbereich und erzeugt eine latente Darstellung 715 der Eingangsdaten, während der Decodierer 710 die Ausgangsdaten im Quellbereich basierend auf der latenten Darstellung 715 der Eingangsdaten im Zielbereich rekonstruiert.
  • 8 ist ein Ablaufplan eines beispielhaften Prozesses 800 zum Steuern des Fahrzeugs 105 basierend auf der bestimmten Ausgabe eines neuronalen Netzes, das gemäß den hier beschriebenen Prozessen trainiert worden ist. Die Blöcke des Prozesses 800 können durch den Computer 110 ausgeführt werden. Der Prozess 800 beginnt im Block 805, in dem der Computer 110 basierend auf der bestimmten Ausgabe bestimmt, ob das Fahrzeug 105 betätigt werden soll. Der Computer 110 kann eine Nachschlagetabelle enthalten, die eine Beziehung zwischen einer bestimmten Ausgabe und einer Fahrzeugbetätigungshandlung herstellt. Basierend auf einem durch einen oder mehrere Sensoren 115 des Fahrzeugs 105 aufgenommenen Bild kann der Computer 110 z. B. das Fahrzeug 105 veranlassen, eine spezifizierte Handlung auszuführen, z. B. ein Abbiegen des Fahrzeugs 105 einzuleiten, die Richtung des Fahrzeugs 105 einzustellen, die Geschwindigkeit des Fahrzeugs 105 einzustellen usw. In einem weiteren Beispiel kann der Computer 110 basierend auf dem bestimmten Abstand zwischen dem Fahrzeug 105 und einem Objekt das Fahrzeug 105 veranlassen, eine spezifizierte Handlung auszuführen, z. B. ein Abbiegen des Fahrzeugs 105 einzuleiten, einen externen Alarm auszulösen, die Geschwindigkeit des Fahrzeugs 105 einzustellen, usw.
  • Wenn der Computer bestimmt, dass keine Betätigung stattfinden soll, kehrt der Prozess 800 zum Block 805 zurück. Andernfalls veranlasst der Computer 110 im Block 810, dass das Fahrzeug 105 gemäß der spezifizierten Handlung betätigt wird. Der Computer 110 überträgt z. B. die geeigneten Steuersignale zu den entsprechenden Aktuatoren 120.
  • 9 ist ein Ablaufplan eines beispielhaften Prozesses 900 zum Trainieren des DNN 300. Die Blöcke des Prozesses 900 können durch den Computer 235 ausgeführt werden. Der Prozess 900 beginnt in einem Block 905, in dem der Computer 235 das DNN 300 trainiert. Das DNN 300 kann z. B. mit transformierten gefilterten Raumbereichsdaten trainiert werden, wie oben ausführlicher beschrieben worden ist.
  • Im Block 910 überträgt der Computer 235 das trainierte DNN 300 zu dem Fahrzeug 105. Der Computer 235 bestimmt im Block 815, ob zusätzliche Daten empfangen worden sind. Die Daten können z. B. Sensordaten sein, die der Computer 110 hochgeladen hat. Falls keine zusätzlichen Sensordaten hochgeladen worden sind, kehrt der Prozess 900 zum Block 915 zurück. Falls zusätzliche Sensordaten hochgeladen worden sind, kehrt der Prozess 900 zum Block 905 zurück, so dass das DNN 300 mit transformierten gefilterten Raumbereichsdaten basierend auf den hochgeladenen Sensordaten trainiert werden kann.
  • Die Beschreibung der vorliegenden Offenbarung ist lediglich beispielhafter Art, wobei vorgesehen ist, dass sich Variationen, die nicht vom Hauptpunkt der vorliegenden Offenbarung abweichen, innerhalb des Schutzumfangs der vorliegenden Offenbarung befinden. Derartige Variationen sind nicht als Abweichung vom Erfindungsgedanken und Schutzumfang der vorliegenden Offenbarung zu betrachten.
  • Im Allgemeinen können die beschriebenen Rechensysteme und/oder -vorrichtungen irgendeines einer Anzahl von Computerbetriebssystemen, einschließlich, aber keineswegs eingeschränkt auf, Versionen und/oder Varianten des Microsoft Automotive®-Betriebssystems, des Microsoft Windows®-Betriebssystems, des Unix-Betriebssystems (z. B. des Betriebssystems Solaris®, das von der Oracle Corporation in Redwood Shores, Kalifornien, vertrieben wird), des UNIX-Betriebssystems AIX, das von International Business Machines in Armonk, New York, vertrieben wird, des Betriebssystems Linux, der Betriebssysteme Mac OSX und iOS, die von Apple Inc. in Cupertino, Kalifornien, vertrieben werden, des Betriebssystems BlackBerry OS, das von Blackberry, Ltd., in Waterloo, Kanada, vertrieben wird, des Betriebssystems Android, das von Google, Inc. und der Open Handset Alliance entwickelt wurde, oder der QNX® CAR Platform für Infotainment, die von QNX Software Systems angeboten wird, verwenden. Beispiele der Rechenvorrichtungen enthalten ohne Einschränkung einen Bordcomputer des Fahrzeugs, einen Computer-Arbeitsplatzrechner, einen Server, einen Desktop-, Notebook-, Laptop- oder Handheld-Computer oder irgendein anderes Rechensystem und/oder irgendeine andere Vorrichtung.
  • Die Computer und Rechenvorrichtungen enthalten im Allgemeinen computerausführbare Anweisungen, wobei die Anweisungen durch eine oder mehrere Rechenvorrichtungen, wie z. B. jene, die oben aufgeführt sind, ausgeführt werden können. Die computerausführbaren Anweisungen können aus Computerprogrammen, die unter Verwendung verschiedener Programmiersprachen und/oder -techniken erzeugt worden sind, einschließlich, ohne Einschränkung und entweder allein oder in Kombination, Java™, C, C++, Matlab, Simulink, Stateflow, Visual Basic, Java Script, Perl, HTML, usw., kompiliert oder interpretiert werden. Einige dieser Anwendungen können auf einer virtuellen Maschine, wie z. B. der Java Virtual Machine, der virtuellen Dalvik-Maschine oder dergleichen, kompiliert und ausgeführt werden. 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 ein oder mehrere Prozesse einschließlich eines oder mehrerer der hier beschriebenen Prozesse ausgeführt werden. Derartige Anweisungen und andere Daten können unter Verwendung verschiedener computerlesbaren Medien gespeichert und übertragen werden. Eine Datei in einer Rechenvorrichtung ist im Allgemeinen eine Sammlung von Daten, die in einem computerlesbaren Medium, wie z. B. einem Speichermedium, einem Schreib-Lese-Speicher usw., gespeichert sind.
  • Der Speicher kann ein computerlesbares Medium (das außerdem als ein prozessorlesbares Medium bezeichnet wird) enthalten, das irgendein nicht transitorisches (z. B. greifbares) Medium umfasst, das am Bereitstellen von Daten (z. B. Anweisungen) teilnimmt, die durch einen Computer (z. B. durch einen Prozessor eines Computers) gelesen werden können. Ein derartiges Medium kann viele Formen annehmen, wie z. B., aber nicht eingeschränkt auf, nichtflüchtige Medien und flüchtige Medien. Nichtflüchtige Medien können z. B. optische oder magnetische Platten und anderen permanenten Speicher enthalten. Flüchtige Medien können z. B. einen dynamischen Schreib-Lese-Speicher (DRAM) enthalten, der typischerweise einen Hauptspeicher bildet. Derartige Anweisungen können durch ein oder mehrere Übertragungsmedien, einschließlich Koaxialkabel, Kupferdraht und Faseroptik, einschließlich der Drähte, die einen an einen Prozessor einer ECU gekoppelten Systembus umfassen, übertragen werden. Übliche Formen der computerlesbaren Medien enthalten z. B. eine Diskette, eine flexible Platte, eine Festplatte, ein Magnetband, irgendein anderes magnetisches Medium, einen CD-ROM, eine DVD, irgendein anderes optisches Medium, Lochkarten, ein Papierband, irgendein anderes physisches Medium mit Lochmustern, einen RAM, einen PROM, einen EPROM, einen FLASH-EEPROM, irgendeinen anderen Speicherchip oder irgendeine andere Speicherkassette oder irgendein anderes Medium, von dem ein Computer lesen kann.
  • Die Datenbanken, Datendepots oder andere hier beschriebene Datenspeicher können verschiedene Arten von Mechanismen zum Speichern, Zugreifen und Wiedergewinnen verschiedener Arten von Daten einschließlich einer hierarchischen Datenbank, eines Satzes von Dateien in einem Dateisystem, einer Anwendungsdatenbank in einem proprietären Format, eines relationalen Datenbankmanagementsystems (RDBMS) usw. enthalten. Jeder derartige Datenspeicher ist im Allgemeinen innerhalb einer Rechenvorrichtung enthalten, die ein Computerbetriebssystem, wie z. B. eines von jenen, die oben erwähnt worden sind, verwendet, wobei auf sie über ein Netz in irgendeiner oder mehreren verschiedener Arten zugegriffen wird. Ein Dateisystem kann von einem Computerbetriebssystem zugänglich sein und kann Dateien enthalten, die in verschiedenen Formaten gespeichert sind. Ein RDBMS verwendet zusätzlich zu einer Sprache zum Erzeugen, Speichern, Bearbeiten und Ausführen gespeicherter Prozeduren, wie z. B. der obenerwähnten PL/SQL-Sprache, im Allgemeinen die strukturierte Abfragesprache (SQL).
  • In einigen Beispielen können die Systemelemente als computerlesbare Anweisungen (z. B. Software) auf einer oder mehreren Rechenvorrichtungen (z. B. Servern, Personalcomputern usw.) implementiert sein, die in den ihnen zugeordneten computerlesbaren Medien (z. B. Platten, Speichern usw.) gespeichert sind. Ein Computerprogrammprodukt kann derartige Anweisungen umfassen, die in computerlesbaren Medien gespeichert sind, um die hier beschriebenen Funktionen auszuführen.
  • In dieser Anmeldung einschließlich der folgenden Definitionen kann der Begriff „Modul“ oder der Begriff „Controller“ durch den Begriff „Schaltung“ ersetzt werden. Der Begriff „Modul“ kann sich beziehen auf, Teil sein von oder enthalten: eine anwendungsspezifische integrierte Schaltung (ASIC); eine digitale, analoge oder gemischt analoge/digitale diskrete Schaltung; eine digitale, analoge oder gemischt analoge/digitale integrierte Schaltung; eine kombinatorische Logikschaltung; eine feldprogrammierbare Gatteranordnung (FPGA); eine Prozessorschaltung (gemeinsam benutzt, dediziert oder Gruppe), die Code ausführt; eine Speicherschaltung (gemeinsam benutzt, dediziert oder Gruppe), die den durch die Prozessorschaltung ausgeführten Code speichert; andere geeignete Hardware-Komponenten, die die beschriebene Funktionalität bereitstellen; oder eine Kombination aus einigen oder allen der Obigen, wie z. B. in einem System-auf-einem-Chip.
  • Das Modul kann eine oder mehrere Schnittstellenschaltungen enthalten. In einigen Beispielen können die Schnittstellenschaltungen drahtgebundene oder drahtlose Schnittstellen enthalten, die mit einem lokalen Netz (LAN), dem Internet, einem Weitbereichsnetz (WAN) oder Kombinationen davon verbunden sind. Die Funktionalität irgendeines gegebenen Moduls der vorliegenden Offenbarung kann zwischen mehreren Modulen verteilt sein, die über Schnittstellenschaltungen verbunden sind. Mehrere Module können z. B. einen Lastausgleich ermöglichen. In einem weiteren Beispiel kann ein Server-Modul (das außerdem als Fern- oder Cloud-Modul bekannt ist) etwas der Funktionalität im Auftrag eines Client-Moduls ausführen.
  • Hinsichtlich der hier beschriebenen Medien, Prozesse, Systeme, Verfahren, Heuristiken usw. sollte erkannt werden, dass, obwohl die Schritte derartiger Prozesse usw. als gemäß einer bestimmten geordneten Reihenfolge stattfindend beschrieben worden sind, derartige Prozesse mit den beschriebenen Schritten praktiziert werden können, die in einer anderen als der hier beschriebenen Reihenfolge ausgeführt werden. Es sollte ferner erkannt werden, dass bestimmte Schritte gleichzeitig ausgeführt werden können, dass andere Schritte hinzugefügt werden können oder dass bestimmte hier beschriebene Schritte weggelassen werden können. Mit anderen Worten, die Beschreibungen der Prozesse hier sind zum Veranschaulichen bestimmter Ausführungsformen vorgesehen und sollten keineswegs ausgelegt werden, um die Ansprüche einzuschränken.
  • Dementsprechend soll erkannt werden, dass die obige Beschreibung veranschaulichend und nicht einschränkend vorgesehen ist. Viele Ausführungsformen und Anwendungen mit Ausnahme der bereitgestellten Beispiele würden für die Fachleute auf dem Gebiet beim Lesen der obigen Beschreibung offensichtlich sein. Der Schutzumfang der Erfindung sollte nicht in Bezug auf die obige Beschreibung bestimmt werden, sondern sollte stattdessen in Bezug auf die beigefügten Ansprüche, zusammen mit dem vollen Schutzumfang der Äquivalente, zu denen derartige Ansprüche berechtigt sind, bestimmt werden. Es wird erwartet und ist beabsichtigt, dass zukünftige Entwicklungen in den hier erörterten Techniken stattfinden werden und dass die offenbarten Systeme und Verfahren in derartige zukünftige Ausführungsformen aufgenommen werden. Zusammenfassend sollte erkannt werden, dass die Erfindung modifizierbar und variierbar ist und nur durch die folgenden Ansprüche eingeschränkt ist.
  • Es ist vorgesehen, dass allen in den Ansprüchen verwendeten Begriffen ihre einfachen und gewöhnlichen Bedeutungen gegeben werden, wie sie durch die Fachleute auf dem Gebiet verstanden werden, wenn nicht hier explizit das Gegenteil angegeben ist. Insbesondere sollte die Verwendung der Artikel in der Einzahl, wie z. B. „ein/eine“, „der/die/das“, „besagter“ usw., so gelesen werden, dass sie eines oder mehrere der angegebenen Elemente darstellen, es sei denn, ein Anspruch stellt eine explizite Einschränkung auf das Gegenteil dar.

Claims (10)

  1. System, das einen Computer umfasst, der einen Prozessor und einen Speicher enthält, wobei der Speicher Anweisungen enthält, so dass der Prozessor programmiert ist: an einem neuronalen Netz frequenzgefilterte Raumbereichsdaten zu empfangen; eine durch das neuronale Netz erzeugten Ausgabe mit einer Verlustfunktion, die eine frequenzbasierte Merkmalskonsistenzbeschränkung enthält, zu vergleichen; und wenigstens ein Gewicht des neuronalen Netzes gemäß der Verlustfunktion zu aktualisieren.
  2. System nach Anspruch 1, wobei der Prozessor ferner programmiert ist, Daten aus einem Raumbereich unter Verwendung eines Prozesses einer Fourier-Transformation in einen Frequenzbereich zu transformieren.
  3. System nach Anspruch 2, wobei der Prozessor ferner programmiert ist, die Merkmale aus den transformierten Daten basierend auf einer vorgegebenen Frequenz zu filtern.
  4. System nach Anspruch 3, wobei der Prozessor ferner programmiert ist, die gefilterten transformierten Daten aus dem Frequenzbereich in den Raumbereich zu transformieren, um die frequenzgefilterten Raumbereichsdaten zu erzeugen.
  5. System nach Anspruch 2, wobei der Prozessor ferner programmiert ist, die Merkmale basierend auf einer Hochpassfrequenz und/oder einer Tiefpassfrequenz zu filtern.
  6. System nach Anspruch 2, wobei der Prozess einer Fourier-Transformation einen Prozess einer schnellen Fourier-Transformation umfasst.
  7. System nach Anspruch 1, wobei die durch das neuronale Netz erzeugte Ausgabe eine latente Darstellung der frequenzgefilterten Raumbereichsdaten umfasst.
  8. System nach Anspruch 1, wobei das neuronale Netz ein neuronales Faltungsnetz umfasst.
  9. System nach Anspruch 1, wobei die frequenzgefilterten Raumbereichsdaten einem innerhalb eines Sehfeldes einer Fahrzeugkamera aufgenommenen Bild entsprechen.
  10. System nach Anspruch 9, wobei das Bild ein Rot-Grün-Blau-Bild umfasst.
DE102022123358.8A 2021-11-24 2022-09-13 Frequenzbasierte merkmalsbeschränkung für ein neuronales netz Pending DE102022123358A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/535,122 US20230162480A1 (en) 2021-11-24 2021-11-24 Frequency-based feature constraint for a neural network
US17/535,122 2021-11-24

Publications (1)

Publication Number Publication Date
DE102022123358A1 true DE102022123358A1 (de) 2023-05-25

Family

ID=86227435

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102022123358.8A Pending DE102022123358A1 (de) 2021-11-24 2022-09-13 Frequenzbasierte merkmalsbeschränkung für ein neuronales netz

Country Status (3)

Country Link
US (1) US20230162480A1 (de)
CN (1) CN116168209A (de)
DE (1) DE102022123358A1 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116645365B (zh) * 2023-07-21 2023-11-17 锋睿领创(珠海)科技有限公司 基于频谱的石英玻璃检测方法、装置、设备及介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108717717B (zh) * 2018-04-23 2022-03-08 东南大学 基于卷积神经网络和迭代方法相结合的稀疏mri重建的方法
US20230205133A1 (en) * 2020-04-21 2023-06-29 Massachusetts Institute Of Technology Real-time Photorealistic 3D Holography With Deep Neural Networks
US20220101494A1 (en) * 2020-09-30 2022-03-31 Nvidia Corporation Fourier transform-based image synthesis using neural networks
CN115375536A (zh) * 2021-05-21 2022-11-22 北京字跳网络技术有限公司 图像处理方法及设备

Also Published As

Publication number Publication date
US20230162480A1 (en) 2023-05-25
CN116168209A (zh) 2023-05-26

Similar Documents

Publication Publication Date Title
DE102018121595B4 (de) Unbeaufsichtigtes anlernen von agenten für autonome fahranwendungen
DE102020119541A1 (de) Detektieren von fahrzeugbetriebsbedingungen
DE102021108470A1 (de) Realistische bildperspektiventransformation unter verwendung neuronaler netze
DE102020122357A1 (de) Fahrerbewusstseinserfassungssystem
DE102020103522A1 (de) Fahrzeugsteuerung durch fahrbahnreibung
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
DE102022123187A1 (de) Adaptives Reduzieren von neuronalen Netzsystemen
DE102021122407A1 (de) Segmentierung und klassifizierung von punktwolkendaten
DE102022123358A1 (de) Frequenzbasierte merkmalsbeschränkung für ein neuronales netz
DE102020122086A1 (de) Messen von vertrauen in tiefen neuronalen netzwerken
DE102022123257A1 (de) Selektives Ausscheiden der Merkmale für entgegenwirkende Robustheit neuronaler Netze
DE102021104178A1 (de) Dynamisch gerouteter felddiskriminator
DE102022125228A1 (de) Automatisiertes fahrsystem mit gewünschtem niveau der fahraggresivität
DE102023120330A1 (de) Neuronales strahlungsfeld für ein fahrzeug
DE102022132111A1 (de) Systeme und verfahren zum erfassen einer inferenzqualität eines tiefen neuronalen netzes unter verwendung von bild-/datenmanipulation ohne ground-truth-informationen
DE102022124848A1 (de) System und prozess unter verwendung homomorpher verschlüsselung, um parameter neuronaler netze für ein kraftfahrzeug zu sichern
DE102022125908A1 (de) Zielschlupfschätzung
DE102020127253A1 (de) Quantifizieren von fotorealismus in simulierten daten mit gan
DE102021107247A1 (de) Domänenübersetzungsnetzwerk zur durchführung einer bildübersetzung
US20220188621A1 (en) Generative domain adaptation in a neural network
DE102022100545A1 (de) Verbesserte objekterkennung
DE102022122657A1 (de) Validierungssystem für neuronale Netze
DE102021104738A1 (de) Verfahren zum Betrieb eines Kraftfahrzeugs

Legal Events

Date Code Title Description
R012 Request for examination validly filed