DE102021133340A1 - Modalitätsübergreifendes aktives lernen zur objekterkennung - Google Patents

Modalitätsübergreifendes aktives lernen zur objekterkennung Download PDF

Info

Publication number
DE102021133340A1
DE102021133340A1 DE102021133340.7A DE102021133340A DE102021133340A1 DE 102021133340 A1 DE102021133340 A1 DE 102021133340A1 DE 102021133340 A DE102021133340 A DE 102021133340A DE 102021133340 A1 DE102021133340 A1 DE 102021133340A1
Authority
DE
Germany
Prior art keywords
bounding boxes
predicted bounding
inconsistencies
data
predicted
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
DE102021133340.7A
Other languages
English (en)
Inventor
Kok Seang Tan
Holger Caesar
Oscar Olof Beijbom
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.)
Motional AD LLC
Original Assignee
Motional AD 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 Motional AD LLC filed Critical Motional AD LLC
Publication of DE102021133340A1 publication Critical patent/DE102021133340A1/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
    • 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
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • 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
    • G06N20/00Machine learning
    • 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
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/003Reconstruction from projections, e.g. tomography
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/25Determination of region of interest [ROI] or a volume of interest [VOI]
    • 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/778Active pattern-learning, e.g. online learning of image or video features
    • 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/80Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
    • 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/30248Vehicle exterior or interior
    • G06T2207/30252Vehicle exterior; Vicinity of vehicle
    • G06T2207/30261Obstacle
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/12Bounding box

Landscapes

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

Abstract

Unter anderem werden Techniken für das modalitätsübergreifende aktive Lernen zur Objekterkennung beschrieben. In einem Beispiel wird ein erster Satz vorhergesagter Begrenzungsrahmen und ein zweiter Satz vorhergesagter Begrenzungsrahmen erzeugt. Der erste Satz vorhergesagter Begrenzungsrahmen und der zweite Satz vorhergesagter Begrenzungsrahmen werden in eine gleiche Darstellung projiziert. Die Projektionen werden gefiltert, wobei vorhergesagte Begrenzungsrahmen, die einen maximalen Vertrauenswert erfüllen, für Inkonsistenzberechnungen ausgewählt werden. Über die projizierten Begrenzungsrahmen werden basierend auf einer Filterung der Projektionen Inkonsistenzen berechnet. Basierend auf den berechneten Inkonsistenzen wird eine informative Szene extrahiert. Anhand der informativen Szenen wird ein erstes neuronales Netz zur Objekterkennung oder ein zweites neuronales Netz zur Objekterkennung trainiert.

Description

  • GEBIET DER ERFINDUNG
  • Diese Beschreibung bezieht sich auf modalitätsübergreifendes aktives Lernen zur Objekterkennung.
  • HINTERGRUND
  • Aktives Lernen ist eine Form des Maschinenlernens, bei der ein System einen Lehrer nach Markierungen abfragen kann, die auf neue Datenpunkte angewendet werden. Oft ist eine große Menge an unmarkierten Daten verfügbar, jedoch ist eine manuelle Markierung der Daten kostspielig. Durch aktives Lernen können Abfragen durch das aktive Lernsystem gestellt werden, um Markierungen für die Daten zu erhalten. Aktives Lernen ist somit eine iterative, überwachte Lerntechnik, bei der Eingabedaten analysiert und anhand einer abgeleiteten Funktion markiert werden und die abgeleitete Funktion zum Markieren neuer Daten verwendet wird.
  • Figurenliste
    • 1 zeigt ein Beispiel für ein autonomes Fahrzeug (AF) mit autonomer Fähigkeit.
    • 2 zeigt ein Beispiel für eine „Cloud“-Rechenumgebung.
    • 3 zeigt ein Computersystem.
    • 4 zeigt ein Beispiel für die Architektur eines AF.
    • 5 zeigt ein Beispiel für Eingaben und Ausgaben, die durch ein Wahrnehmungssystem verwendet werden können.
    • 6 zeigt ein Beispiel für ein LiDAR-System.
    • 7 zeigt das LiDAR-System im Betrieb.
    • 8 zeigt die Funktionsweise des LiDAR-Systems mit zusätzlichen Details.
    • 9 zeigt ein Blockdiagramm der Zusammenhänge zwischen Eingaben und Ausgaben eines Planungssystems.
    • 10 zeigt einen gerichteten Graphen, der bei der Wegplanung verwendet wird.
    • 11 zeigt ein Blockdiagramm der Eingaben und Ausgaben eines Steuerungssystems.
    • 12 zeigt ein Blockdiagramm der Eingaben, Ausgaben und Komponenten einer Steuervorrichtung.
    • 13 zeigt ein System 1300, das modalitätsübergreifendes aktives Lernen zur Objekterkennung ermöglicht.
    • 14A ist eine Frontalansichtdarstellung einer Umgebung.
    • 14B ist eine Vogelperspektivedarstellung einer Umgebung.
    • 14C ist eine Heatmap-Darstellung der Umgebung als Raster.
    • 15 ist ein Prozessflussdiagramm eines Prozesses 1500 für modalitätsübergreifendes aktives Lernen zur Objekterkennung.
  • DETAILLIERTE BESCHREIBUNG
  • In der folgenden Beschreibung werden zwecks Erklärung zahlreiche spezifische Details dargelegt, um ein gründliches Verständnis der vorliegenden Offenbarung zu ermöglichen. Es wird jedoch offensichtlich, dass die vorliegende Offenbarung auch ohne diese spezifischen Details umgesetzt werden kann. In anderen Fällen werden bekannte Strukturen und Vorrichtungen in Blockdiagrammform veranschaulicht, um eine unnötige Verschleierung der vorliegenden Offenbarung zu vermeiden.
  • Zur leichteren Beschreibung sind in den Zeichnungen spezifische Anordnungen oder Reihenfolgen von schematischen Elementen abgebildet, wie zum Beispiel solche, die Vorrichtungen, Module, Systeme, Anweisungsblöcke und Datenelemente darstellen. Der Fachmann sollte jedoch verstehen, dass die spezifische Reihenfolge oder Anordnung der schematischen Elemente in den Zeichnungen nicht bedeuten soll, dass eine bestimmte Reihenfolge oder Sequenz der Bearbeitung oder eine Trennung der Prozesse erforderlich ist. Ferner soll die Aufnahme eines schematischen Elements in eine Zeichnung nicht bedeuten, dass dieses Element in allen Ausführungsformen erforderlich ist oder dass die durch dieses Element dargestellten Merkmale in einigen Ausführungsformen nicht in andere Elemente aufgenommen oder mit anderen Elementen kombiniert werden dürfen.
  • Ferner ist in den Zeichnungen, in denen Verbindungselemente, wie beispielsweise durchgezogene oder gestrichelte Linien oder Pfeile verwendet werden, um eine Verbindung, Beziehung oder Verknüpfung zwischen oder unter zwei oder mehreren anderen schematischen Elementen darzustellen, das Fehlen solcher Verbindungselemente nicht so zu verstehen, dass keine Verbindung, Beziehung oder Verknüpfung bestehen kann. Mit anderen Worten werden einige Verbindungen, Zusammenhänge oder Verknüpfungen zwischen Elementen in den Zeichnungen nicht gezeigt, um die Offenbarung nicht zu verschleiern. Zur leichteren Veranschaulichung wird außerdem ein einzelnes Verbindungselement verwendet, um mehrere Verbindungen, Zusammenhänge oder Verknüpfungen zwischen Elementen darzustellen. Wenn zum Beispiel ein Verbindungselement eine Kommunikation von Signalen, Daten oder Anweisungen darstellt, sollte der Fachmann verstehen, dass ein solches Element einen oder mehrere Signalwege (z. B. einen Bus) darstellt, je nachdem, was erforderlich ist, um die Kommunikation zu bewirken.
  • Im Folgenden wird im Detail Bezug auf Ausführungsformen genommen, deren Beispiele in den begleitenden Zeichnungen veranschaulicht sind. In der folgenden detaillierten Beschreibung werden zahlreiche spezifische Details dargelegt, um ein gründliches Verständnis der verschiedenen beschriebenen Ausführungsformen zu ermöglichen. Jedoch wird für einen durchschnittlichen Fachmann deutlich sein, dass die verschiedenen beschriebenen Ausführungsformen auch ohne diese spezifischen Details umgesetzt werden können. In anderen Fällen sind allgemein bekannte Verfahren, Vorgehensweisen, Komponenten, Schaltungen und Netzwerke nicht ausführlich beschrieben, um eine unnötige Verschleierung der Aspekte der Ausführungsformen zu vermeiden.
  • Im Folgenden werden mehrere Merkmale beschrieben, die jeweils unabhängig voneinander oder in einer beliebigen Kombination anderer Merkmale verwendet werden können. Allerdings kann es sein, dass ein einzelnes Merkmal keines der oben erörterten Probleme oder nur eines der oben erörterten Probleme anspricht. Einige der oben erörterten Probleme werden möglicherweise durch keines der hier beschriebenen Merkmale vollständig angesprochen. Auch wenn Überschriften angegeben sind, können Informationen, die sich auf eine bestimmte Überschrift beziehen, aber nicht in dem Abschnitt mit dieser Überschrift zu finden sind, auch an anderer Stelle in dieser Beschreibung gefunden werden. Ausführungsformen werden hier gemäß der folgenden Übersicht beschrieben:
    1. 1. Allgemeiner Überblick
    2. 2. Systemübersicht
    3. 3. AF-Architektur
    4. 4. AF-Eingaben
    5. 5. AF-Planung
    6. 6. AF-Steuerung
    7. 7. System für modalitätsübergreifendes aktives Lernen
    8. 8. Prozess für modalitätsübergreifendes aktives Lernen
  • Allgemeiner Überblick
  • Ein Fahrzeug (z. B. ein autonomes Fahrzeug) verfügt in der Regel über mehrere Sensoren, die an verschiedenen Stellen des Fahrzeugs angebracht sind. Die Daten aus diesen Sensoren werden zur Objekterkennung verwendet. Bei der Objekterkennung werden Sensordaten analysiert, um die Sensordaten mit Vertrauenswerten zu markieren, die das Vorhandensein einer bestimmten Objektklasseninstanz innerhalb eines Bereichs der durch einen Sensor erfassten Daten angeben. Beispielsweise werden die Sensordaten in einen oder mehrere Begrenzungsrahmen eingeteilt, und jeder Rahmen wird mit der Wahrscheinlichkeit markiert, dass der Begrenzungsrahmen eine bestimmte Objektklasse enthält. Zu den Objekten gehören unter anderem Fußgänger, Fahrzeuge, Fahrräder und dergleichen. Aktives Lernen wird für eine Vielzahl von Sensormodalitäten implementiert, um informative Daten zu bestimmen, die durch Objekterkennungstechniken ausgegeben werden. Modalitätsübergreifende Inkonsistenzen in den Ausgabedaten werden berechnet, und eine modalitätsübergreifende Inkonsistenz wird verwendet, um die erfasste Szene als informative Szene zu identifizieren. Die Inkonsistenzen werden gemäß den bekannten Stärken und Schwächen der jeweiligen Modalität gewichtet.
  • Zu den Vorteilen dieser Techniken gehört die generische Implementierung eines Blackbox-Ansatzes, um zu bestimmen, welche Szenen informativ sind und welche nicht. Die hier vorgestellten Techniken können als Ergänzung zu den bestehenden technischen Entwicklungen in den Bereichen Aufprallerkennung, allgemeine Objekterkennung, Anomalieerkennung und Erkennung von Sensorfehlern verwendet werden. Darüber hinaus umfassen die vorliegenden Techniken jedes Netz, das eine zweidimensionale (2D) oder dreidimensionale (3D) Objekterkennung durchführt, einschließlich u. a. Kamera-, Radar- und LiDAR-Objekterkennungsnetzen. Durch Implementierung der hier beschriebenen Systeme und Techniken können Datenmengen informativer gestaltet werden, sodass die Systeme, in denen sie verwendet werden, effizienter betrieben werden können.
  • Systemübersicht
  • 1 zeigt ein Beispiel für ein AF mit autonomer Fähigkeit.
  • Der Begriff „autonome Fähigkeit“ bezieht sich hier auf eine Funktion, ein Merkmal oder eine Einrichtung, die es ermöglicht, ein Fahrzeug teilweise oder vollständig ohne menschliches Eingreifen in Echtzeit zu betreiben, einschließlich, aber nicht beschränkt auf vollständig autonome Fahrzeuge, hochgradig autonome Fahrzeuge und bedingt autonome Fahrzeuge.
  • Ein autonomes Fahrzeug (AF) ist hier ein Fahrzeug, das über autonome Fähigkeiten verfügt.
  • Wie hier verwendet, umfasst „Fahrzeug“ Transportmittel für den Transport von Gütern oder Personen. Zum Beispiel Autos, Busse, Züge, Flugzeuge, Drohnen, Lastwagen, Boote, Schiffe, Tauchboote, Lenkflugkörper usw. Ein fahrerloses Kraftfahrzeug ist ein Beispiel für ein Fahrzeug.
  • Wie hier verwendet, bezieht sich „Bewegungsbahn“ auf einen Weg oder eine Route zum Navigieren eines AF von einem ersten räumlich-zeitlichen Ort zu einem zweiten raumzeitlichen Ort. In einer Ausführungsform wird der erste raumzeitliche Ort als Anfangs- oder Startort und der zweite raumzeitliche Ort als Bestimmungsort, Endort, Ziel, Zielposition oder Zielort bezeichnet. In einigen Beispielen besteht eine Bewegungsbahn aus einem oder mehreren Segmenten (z. B. Straßenabschnitten), und jedes Segment besteht aus einem oder mehreren Blöcken (z. B. Abschnitten eines Fahrstreifens oder einer Kreuzung/Einmündung). In einer Ausführungsform entsprechen die raumzeitlichen Orte den Orten der realen Welt. Die raumzeitlichen Orte sind zum Beispiel Abhol- oder Absetzorte zum Abholen oder Absetzen von Personen oder Gütern.
  • Wie hier verwendet, umfasst „Sensor(en)“ eine oder mehrere Hardwarekomponenten, die Informationen über die Umgebung rund um den Sensor erfassen. Einige der Hardwarekomponenten können sensorische Komponenten (z. B. Bildsensoren, biometrische Sensoren), Sende- und/oder Empfangskomponenten (z. B. Laser- oder Hochfrequenzwellensender und -empfänger), elektronische Komponenten wie Analog-Digital-Wandler, eine Datenspeichervorrichtung (z. B. ein RAM und/oder ein nichtflüchtiger Speicher), Software- oder Firmwarekomponenten und Datenverarbeitungskomponenten wie eine ASIC (anwendungsspezifische integrierte Schaltung), einen Mikroprozessor und/oder einen Mikrocontroller umfassen.
  • Wie hier verwendet, ist eine „Szeneriebeschreibung“ eine Datenstruktur (z. B. Liste) oder ein Datenstrom, der ein oder mehrere klassifizierte oder markierte Objekte enthält, die durch einen oder mehrere Sensoren an dem AF-Fahrzeug erkannt oder durch eine AF-externe Quelle bereitgestellt werden.
  • Wie hier verwendet, ist eine „Straße“ ein physischer Bereich, der durch ein Fahrzeug befahren werden kann und einem benannten Verkehrsweg (z. B. Stadtstraße, Autobahn usw.) oder einem unbenannten Verkehrsweg (z. B. eine Einfahrt an einem Haus oder Bürogebäude, ein Abschnitt eines Parkplatzes, ein Abschnitt eines leeren Grundstücks, ein Feldweg in einem ländlichen Gebiet usw.) entsprechen kann. Da einige Fahrzeuge (z. B. Allradlastwagen, Geländewagen, usw.) in der Lage sind, eine Vielzahl physischer Bereiche zu befahren, die nicht speziell für den Fahrzeugverkehr angepasst sind, kann eine „Straße“ ein physischer Bereich sein, der nicht formell durch eine Gemeinde oder andere Regierungs- oder Verwaltungsbehörde als Verkehrsweg definiert ist.
  • Wie hier verwendet, ist ein „Fahrstreifen“ ein Abschnitt einer Straße, der durch ein Fahrzeug befahren werden kann. Ein Fahrstreifen wird mitunter basierend auf Fahrstreifenmarkierungen identifiziert. Beispielsweise kann ein „Fahrstreifen“ dem größten Teil oder der Gesamtheit des Zwischenraums zwischen den Fahrstreifenmarkierungen oder nur einem Teil (z. B. weniger als 50 %) des Zwischenraums zwischen den Fahrstreifenmarkierungen entsprechen. Zum Beispiel könnte eine Straße mit weit auseinanderliegenden Fahrstreifenmarkierungen zwei oder mehr Fahrzeuge zwischen den Markierungen aufnehmen, sodass ein Fahrzeug das andere überholen kann, ohne die Fahrstreifenmarkierungen zu überqueren, und könnte daher so interpretiert werden, dass ein Fahrstreifen schmaler als der Zwischenraum zwischen den Fahrstreifenmarkierungen ist oder dass zwei Fahrstreifen zwischen den Fahrstreifenmarkierungen liegen. Ein Fahrstreifen könnte auch bei Fehlen von Fahrstreifenmarkierungen interpretiert werden. Beispielsweise kann ein Fahrstreifen basierend auf physischen Merkmalen einer Umgebung definiert werden, z. B. durch Felsen und Bäume entlang einer Durchgangsstraße in einem ländlichen Gebiet oder z. B. durch natürliche Hindernisse, die in einem unerschlossenen Gebiet zu vermeiden sind. Ein Fahrstreifen könnte auch unabhängig von Fahrstreifenmarkierungen oder physischen Merkmalen interpretiert werden. Beispielsweise könnte ein Fahrstreifen basierend auf einem beliebigen, hindernisfreien Weg in einem Gebiet interpretiert werden, in dem ansonsten Merkmale fehlen, die als Fahrstreifenbegrenzungen interpretiert werden würden. In einem Beispielszenario könnte ein AF einen Fahrstreifen durch einen hindernisfreien Abschnitt eines Feldes oder einer leeren Geländefläche interpretieren. In einem anderen Beispielszenario könnte ein AF einen Fahrstreifen durch eine breite (z. B. breit genug für zwei oder mehr Fahrstreifen) Straße interpretieren, die keine Fahrstreifenmarkierungen aufweist. In diesem Szenario könnte das AF Informationen über den Fahrstreifen an andere AFs übermitteln, sodass die anderen AFs die gleichen Fahrstreifeninformationen verwenden können, um die Wegplanung untereinander zu koordinieren.
  • Der Begriff „Over-the-Air(OTA)-Client“ umfasst jedes AF oder jede elektronische Vorrichtung (z. B. Computer, Steuervorrichtung, IoT-Vorrichtung, elektronisches Steuergerät (ECU)), die in ein AF eingebettet, mit einem AF gekoppelt oder in Kommunikation mit einem AF steht.
  • Der Begriff „Over-the-Air(OTA)-Aktualisierung“ bezeichnet jede Aktualisierung, Änderung, Löschung oder Hinzufügung von Software, Firmware, Daten oder Konfigurationseinstellungen oder jede Kombination davon, die an einen OTA-Client unter Verwendung firmeneigener und/oder standardisierter drahtloser Kommunikationstechnologie geliefert wird, einschließlich, aber nicht beschränkt auf: zellulare Mobilkommunikation (z. B. 2G, 3G, 4G, 5G), drahtlose Funknetze (z. B. WLAN) und/oder Satelliten-Internet.
  • Der Begriff „Edge-Knoten“ bezeichnet ein oder mehrere mit einem Netz gekoppelte Edge-Vorrichtungen, die ein Portal für die Kommunikation mit AFs bieten und mit anderen Edge-Knoten und einer Cloud-basierten Rechenplattform kommunizieren können, um OTA Aktualisierungen zu planen und an OTA-Clients zu liefern.
  • Der Begriff „Edge-Vorrichtung“ bedeutet eine Vorrichtung, die einen Edge-Knoten implementiert und einen physischen drahtlosen Zugangspunkt (AP) in Kernnetze von Unternehmen oder Dienstanbietern (z. B. VERIZON, AT&T) bereitstellt. Beispiele für Edge-Vorrichtungen beinhalten, sind aber nicht beschränkt auf: Computer, Controller, Sender, Router, Routing-Switches, integrierte Zugangsgeräte (IADs), Multiplexer, Zugangsgeräte für Großstadtnetze (MANs) und Weitverkehrsnetze (WANs).
  • „Eine oder mehrere‟ umfasst eine Funktion, die durch ein Element ausgeführt wird, eine Funktion, die durch mehr als ein Element ausgeführt wird, z. B. auf verteilte Weise, wobei mehrere Funktionen durch ein Element ausgeführt werden, mehrere Funktionen durch mehrere Elemente ausgeführt werden, oder eine beliebige Kombination des oben Genannten.
  • Es versteht sich auch, dass die Begriffe „erste“, „zweite“ usw. hier zwar in einigen Fällen zur Beschreibung verschiedener Elemente verwendet werden, diese Elemente jedoch nicht durch diese Begriffe eingeschränkt werden sollten. Diese Begriffe werden nur verwendet, um ein Element von einem anderen zu unterscheiden. Beispielsweise könnte ein erster Kontakt als ein zweiter Kontakt bezeichnet sein, und in ähnlicher Weise könnte ein zweiter Kontakt als ein dritter Kontakt bezeichnet sein, ohne vom Schutzbereich der verschiedenen beschriebenen Ausführungsformen abzuweichen. Der erste Kontakt und der zweite Kontakt sind beide Kontakte, aber sie sind nicht derselbe Kontakt.
  • Die Terminologie, die bei der Beschreibung der verschiedenen hier beschriebenen Ausführungsformen verwendet wird, dient nur der Beschreibung bestimmter Ausführungsformen und ist nicht als einschränkend beabsichtigt. Bei der Beschreibung der verschiedenen beschriebenen Ausführungsformen und der beigefügten Ansprüche sollen die Singularformen „ein“, „eine“ sowie „der“, „die“, „das“ auch die Pluralformen einschließen, sofern der Zusammenhang nicht eindeutig etwas anderes vorgibt. Es versteht sich auch, dass der Begriff „und/oder“ wie hier verwendet sich auf alle möglichen Kombinationen eines oder mehrerer der zugehörigen aufgelisteten Punkte bezieht und diese mit einschließt. Es versteht sich ferner, dass die Begriffe „enthalten“, „einschließlich“, „umfassen“, und/oder „umfassend“ bei Verwendung in dieser Beschreibung das Vorhandensein angegebener Merkmale, Ganzzahlen, Schritte, Vorgänge, Elemente und/oder Komponenten davon angibt, aber nicht das Vorhandensein oder die Hinzufügung eines/einer oder mehrerer anderer Merkmale, Ganzzahlen, Schritte, Vorgänge, Elemente, Komponenten und/oder Gruppen davon ausschließt.
  • Wie hier verwendet, ist der Begriff „falls“ gegebenenfalls so auszulegen, dass er je nach Zusammenhang „wenn“ oder „bei“ oder „als Reaktion auf das Ermitteln“ oder „als Reaktion auf das Erkennen“ bedeutet. In ähnlicher Weise ist die Formulierung „falls ermittelt wird“ oder „falls [ein angegebener Zustand oder ein Ereignis] erkannt wird“ je nach Zusammenhang gegebenenfalls so auszulegen, dass sie „bei Ermitteln“ oder „als Reaktion auf das Ermitteln“ oder „bei Erkennen [des angegebenen Zustands oder Ereignisses]“ oder „als Reaktion auf das Erkennen [des angegebenen Zustands oder Ereignisses]“ bedeutet.
  • Einige Ausführungsformen der vorliegenden Offenbarung werden hier in Verbindung mit einem Schwellenwert beschrieben. Wie hier beschrieben, kann sich das Erfüllen eines Schwellenwertes darauf beziehen, dass ein Wert größer als der Schwellenwert, mehr als der Schwellenwert, höher als der Schwellenwert, größer als oder gleich dem Schwellenwert, kleiner als der Schwellenwert, weniger als der Schwellenwert, niedriger als der Schwellenwert, kleiner als oder gleich dem Schwellenwert, gleich dem Schwellenwert und/oder dergleichen ist.
  • Wie hier verwendet, bezieht sich ein AF-System auf das AF zusammen mit der Anordnung von Hardware, Software, gespeicherten Daten und in Echtzeit erzeugten Daten, die den Betrieb des AF unterstützen. In einer Ausführungsform ist das AF-System in das AF integriert. In einer Ausführungsform ist das AF-System über mehrere Orte verteilt. Zum Beispiel ist ein Teil der Software des AF-Systems auf einer Cloud-Rechenumgebung implementiert, ähnlich der Cloud-Rechenumgebung 200, die im Folgenden mit Bezug auf 2 beschrieben wird.
  • Allgemein beschreibt dieses Dokument Technologien, die auf alle Fahrzeuge anwendbar sind, die über eine oder mehrere autonome Fähigkeiten verfügen, einschließlich vollständiger AFs, hochgradiger AFs und bedingter AFs, wie z. B. sogenannte Stufe-5-, Stufe-4- und Stufe-3-Fahrzeuge (siehe SAE International Standard J3016: Taxonomy and Definitions for Terms Related to On-Road Motor Vehicle Automated Driving Systems (Taxonomie und Definitionen für Begriffe im Zusammenhang mit automatischen Straßen-Kraftfahrzeug-Fahrsystemen), die durch Verweis in ihrer Gesamtheit übernommen wurde, für weitere Einzelheiten über die Klassifizierung von Autonomiegraden in Fahrzeugen). Die in diesem Dokument beschriebenen Technologien sind auch auf teilautonome Fahrzeuge und fahrerunterstützte Fahrzeuge anwendbar, wie z. B. sogenannte Stufe-2- und Stufe-1-Fahrzeuge (siehe SAE International's Standard J3016: Taxonomy and Definitions for Terms Related to On-Road Motor Vehicle Automated Driving Systems (Taxonomie und Definitionen für Begriffe im Zusammenhang mit automatisierten Straßen-Kraftfahrzeug-Fahrsystemen)). In einer Ausführungsform können eines oder mehrere der Fahrzeugsysteme der Stufen 1, 2, 3, 4 und 5 unter bestimmten Betriebsbedingungen basierend auf dem Verarbeiten von Sensoreingaben bestimmte Fahrzeugfunktionen (z. B. Lenken, Bremsen und Verwenden von Karten) automatisieren. Die in diesem Dokument beschriebenen Technologien können Fahrzeugen auf allen Stufen zugute kommen, von vollständigen AFs bis hin zu durch Menschen betriebenen Fahrzeugen.
  • AFs haben Vorteile gegenüber Fahrzeugen, die einen menschlichen Fahrer erfordern. Ein Vorteil ist die Sicherheit. Zum Beispiel gab es in den Vereinigten Staaten im Jahr 2016 6 Millionen Autounfälle, 2,4 Millionen Verletzte, 40.000 Tote und 13 Millionen Unfallfahrzeuge, deren Kosten für die Gesellschaft auf über 910 Milliarden Dollar geschätzt werden. Die Zahl der Verkehrstoten pro 100 Millionen gefahrener Meilen ist in den USA von 1965 bis 2015 von ca. sechs auf ca. eins zurückgegangen, was zum Teil auf zusätzliche Sicherheitsmaßnahmen in den Fahrzeugen zurückzuführen ist. Beispielsweise wird davon ausgegangen, dass eine zusätzliche halbe Sekunde, in der vor einem Zusammenstoß gewarnt wird, 60 % der Auffahrunfälle abmildert. Allerdings haben passive Sicherheitsmerkmale (z. B. Sicherheitsgurte, Airbags) bei der Verbesserung dieser Zahl wahrscheinlich ihre Grenze erreicht. Daher sind aktive Sicherheitsmaßnahmen, wie die automatisierte Steuerung eines Fahrzeugs, der wahrscheinlich nächste Schritt zur Verbesserung dieser Statistiken. Da davon ausgegangen wird, dass bei 95 % der Unfälle menschliche Fahrer für ein kritisches Ereignis vor dem Unfall verantwortlich sind, werden automatisierte Fahrsysteme wahrscheinlich bessere Sicherheitsergebnisse erzielen, z. B. indem sie kritische Situationen besser als Menschen zuverlässig erkennen und vermeiden, bessere Entscheidungen treffen, Verkehrsgesetze befolgen und zukünftige Ereignisse besser vorhersagen als Menschen und ein Fahrzeug besser als Menschen zuverlässig steuern.
  • Mit Bezug auf 1 betreibt ein AF-System 120 das System 100 entlang einer Bewegungsbahn 198 durch eine Umgebung 190 bis zu einem Zielort 199 (mitunter auch als Endort bezeichnet), wobei Objekte (z. B. natürliche Hindernisse 191, Fahrzeuge 193, Fußgänger 192, Radfahrer und andere Hindernisse) vermieden und Straßenregeln (z. B. Betriebsregeln oder Fahrpräferenzen) befolgt werden.
  • In einer Ausführungsform beinhaltet das AF-System 120 Vorrichtungen 101, die dazu eingerichtet sind, Betriebsbefehle aus den Computerprozessoren 146 zu empfangen und darauf zu reagieren. Wir verwenden den Begriff „Betriebsbefehl“, um eine ausführbare Anweisung (oder einen Satz von Anweisungen) zu bezeichnen, die ein Fahrzeug veranlasst, eine Maßnahme (z. B. ein Fahrmanöver) durchzuführen. Betriebsbefehle können, ohne Einschränkung, Anweisungen für ein Fahrzeug enthalten, vorwärts zu fahren, die Vorwärtsfahrt zu unterbrechen, rückwärts zu fahren, die Rückwärtsfahrt zu unterbrechen, zu beschleunigen, abzubremsen, eine Linkskurve zu fahren und eine Rechtskurve zu fahren. In einer Ausführungsform ähneln die Computerprozessoren 146 dem nachfolgend mit Bezug auf 3 beschriebenen Prozessor 304. Beispiele für Vorrichtungen 101 beinhalten eine Lenksteuerung 102, Bremsen 103, Gangschaltung, Gaspedal oder andere Beschleunigungssteuerungsmechanismen, Scheibenwischer, Seitentürschlösser, Fenstersteuervorrichtungen und Blinker.
  • In einer Ausführungsform umfasst das AF-System 120 Sensoren 121 zur Messung oder Ableitung von Zuständen oder Bedingungen des Fahrzeugs 100, wie z. B. die Position, die Linear- und Winkelgeschwindigkeit und -beschleunigung und die Fahrtrichtung des AF (z. B. eine Ausrichtung des vorderen Endes des Fahrzeug 100). Beispiele für Sensoren 121 sind GPS, Trägheitsmesseinheiten (IMU), die sowohl lineare Fahrzeugbeschleunigungen als auch Winkelbeschleunigungen messen, Raddrehzahlsensoren zum Messen oder Schätzen von Radschlupfverhältnissen, Radbremsdruck- oder Bremsmomentsensoren, Motordrehmoment- oder Raddrehmomentsensoren sowie Lenkwinkel- und Winkelgeschwindigkeitssensoren.
  • In einer Ausführungsform enthalten die Sensoren 121 auch Sensoren zum Erfassen oder Messen von Eigenschaften der Umgebung des AF. Zum Beispiel Monokular- oder Stereo-Videokameras 122 im sichtbaren Licht-, Infrarot- oder Wärmespektrum (oder beiden Spektren), LiDAR 123, RADAR, Ultraschallsensoren, Time-of-Flight(TOF)-Tiefensensoren, Geschwindigkeitssensoren, Temperatursensoren, Feuchtigkeitssensoren und Niederschlagssensoren.
  • In einer Ausführungsform umfasst das AF-System 120 eine Datenspeichereinheit 142 und einen Speicher 144 zum Speichern von Maschinenanweisungen im Zusammenhang mit Computerprozessoren 146 oder durch Sensoren 121 gesammelten Daten. In einer Ausführungsform ähnelt die Datenspeichereinheit 142 dem ROM 308 oder der Speichervorrichtung 310, die nachfolgend mit Bezug auf 3 beschrieben werden. In einer Ausführungsform ähnelt der Speicher 144 dem nachfolgend beschriebenen Hauptspeicher 306. In einer Ausführungsform speichern die Datenspeichereinheit 142 und der Speicher 144 historische, Echtzeit- und/oder vorausschauende Informationen über die Umgebung 190. In einer Ausführungsform umfassen die gespeicherten Informationen Karten, Fahrleistungen, Aktualisierungen zu Verkehrsstaus oder Wetterbedingungen. In einer Ausführungsform werden Daten, die sich auf die Umgebung 190 beziehen, über einen Kommunikationskanal aus einer entfernt gelegenen Datenbank 134 an das Fahrzeug 100 übertragen.
  • In einer Ausführungsform umfasst das AF-System 120 Kommunikationsvorrichtungen 140 zum Übermitteln gemessener oder abgeleiteter Eigenschaften von Zuständen und Bedingungen anderer Fahrzeuge wie z. B. Positionen, Linear- und Winkelgeschwindigkeiten, Linear- und Winkelbeschleunigungen sowie Linear- und Winkelfahrtrichtungen an das Fahrzeug 100. Diese Vorrichtungen umfassen Fahrzeug-zu-Fahrzeug(V2V)- und Fahrzeug-zu-Infrastruktur(V2I)-Kommunikationsvorrichtungen und Vorrichtungen für drahtlose Kommunikation über Punkt-zu-Punkt- oder Ad-hoc-Netzwerke oder beides. In einer Ausführungsform kommunizieren die Kommunikationsvorrichtungen 140 über das elektromagnetische Spektrum (einschließlich Funk- und optische Kommunikation) oder andere Medien (z. B. Luft- und akustische Medien). Eine Kombination von Fahrzeug-zu-Fahrzeug(V2V)-Kommunikation, Fahrzeug-zu-Infrastruktur(V2I)-Kommunikation (und in einigen Ausführungsformen eine oder mehrere andere Kommunikationsarten) wird mitunter als Fahrzeug-zu-alles (V2X)-Kommunikation bezeichnet. Die V2X-Kommunikation entspricht in der Regel einem oder mehreren Kommunikationsstandards für die Kommunikation mit, zwischen und unter AFs.
  • In einer Ausführungsform enthalten die Kommunikationsvorrichtungen 140 Kommunikationsschnittstellen. Zum Beispiel drahtgebundene, drahtlose, WiMAX-, Wi-Fi-, Bluetooth-, Satelliten-, Zellular-, optische, Nahfeld-, Infrarot- oder Funkschnittstellen. Die Kommunikationsschnittstellen übertragen Daten aus einer entfernt gelegenen Datenbank 134 an das AF-System 120. In einer Ausführungsform ist die entfernt gelegene Datenbank 134 wie in 2 beschrieben in eine Cloud-Rechenumgebung 200 eingebettet. Die Kommunikationsvorrichtungen 140 übertragen die aus den Sensoren 121 gesammelten Daten oder andere Daten, die sich auf den Betrieb des Fahrzeugs 100 beziehen, an die entfernt gelegene Datenbank 134. In einer Ausführungsform übertragen die Kommunikationsvorrichtungen 140 Informationen, die sich auf Teleoperationen beziehen, an das Fahrzeug 100. In einigen Ausführungsformen kommuniziert das Fahrzeug 100 mit anderen entfernt gelegenen (z. B. „Cloud“-) Servern 136.
  • In einer Ausführungsform speichert und überträgt die entfernt gelegene Datenbank 134 auch digitale Daten (z. B. Speichern von Daten wie Straßen- und Wegestandorte). Diese Daten werden im Speicher 144 des Fahrzeugs 100 gespeichert oder über einen Kommunikationskanal aus der entfernt gelegenen Datenbank 134 an das Fahrzeug 100 übertragen.
  • In einer Ausführungsform speichert und überträgt die entfernt gelegene Datenbank 134 historische Informationen über Fahreigenschaften (z. B. Geschwindigkeits- und Beschleunigungsprofile) von Fahrzeugen, die zuvor zu ähnlichen Tageszeiten entlang der Bewegungsbahn 198 gefahren sind. In einer Ausführungsform können diese Daten im Speicher 144 des Fahrzeugs 100 gespeichert oder über einen Kommunikationskanal aus der entfernt gelegenen Datenbank 134 an das Fahrzeug 100 übertragen werden.
  • Die im Fahrzeug 100 befindlichen Computerprozessoren 146 erzeugen auf algorithmische Weise Steueraktionen, die sowohl auf Echtzeit-Sensordaten als auch auf vorherigen Informationen basieren, sodass das AF-System 120 seine autonomen Fahrfähigkeiten ausführen kann.
  • In einer Ausführungsform umfasst das AF-System 120 Computerperipherievorrichtungen 132, die mit Computerprozessoren 146 gekoppelt sind, um Informationen und Warnungen an einen Benutzer (z. B. einen Insassen oder einen entfernt befindlichen Benutzer) des Fahrzeugs 100 zu liefern und Eingaben von diesem zu empfangen. In einer Ausführungsform ähneln die Peripherievorrichtungen 132 der Anzeigevorrichtung 312, der Eingabevorrichtung 314 und der Cursorsteuervorrichtung 316, die nachfolgend mit Bezug auf 3 behandelt werden. Die Kopplung erfolgt drahtlos oder drahtgebunden. Zwei oder mehr der Schnittstellenvorrichtungen können zu einer einzelnen Vorrichtung integriert sein.
  • In einer Ausführungsform empfängt und erzwingt das AF-System 120 die Datenschutzstufe eines Fahrgastes, die z. B. durch den Fahrgast spezifiziert oder in einem dem Fahrgast zugeordneten Profil gespeichert ist. Die Datenschutzstufe des Fahrgastes bestimmt, wie bestimmte dem Fahrgast zugeordnete Informationen (z. B. Fahrgastkomfortdaten, biometrische Daten usw.) verwendet, im Fahrgastprofil gespeichert und/oder auf dem Cloud-Server 136 gespeichert und dem Fahrgastprofil zugeordnet werden dürfen. In einer Ausführungsform gibt die Datenschutzstufe bestimmte einem Fahrgast zugeordnete Informationen an, die nach Beendigung der Fahrt gelöscht werden. In einer Ausführungsform spezifiziert die Datenschutzstufe bestimmte einem Fahrgast zugeordnete Informationen und identifiziert eine oder mehrere Einheiten, die zum Zugriff auf die Informationen berechtigt sind. Beispiele für bestimmte Einheiten, die zum Zugriff auf Informationen berechtigt sind, können andere AFs, AF-Systeme Dritter oder jede Einheit, die potenziell auf die Informationen zugreifen könnte, beinhalten.
  • Eine Datenschutzstufe eines Fahrgastes kann auf einer oder mehreren Granularitätsstufen festgelegt sein. In einer Ausführungsform identifiziert eine Datenschutzstufe bestimmte Informationen, die zu speichern oder weiterzugeben sind. In einer Ausführungsform gilt die Datenschutzstufe für alle dem Fahrgast zugeordneten Informationen, sodass der Fahrgast festlegen kann, dass keine seiner persönlichen Informationen gespeichert oder weitergegeben werden. Die Festlegung der Einheiten, die auf bestimmte Informationen zugreifen dürfen, kann auch auf verschiedenen Granularitätsstufen erfolgen. Verschiedene Mengen von Einheiten, denen der Zugriff auf bestimmte Informationen erlaubt ist, können z. B. andere AFs, Cloud-Server 136, bestimmte AF-Systeme von Drittanbietern usw. umfassen.
  • In einer Ausführungsform bestimmt das AF-System 120 oder der Cloud-Server 136, ob bestimmte Informationen, die einem Fahrgast zugeordnet sind, durch das AF 100 oder eine andere Einheit abgerufen werden können. So muss z. B. ein AF-System eines Drittanbieters, das versucht, auf die Eingabe von Fahrgästen in Bezug auf einen bestimmten raumzeitlichen Standort zuzugreifen, z. B. aus dem AF-System 120 oder dem Cloud-Server 136 die Genehmigung einholen, auf die dem Fahrgast zugeordneten Informationen zuzugreifen. Beispielsweise verwendet das AF-System 120 die festgelegte Datenschutzstufe des Fahrgastes, um zu bestimmen, ob die auf den raumzeitlichen Standort bezogenen Fahrgasteingaben dem AF-System eines Drittanbieters, dem AF 100 oder einem anderen AF übermittelt werden können. Dadurch ist die Datenschutzstufe des Fahrgastes in der Lage, festzulegen, welche anderen Einheiten Daten über die Maßnahmen des Fahrgastes oder andere dem Fahrgast zugeordnete Daten empfangen dürfen.
  • 2 zeigt ein Beispiel für eine „Cloud“-Rechenumgebung. Cloud Computing ist ein Modell zum Bereitstellen von Diensten, das einen komfortablen, bedarfsgerechten Netzwerkzugang zu einem gemeinsam genutzten Bestand konfigurierbarer Rechenressourcen (z. B. Netzwerke, Netzwerkbandbreite, Server, Verarbeitung, Speicher, Anwendungen, virtuelle Maschinen und Dienste) ermöglicht. In typischen Cloud-Rechensystemen sind in einem oder mehreren großen Cloud-Rechenzentren die Rechner untergebracht, die zum Erbringen der durch die Cloud bereitgestellten Dienste verwendet werden. Mit Bezug auf 2 umfasst die Cloud-Rechenumgebung 200 Cloud-Rechenzentren 204a, 204b und 204c, die über die Cloud 202 miteinander verbunden sind. Die Rechenzentren 204a, 204b und 204c bieten Cloud-Rechendienste für die mit der Cloud 202 verbundenen Computersysteme 206a, 206b, 206c, 206d, 206e und 206f.
  • Die Cloud-Rechenumgebung 200 enthält ein oder mehrere Cloud-Rechenzentren. Allgemein bezieht sich ein Cloud-Rechenzentrum, z. B. das in 2 gezeigte Cloud-Rechenzentrum 204a, auf die physische Anordnung von Servern, die eine Cloud, z. B. die in 2 gezeigte Cloud 202, oder einen bestimmten Abschnitt einer Cloud bilden. Beispielsweise sind die Server physisch im Cloud-Rechenzentrum in Räumen, Gruppen, Reihen und Racks angeordnet. Ein Cloud-Rechenzentrum hat eine oder mehrere Zonen, die einen oder mehrere Räume mit Servern umfassen. Jeder Raum hat eine oder mehrere Reihen von Servern, und jede Reihe enthält ein oder mehrere Racks. Jedes Rack enthält einen oder mehrere einzelne Serverknoten. In einigen Ausführungen sind Server in Zonen, Räumen, Racks und/oder Reihen basierend auf den physischen Infrastrukturanforderungen der Rechenzentrumseinrichtung, die Strom, Energie, Heizung, Wärme und/oder andere Anforderungen umfassen, in Gruppen angeordnet. In einer Ausführungsform ähneln die Serverknoten dem in 3 beschriebenen Computersystem. Das Rechenzentrum 204a weist viele Rechensysteme auf, die über viele Racks verteilt sind.
  • Die Cloud 202 umfasst die Cloud-Rechenzentren 204a, 204b und 204c sowie die Netzwerk- und Netzwerkressourcen (z. B. Netzwerkgeräte, Knoten, Router, Switches und Netzwerkkabel), die die Cloud-Rechenzentren 204a, 204b und 204c miteinander verbinden und dazu beitragen, den Zugang der Computersysteme 206a-f zu den Cloud-Rechendiensten zu ermöglichen. In einer Ausführungsform stellt das Netzwerk eine Kombination aus einem oder mehreren lokalen Netzwerken, Weitverkehrsnetzwerken oder Internetnetzwerken dar, die über drahtgebundene oder drahtlose Verbindungen mittels terrestrischer oder satellitengestützter Verbindungstechnik gekoppelt sind. Daten, die über das Netzwerk ausgetauscht werden, werden unter Verwendung einer Anzahl von Netzwerkschichtprotokollen übertragen, wie z. B. Internet Protocol (IP), Multiprotocol Label Switching (MPLS), Asynchronous Transfer Mode (ATM), Frame Relay, usw. Fernerhin werden in Ausführungsformen, in denen das Netzwerk eine Kombination aus mehreren Teilnetzwerken darstellt, in jedem der zugrunde liegenden Teilnetzwerke unterschiedliche Netzwerkschichtprotokolle verwendet. In einigen Ausführungsformen stellt das Netzwerk ein oder mehrere miteinander verbundene Internetnetzwerke dar, wie z. B. das öffentliche Internet.
  • Die Verbraucher der Rechensysteme 206a-f oder Cloud-Rechendienste sind über Netzwerkverbindungen und Netzwerkadapter mit der Cloud 202 verbunden. In einer Ausführungsform sind die Computersysteme 206a-f als verschiedene Rechenvorrichtungen, z. B. Server, Desktops, Laptops, Tablets, Smartphones, Vorrichtungen für das Internet der Dinge (IoT), AFs (darunter Autos, Drohnen, Pendelfahrzeuge, Züge, Busse usw.) und Verbraucherelektronik, implementiert. In einer Ausführungsform sind die Rechensysteme 206a-f in oder als Bestandteil von anderen Systemen implementiert.
  • 3 zeigt ein Computersystem 300. In einer Implementierung ist das Computersystem 300 eine Spezialrechenvorrichtung. Die Spezialrechenvorrichtung ist fest verdrahtet, um die Techniken auszuführen, oder enthält digitale elektronische Vorrichtungen wie eine oder die mehreren anwendungsspezifische integrierte Schaltungen (ASICs) oder feldprogrammierbare Gate-Arrays (FPGAs), die dauerhaft programmiert sind, um die Techniken auszuführen, oder kann einen oder mehrere Universal-Hardware-Prozessoren umfassen, die dazu programmiert sind, die Techniken gemäß Programmanweisungen in Firmware, Arbeitsspeicher, anderen Speichern oder einer Kombination davon auszuführen. Derartige Spezialcomputervorrichtungen können auch kundenspezifische fest verdrahtete Logik, ASICs oder FPGAs mit kundenspezifischer Programmierung kombinieren, um die Techniken zu erzielen. In verschiedenen Ausführungsformen sind die Spezialrechenvorrichtungen Desktop-Computersysteme, tragbare Computersysteme, Handgeräte, Netzwerkgeräte oder sonstige Vorrichtungen, die zur Implementierung der Techniken festverdrahtete und/oder programmgesteuerte Logik enthalten.
  • In einer Ausführungsform umfasst das Computersystem 300 einen Bus 302 oder einen anderen Kommunikationsmechanismus zum Übermitteln von Informationen und einen mit einem Bus 302 gekoppelten Prozessor 304 zum Verarbeiten von Informationen. Der Prozessor 304 ist zum Beispiel ein Allzweck-Mikroprozessor. Das Computersystem 300 beinhaltet auch einen Hauptspeicher 306, wie beispielsweise einen Direktzugriffsspeicher (RAM) oder eine andere dynamische Speichervorrichtung, die mit dem Bus 302 zum Speichern von Informationen und Anweisungen gekoppelt ist, die durch den Prozessor 304 ausgeführt werden sollen. In einer Ausführungsform wird der Hauptspeicher 306 zum Speichern von temporären Variablen oder anderen Zwischeninformationen während der Ausführung von Anweisungen durch den Prozessor 304 verwendet. Derartige in nichtflüchtigen, für den Prozessor 304 zugänglichen Speichermedien gespeicherte Anweisungen machen aus dem Computersystem 300 eine Spezialmaschine, die auf das Ausführen der in den Anweisungen angegebenen Funktionen zugeschnitten ist.
  • In einer Ausführungsform beinhaltet das Computersystem 300 ferner einen Nur-Lese-Speicher (ROM) 308 oder eine andere statische Speichervorrichtung, die mit dem Bus 302 gekoppelt ist, um statische Informationen und Anweisungen für den Prozessor 304 zu speichern. Eine Speichervorrichtung 310, wie beispielsweise eine Magnetplatte, eine optische Platte, ein Solid-State-Laufwerk oder ein dreidimensionaler Kreuzpunktespeicher, ist vorhanden und mit dem Bus 302 zum Speichern von Informationen und Anweisungen gekoppelt.
  • In einer Ausführungsform ist das Computersystem 300 über den Bus 302 an eine Anzeigevorrichtung 312, wie z. B. eine Kathodenstrahlröhre (CRT), ein Flüssigkristalldisplay (LCD), ein Plasmadisplay, ein Leuchtdioden(LED)-Display oder ein organisches Leuchtdioden(OLED)-Display, zum Anzeigen von Informationen für einen Computerbenutzer gekoppelt. Eine Eingabevorrichtung 314 mit alphanumerischen und anderen Tasten ist mit dem Bus 302 zum Übermitteln von Informationen und zur Auswahl von Befehlen an den Prozessor 304 gekoppelt. Eine andere Art von Benutzereingabevorrichtung ist eine Cursorsteuervorrichtung 316, z. B. eine Maus, ein Trackball, ein berührungsempfindliches Anzeigevorrichtung oder Cursorrichtungstasten zum Übermitteln von Richtungsinformationen und Befehlsauswahlen an den Prozessor 304 und zum Steuern der Cursorbewegung auf der Anzeigevorrichtung 312. Diese Eingabevorrichtung verfügt in der Regel über zwei Freiheitsgrade in zwei Achsen, eine erste Achse (z. B. x-Achse) und eine zweite Achse (z. B. y-Achse), mit denen die Vorrichtung Positionen in einer Ebene angeben kann.
  • Gemäß einer Ausführungsform werden die hier beschriebenen Techniken durch das Computersystem 300 als Reaktion darauf durchgeführt, dass der Prozessor 304 eine oder die mehreren Sequenzen von einer oder mehreren Anweisungen ausführt, die im Hauptspeicher 306 enthalten sind. Derartige Anweisungen werden aus einem anderen Speichermedium, z. B. der Speichervorrichtung 310, in den Hauptspeicher 306 eingelesen. Die Ausführung der im Hauptspeicher 306 enthaltenen Anweisungssequenzen veranlasst den Prozessor 304, die hier beschriebenen Prozessschritte durchzuführen. In alternativen Ausführungsformen wird eine fest verdrahtete Schaltungsanordnung anstelle von oder in Kombination mit Softwareanweisungen verwendet.
  • Der Begriff „Speichermedium“, wie hier verwendet, betrifft alle nichtflüchtigen Medien, die Daten und/oder Anweisungen speichern, die eine Maschine veranlassen, auf eine spezifische Art und Weise zu arbeiten. Derartige Speichermedien umfassen nichtflüchtige Medien und/oder flüchtige Medien. Nichtflüchtige Medien umfassen z. B. optische Platten, Magnetplatten, Solid-State-Laufwerke oder dreidimensionale Kreuzpunktespeicher, wie z. B. die Speichervorrichtung 310. Flüchtige Medien umfassen dynamische Speicher, wie beispielsweise den Hauptspeicher 306. Übliche Formen von Speichermedien umfassen zum Beispiel eine Floppy-Disk, eine Diskette, eine Festplatte, ein Solid-State-Laufwerk, ein Magnetband oder jedes andere magnetische Datenspeichermedium, einen CD-ROM, ein beliebiges anderes optisches Datenspeichermedium, ein beliebiges physisches Medium mit Lochmustern, einen RAM, einen PROM und EPROM, einen FLASH-EPROM, NV-RAM, oder einen beliebigen anderen Speicherchip oder eine Speicherkassette.
  • Speichermedien unterscheiden sich von Übertragungsmedien, können aber zusammen mit diesen verwendet werden. Übertragungsmedien sind am Übertragen von Informationen zwischen Speichermedien beteiligt. Zum Beispiel umfassen Übertragungsmedien Koaxialkabel, Kupferdraht und Lichtwellenleiter, einschließlich der Leitungen, die den Bus 302 umfassen. Übertragungsmedien können auch die Form von akustischen Wellen oder Lichtwellen annehmen, wie etwa jene, die bei Funkwellen- und Infrarotdatenkommunikation erzeugt werden.
  • In einer Ausführungsform sind verschiedene Formen von Medien am Transportieren von einer oder mehreren Sequenzen von einer oder mehreren Anweisungen an den Prozessor 304 zur Ausführung beteiligt. Zum Beispiel werden die Anweisungen zuerst auf einer Magnetplatte oder einem Solid-State-Laufwerk eines entfernt gelegenen Computers abgelegt. Der entfernt gelegene Computer lädt die Anweisungen in seinen dynamischen Speicher und sendet die Anweisungen unter Verwendung eines Modems über eine Telefonleitung. Ein am Computersystem 300 lokal vorhandenes Modem empfängt die Daten über die Telefonleitung und verwendet einen Infrarotsender, um die Daten in ein Infrarotsignal umzuwandeln. Ein Infrarotdetektor empfängt die in dem Infrarotsignal transportierten Daten, und eine entsprechende Schaltungsanordnung stellt die Daten auf den Bus 302. Der Bus 302 transportiert die Daten an den Hauptspeicher 306, aus dem der Prozessor 304 die Anweisungen abruft und ausführt. Die durch den Hauptspeicher 306 empfangenen Anweisungen können gegebenenfalls entweder vor oder nach dem Ausführen durch den Prozessor 304 auf der Speichervorrichtung 310 gespeichert werden.
  • Das Computersystem 300 enthält auch eine Kommunikationsschnittstelle 318, die mit dem Bus 302 gekoppelt ist. Die Kommunikationsschnittstelle 318 stellt eine bidirektionale Datenkommunikationskopplung mit einer Netzwerkverbindung 320 bereit, die mit einem lokalen Netzwerk 322 verbunden ist. Die Kommunikationsschnittstelle 318 ist zum Beispiel eine Integrated Services Digital Network(ISDN)-Karte, ein Kabelmodem, Satellitenmoden oder ein Modem zum Bereitstellen einer Datenkommunikationsverbindung mit einem entsprechenden Typ einer Telefonleitung. Als weiteres Beispiel ist die Kommunikationsschnittstelle 318 eine Karte eines lokalen Netzwerks (LAN), um eine Datenkommunikationsverbindung zu einem kompatiblen LAN bereitzustellen. Bei einigen Implementierungen sind auch drahtlose Verbindungen implementiert. Bei jeder derartigen Implementierung sendet und empfängt die Kommunikationsschnittstelle 318 elektrische, elektromagnetische oder optische Signale, die digitale Datenströme transportieren, die verschiedene Arten von Informationen darstellen.
  • Die Netzwerkverbindung 320 stellt typischerweise eine Datenkommunikation über ein oder mehrere Netzwerke zu anderen Datenvorrichtungen bereit. Zum Beispiel stellt die Netzwerkverbindung 320 eine Verbindung durch das lokale Netzwerk 322 zu einem Hostcomputer 324 oder zu einem Cloud-Rechenzentrum oder Geräten bereit, die durch einen Internetdienstanbieter (ISP) 326 betrieben werden. Der ISP 326 stellt wiederum Datenkommunikationsdienste über das weltweite paketorientierte Datenkommunikationsnetzwerk bereit, das jetzt allgemein als das „Internet“ 328 bezeichnet wird. Sowohl das lokale Netzwerk 322 als auch das Internet 328 verwenden elektrische, elektromagnetische oder optische Signale, die digitale Datenströme transportieren. Die Signale über die verschiedenen Netzwerke und die Signale auf der Netzwerkverbindung 320 und über die Kommunikationsschnittstelle 318, die die digitalen Daten an das und aus dem Computersystem 300 transportieren, sind Beispielformen von Übertragungsmedien. In einer Ausführungsform enthält das Netzwerk 320 die Cloud 202 oder einen Teil der oben beschriebenen Cloud 202.
  • Das Computersystem 300 sendet Nachrichten und empfängt Daten einschließlich Programmcode über das/die Netzwerk(e), die Netzwerkverbindung 320 und die Kommunikationsschnittstelle 318. In einer Ausführungsform empfängt das Computersystem 300 einen Code zum Verarbeiten. Der empfangene Computercode wird sofort beim Empfang durch den Prozessor 304 ausgeführt und/oder auf der Speichervorrichtung 310 oder einem anderen nichtflüchtigen Speicher zum späteren Ausführen gespeichert.
  • AF-Architektur
  • 4 zeigt eine Beispielarchitektur 400 für ein AF (z. B. das in 1 gezeigte Fahrzeug 100). Die Architektur 400 enthält ein Wahrnehmungssystem 402 (mitunter als Wahrnehmungsschaltung bezeichnet), ein Planungssystem 404 (mitunter als Planungsschaltung bezeichnet), ein Steuerungssystem 406 (mitunter als Steuerungsschaltung bezeichnet), ein Lokalisierungssystem 408 (mitunter als Lokalisierungsschaltung bezeichnet) und ein Datenbanksystem 410 (mitunter als Datenbankschaltung bezeichnet). Jedes System spielt eine Rolle beim Betrieb des Fahrzeugs 100. Die Systeme 402, 404, 406, 408 und 410 können zusammen Bestandteil des in 1 gezeigten AF-Systems 120 sein. In einigen Ausführungsformen sind die Systeme 402, 404, 406, 408 und 410 eine Kombination aus Computersoftware (z. B. ausführbarem Code, der auf einem computerlesbaren Medium gespeichert ist) und Computerhardware (z. B. ein oder mehrere Mikroprozessoren, Mikrocontroller, anwendungsspezifische integrierte Schaltungen [ASICs], Hardware-Speichervorrichtungen, andere Arten von integrierten Schaltungen, andere Arten von Computerhardware oder eine Kombination aus einem oder allen dieser Dinge). Jedes der Systeme 402, 404, 406, 408 und 410 wird mitunter als Verarbeitungsschaltung bezeichnet (z. B. Computer-Hardware, Computer-Software oder eine Kombination aus beiden). Eine Kombination aus einem oder allen Systemen 402, 404, 406, 408 und 410 ist ebenfalls ein Beispiel für eine Verarbeitungsschaltung.
  • Beim Betrieb empfängt das Planungssystem 404 Daten, die einen Zielort 412 darstellen, und ermittelt Daten, die eine Bewegungsbahn 414 (mitunter auch als Route bezeichnet) darstellen, die durch das Fahrzeug 100 gefahren werden kann, um den Zielort 412 zu erreichen (z. B. am Zielort anzukommen). Damit das Planungssystem 404 die die Bewegungsbahn 414 repräsentierenden Daten bestimmen kann, empfängt das Planungssystem 404 Daten aus dem Wahrnehmungssystem 402, dem Lokalisierungssystem 408 und dem Datenbanksystem 410.
  • Das Wahrnehmungssystem 402 identifiziert nahegelegene physische Objekte mittels eines oder mehrerer Sensoren 121, z. B. wie ebenfalls in 1 gezeigt. Die Objekte werden klassifiziert (z. B. gruppiert in Arten wie Fußgänger, Fahrrad, Kraftfahrzeug, Verkehrszeichen usw.), und eine Szeneriebeschreibung einschließlich der klassifizierten Objekte 416 wird dem Planungssystem 404 zur Verfügung gestellt.
  • Das Planungssystem 404 empfängt auch Daten, die die AF-Position 418 repräsentieren, aus dem Lokalisierungssystem 408. Das Lokalisierungssystem 408 bestimmt die AF-Position unter Verwendung von Daten aus den Sensoren 121 und Daten aus dem Datenbanksystem 410 (z. B. geografische Daten), um eine Position zu berechnen. Zum Beispiel verwendet das Lokalisierungssystem 408 Daten aus einem GNSS(Globales Navigationssatellitensystem)-Sensor und geografische Daten, um einen Längen- und Breitengrad des AF zu berechnen. In einer Ausführungsform beinhalten die durch das Lokalisierungssystem 408 verwendeten Daten hochpräzise Karten der geometrischen Eigenschaften der Fahrbahn, Karten, die die Verbindungseigenschaften des Straßennetzes beschreiben, Karten, die die physischen Eigenschaften der Straßen beschreiben (wie z. B. die Verkehrsgeschwindigkeit, das Verkehrsaufkommen, die Anzahl der Fahrstreifen für den Auto- und Fahrradverkehr, die Fahrstreifenbreite, die Fahrstreifenrichtungen oder die Arten und Orte von Fahrstreifenmarkierungen oder Kombinationen davon), und Karten, die die räumliche Lage von Straßenmerkmalen wie Fußgängerüberwegen, Verkehrsschildern oder anderen Verkehrssignalen verschiedener Arten beschreiben. In einer Ausführungsform werden die hochpräzisen Karten durch Hinzufügen von Daten mittels automatischer oder manueller Beschriftung zu Karten mit niedriger Präzision erstellt.
  • Das Steuerungssystem 406 empfängt die Daten der Bewegungsbahn 414 und die Daten der AF-Position 418 und führt die Steuerfunktionen 420a-c (z. B. Lenken, Drosselklappenbetätigung, Bremsen, Zündung) des AF so aus, dass das Fahrzeug 100 auf der Bewegungsbahn 414 bis zum Zielort 412 fährt. Falls zum Beispiel die Bewegungsbahn 414 eine Linkskurve enthält, führt das Steuerungssystem 406 die Steuerfunktionen 420a-c so aus, dass der Lenkwinkel der Lenkfunktion das Fahrzeug 100 zum Linksabbiegen veranlasst und das Betätigen der Drosselklappe und Bremsen das Fahrzeug 100 zum Anhalten und Warten auf passierende Fußgänger oder entgegenkommende Fahrzeuge veranlasst, bevor das Abbiegen durchgeführt wird.
  • AF -Eingaben
  • 5 zeigt ein Beispiel für die Eingaben 502a-d (z. B. Sensoren 121 in 1) und Ausgaben 504a-d (z. B. Sensordaten), die durch das Wahrnehmungssystem 402 (4) verwendet werden. Eine Eingabe 502a ist ein LiDAR(„Light Detection and Ranging“)-System (z. B. LiDAR 123 wie in 1 gezeigt). LiDAR ist eine Technologie, die Licht (z. B. Lichtblitze wie Infrarotlicht) verwendet, um Daten über physische Objekte in Sichtlinie zu erhalten. Ein LiDAR-System erzeugt LiDAR-Daten als Ausgabe 504a. LiDAR-Daten sind beispielsweise Sammlungen von 3D- oder 2D-Punkten (auch als Punktwolken bekannt), die zur Konstruktion einer Darstellung der Umgebung 190 verwendet werden.
  • Eine weitere Eingabe 502b ist ein RADAR-System. RADAR ist eine Technologie, die Funkwellen verwendet, um Daten über nahe gelegene physische Objekte zu erhalten. RADAR-Einrichtungen können Daten über Objekte erhalten, die sich nicht in Sichtlinie eines LiDAR-Systems befinden. Ein RADAR-System erzeugt RADAR-Daten als Ausgabe 504b. Zum Beispiel sind RADAR-Daten ein oder mehrere elektromagnetische Hochfrequenzsignale, die zur Konstruktion einer Darstellung der Umgebung 190 verwendet werden.
  • Eine weitere Eingabe 502c ist ein Kamerasystem. Ein Kamerasystem verwendet eine oder die mehreren Kameras (z. B. Digitalkameras, die einen Lichtsensor, wie ein ladungsgekoppeltes Bauelement [CCD], verwenden), um Informationen über nahe gelegene physische Objekte zu erhalten. Ein Kamerasystem erzeugt Kameradaten als Ausgabe 504c. Kameradaten liegen häufig in Form von Bilddaten vor (z. B. Daten in einem Bilddatenformat wie RAW, JPEG, PNG usw.). In einigen Beispielen verfügt das Kamerasystem über mehrere unabhängige Kameras, z. B. zwecks Stereopsis (Stereosehen), wodurch das Kamerasystem in der Lage ist, die Tiefe wahrzunehmen. Obwohl die durch das Kamerasystem wahrgenommenen Objekte hier als „nah“ beschrieben werden, gilt dies relativ zum AF. In einigen Ausführungsformen ist das Kamerasystem dazu ausgelegt, weit entfernt gelegene Objekte zu „sehen“, z. B. bis zu einem Kilometer oder mehr vor dem AF. Dementsprechend weist das Kamerasystem in einigen Ausführungsformen Merkmale wie Sensoren und Objektive auf, die für die Wahrnehmung weit entfernter Objekte optimiert sind.
  • Eine weitere Eingabe 502d ist ein Ampelerkennungs(AE)-System. Ein AE-System verwendet eine oder mehrere Kameras, um Informationen über Ampeln, Straßenschilder und andere physische Objekte zu erhalten, die visuelle Navigationsinformationen liefern. Ein AE-System erzeugt AE-Daten als Ausgabe 504d. AE-Daten liegen häufig in Form von Bilddaten vor (z. B. Daten in einem Bilddatenformat wie RAW, JPEG, PNG usw.). Ein AE-System unterscheidet sich von einem System mit einer Kamera dadurch, dass bei einem AE-System eine Kamera mit weitem Sichtfeld (z. B. mit einem Weitwinkelobjektiv oder einem Fischaugenobjektiv) verwendet wird, um Informationen über möglichst viele physische Objekte zu erhalten, die visuelle Navigationsinformationen liefern, sodass das Fahrzeug 100 Zugriff auf alle relevanten Navigationsinformationen hat, die durch diese Objekte bereitgestellt werden. Beispielsweise beträgt der Blickwinkel des AE-Systems ca. 120 Grad oder mehr.
  • In einigen Ausführungsformen werden die Ausgaben 504a-d mittels einer Sensorfusionstechnik kombiniert. So werden entweder die einzelnen Ausgaben 504a-d anderen Systemen des Fahrzeugs 100 (z. B. einem Planungssystem 404 wie in 4 gezeigt) zur Verfügung gestellt, oder die kombinierte Ausgabe kann den anderen Systemen entweder in Form einer einzelnen kombinierten Ausgabe oder mehrerer kombinierter Ausgaben derselben Art (z. B. unter Verwendung derselben Kombinationstechnik oder Kombination derselben Ausgaben oder beides) oder unterschiedlicher Arten (z. B. unter Verwendung jeweils unterschiedlicher Kombinationstechniken oder Kombination jeweils unterschiedlicher Ausgaben oder beides) zur Verfügung gestellt werden. In einigen Ausführungsformen wird eine frühzeitige Fusionstechnik verwendet. Eine frühzeitige Fusionstechnik zeichnet sich dadurch aus, dass die Ausgaben kombiniert werden, bevor ein oder mehrere Datenverarbeitungsschritte auf die kombinierte Ausgabe angewendet werden. In einigen Ausführungsformen wird eine späte Fusionstechnik verwendet. Eine späte Fusionstechnik zeichnet sich dadurch aus, dass die Ausgaben kombiniert werden, nachdem ein oder mehrere Datenverarbeitungsschritte auf die einzelnen Ausgaben angewendet wurden.
  • 6 zeigt ein Beispiel für ein LiDAR-System 602 (z. B. die in 5 gezeigte Eingabe 502a). Das LiDAR-System 602 emittiert Licht 604a-c aus einem Lichtemitter 606 (z. B. einem Lasersender). Das durch ein LiDAR-System emittierte Licht liegt in der Regel nicht im sichtbaren Spektrum; beispielsweise wird häufig Infrarotlicht verwendet. Ein Teil des emittierten Lichts 604b trifft auf ein physisches Objekt 608 (z. B. ein Fahrzeug) und wird zurück zum LiDAR-System 602 reflektiert. (Das durch ein LiDAR-System emittierte Licht durchdringt normalerweise keine physischen Objekte, z. B. physische Objekte in fester Form.) Das LiDAR-System 602 verfügt auch über einen oder mehrere Lichtdetektoren 610, die das reflektierte Licht detektieren. In einer Ausführungsform erzeugen ein oder mehrere dem LiDAR-System zugeordnete Datenverarbeitungssysteme ein Bild 612, das das Sichtfeld 614 des LiDAR-Systems darstellt. Das Bild 612 enthält Informationen, die die Begrenzungen 616 eines physischen Objekts 608 repräsentieren. Auf diese Weise wird das Bild 612 verwendet, um die Begrenzungen 616 eines oder mehrerer physischer Objekte in der Nähe eines AF zu ermitteln.
  • 7 zeigt das LiDAR-System 602 im Betrieb. In dem in dieser Figur gezeigten Szenario empfängt das Fahrzeug 100 sowohl die Kamerasystemausgabe 504c in Form eines Bildes 702 als auch die LiDAR-Systemausgabe 504a in Form von LiDAR-Datenpunkten 704. Beim Betrieb vergleicht das Datenverarbeitungssystem des Fahrzeugs 100 das Bild 702 mit den Datenpunkten 704. Insbesondere wird ein im Bild 702 identifiziertes physisches Objekt 706 ebenfalls unter den Datenpunkten 704 identifiziert. Auf diese Weise nimmt das Fahrzeug 100 die Begrenzungen des physischen Objekts anhand der Kontur und Dichte der Datenpunkte 704 wahr.
  • 8 zeigt die Funktionsweise des LiDAR-Systems 602 mit zusätzlichen Details. Wie oben beschrieben, erkennt das Fahrzeug 100 die Begrenzung eines physischen Objekts anhand der Eigenschaften der durch das LiDAR-System 602 erfassten Datenpunkte. Wie in 8 gezeigt, reflektiert ein ebenes Objekt, wie z. B. der Boden 802, das durch ein LiDAR-System 602 emittierte Licht 804a-d auf konsistente Weise. Anders ausgedrückt, da das LiDAR-System 602 Licht in gleichmäßigen Abständen emittiert, reflektiert der Boden 802 das Licht mit dem gleichen konsistenten Abstand zum LiDAR-System 602 zurück. Während sich das Fahrzeug 100 über den Boden 802 bewegt, erkennt das LiDAR-System 602 weiterhin das durch den nächsten gültigen Bodenpunkt 806 reflektierte Licht, falls nichts die Straße versperrt. Falls jedoch ein Objekt 808 die Straße versperrt, wird das durch das LiDAR-System 602 emittierte Licht 804e-f von den Punkten 810a-b in einer Weise reflektiert, die nicht mit der erwarteten Gleichmäßigkeit übereinstimmt. Aus diesen Informationen kann das Fahrzeug 100 bestimmen, dass das Objekt 808 vorhanden ist.
  • Wegplanung
  • 9 zeigt in einem Blockdiagramm 900 die Zusammenhänge zwischen Ein- und Ausgaben eines Planungssystems 404 (z. B. wie in 4 gezeigt). Allgemein ist die Ausgabe eines Planungssystems 404 eine Route 902 von einem Startpunkt 904 (z. B. Quellenort oder Anfangsort) und einem Endpunkt 906 (z. B. Ziel- oder Endort). Die Route 902 ist in der Regel durch ein oder mehrere Segmente definiert. Ein Segment ist zum Beispiel eine Entfernung, die mindestens über einen Abschnitt einer Straße, einer Landstraße, einer Autobahn, einer Einfahrt oder eines anderen für den Autoverkehr geeigneten physischen Bereichs zurückzulegen ist. In einigen Beispielen, z. B. falls das Fahrzeug 100 ein geländegängiges Fahrzeug wie z. B. ein vierradgetriebener (4WD) oder allradgetriebener (AWD) PKW, SUV, Lieferwagen oder dergleichen ist, umfasst die Route 902 „geländegängige“ Segmente wie unbefestigte Wege oder offene Felder.
  • Zusätzlich zur Route 902 gibt ein Planungssystem auch Routenplanungsdaten auf Fahrstreifenebene 908 aus. Die Routenplanungsdaten auf Fahrstreifenebene 908 werden verwendet, um Segmente der Route 902 basierend auf den Bedingungen des Segments zu einem bestimmten Zeitpunkt zu durchfahren. Falls die Route 902 beispielsweise eine Autobahn mit mehreren Fahrstreifen umfasst, enthalten die Routenplanungsdaten auf Fahrstreifenebene 908 die Bewegungsbahnplanungsdaten 910, die das Fahrzeug 100 verwenden kann, um einen Fahrstreifen unter den mehreren Fahrstreifen zu wählen, z. B. in Abhängigkeit davon, ob sich eine Ausfahrt nähert, ob eine oder mehrere der Fahrstreifen andere Fahrzeuge aufweisen, oder aufgrund anderer Faktoren, die im Laufe von Minuten oder weniger variieren. In ähnlicher Weise enthalten bei einigen Implementierungen die Routenplanungsdaten auf Fahrstreifenebene 908 auch Geschwindigkeitsrandbedingungen 912, die spezifisch für ein Segment der Route 902 gelten. Falls das Segment zum Beispiel Fußgänger oder unerwarteten Verkehr enthält, können die Geschwindigkeitsrandbedingungen 912 das Fahrzeug 100 auf eine Fahrgeschwindigkeit beschränken, die langsamer als eine erwartete Geschwindigkeit ist, z. B. eine Geschwindigkeit, die auf den Geschwindigkeitsbegrenzungsdaten für das Segment basiert.
  • In einer Ausführungsform umfassen die Eingaben an das Planungssystem 404 auch die Datenbankdaten 914 (z. B. aus dem in 4 dargestellten Datenbanksystem 410), die aktuellen Standortdaten 916 (z. B. die in 4 dargestellte AF-Position 418), die Zielortdaten 918 (z. B. für den in 4 dargestellten Zielort 412) und die Objektdaten 920 (z. B. die klassifizierten Objekte 416, die durch das Wahrnehmungssystem 402 wahrgenommen werden, wie in 4 gezeigt). In einigen Ausführungsformen enthalten die Daten der Datenbank 914 Regeln, die bei der Planung verwendet werden. Regeln werden durch eine formale Sprache spezifiziert, z. B. durch boolesche Logik. In jeder Situation, in der sich das Fahrzeug 100 befindet, sind mindestens einige der Regeln auf die Situation anwendbar. Eine Regel gilt für eine gegebene Situation, falls die Regel Bedingungen enthält, die basierend auf den dem Fahrzeug 100 zur Verfügung stehenden Informationen, z. B. Informationen über die Umgebung, erfüllt sind. Regeln können eine Priorität aufweisen. Beispielsweise kann eine Regel, die besagt: „Falls die Straße eine Autobahn ist, auf den äußerst linken Fahrstreifen wechseln“, eine niedrigere Priorität als „Falls die Ausfahrt sich innerhalb von 2 Kilometern nähert, auf den äußerst rechten Fahrstreifen wechseln“ aufweisen.
  • 10 zeigt einen gerichteten Graphen 1000, der bei der Wegplanung z. B. durch das Planungssystem 404 verwendet wird (4). Allgemein wird ein gerichteter Graph 1000 wie der in 10 gezeigte verwendet, um einen Weg zwischen einem beliebigen Startpunkt 1002 und Endpunkt 1004 zu ermitteln. In der Praxis kann die Entfernung zwischen dem Startpunkt 1002 und dem Endpunkt 1004 relativ groß (z. B. in zwei verschiedenen Ballungsgebieten) oder relativ klein (z. B. zwei Einmündungen, die an einen Stadtblock angrenzen oder zwei Fahrstreifen einer Straße mit mehreren Fahrstreifen) sein.
  • In einer Ausführungsform hat der gerichtete Graph 1000 Knoten 1006a-d, die verschiedene Orte zwischen dem Startpunkt 1002 und dem Endpunkt 1004 darstellen, die durch ein Fahrzeug 100 belegt werden könnten. In einigen Beispielen, z. B. wenn der Startpunkt 1002 und der Endpunkt 1004 verschiedene Ballungsräume repräsentieren, stellen die Knoten 1006a-d Straßensegmente dar. In einigen Beispielen, z. B. wenn der Startpunkt 1002 und der Endpunkt 1004 verschiedene Orte auf derselben Straße darstellen, stellen die Knoten 1006a-d verschiedene Positionen auf dieser Straße dar. Auf diese Weise enthält der gerichtete Graph 1000 Informationen in unterschiedlicher Granularität. In einer Ausführungsform ist ein gerichteter Graph mit hoher Granularität auch ein Teilgraph eines anderen gerichteten Graphen mit einem größeren Maßstab. Zum Beispiel hat ein gerichteter Graph, bei dem der Startpunkt 1002 und der Endpunkt 1004 weit entfernt sind (z. B. viele Kilometer auseinander liegend), die meisten seiner Informationen in einer niedrigen Granularität und basiert auf gespeicherten Daten, enthält aber auch einige Informationen mit hoher Granularität für den Abschnitt des Graphen, der physische Orte im Sichtfeld des Fahrzeugs 100 darstellt.
  • Die Knoten 1006a-d unterscheiden sich von Objekten 1008a-b, die sich nicht mit einem Knoten überlappen können. In einer Ausführungsform, wenn die Granularität gering ist, stellen die Objekte 1008a-b Regionen dar, die nicht mit dem Auto befahren werden können, z. B. Gebiete, die keine Straßen oder Wege aufweisen. Bei hoher Granularität stellen die Objekte 1008a-b physische Objekte im Sichtfeld des Fahrzeug 100 dar, z. B. andere Kraftfahrzeuge, Fußgänger oder andere Objekte, mit denen das Fahrzeug 100 den physischen Raum nicht teilen kann. In einer Ausführungsform sind einige oder alle der Objekte 1008a-b statische Objekte (z. B. ein Objekt, das seine Position nicht ändert, wie eine Straßenlampe oder ein Strommast) oder dynamische Objekte (z. B. ein Objekt, das seine Position ändern kann, wie ein Fußgänger oder ein anderes Kraftfahrzeug).
  • Die Knoten 1006a-d sind durch die Kanten 1010a-c verbunden. Falls zwei Knoten 1006a-b durch eine Kante 1010a verbunden sind, ist es möglich, dass ein Fahrzeug 100 zwischen dem einen Knoten 1006a und dem anderen Knoten 1006b fahren kann, z. B. ohne zu einem Zwischenknoten fahren zu müssen, bevor es am anderen Knoten 1006b ankommt. (Wenn wir von einem Fahrzeug 100 sprechen, meinen wir, dass sich das Fahrzeug 100 zwischen den beiden physischen Positionen bewegt, die durch die jeweiligen Knoten dargestellt werden.) Die Kanten 1010a-c sind oft bidirektional, in dem Sinne, dass ein Fahrzeug 100 von einem ersten Knoten zu einem zweiten Knoten oder vom zweiten Knoten zum ersten Knoten fährt. In einer Ausführungsform sind die Kanten 1010a-c unidirektional, in dem Sinne, dass ein Fahrzeug 100 von einem ersten Knoten zu einem zweiten Knoten fahren kann, das Fahrzeug 100 jedoch nicht vom zweiten Knoten zum ersten Knoten fahren kann. Die Kanten 1010a-c sind unidirektional, wenn sie z. B. Einbahnstraßen, einzelne Fahrstreifen einer Straße, eines Weges oder einer Landstraße oder andere Merkmale darstellen, die aufgrund rechtlicher oder physischer Randbedingungen nur in einer Richtung befahren werden können.
  • In einer Ausführungsform verwendet das Planungssystem 404 den gerichteten Graphen 1000 zum Identifizieren eines Weges 1012, der aus Knoten und Kanten zwischen dem Startpunkt 1002 und dem Endpunkt 1004 besteht.
  • Eine Kante 1010a-c ist einem Aufwand 1014a-b zugeordnet. Der Aufwand 1014ab ist ein Wert, der die Ressourcen darstellt, die aufgewendet werden, falls das Fahrzeug 100 diese Kante auswählt. Eine typische Ressource ist die Zeit. Falls zum Beispiel eine Kante 1010a eine physische Entfernung darstellt, die doppelt so groß wie die einer anderen Kante 1010b ist, kann der zugeordnete Aufwand 1014a der ersten Kante 1010a doppelt so groß wie der zugeordnete Kostenwert 1014b der zweiten Kante 1010b sein. Andere Faktoren, die sich auf die Zeit auswirken, sind der erwartete Verkehr, die Anzahl der Einmündungen, Geschwindigkeitsrandbedingungen usw. Eine weitere typische Ressource ist der Kraftstoffverbrauch. Zwei Kanten 1010a-b können die gleiche physische Entfernung darstellen, aber eine Kante 1010a kann mehr Kraftstoff als eine andere Kante 1010b erfordern, z. B. aufgrund von Straßenbedingungen, voraussichtlichem Wetter usw.
  • Wenn das Planungssystem 404 einen Weg 1012 zwischen dem Startpunkt 1002 und dem Endpunkt 1004 identifiziert, wählt das Planungssystem 404 in der Regel einen Weg mit einem optimierten Aufwand, z. B. den Weg mit dem geringsten Gesamtaufwand, wenn die einzelnen Aufwände der Kanten addiert werden.
  • AF-Steuerung
  • 11 zeigt in einem Blockdiagramm 1100 die Ein- und Ausgaben eines Steuerungssystems 406 (z. B. wie in 4 gezeigt). Ein Steuerungssystem arbeitet gemäß einer Steuervorrichtung 1102, die z. B. einen oder mehrere Prozessoren (z. B. einen oder mehrere Computerprozessoren wie Mikroprozessoren oder Mikrocontroller oder beides) ähnlich dem Prozessor 304, einen Kurzzeit- und/oder Langzeitdatenspeicher (z. B. Direktzugriffsspeicher oder Flashspeicher oder beides) ähnlich dem Hauptspeicher 306, ROM 308 und Speichervorrichtung 310 und im Speicher gespeicherte Anweisungen enthält, die beim Ausführen der Anweisungen (z. B. durch den einen oder die mehreren Prozessoren) Operationen der Steuervorrichtung 1102 durchführen.
  • In einer Ausführungsform empfängt die Steuervorrichtung 1102 Daten, die eine gewünschte Ausgabe 1104 darstellen. Die gewünschte Ausgabe 1104 umfasst in der Regel eine Geschwindigkeit und eine Fahrtrichtung. Die gewünschte Ausgabe 1104 kann zum Beispiel auf Daten basieren, die aus einem Planungssystem 404 empfangen werden (z. B. wie in 4 gezeigt). Die Steuervorrichtung 1102 erzeugt gemäß der gewünschten Ausgabe 1104 Daten, die als Drosselklappeneingabe 1106 und als Lenkeingabe 1108 verwendet werden können. Die Drosselklappeneingabe 1106 stellt die Größe dar, in der die Drosselklappe (z. B. Beschleunigungssteuerung) eines Fahrzeugs 100 zu betätigen ist, z. B. durch Betätigen des Lenkpedals oder durch Betätigen einer anderen Drosselklappensteuerung, um die gewünschte Ausgabe 1104 zu erreichen. In einigen Beispielen umfasst die Drosselklappeneingabe 1106 auch Daten, die zum Betätigen der Bremse (z. B. Verlangsamungssteuerung) des Fahrzeugs 100 verwendet werden können. Die Lenkeingabe 1108 stellt einen Lenkwinkel dar, z. B. den Winkel, in dem die Lenksteuerung (z. B. Lenkrad, Lenkwinkelsteller oder eine andere Funktion zur Steuerung des Lenkwinkels) des AF positioniert werden sollte, um die gewünschte Ausgabe 1104 zu erreichen.
  • In einer Ausführungsform empfängt die Steuervorrichtung 1102 eine Rückmeldung, die bei der Anpassung der für die Drosselklappe und Lenkung bereitgestellten Eingaben verwendet wird. Falls beispielsweise das Fahrzeug 100 auf eine Störung 1110 wie z. B. einen Hügel trifft, wird die gemessene Geschwindigkeit 1112 des Fahrzeugs 100 unter die gewünschte Ausgabegeschwindigkeit abgesenkt. In einer Ausführungsform wird der Steuervorrichtung 1102 eine Messwertausgabe 1114 zur Verfügung gestellt, sodass die nötigen Anpassungen, z. B. basierend auf der Differenz 1113 zwischen der gemessenen Geschwindigkeit und der gewünschten Ausgabe, durchgeführt werden. Die gemessene Ausgabe 1114 umfasst eine gemessene Position 1116, eine gemessene Geschwindigkeit 1118 (einschließlich Drehzahl und Fahrtrichtung), eine gemessene Beschleunigung 1120 und andere durch Sensoren des Fahrzeugs 100 messbare Ausgaben.
  • In einer Ausführungsform werden Informationen über die Störung 1110 im Voraus erkannt, z. B. durch einen Sensor wie eine Kamera oder einen LiDAR-Sensor, und einem vorausschauenden Rückmeldesystem 1122 zur Verfügung gestellt. Das vorausschauende Rückmeldesystem 1122 liefert dann Informationen an die Steuervorrichtung 1102, die die Steuervorrichtung 1102 zur entsprechenden Anpassung verwenden kann. Falls zum Beispiel die Sensoren des Fahrzeugs 100 einen Hügel erkennen („sehen“), können diese Informationen durch die Steuervorrichtung 1102 genutzt werden, um sich darauf vorzubereiten, die Drosselklappe zum geeigneten Zeitpunkt zu betätigen, um eine wesentliche Verlangsamung zu vermeiden.
  • 12 zeigt ein Blockdiagramm 1200 der Eingaben, Ausgaben und Komponenten der Steuervorrichtung 1102. Die Steuervorrichtung 1102 weist einen Geschwindigkeitsprofilersteller 1202 auf, der den Betrieb einer Drosselklappen-/Bremssteuervorrichtung 1204 beeinflusst. Beispielsweise weist der Geschwindigkeitsprofilersteller 1202 die Drosselklappen-/Bremssteuervorrichtung 1204 an, eine Beschleunigung oder Verlangsamung unter Verwendung der Drosselklappe/Bremse 1206 einzuleiten, abhängig z. B. von der Rückmeldung, die durch die Steuervorrichtung 1102 empfangen und durch den Geschwindigkeitsprofilersteller 1202 verarbeitet wird.
  • Die Steuervorrichtung 1102 weist auch eine Seitenführungssteuervorrichtung 1208 auf, die den Betrieb einer Lenksteuervorrichtung 1210 beeinflusst. Zum Beispiel weist die Seitenführungssteuervorrichtung 1208 die Lenksteuervorrichtung 1210 an, die Position des Lenkwinkelstellers 1212 abhängig von z. B. der Rückmeldung anzupassen, die durch die Steuervorrichtung 1102 empfangen und durch die Seitenführungssteuervorrichtung 1208 verarbeitet wird.
  • Die Steuervorrichtung 1102 empfängt mehrere Eingaben, mit denen ermittelt wird, wie die Drosselklappe/Bremse 1206 und der Lenkwinkelsteller 1212 gesteuert werden sollen. Ein Planungssystem 404 liefert Informationen, die durch die Steuervorrichtung 1102 verwendet werden, um z. B. eine Bewegungsrichtung zu wählen, wenn das Fahrzeug 100 den Betrieb aufnimmt, und um zu ermitteln, welches Straßensegment befahren werden soll, wenn das Fahrzeug 100 eine Kreuzung erreicht. Ein Lokalisierungssystem 408 liefert der Steuervorrichtung 1102 Informationen, die zum Beispiel den aktuellen Standort des Fahrzeug 100 beschreiben, sodass die Steuervorrichtung 1102 ermitteln kann, ob sich das Fahrzeug 100 an einem Ort befindet, der basierend auf der Art und Weise, in der die Drosselklappe/Bremse 1206 und der Lenkwinkelsteller 1212 gesteuert werden, erwartet wird. In einer Ausführungsform empfängt die Steuervorrichtung 1102 Informationen aus anderen Eingaben 1214, z. B. Informationen, die aus Datenbanken, Computernetzwerken usw. empfangen werden.
  • System für modalitätsübergreifendes aktives Lernen
  • 13 zeigt ein System 1300, das modalitätsübergreifendes aktives Lernen zur Objekterkennung ermöglicht. Im System 1300 wird aktives Lernen über eine Vielzahl von Sensormodalitäten implementiert, um informative Daten zu bestimmen. Ein Fahrzeug (z. B. das Fahrzeug 100 von 1) kann über eine Vielzahl von Sensoren (z. B. den Sensor 121 von 1) große Datenmengen aufzeichnen. Der Speicherplatz für Daten ist jedoch endlich und oft begrenzt. Die hier beschriebenen Techniken für aktives Lernen reduzieren die gespeicherten Daten auf informative Daten und ermöglichen so eine Verringerung des erforderlichen Datenspeicherplatzes bei gleichzeitiger Bereitstellung qualitativ hochwertiger Daten, die zur Verbesserung anderer Fahrzeugfunktionen, wie z. B. Aufprallerkennung, allgemeine Objekterkennung, Erkennung von Sensorfehlern usw., genutzt werden können. Darüber hinaus ermöglicht die Verringerung der Datenspeicherung, dass diese Techniken mittels Fahrzeughardware und nicht mittels speziellen Servern in einem Rechenzentrum ausgeführt werden können.
  • Das System 1300 (z. B. das System 120 von 1) weist mindestens eine Kamera 1302 (z. B. die Kamera 122 von 1) und mindestens ein LiDAR 1304 (z. B. das LiDAR 123 von 1) auf. Die Kamera 1302 gibt die Bilddaten 1306 in Form eines Bildes in einem Bildformat wie RAW, JPEG, PNG aus (z. B. die Ausgabe 504c von 5). Das LiDAR 1304 gibt die LiDAR-Daten in Form einer Punktwolke 1308 aus (z. B. die Ausgabe 504a von 5). Die mindestens eine Kamera 1302 und das mindestens eine LiDAR 1304 sind Komponenten eines Wahrnehmungssystems, wie z. B. des Wahrnehmungssystems 402 (4). Dementsprechend geben die Kamera 1302 und das LiDAR 1304 Daten aus, die zu klassifizierende Objekte identifizieren (z. B. die klassifizierten Objekte 416 von 4), wie z. B. einen Fußgänger, ein Fahrrad, ein Auto, ein Verkehrsschild und dergleichen. Zur Vereinfachung der Erklärung werden bestimmte Sensormodalitäten wie Kamera, LiDAR und Radar gemäß den vorliegenden Techniken beschrieben. Die vorliegenden Techniken können jedoch über jede Sensormodalität implementiert werden, die Daten erfasst, die zur Objekterkennung analysiert werden.
  • Die Bilddaten 1306 liefern im Allgemeinen genaue Messungen von Kanten, Farbe und Beleuchtung, was letztendlich zu einer genauen Objektklassifizierung und -lokalisierung (z. B. durch das Lokalisierungssystem 408) auf der Bildebene führt. Allerdings ist die 3D-Lokalisierung oft ungenau, wenn sie nur auf Kameradaten basiert. Die Punktwolke 1308 enthält im Vergleich zu Bilddaten in der Regel weniger semantische Informationen und ermöglicht stattdessen eine hochgenaue 3D-Lokalisierung. Punktwolken sind im Allgemeinen spärlich, und die Reichweite von Punktwolken ist in der Regel auf 50-100 Meter (m) begrenzt. Die vorliegenden Techniken nutzen die Stärken einer Vielzahl von Sensormodalitäten, um eine robuste Objekterkennung über alle Sensormodalitäten hinweg zu ermöglichen.
  • Das System 1300 weist zwei Objekterkennungsnetze, ein semantisches Bildsegmentierungsnetz (ISN) 1310 und ein semantisches LiDAR-Segmentierungsnetz (LSN) 1312, auf. Im Allgemeinen ist ein neuronales Netz zur Objekterkennung dazu ausgelegt, Sensordaten zu empfangen und die Sensordaten zu verarbeiten, um mindestens ein Objekt (z. B. natürliche Hindernisse 191, Fahrzeuge 193, Fußgänger 192 von 1, Radfahrer und andere Hindernisse) in dem den Sensor umgebenden 3D-Raum zu erkennen. In einer Ausführungsform ist ein neuronales Netz zur Objekterkennung ein neuronales Feedforward-Faltungsnetz, das angesichts der Ausgaben 504a-d (z. B. Sensordaten) einen Satz von Begrenzungsrahmen für potenzielle Objekte im 3D-Raum und Vertrauenswerte für das Vorhandensein von Objektklasseninstanzen (z. B. Autos, Fußgänger oder Fahrräder) innerhalb der Begrenzungsrahmen erzeugt. Je höher der Klassifizierungswert, desto wahrscheinlicher ist es, dass die entsprechende Objektklasseninstanz in einem Rahmen vorhanden ist. Ein Beispiel für ein neuronales Netz zur Objekterkennung ist ausführlich beschrieben in W. Liu, D. Anguelov, D. Erhan, C. Szegedy, S. Reed, C. Y. Fu und A. C. Berg. SSD: Single Shot Multibox Detector. Springer, 201, verfügbar unter https://arxiv.org/pdf/1512.02325.pdf.
  • Das ISN 1310 nimmt als Eingabe die Bilddaten 1306 her und gibt einen Satz vorhergesehener 3D-Begrenzungsrahmen 1314 für potenzielle Objekte im 3D-Raum und entsprechende Vertrauenswerte für das Vorhandensein von Objektklasseninstanzen innerhalb der Begrenzungsrahmen aus. Die 3D-Begrenzungsrahmen enthalten Informationen über die Abmessung, Ausrichtung und den Orte eines 3D-Begrenzungsrahmens für das Objekt in einem Format, das in eine gleiche Datendarstellung wie unten beschrieben projiziert werden kann. Konkret nimmt das ISN 1310 als Eingabe einen Satz von Bildern her, sagt die die Klasse jedes Pixels in den Bildern vorher und gibt semantische Segmentierungsdaten (z. B. einen Vertrauenswert) für jedes Pixel im Bild aus. Das ISN 1310 wird mit einer Bilddatenmenge trainiert, die Bilder enthält, bei denen jedes Bild mit Begrenzungsrahmen und Segmentierungsmarkierungen für Klassen in der Bilddatenmenge erweitert ist. Ein Beispiel für einen Vertrauenswert ist ein Wahrscheinlichkeitswert, der angibt, mit welcher Wahrscheinlichkeit die Klasse des Pixels richtig vorhergesagt wurde.
  • In ähnlicher Weise nimmt das LSN 1312 als Eingabe mindestens eine Punktwolke 1308 her und gibt einen Satz vorhergesagter 3D-Begrenzungsrahmen 1316 für potenzielle Objekte im 3D-Raum sowie Vertrauenswerte für das Vorhandensein von Objektklasseninstanzen innerhalb der Begrenzungsrahmen aus. In einem Beispiel empfängt das LSN eine Vielzahl von Datenpunkten, die den 3D-Raum repräsentieren. Zum Beispiel ist jeder Datenpunkt der Vielzahl von Datenpunkten ein Satz von 3D-Raumkoordinaten (z. B. x-, y-, z-Koordinaten). Die Daten werden in Säulen kodiert und geben ein Pseudobild wie in „PointPillars: Fast Encoders for Object Detection from Point Clouds“, arXiv: 1812.05784v2 [cs.LG] vom 7. Mai 2019 beschrieben aus. Allgemein nimmt ein Säulenkodierer eine oder mehrere Punktwolken als Eingabe her und schätzt basierend auf den Punktwolken orientierte 3D-Begrenzungsrahmen für Autos, Fußgänger und Radfahrer. Ähnlich wie das ISN 1310 enthalten die durch das LSN ausgegebenen vorhergesagten 3D-Begrenzungsrahmen 1316 Informationen über die Abmessung, Ausrichtung und den Ort eines 3D-Begrenzungsrahmens für das Objekt in einem Format, das eine gleiche Datendarstellung wie unten beschrieben projiziert werden kann. Der vorhergesagte 3D-Satz von Begrenzungsrahmen enthält auch Vertrauenswerte für das Vorhandensein von Objektklasseninstanzen innerhalb der Begrenzungsrahmen.
  • Durch Nachbearbeiten werden die vorhergesagten 3D-Rahmen 1314 und 1316 auf eine gleiche Darstellung projiziert. Im System 1300 werden Bilddaten, die auf vorhergesagten 3D-Begrenzungsrahmen 1314 basieren, an die Nachbearbeitung 1318 übertragen. Die auf der Punktwolke basierenden vorhergesagten 3D-Begrenzungsrahmen 1316 werden an die Nachbearbeitung 1320 übertragen. Eine Darstellung ist hier eine Transformation, die auf die vorhergesagten 3D-Begrenzungsrahmen angewendet wird. Die Transformation führt zu einer Interpretation der Szene i einem gleichen Format, wenn sie auf vorhergesagte 3D-Begrenzungsrahmen angewendet wird, die aus einer Vielzahl von Objekterkennungsnetzen gewonnen wurden. In einer Ausführungsform basiert eine Darstellung mindestens teilweise auf einem Kamerawinkel. In einer Ausführungsform ist eine Darstellung eine Wahrscheinlichkeitsverteilung, die auf Vertrauenswerte angewendet wird, die den vorhergesagten Begrenzungsrahmen zugeordnet sind. Eine Darstellung kann zum Beispiel eine Frontalansichtdarstellung, eine Vogelperspektivedarstellung oder eine Heatmap-Darstellung sein. Obwohl bestimmte Darstellungen beschrieben werden, sind die vorliegenden Techniken nicht auf eine einzige Darstellung für die Projektionen der vorhergesagten 3D-Begrenzungsrahmen beschränkt. Vielmehr transformieren die vorliegenden Techniken die vorhergesagten 3D-Begrenzungsrahmen in eine gleiche Datendarstellung, die den Vergleich einer Vielzahl von Objekterkennungsnetzen ermöglicht.
  • In einem Beispiel werden die vorhergesagten 3D-Begrenzungsrahmen in eine Frontalansichtdarstellung projiziert. Eine Frontalansichtdarstellung ist eine auf die Bildebene projizierte Ansicht der Begrenzungsrahmen. 14A ist eine Frontalansichtdarstellung 1400A einer Umgebung 1402A. Wie dargestellt, enthält die Frontalansichtdarstellung 1400A eine Vielzahl von projizierten Begrenzungsrahmen 1404A. Bei den Begrenzungsrahmen 1404A handelt es sich um vorhergesagte 3D-Begrenzungsrahmen aus einem Objekterkennungsnetz, die auf die Frontalansichtdarstellung 1400A projiziert sind. In der Frontalansichtdarstellung sind die Begrenzungsrahmen 1404A entlang der x-Achse der Koordinaten 1406A ausgerichtet. Anders ausgedrückt, drehen sich die Begrenzungsrahmen nicht entlang der x-Achse und weisen in der y-z-Ebene parallele Kanten auf.
  • In einem Beispiel sind die vorhergesagten 3D-Begrenzungsrahmen in eine Vogelperspektivedarstellung projiziert. Allgemeinen ist eine Vogelperspektivedarstellung eine Darstellung der auf die Bodenebene projizierten Umgebung. Die Vogelperspektive eliminiert Verdeckungen zwischen den erkannten Objekten und ermöglicht semantisch und geometrisch konsistente Beziehungen zwischen dem Fahrzeug und Hindernissen. 14B ist eine Vogelperspektivedarstellung 1400B einer Umgebung 1402B. Wie gezeigt, enthält die Vogelperspektivedarstellung 1400B eine Vielzahl von Begrenzungsrahmen 1404B. Bei den Begrenzungsrahmen 1404B handelt es sich um vorhergesagte 3D-Begrenzungsrahmen aus einem Objekterkennungsnetz, die auf die Vogelperspektivedarstellung 1400B projiziert sind. In der Vogelperspektivedarstellung sind die Begrenzungsrahmen 1404B nicht entlang der z-Achse der Koordinaten 1406B ausgerichtet. Anders ausgedrückt, drehen sich die Begrenzungsrahmen entlang der z-Achse und haben keine in der x-y-Ebene parallelen Kanten. Die projizierten Begrenzungsrahmen 1404B sind nicht achsenausgerichtet.
  • In einem Beispiel wird eine Heatmap-Darstellung erzeugt. Die Heatmap-Darstellung wird durch Transformieren einer Vogelperspektivedarstellung basierend auf Vertrauenswerten erzeugt. Allgemein stellt die Heatmap eine Größenordnung als Farbe in zwei Dimensionen dar. Die Größenordnungen werden in eine Matrix mit einer oder mehreren festen Zellen eingefügt. Die Spalten und Zeilen der Heatmap sind diskrete Phänomene und Kategorien. 14C ist eine Heatmap 1400C der Umgebung in Form eines Rasters 1402C. Die auf dem Raster 1402C dargestellten diskreten Phänomene und Kategorien sind die Klassifizierungen von Objekten, die in der Vogelperspektivedarstellung erkannt wurden, zusammen mit Vertrauenswerten. Im Beispiel von 14C repräsentiert jede Zelle die Vertrauenswerte eines oder mehrerer projizierter Begrenzungsrahmen (z. B. der Begrenzungsrahmen 1404B von 14B) in einer Vogelperspektive. In einem Beispiel wird den Bereichen für den Hintergrund ohne Begrenzungsrahmen ein Vertrauenswert von 1,0 zugewiesen. Die Zellen des Rasters 1402C werden anhand der Vertrauenswerte der zugehörigen projizierten Begrenzungsrahmen unterschieden.
  • Wie in 13 dargestellt, überlappen sich die durch das ISN 1310 und das LSN 1312 ausgegebenen 3D-Begrenzungsrahmen 1314 und 1316, wenn sie auf eine gleiche Darstellung projiziert werden (z. B. überlappen sich die projizierten Begrenzungsrahmen 1404A und 1404B in 14A und 14B). Dementsprechend wenden die Nachbearbeitung 1318 und die Nachbearbeitung 1320 eine Nicht-Maximum-Unterdrückung an, um redundante projizierte Begrenzungsrahmen herauszufiltern, die zum selben Objekt gehören. Das Filtern der redundanten projizierten Begrenzungsrahmen entfernt die Begrenzungsrahmen aus einer Liste vorgeschlagener Begrenzungsrahmen. Die Nicht-Maximum-Unterdrückung variiert gemäß der gewählten gleichen Darstellung. Wie in 14A, 14B und 14C gezeigt, kann die gleiche Darstellung eine Frontalansichtdarstellung, eine Vogelperspektivedarstellung oder eine Heatmap-Darstellung sein. Allgemein werden bei der Objekterkennung für jeden Begrenzungsrahmen Vertrauenswerte erstellt, was dazu führt, dass viele hohe Werte nahe beieinander liegen, wodurch eine große Anzahl vorhergesagter 3D-Begrenzungsrahmen erzeugt wird, die letztendlich eine große Anzahl projizierter Begrenzungsrahmen mit zugehörigen Vertrauenswerten in der gleichen Darstellung erzeugt. Die Nicht-Maximum-Unterdrückung unterdrückt Werte, die nicht das Maximum innerhalb eines lokalen Bereichs sind.
  • In einer Ausführungsform weisen die Nachbearbeitungen 1318 und 1320 eine Filterung durch Nicht-Maximum-Unterdrückung auf, bei der die Schnittmenge über Vereinigung (Intersection over Union, IoU) für jeden Satz überlappender Rahmen ermittelt wird. Die IoU ist ein Verhältnis zwischen der Schnittfläche und der Gesamtfläche der projizierten Begrenzungsrahmen und einem Begrenzungsrahmen mit dem höchsten Vertrauenswert. In einem Beispiel enthält eine Frontalansichtdarstellung einen projizierten Begrenzungsrahmen mit einem höchsten Vertrauenswert (z. B. Rahmen A). Der Begrenzungsrahmen A wird ausgewählt und aus einer Liste projizierter Begrenzungsrahmen (z. B. Liste von B) entfernt und einer endgültigen Liste projizierter Begrenzungsrahmen (z. B. Liste von F) hinzugefügt. Die projizierte Liste von F ist zunächst leer. Der projizierte Begrenzungsrahmen A mit dem höchsten Vertrauenswert wird mit allen übrigen projizierten Begrenzungsrahmen in der Liste von B verglichen, um die IoU zwischen dem Rahmen A und der Liste von B zu bestimmen. Falls die IoU zwischen A und jedem B größer als ein IoU-Schwellenwert ist, wird der projizierte Begrenzungsrahmen B aus der Liste von B entfernt. Die IoU ist ein vorgegebener Schwellenwert, der die Stärke der endgültigen vorhergesagten Begrenzungsrahmen feinabstimmen kann. Der Prozess wird iterativ durchgeführt, bis keine projizierten Begrenzungsrahmen mehr in der Liste von B verbleiben. Konkret wird der projizierte Begrenzungsrahmen mit dem nächsthöheren Vertrauenswert (z. B. der nächste Rahmen A) erneut aus den übrigen projizierten Begrenzungsrahmen (z. B. die verbleibende Liste von B) ausgewählt und zur endgültigen Liste der projizierten Begrenzungsrahmen F hinzugefügt. Die IoU des nächsten Rahmens A mit der übrigen Liste von B wird ermittelt, und wieder werden die Rahmen entfernt, deren IoU höher als der IoU-Schwellenwert ist. Dieser Vorgang wird so lange wiederholt, bis in der übrigen Liste der vorgeschlagenen Begrenzungsrahmen B keine weiteren Vorschläge mehr vorhanden sind. Dementsprechend werden die redundanten projizierten Begrenzungsrahmen entfernt.
  • In einer Ausführungsform weist die Nachbearbeitung 1318 und 1320 eine Filterung mittels Nicht-Maximum-Unterdrückung auf, bei der die IoU-Berechnung aufgrund von nicht achsenausgerichteten Begrenzungsrahmen (z. B. Begrenzungsrahmen 1404B von 14B) modifiziert wird. Bei der Vogelperspektivedarstellung können die projizierten Begrenzungsrahmen aufgrund von Rotationen entlang der Z-Achse nicht-achsenausgerichtet sein. Die Nicht-Maximum-Unterdrückung, die auf die auf die Vogelperspektive projizierten 3D-Begrenzungsrahmen angewendet wird, wird dahingehend geändert, dass sie die auftretenden Rotationen berücksichtigt.
  • Beispielsweise bestimmt die Modifikation eine IoU für konvexe Polygone zur Berücksichtigung von Rotationen zwischen den projizierten Begrenzungsrahmen. Bei der modifizierten IoU-Bestimmung wird der Vorschlag mit dem höchsten Vertrauen (z. B. Rahmen A) iterativ aus einer Liste projizierter Begrenzungsrahmen (z. B. Liste von B) ausgewählt, die der endgültigen Liste von Projektionen (z. B. Liste F) hinzugefügt wird. Die IoU des Rahmens A mit allen Vorschlägen in der Liste von B wird ermittelt, und wieder werden die Rahmen entfernt, deren IoU über dem IoU-Schwellenwert liegt. Dieser Vorgang wird so lange wiederholt, bis keine Vorschläge mehr in der Liste der projizierten Begrenzungsrahmen (B) vorhanden sind. Beim Bestimmen der IoU zwischen dem Rahmen A und den Begrenzungsrahmen in der Liste von B werden alle Ecken des Rahmens A ermittelt, die im Rahmen B enthalten sind. Alle Ecken des Rahmens B, die im Rahmen A enthalten sind, werden ermittelt. Es werden Schnittpunkte zwischen dem Rahmen A und dem Rahmen B ermittelt, und alle Punkte werden im Uhrzeigersinn mittels arctan2 sortiert.
  • In einer Ausführungsform ermöglichen die Nachbearbeitung 1318 und die Nachbearbeitung 1320 die Nachbearbeitung einer Heatmap-Darstellung. Falls demselben Rahmen der Heatmap mehrere Rahmen zugewiesen sind, wird der Rahmen mit dem höchsten Vertrauenswert als endgültiger Begrenzungsrahmen, der dieser Zelle zugeordnet ist, ausgewählt. Auf diese Weise werden die projizierten Begrenzungsrahmen, die einen Schwellenwert für den höchsten Vertrauenswert nicht erfüllen, entfernt.
  • Allgemein sind die Nachbearbeitung 1318 und die Nachbearbeitung 1320 basierend auf derselben Darstellung konfigurierbar, die für die Projektion verwendet wird. Das Ergebnis der Nachbearbeitung 1318 und der Nachbearbeitung 1320 ist ein endgültiger Satz vorhergesagter Begrenzungsrahmen, die auf eine gleiche Darstellung projiziert und gefiltert werden, um die besten projizierten Begrenzungsrahmen für jede Sensormodalität auszuwählen. Den projizierten Begrenzungsrahmen sind Vertrauenswerte zugeordnet, die das Vorhandensein von Objektklasseninstanzen innerhalb der Begrenzungsrahmen anzeigen. Die Objektklasseninstanzen werden zum Markieren des projizierten Begrenzungsrahmens mit einer bestimmten Klasse verwendet. Die Ergebnisse der Nachbearbeitung 1318 und der Nachbearbeitung 1320 werden für eine Inkonsistenzberechnung 1322 verwendet. Während der Inkonsistenzberechnung 1322 werden die Vorhersagen des ISN 1310 und des LSN 1312 verglichen. Der Vergleich erfolgt basierend auf Fehlern oder Unsicherheiten. In einer Ausführungsform werden die aus fehler- oder unsicherheitsbasierten Berechnungen abgeleiteten Inkonsistenzen gemäß den bekannten Stärken und Schwächen der jeweiligen Modalität gewichtet.
  • In einer Ausführungsform ist die Ausgabe der Inkonsistenzberechnung 1322 eine Punktzahl für aktives Lernen, die die Inkonsistenz zwischen Sensormodalitäten schätzt. Die projizierten Begrenzungsrahmen, die über die verschiedenen Modalitäten inkonsistent sind, werden zum Bestimmen verwendet, ob die Szene informativ ist. Der Begriff „Szene“ bezieht sich hier auf einen Teil der Umgebung oder die gesamte Umgebung. In einer Ausführungsform bezieht sich die Szene auf einen Teil der Umgebung oder die gesamte Umgebung zu einem bestimmten Zeitpunkt. Allgemein bezieht sich eine Inkonsistenz auf eine Nichtübereinstimmung der entsprechenden Informationen zwischen einer ersten Sensormodalität und einer zweiten Sensormodalität.
  • Der Punktzahl für aktives Lernen wird dazu verwendet, die Begrenzungsrahmen in eine Rangfolge zu bringen, und die N informativsten Begrenzungsrahmen werden als informative Muster ausgewählt und als solche innerhalb der Szene gekennzeichnet. In einigen Beispielen wird die Szene als informative Szene bestimmt, wenn die Szene mindestens eine Punktzahl für aktives Lernen enthält, die Inkonsistenzen zwischen einer gleichen Darstellung über Sensormodalitäten hinweg angibt. In einer Ausführungsform ist eine Szene informativ, wenn die Inkonsistenzen für einen Teil der Szene oberhalb eines vorgegebenen Schwellenwerts auftreten. Ist beispielsweise die Anzahl der berechneten Inkonsistenzen größer als ein vorgegebener Schwellenwert, kann eine Szene als informativ markiert und zum Trainieren der neuronalen Netze zur Objekterkennung verwendet werden. Werden in mehr als 25 % der projizierten Begrenzungsrahmen Fehler oder Unsicherheiten entdeckt, kann eine Szene als informativ markiert werden. Werden Fehler oder Unsicherheiten in den projizierten Begrenzungsrahmen innerhalb einer vorgegebenen Entfernung zum Fahrzeug entdeckt, wird eine Szene als informativ markiert. Beispielsweise wird die Szene als informativ markiert, wenn sich ein Ort, der der berechneten Inkonsistenz zugeordnet ist, innerhalb einer vorgegebenen Entfernung zum Fahrzeug befindet. Eine informative Szene liefert zusätzliche oder ergänzende markierte Daten, aus denen das Objekterkennungsnetz lernen kann. Darüber hinaus liefert eine informative Szene zusätzliche oder ergänzende markierte Daten, für die ein Objekterkennungsnetz bekanntermaßen aufgrund inhärenter Einschränkungen nicht geeignet ist.
  • Berechnungen von fehlerbasierten Inkonsistenzen werden wie folgt ausgedrückt: E ( I S N ( S i ) , L S N ( S i ) )
    Figure DE102021133340A1_0001
  • wobei E die Funktion zum Berechnen des Fehlers zwischen dem ISN 1310 und dem LSN 1312 ist, und Si und Sl ein Satz eines ersten Satzes projizierter Begrenzungsrahmen und ein zweiter Satz projizierter Begrenzungsrahmen sind. In Ausführungsformen ist die Funktion E eine oder mehrere statistische Klassifizierungen. Allgemein werden die Vorhersagen des Objekterkennungsnetzes für eine Vielzahl von Modalitäten verglichen. Die Vorhersagen eines Objekterkennungsnetzes sind die vorhergesagten 3D-Begrenzungsrahmen, die auf eine gleiche Darstellung projiziert und nachbearbeitet werden. In Bezug auf die Inkonsistenzberechnung 1322 werden die vorhergesagten 3D-Begrenzungsrahmen, die auf eine gleiche Darstellung projiziert und nachbearbeitet werden, allgemein als Vorhersagen bezeichnet.
  • Bei einer Berechnung von fehlerbasierten Inkonsistenzen werden die Vorhersagen eines ersten Objekterkennungsnetzes einer Sensormodalität als Pseudogrundwahrheit markiert, während die Vorhersagen des übrigen Objekterkennungsnetzes als Vorhersagen markiert werden. Die Fehler zwischen der Pseudogrundwahrheit und den Vorhersagen der übrigen Objekterkennungsnetze werden ermittelt. Beispielsweise werden die Vorhersagen des ISN und des LSN verglichen, und entweder die ISN-Vorhersagen oder die LSN-Vorhersagen werden als Pseudogrundwahrheit markiert, und es werden eine Anzahl von Fehlerarten gezählt.
  • Die Begrenzungsrahmen werden beim Berechnen des Fehlers gewichtet. In Ausführungsformen hat ein Begrenzungsrahmen eine höhere Gewichtung, wenn sich der Begrenzungsrahmen näher am Fahrzeug befindet. Dadurch wird potenziell informativen Szenen eine höhere Wichtigkeit beigemessen, wenn die inkonsistenten Bereiche näher am Fahrzeug als inkonsistente Bereiche liegen, die weiter vom Egofahrzeug entfernt sind. Im Folgenden ist ein Beispiel für eine lineare Gewichtungsfunktion dargestellt: G e w i c h t u n g = max ( 0,1 E n t f e r n u n g 100 2 )
    Figure DE102021133340A1_0002
  • In Gleichung (2) wird die Entfernung zwischen dem Mittelpunkt eines Begrenzungsrahmens und einer Position des Fahrzeugs in einer Vogelperspektivedarstellung berechnet. In einer Ausführungsform wird keine Gewichtungsfunktion angewandt, und die Gewichtung wird für jede Vorhersage mit dem Wert eins belegt.
  • Zum Bestimmen von fehlerbasierten Unsicherheiten werden statistische Maßnahmen des Maschinenlernens verwendet. Zu den statistischen Maßnahmen des Maschinenlernens gehören unter anderem Falschpositiv-Falschnegativ (FP+FN), Präzision, Trefferquote und F 1-Wert oder beliebige Kombinationen davon. Allgemein basieren die statistischen Maßnahmen des Maschinenlernens auf einer Grundwahrheit, die mit einer Vorhersage verglichen wird. Beim Bewerten der statistischen Maßnahmen des Maschinenlemens ist ein Falschpositiv (FP) ein Fehler, der angibt, dass ein Zustand vorhanden ist, obwohl er in Wirklichkeit nicht vorhanden ist. Ein Falschnegativ (FN) ist ein Fehler, der fälschlicherweise angibt, dass ein Zustand nicht vorhanden ist. Ein Echtpositiv ist ein korrekt angegebener positiver Zustand und ein Echtnegativ ist ein korrekt angegebener negativer Zustand. Dementsprechend ist für ein statistisches FP+FN-Maß ein Falschpositiv eine Vorhersage, die keine ausreichend hohe IoU mit einem Grundwahrheitsrahmen aufweist. Wenn der Vertrauenswert einer Erkennung, die eine Grundwahrheit erkennen soll, niedriger als ein vorgegebener Schwellenwert ist, tritt ein Falschnegativ auf. Gezählt wird die Anzahl der FP+FN-Fehler zwischen den Pseudogrundwahrheitsmodalitätsvorhersagen und anderen Modalitätsvorhersagen.
  • Im Allgemeinen ist die Präzision die Anzahl der Echtpositiven dividiert durch die Summe aus Echtpositiven und Falschpositiven. Durch Subtrahieren der Präzision von eins ergibt sich eine Punktzahl für aktives Lernen, wobei die resultierende Inkonsistenz umso geringer ist, je höher die Präzision ist. Eine niedrigere Inkonsistenzberechnung bedeutet, dass die zugehörigen Projektionen konsistent sind. Ähnlich ist die Trefferquote die Anzahl der Echtpositiven dividiert durch die Summe aus Echtpositiven und Falschpositiven. Durch Subtrahieren der Trefferquote von eins ergibt sich eine Punktzahl für aktives Lernen, wobei die Inkonsistenzberechnung umso geringer ausfällt, je höher die Trefferquote ist. Ein F 1-Wert ist ein ausgewogener F-Wert und ist das harmonische Mittel aus Genauigkeit und Trefferquote. In einer Ausführungsform ist der F 1-Wert ein Maß für die Genauigkeit. Genauigkeit ist die Wahrscheinlichkeit, dass eine zufällig ausgewählte Instanz (positiv oder negativ, relevant oder irrelevant) korrekt ist. Ähnlich wie bei den statistischen Maßnahmen Präzision und Trefferquote ergibt die Subtraktion des F1-Wertes von eins eine Punktzahl für aktives Lernen, wobei die Inkonsistenzberechnung umso geringer ist, je höher der F1-Wert ist. Eine niedrigere Inkonsistenzberechnung bedeutet, dass die zugehörigen Projektionen über die Modalitäten konsistent sind. In einem Beispiel wird ein vorgegebener Schwellenwert auf die Punktzahl für aktives Lernen angewendet. Liegt die Punktzahl beispielsweise über 0,5, werden die zugehörigen Projektionen als inkonsistent bestimmt. Um die Beziehungen über den gesamten Bereich der Vertrauenswerte zu berücksichtigen, wird eine auf Unsicherheit basierende Inkonsistenzberechnung durchgeführt. Allgemein berechnet die auf Unsicherheit basierende Inkonsistenzberechnung eine modusübergreifende Inkonsistenz mit Wahrscheinlichkeitsverteilungen für jedes echtpositive Paar aus jedem Objekterkennungsnetz. Die auf Unsicherheit basierenden Inkonsistenzberechnungen können weiter in zwei Untergruppen unterteilt werden: Begrenzungsrahmen und Heatmap.
  • In einem Beispiel berechnet eine erste auf Unsicherheit basierende Inkonsistenzberechnung eine JS-Divergenz zwischen jedem echtpositiven Paar. Die Jensen-Shannon(JS)-Divergenz misst die Ähnlichkeit zwischen zwei Wahrscheinlichkeitsverteilungen, wie z. B. denen in Zusammenhang mit Begrenzungsrahmen. Die JS-Divergenz ist symmetrisch und hat stets einen endlichen Wert. In einigen Ausführungsformen wird jedem Falschpositiv und Falschnegativ ein Höchstwert zugewiesen. In einem Beispiel beträgt der Höchstwert 1,0.
  • Wenn die vorhergesagten 3D Begrenzungsrahmen auf eine Heatmap-Darstellung (Wahrscheinlichkeitskarte) abgebildet werden, wird alternativ eine Punktzahl für aktives Lernen unter Verwendung der Transinformation (Mutual Information, MI) berechnet. Allgemein ist die Transinformation ein Maß für die gegenseitige Abhängigkeit zwischen zwei Variablen. In einer Ausführungsform sind die beiden Variablen zwei Heatmaps. Die Transinformation quantifiziert die Menge an Informationen, die man über eine Zufallsvariable durch Beobachtung der anderen Zufallsvariablen erhält. Die Wahrscheinlichkeiten von zwei Heatmaps in einer Klasse werden gemittelt. Konkret wird die Transinformation für jede Zelle durch die folgende Gleichung berechnet: p ( i ) = 1 2 ( h I S N ( i ) + h L S N ( i ) )
    Figure DE102021133340A1_0003
  • Die Transinformation wird für jede Zelle wie folgt berechnet: M I ( i ) = H ( p ( i ) ) = 1 2 ( h I S N ( i ) ) + H ( h L S N ( i ) ) )
    Figure DE102021133340A1_0004
  • wobei H eine Entropiefunktion darstellt. Schließlich wird die endgültige Transinformation einer Heatmap wie folgt berechnet: M I = i 1 I M I ( i )
    Figure DE102021133340A1_0005
  • wobei I die Gesamtzahl der Zellen in einer Heatmap darstellt.
  • Das Blockdiagramm von 13 soll nicht bedeuten, dass das hier beschriebene aktive Lernen alle in 13 gezeigten Komponenten enthalten muss. Vielmehr kann das modalitätsübergreifende aktive Lernen weniger oder zusätzliche, in 13 nicht dargestellte Komponenten (z. B. zusätzliche Modalitäten, Erkennungsnetze, Nachbearbeitung, Inkonsistenzberechnungen usw.) umfassen. Das aktive Lernen kann je nach Einzelheiten der spezifischen Implementierung eine beliebige Anzahl zusätzlicher, nicht gezeigter Komponenten umfassen. Ferner können alle ISN-, LSN-, Nachbearbeitungs-, Inkonsistenzberechnungen und andere beschriebene Funktionalitäten teilweise oder vollständig in Hardware und/oder in einem Prozessor implementiert werden. Die Funktionalität kann beispielsweise in einer anwendungsspezifischen integrierten Schaltung, in einer in einem Prozessor implementierten Logik, in einer Logik, die in einer spezialisierten Grafikverarbeitungseinheit implementiert ist, oder in einer beliebigen anderen Vorrichtung implementiert sein.
  • Die Blockdiagramme von 14A, 14B und 14C sollen nicht bedeuten, dass die hier beschriebenen Darstellungen alle in 14A, 14B und 14C gezeigten Komponenten aufweisen müssen. Vielmehr können die Darstellungen weniger oder zusätzliche, in 14A, 14B und 14C nicht gezeigte Komponenten (z. B. Objekte, Objektklassen, Begrenzungsrahmen usw.) enthalten. Die Darstellungen enthalten je nach den Einzelheiten der spezifischen Implementierung eine beliebige Anzahl zusätzlicher, nicht gezeigter Komponenten. Ferner kann jede der beschriebenen Funktionen teilweise oder vollständig in Hardware und/oder in einem Prozessor implementiert sein. Die Funktionalität kann beispielsweise in einer anwendungsspezifischen integrierten Schaltung, in einer in einem Prozessor implementierten Logik, in einer Logik, die in einer spezialisierten Grafikverarbeitungseinheit implementiert ist, oder in einer beliebigen anderen Vorrichtung implementiert sein.
  • Prozess für modalitätsübergreifendes aktives Lernen
  • 15 ist ein Prozessflussdiagramm eines Prozesses 1500 für modalitätsübergreifendes aktives Lernen zur Objekterkennung. In Block 1502 werden ein erster Satz vorhergesagter Begrenzungsrahmen und ein zweiter Satz vorhergesagter Begrenzungsrahmen ermittelt. Die vorhergesagten Begrenzungsrahmen werden durch einen jeweiligen Sensor (z. B. die Sensoren 121 von 1) erzeugt, der mit einem neuronalen Netz zur Objekterkennung (z. B. ISN 1310, LSN 1312) kommunikativ gekoppelt ist. Dementsprechend ist ein erster Sensor (z. B. die Kamera 1302 von 13) mit einem ersten neuronalen Netz zur Objekterkennung (z. B. ISN 1310 von 13) kommunikativ gekoppelt, das einen ersten Satz vorhergesagter Begrenzungsrahmen (z. B. die vorhergesagten 3D-Rahmen 1314 von 13) erzeugt. Darüber hinaus ist ein zweiter Sensor (z. B. die LiDARs 1304 von 13) mit einem zweiten neuronalen Netz zur Objekterkennung (z. B. LSN 1312 von 13) kommunikativ gekoppelt, das einen zweiten Satz vorhergesagter Begrenzungsrahmen (z. B. die vorhergesagten 3D-Rahmen 1316 von 13) erzeugt. Jedem Begrenzungsrahmen des ersten Satzes vorhergesagter Begrenzungsrahmen und des zweiten Satzes vorhergesagter Begrenzungsrahmen wird ein Vertrauenswert zugewiesen, der das Vorhandensein einer Objektklasseninstanz innerhalb des jeweiligen vorhergesagten Begrenzungsrahmens angibt.
  • In Block 1504 werden der erste Satz vorhergesagter Begrenzungsrahmen und der zweite Satz vorhergesagter Begrenzungsrahmen in eine gleiche Darstellung (z. B. die Frontalansichtdarstellung 1400A von 14A, die Vogelperspektivedarstellung 1400B von 14B oder eine Heatmap-Darstellung 1400C von 14C) projiziert. Die Projektion der vorhergesagten Begrenzungsrahmen auf eine gleiche Darstellung wird während der Nachbearbeitung (z. B. Nachbearbeitung 1318 und Nachbearbeitung 1320 von 13) durchgeführt.
  • In Block 1506 werden die Projektionen gefiltert, wobei vorhergesagte Begrenzungsrahmen, die einen maximalen Vertrauenswert erfüllen, für Inkonsistenzberechnungen ausgewählt werden. In einer Ausführungsform ist die Filterung eine Nicht-Maximum-Unterdrückung, die basierend auf einer Art der gleichen Darstellung angepasst wird. Anders ausgedrückt, kann sich die Form der Nicht-Maximum-Unterdrückung je nach der gleichen Darstellung, auf die die Begrenzungsrahmen projiziert werden, ändern. Bei einer Frontalansichtdarstellung beinhaltet das Filtern über Nicht-Maximum-Unterdrückung beispielsweise das Bestimmen einer Schnittmenge der Vereinigung zwischen jedem Satz überlappender Begrenzungsrahmen, und ein Begrenzungsrahmen mit einem maximalen Vertrauenswert wird als endgültiger Wert ausgewählt. In einem anderen Beispiel beinhaltet das Filtern über Nicht-Maximum-Unterdrückung für eine Vogelperspektive das Bestimmen einer Schnittmenge der Vereinigung zwischen jedem Satz überlappender Begrenzungsrahmen, wobei die IoU-Berechnung zum Bestimmen der Schnittmenge konvexer Polygone modifiziert wird, um Rotationen zwischen den vorhergesagten Rahmen zu berücksichtigen, wenn sie auf eine Vogelperspektivedarstellung projiziert werden. Als Endwert wird ein Begrenzungsrahmen mit einem maximalen Vertrauenswert ausgewählt. In einem anderen Beispiel wird eine Filterung über Nicht-Maximum-Unterdrückung auf eine Heatmap-Darstellung angewendet. Wenn zum Beispiel derselben Zelle der Heatmap mehrere vorhergesagte Begrenzungsrahmen zugeordnet sind, wird der Rahmen mit dem höchsten Vertrauenswert als endgültiger Begrenzungsrahmen für diese Zelle ausgewählt.
  • In Block 1508 werden Inkonsistenzen über die gefilterten, projizierten Begrenzungsrahmen basierend auf der Filterung der Projektionen berechnet. Die Inkonsistenzberechnungen (z. B. 1322 von 13) sind fehlerbasiert, unsicherheitsbasiert oder eine Kombination davon. Aus den Inkonsistenzen wird eine Punktzahl für aktives Lernen abgeleitet. In Block 1510 ist eine extrahierte Szene eine informative Szene, die auf den berechneten Inkonsistenzen basiert. Eine Szene ist beispielsweise dann informativ, wenn die Szene mindestens eine Punktzahl für aktives Lernen enthält, die auf Inkonsistenzen zwischen ein und derselben Darstellung in verschiedenen Sensormodalitäten hinweist. In einer Ausführungsform ist eine Szene informativ, wenn die Inkonsistenzen für einen Teil der Szene oberhalb eines vorgegebenen Schwellenwerts auftreten. Werden zum Beispiel in mehr als 25 % der projizierten Begrenzungsrahmen Fehler oder Unsicherheiten entdeckt, kann eine Szene als informativ markiert werden. Werden Fehler oder Unsicherheiten in den projizierten Begrenzungsrahmen innerhalb einer vorgegebenen Entfernung zum Fahrzeug entdeckt, kann eine Szene als informativ markiert werden. Durch Bestimmen, ob die Szene informativ ist, werden nur sinnvolle Daten gespeichert, sodass nicht alle aufgezeichneten Daten gespeichert werden müssen. Daher sind die vorliegenden Techniken innerhalb eines begrenzten Speicherplatzes anwendbar. Aufgrund des geringeren Speicherplatzes werden die vorliegenden Techniken im Fahrzeug ausgeführt.
  • Mit Anmerkungen versehene Szenen werden beim Maschinenlernen verwendet, um Modelle zu trainieren und das Bewusstsein für verschiedene Umgebungen zu erhöhen. Anmerkungen werden häufig durch Menschen vorgenommen, was kostspielig und mit menschlichen Voreingenommenheiten und Fehlern behaftet ist. Generell gilt, dass Maschinenlernmodelle umso robuster und vollständiger werden, je mehr die Modelle mit markierten Datenmengen arbeiten. Die vorliegenden Techniken reduzieren den Aufwand für das Erstellen von Anmerkungen, indem sie interessante Daten auf Grundlage des Modellverständnisses auswählen und annotieren. In Ausführungsformen werden mit den vorliegenden Verfahren Rohdaten aus Protokollen anhand eines Satzes von Bildern und Punktwolken anstelle einer einzelnen Eingabemodalität ermittelt.
  • Die Möglichkeit, bedeutungslose Daten automatisch zu filtern, schafft ein effizienteres System mit ausreichender Speicherfähigkeit, da nicht alle Daten gespeichert werden müssen. Jedes Objekterkennungsnetz verwendet aktives Lernen zum Auswählen der zum Lernen verwendeten Daten, sodass die zentralen Maschinenlernalgorithmen des Objekterkennungsnetzes ein hohes Maß an Genauigkeit erreichen.
  • Das Prozessflussdiagramm von 15 soll nicht bedeuten, dass die Blöcke des Beispielprozesses 1500 in irgendeiner Reihenfolge ausgeführt werden müssen oder dass alle Blöcke in jedem Fall enthalten sein müssen. Ferner kann je nach den Einzelheiten der spezifischen Implementierung eine beliebige Anzahl zusätzlicher, nicht gezeigter Blöcke in den Beispielprozess 1500 einbezogen werden.
  • In der vorgenannten Beschreibung sind Ausführungsformen der Erfindung mit Bezug auf zahlreiche spezifische Details beschrieben, die von Implementierung zu Implementierung verschieden sein können. Die Beschreibung und die Zeichnungen sind dementsprechend in einem veranschaulichenden statt einem einschränkenden Sinn zu sehen. Der einzige und ausschließliche Indikator für den Schutzbereich der Erfindung und das, was durch die Anmelder als Schutzbereich der Erfindung beabsichtigt ist, ist der wörtliche und äquivalente Schutzbereich der Menge der Ansprüche, die aus dieser Anmeldung in der spezifischen Form hervorgehen, in der diese Ansprüche ausgestellt sind, einschließlich etwaiger späterer Korrekturen. Alle hier ausdrücklich dargelegten Definitionen für Begriffe, die in diesen Ansprüchen enthalten sind, regeln die Bedeutung der in den Ansprüchen verwendeten Begriffe. Darüber hinaus kann bei Verwendung des Begriffs „ferner umfassend“ in der vorhergehenden Beschreibung oder in den folgenden Ansprüchen das auf diese Formulierung Folgende ein zusätzlicher Schritt oder eine zusätzliche Einrichtung oder ein Unterschritt bzw. eine Untereinrichtung eines bereits erwähnten Schritts oder einer bereits erwähnten Einrichtung sein.

Claims (20)

  1. Verfahren, umfassend: Erzeugen eines ersten Satzes vorhergesagter Begrenzungsrahmen und eines zweiten Satzes vorhergesagter Begrenzungsrahmen durch einen Prozessor, wobei einem jeweiligen vorhergesagten Begrenzungsrahmen des ersten Satzes vorhergesagter Begrenzungsrahmen und des zweiten Satzes vorhergesagter Begrenzungsrahmen ein Klassifizierungswert zugewiesen wird, der das Vorhandensein einer Objektklasseninstanz innerhalb des jeweiligen vorhergesagten Begrenzungsrahmens angibt; Projizieren des ersten Satzes vorhergesagter Begrenzungsrahmen und des zweiten Satzes vorhergesagter Begrenzungsrahmen durch den Prozessor in eine gleiche Darstellung; Filtern der Projektionen durch den Prozessor, wobei vorhergesagte Begrenzungsrahmen, die einen maximalen Vertrauenswert erfüllen, für Inkonsistenzberechnungen ausgewählt werden; Berechnen von Inkonsistenzen in den projizierten Begrenzungsrahmen durch den Prozessor basierend auf Filtern der Projektionen; Extrahieren einer informativen Szene durch den Prozessor basierend auf den berechneten Inkonsistenzen; und Trainieren eines ersten neuronalen Netzes zur Objekterkennung oder eines zweiten neuronalen Netzes zur Objekterkennung unter Verwendung der informativen Szenen durch den Prozessor.
  2. Verfahren gemäß Anspruch 1, ferner umfassend das Extrahieren der informativen Szene, wenn eine Anzahl der berechneten Inkonsistenzen größer als ein vorgegebener Schwellenwert ist.
  3. Verfahren gemäß Anspruch 1 oder 2, ferner umfassend das Gewichten der berechneten Inkonsistenzen gemäß einer Entfernung der projizierten Begrenzungsrahmen von einem Fahrzeug.
  4. Verfahren gemäß Anspruch 1, 2 oder 3, wobei die gleiche Darstellung eine Frontalansichtdarstellung, eine Vogelperspektivedarstellung oder eine Heatmap-Darstellung ist.
  5. Verfahren gemäß Anspruch 1, ferner umfassend: Projizieren des ersten Satzes vorhergesagter Begrenzungsrahmen und des zweiten Satzes vorhergesagter Begrenzungsrahmen in eine gleiche Frontalansichtdarstellung; Filtern der Projektionen unter Verwendung von Nicht-Maximum-Unterdrückung, um redundante Projektionen zu eliminieren, die zu demselben Objekt gehören; und Berechnen von Inkonsistenzen in den Vertrauenswerten der gefilterten Projektion über eine Berechnung von fehlerbasierten Inkonsistenzen.
  6. Verfahren gemäß Anspruch 1, ferner umfassend: Projizieren des ersten Satzes vorhergesagter Begrenzungsrahmen und des zweiten Satzes vorhergesagter Begrenzungsrahmen in eine gleiche Vogelperspektivedarstellung; Filtern der Projektionen unter Verwendung von Nicht-Maximum-Unterdrückung mit einer modifizierten Schnittmenge über Vereinigung, um redundante Projektionen zu eliminieren, die zu demselben Objekt gehören; und Berechnen von Inkonsistenzen in den Vertrauenswerten der gefilterten Projektion über eine Berechnung von fehlerbasierten Inkonsistenzen.
  7. Verfahren gemäß Anspruch 1, ferner umfassend: Projizieren des ersten Satzes vorhergesagter Begrenzungsrahmen und des zweiten Satzes vorhergesagter Begrenzungsrahmen in eine gleiche Heatmap-Darstellung; Filtern der Projektionen durch Auswählen eines höchsten Vertrauenswertes einer Vielzahl von Begrenzungsrahmen, die einer Zelle der Heatmap-Darstellung zugeordnet sind; und Berechnen von Inkonsistenzen in den Vertrauenswerten der gefilterten Projektion über eine Berechnung von fehlerbasierten Inkonsistenzen.
  8. Verfahren gemäß Anspruch 1, ferner umfassend: Projizieren des ersten Satzes vorhergesagter Begrenzungsrahmen und des zweiten Satzes vorhergesagter Begrenzungsrahmen in eine gleiche Frontalansichtdarstellung; Filtern der Projektionen unter Verwendung von Nicht-Maximum-Unterdrückung, um redundante Projektionen zu eliminieren, die zu demselben Objekt gehören; und Berechnen von Inkonsistenzen in den Vertrauenswerten der gefilterten Projektion über eine Berechnung von unsicherheitsbasierten Inkonsistenzen.
  9. Verfahren gemäß Anspruch 1, ferner umfassend: Projizieren des ersten Satzes vorhergesagter Begrenzungsrahmen und des zweiten Satzes vorhergesagter Begrenzungsrahmen in eine gleiche Vogelperspektivedarstellung; Filtern der Projektionen unter Verwendung von Nicht-Maximum-Unterdrückung mit einer modifizierten Schnittmenge über Vereinigung, um redundante Projektionen zu eliminieren, die zu demselben Objekt gehören; und Berechnen von Inkonsistenzen in den Vertrauenswerten der gefilterten Projektion über eine Berechnung von unsicherheitsbasierten Inkonsistenzen.
  10. Verfahren gemäß einem der Ansprüche 1, 2, 3, 4, 5, 6, 7, 8 oder 9, ferner umfassend das Extrahieren der informativen Szene, wenn sich ein zur berechneten Inkonsistenz gehörender Ort innerhalb einer vorgegebenen Entfernung von einem Fahrzeug befindet.
  11. Nichtflüchtiges computerlesbares Speichermedium, das mindestens ein Programm zur Ausführung durch mindestens einen Prozessor einer ersten Vorrichtung umfasst, wobei das mindestens eine Programm Anweisungen enthält, die beim Ausführen durch den mindestens einen Prozessor ein Verfahren ausführen, das Folgendes umfasst: Erzeugen eines ersten Satzes vorhergesagter Begrenzungsrahmen und eines zweiten Satzes vorhergesagter Begrenzungsrahmen, wobei einem jeweiligen vorhergesagten Begrenzungsrahmen des ersten Satzes vorhergesagter Begrenzungsrahmen und des zweiten Satzes vorhergesagter Begrenzungsrahmen ein Klassifizierungswert zugewiesen wird, der das Vorhandensein einer Objektklasseninstanz innerhalb des jeweiligen vorhergesagten Begrenzungsrahmens angibt; Projizieren des ersten Satzes vorhergesagter Begrenzungsrahmen und des zweiten Satzes vorhergesagter Begrenzungsrahmen in eine gleiche Darstellung; Filtern der Projektionen, wobei vorhergesagte Begrenzungsrahmen, die einen maximalen Vertrauenswert erfüllen, für Inkonsistenzberechnungen ausgewählt werden; Berechnen von Inkonsistenzen in den projizierten Begrenzungsrahmen basierend auf Filterung der Projektionen; Extrahieren einer informativen Szene basierend auf den berechneten Inkonsistenzen; und Trainieren eines ersten neuronalen Netzes zur Objekterkennung oder eines zweiten neuronalen Netzes zur Objekterkennung unter Verwendung der informativen Szenen.
  12. Nichtflüchtiges, computerlesbares Speichermedium gemäß Anspruch 11, ferner umfassend das Extrahieren der informativen Szene, wenn eine Anzahl der berechneten Inkonsistenzen größer als ein vorgegebener Schwellenwert ist.
  13. Nichtflüchtiges, computerlesbares Speichermedium gemäß Anspruch 11 oder 12, ferner umfassend das Gewichten der berechneten Inkonsistenzen gemäß einer Entfernung der projizierten Begrenzungsrahmen von einem Fahrzeug.
  14. Nichtflüchtiges, computerlesbares Speichermedium gemäß Anspruch 11, 12 oder 13, wobei die gleiche Darstellung eine von einer Frontalansichtdarstellung, einer Vogelperspektivedarstellung oder einer Heatmap-Darstellung ist.
  15. Fahrzeug, umfassend: mindestens zwei Sensoren, wobei ein erster Sensor mit einem ersten neuronalen Objekterkennungsnetz kommunikativ gekoppelt ist, das einen ersten Satz vorhergesagter Begrenzungsrahmen erzeugt, und ein zweiter Sensor mit einem zweiten neuronalen Objekterkennungsnetz kommunikativ gekoppelt ist, das einen zweiten Satz vorhergesagter Begrenzungsrahmen erzeugt, wobei dem jeweiligen vorhergesagten Begrenzungsrahmen des ersten Satzes vorhergesagter Begrenzungsrahmen und des zweiten Satzes vorhergesagter Begrenzungsrahmen ein Klassifizierungswert zugewiesen wird, der das Vorhandensein einer Objektklasseninstanz innerhalb des jeweiligen vorhergesagten Begrenzungsrahmens angibt; mindestens ein computerlesbares Medium, das computerausführbare Anweisungen speichert; mindestens einen Prozessor, der mit den mindestens zwei Sensoren kommunikativ gekoppelt und dazu ausgelegt ist, die computerausführbaren Anweisungen auszuführen, wobei die Ausführung das Ausführen folgender Operationen aufweist: Projizieren des ersten Satzes vorhergesagter Begrenzungsrahmen und des zweiten Satzes vorhergesagter Begrenzungsrahmen in eine gleiche Darstellung; Filtern der Projektionen, wobei vorhergesagte Begrenzungsrahmen, die einen maximalen Vertrauenswert erfüllen, für Inkonsistenzberechnungen ausgewählt werden; Berechnen von Inkonsistenzen in den projizierten Begrenzungsrahmen basierend auf Filterung der Projektionen; Extrahieren einer informativen Szene basierend auf den berechneten Inkonsistenzen; und Trainieren des ersten neuronalen Netzes zur Objekterkennung oder des zweiten neuronalen Netzes zur Objekterkennung unter Verwendung der informativen Szenen.
  16. Fahrzeug gemäß Anspruch 15, wobei die Vorgänge ferner umfassen, dass die informative Szene extrahiert wird, wenn eine Anzahl der berechneten Inkonsistenzen größer als ein vorgegebener Schwellenwert ist.
  17. Fahrzeug gemäß Anspruch 15 oder 16, wobei die gleiche Darstellung eine Frontalansichtdarstellung, eine Vogelperspektivedarstellung oder eine Heatmap-Darstellung ist.
  18. Fahrzeug gemäß Anspruch 15, 16 oder 17, wobei das erste neuronale Objekterkennungsnetz ein semantisches Bildsegmentierungsnetz ist und das zweite Objekterkennungsnetz ein semantisches LiDAR-Segmentierungsnetz ist.
  19. Fahrzeug gemäß Anspruch 15, 16, 17 oder 18, wobei der erste Sensor ein Bildsensor und der zweite Sensor ein LiDAR ist.
  20. Fahrzeug gemäß dem Anspruch 15, 16, 17, 18 oder 19, wobei die Vorgänge ferner das Gewichten der berechneten Inkonsistenzen gemäß der Entfernung der projizierten Begrenzungsrahmen vom Fahrzeug umfassen.
DE102021133340.7A 2021-06-30 2021-12-15 Modalitätsübergreifendes aktives lernen zur objekterkennung Pending DE102021133340A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/363,085 2021-06-30
US17/363,085 US11887324B2 (en) 2021-06-30 2021-06-30 Cross-modality active learning for object detection

Publications (1)

Publication Number Publication Date
DE102021133340A1 true DE102021133340A1 (de) 2023-01-05

Family

ID=78463535

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021133340.7A Pending DE102021133340A1 (de) 2021-06-30 2021-12-15 Modalitätsübergreifendes aktives lernen zur objekterkennung

Country Status (5)

Country Link
US (1) US11887324B2 (de)
KR (1) KR20230004212A (de)
CN (1) CN115565149A (de)
DE (1) DE102021133340A1 (de)
GB (1) GB2608467A (de)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11967068B2 (en) * 2021-07-13 2024-04-23 International Business Machines Corporation Pre-NMS filtering using a heat map
US20230286530A1 (en) * 2022-03-08 2023-09-14 Nvidia Corporation Object data curation of map information using neural networks for autonomous systems and applications
CN117351518B (zh) * 2023-09-26 2024-04-19 武汉大学 一种基于层级差异的无监督跨模态行人重识别方法及系统
CN117392396B (zh) * 2023-12-08 2024-03-05 安徽蔚来智驾科技有限公司 跨模态目标状态的检测方法、设备、智能设备和介质

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2589751B (en) 2019-01-23 2023-05-17 Motional Ad Llc Automatically choosing data samples for annotation
US11380108B1 (en) * 2019-09-27 2022-07-05 Zoox, Inc. Supplementing top-down predictions with image features
US11532168B2 (en) * 2019-11-15 2022-12-20 Nvidia Corporation Multi-view deep neural network for LiDAR perception
US10984290B1 (en) * 2019-11-15 2021-04-20 Zoox, Inc. Multi-task learning for real-time semantic and/or depth aware instance segmentation and/or three-dimensional object bounding
KR20220009757A (ko) * 2020-07-16 2022-01-25 현대자동차주식회사 딥러닝 기반 앵커 프리 물체 탐지 방법 및 장치
US20220146277A1 (en) * 2020-11-09 2022-05-12 Argo AI, LLC Architecture for map change detection in autonomous vehicles
US11769318B2 (en) * 2020-11-23 2023-09-26 Argo AI, LLC Systems and methods for intelligent selection of data for building a machine learning model
US20220188695A1 (en) * 2020-12-16 2022-06-16 Argo AI, LLC Autonomous vehicle system for intelligent on-board selection of data for training a remote machine learning model
US20220237414A1 (en) * 2021-01-26 2022-07-28 Nvidia Corporation Confidence generation using a neural network
US20220261593A1 (en) * 2021-02-16 2022-08-18 Nvidia Corporation Using neural networks to perform object detection, instance segmentation, and semantic correspondence from bounding box supervision
CN112560876B (zh) * 2021-02-23 2021-05-11 中国科学院自动化研究所 解耦度量的单阶段小样本目标检测方法

Also Published As

Publication number Publication date
US20230005173A1 (en) 2023-01-05
KR20230004212A (ko) 2023-01-06
US11887324B2 (en) 2024-01-30
CN115565149A (zh) 2023-01-03
GB2608467A (en) 2023-01-04

Similar Documents

Publication Publication Date Title
DE112020000487T5 (de) Automatisches wählen von datenproben zur annotation
DE102020111938A1 (de) Systeme und verfahren zum planen und aktualisieren einer fahrzeugtrajektorie
DE102020129456A1 (de) Trajektorienvorhersage aus einer vorberechneten oder dynamisch generierten bank von trajektorien
DE102020131323A1 (de) Kamera-zu-lidar-kalibration und -validierung
DE102020129854A1 (de) Sequenzielle fusion zur 3d-objektdetektion
DE112019004832T5 (de) Betrieb eines Fahrzeugs unter Verwendung von Bewegungsplanung mit maschinellem Lernen
DE102020133744A1 (de) Vordergrundextraktion unter verwendung von flächenanpassung
DE112020000653T5 (de) Zusammenführen von daten aus mehreren lidar-vorrichtungen
DE102020133982A1 (de) Automatisierte objektannotation unter verwendung fusionierter kamera-/lidar-datenpunkte
DE102021112349A1 (de) Fahrzeugbetrieb unter verwendung eines dynamischen belegungsrasters
DE102021133340A1 (de) Modalitätsübergreifendes aktives lernen zur objekterkennung
DE112019006282T5 (de) Betrieb eines Fahrzeugs unter Verwendung mehrerer Bewegungsbeschränkungen
DE112020002695T5 (de) Autonomer fahrzeugbetrieb mittels linearer temporaler logik
DE102020210499A1 (de) Datengesteuerte regelwerke
DE102021127118A1 (de) Identifizieren von Objekten mit LiDAR
DE102021124913A1 (de) Metrik-backpropagation für die beurteilung der leistung von untersystemen
DE102021132722A1 (de) Auswählen von testszenarien zum bewerten der leistung autonomer fahrzeuge
DE102020128155A1 (de) Bedingte bewegungsvorhersagen
DE102021114032A1 (de) Identifizieren von hintergrundmerkmalen mittels lidar
DE102020114306A1 (de) Schätzen von geschwindigkeitsprofilen
DE102021132850A1 (de) Homotopiebasierter planer für autonome fahrzeuge
DE102021118316A1 (de) Monokulare 3d-objekterkennung aus bildsemantiknetzwerk
DE102020128433A1 (de) Simulation eines autonomen Fahrzeugs zur Verbesserung der Sicherheit und Zuverlässigkeit eines autonomen Fahrzeugs
DE102021211781A1 (de) Fahrzeugbetrieb unter verwendung von verhaltensregelprüfungen
DE102021110157A1 (de) Av-wegplanung mit kalibrierungsinformationen