DE102020102823A1 - Fahrzeugkapselnetzwerke - Google Patents

Fahrzeugkapselnetzwerke Download PDF

Info

Publication number
DE102020102823A1
DE102020102823A1 DE102020102823.7A DE102020102823A DE102020102823A1 DE 102020102823 A1 DE102020102823 A1 DE 102020102823A1 DE 102020102823 A DE102020102823 A DE 102020102823A DE 102020102823 A1 DE102020102823 A1 DE 102020102823A1
Authority
DE
Germany
Prior art keywords
vehicle
routing
capsule
coefficients
procedure according
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.)
Withdrawn
Application number
DE102020102823.7A
Other languages
English (en)
Inventor
Zhen Zhao
Kp Unnikrishnan
Ashley Naomi Kleinhans
Gursharan Sandhu
Ishan Patel
Bryan Roger Goodman
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ford Global Technologies LLC
Original Assignee
Ford Global Technologies LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ford Global Technologies LLC filed Critical Ford Global Technologies LLC
Publication of DE102020102823A1 publication Critical patent/DE102020102823A1/de
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • B60R16/023Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements for transmission of signals between vehicle parts or subsystems
    • B60R16/0231Circuits relating to the driving or the functioning of the vehicle
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/01Detecting movement of traffic to be counted or controlled
    • G08G1/0104Measuring and analyzing of parameters relative to traffic conditions
    • G08G1/0108Measuring and analyzing of parameters relative to traffic conditions based on the source of data
    • G08G1/0116Measuring and analyzing of parameters relative to traffic conditions based on the source of data from roadside infrastructure, e.g. beacons
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0276Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/776Validation; Performance evaluation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/52Surveillance or monitoring of activities, e.g. for recognising suspicious objects
    • G06V20/54Surveillance or monitoring of activities, e.g. for recognising suspicious objects of traffic, e.g. cars on the road, trains or boats
    • 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
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/01Detecting movement of traffic to be counted or controlled
    • G08G1/0104Measuring and analyzing of parameters relative to traffic conditions
    • G08G1/0137Measuring and analyzing of parameters relative to traffic conditions for specific applications
    • G08G1/0145Measuring and analyzing of parameters relative to traffic conditions for specific applications for active traffic flow control
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/01Detecting movement of traffic to be counted or controlled
    • G08G1/017Detecting movement of traffic to be counted or controlled identifying vehicles
    • G08G1/0175Detecting movement of traffic to be counted or controlled identifying vehicles by photographing vehicles, e.g. when violating traffic rules
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/01Detecting movement of traffic to be counted or controlled
    • G08G1/04Detecting movement of traffic to be counted or controlled using optical or ultrasonic detectors
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/09Arrangements for giving variable traffic instructions
    • G08G1/0962Arrangements for giving variable traffic instructions having an indicator mounted inside the vehicle, e.g. giving voice messages
    • G08G1/0967Systems involving transmission of highway information, e.g. weather, speed limits
    • G08G1/096708Systems involving transmission of highway information, e.g. weather, speed limits where the received information might be used to generate an automatic action on the vehicle control
    • G08G1/096725Systems involving transmission of highway information, e.g. weather, speed limits where the received information might be used to generate an automatic action on the vehicle control where the received information generates an automatic action on the vehicle control
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/09Arrangements for giving variable traffic instructions
    • G08G1/0962Arrangements for giving variable traffic instructions having an indicator mounted inside the vehicle, e.g. giving voice messages
    • G08G1/0967Systems involving transmission of highway information, e.g. weather, speed limits
    • G08G1/096733Systems involving transmission of highway information, e.g. weather, speed limits where a selection of the information might take place
    • G08G1/096741Systems involving transmission of highway information, e.g. weather, speed limits where a selection of the information might take place where the source of the transmitted information selects which information to transmit to each vehicle
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/09Arrangements for giving variable traffic instructions
    • G08G1/0962Arrangements for giving variable traffic instructions having an indicator mounted inside the vehicle, e.g. giving voice messages
    • G08G1/0967Systems involving transmission of highway information, e.g. weather, speed limits
    • G08G1/096733Systems involving transmission of highway information, e.g. weather, speed limits where a selection of the information might take place
    • G08G1/09675Systems involving transmission of highway information, e.g. weather, speed limits where a selection of the information might take place where a selection from the received information takes place in the vehicle
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/09Arrangements for giving variable traffic instructions
    • G08G1/0962Arrangements for giving variable traffic instructions having an indicator mounted inside the vehicle, e.g. giving voice messages
    • G08G1/0967Systems involving transmission of highway information, e.g. weather, speed limits
    • G08G1/096766Systems involving transmission of highway information, e.g. weather, speed limits where the system is characterised by the origin of the information transmission
    • G08G1/096783Systems involving transmission of highway information, e.g. weather, speed limits where the system is characterised by the origin of the information transmission where the origin of the information is a roadside individual element
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G5/00Traffic control systems for aircraft, e.g. air-traffic control [ATC]
    • G08G5/0073Surveillance aids
    • G08G5/0078Surveillance aids for monitoring traffic from the aircraft
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/07Target detection

Abstract

Diese Offenbarung stellt Fahrzeugkapselnetzwerke bereit. Ein System umfasst einen Computer, der einen Prozessor und einen Speicher beinhaltet; wobei der Speicher durch den Prozessor ausführbare Anweisungen zum Detektieren, Klassifizieren und Lokalisieren eines Objektes durch Verarbeiten von Videokameradaten mit einem Kapselnetzwerk beinhaltet, wobei das Trainieren des Kapselnetzwerkes Speichern von Routing-Koeffizienten beinhaltet. Der Computer kann ferner dazu programmiert sein, das detektierte, klassifizierte und lokalisierte Objekt zu empfangen.

Description

  • GEBIET DER TECHNIK
  • Die Offenbarung betrifft im Allgemeinen Fahrzeugsensoren.
  • ALLGEMEINER STAND DER TECHNIK
  • Fahrzeuge können dazu ausgestattet sein, sowohl in einem autonomen als auch in einem insassengesteuerten Modus betrieben zu werden. Fahrzeuge können mit Rechenvorrichtungen, Netzwerken, Sensoren und Steuerungen ausgestattet sein, um Informationen bezüglich der Umgebung des Fahrzeugs zu erfassen und das Fahrzeug basierend auf den Informationen zu betreiben. Der sichere und komfortable Betrieb des Fahrzeugs kann vom Erfassen genauer und rechtzeitiger Informationen bezüglich der Umgebung des Fahrzeugs abhängen. Fahrzeugsensoren können Daten über zu fahrende Routen und Objekte bereitstellen, die in der Umgebung des Fahrzeugs zu vermeiden sind. Der sichere und effiziente Betrieb des Fahrzeugs kann vom Erfassen genauer und rechtzeitiger Informationen in Bezug auf Routen und Objekte in der Umgebung eines Fahrzeugs abhängig sein, während das Fahrzeug auf einer Fahrbahn betrieben wird.
  • KURZDARSTELLUNG
  • Fahrzeuge können dazu ausgestattet sein, sowohl in einem autonomen als auch in einem insassengesteuerten Modus betrieben zu werden. Mit einem halbautonomen oder vollautonomen Modus ist ein Betriebsmodus gemeint, bei dem ein Fahrzeug teilweise oder vollständig durch eine Rechenvorrichtung als Teil eines Informationssystems gelenkt werden kann, das Sensoren und Steuerungen aufweist. Das Fahrzeug kann besetzt oder unbesetzt sein, jedoch kann das Fahrzeug in beiden Fällen teilweise oder vollständig ohne die Unterstützung eines Insassen gelenkt werden. Für die Zwecke dieser Offenbarung ist ein autonomer Modus als ein Modus definiert, bei dem Antrieb (z. B. über einen Antriebsstrang, der eine Brennkraftmaschine und/oder einen Elektromotor beinhaltet), Bremsung und Lenkung des Fahrzeugs jeweils durch einen oder mehrere Fahrzeugcomputer gesteuert werden; in einem halbautonomen Modus steuert der bzw. steuern die Fahrzeugcomputer eines oder zwei von Antrieb, Bremsung und Lenkung des Fahrzeugs. In einem nichtautonomen Fahrzeug werden keine davon durch einen Computer gesteuert.
  • Eine Rechenvorrichtung in einem Fahrzeug kann dazu programmiert sein, Informationen in Bezug auf die äußere Umgebung eines Fahrzeugs zu erfassen und die Informationen zu verwenden, um einen Weg des Fahrzeugs zu bestimmen, auf dem das Fahrzeug basierend auf einem Weg des Fahrzeugs in einem autonomen oder halbautonomen Modus betrieben werden soll. Ein Weg des Fahrzeugs ist eine gerade oder eine gekrümmte Linie, die aufeinanderfolgende Standorte (d. h. Standorte zu verschiedenen Zeitpunkten) eines Fahrzeugs in einer zweidimensionalen Ebene (2D-Ebene) beschreibt, die parallel zu der Fläche einer Fahrbahn verläuft, auf der das Fahrzeug betrieben wird. Ein Fahrzeug kann auf einer Fahrbahn basierend auf einem Weg des Fahrzeugs betrieben werden, indem Befehle zum Führen des Antriebsstrangs, der Bremsung und von Lenkkomponenten des Fahrzeugs bestimmt werden, um ein Fahrzeug derart zu betreiben, dass es sich entlang des Weges bewegt. Die Informationen in Bezug auf die äußere Umgebung können den Standort eines verfolgten Objektes in globalen Koordinaten beinhalten. Bei einem beispielhaften verfolgten Objekt kann es sich um ein weiteres Fahrzeug handeln. Die Informationen können von einem Verkehrsinformationssystem empfangen werden und können auf der Verarbeitung von Daten von stationären Videokameras mit einem Kapselnetzwerk basieren.
  • In dieser Schrift wird ein Verfahren offenbart, das Detektieren, Klassifizieren und Lokalisieren eines Objektes durch Verarbeiten von Videokameradaten mit einem Kapselnetzwerk beinhaltet, wobei das Trainieren des Kapselnetzwerkes Speichern von Routing-Koeffizienten und Empfangen des detektierten, klassifizierten und lokalisierten Objektes an einer Rechenvorrichtung beinhaltet. Das Kapselnetzwerk kann ein neuronales Netzwerk sein, wobei die Datenaggregation zwischen Kapselschichten auf der Bestimmung von Routing-Koeffizienten basiert, die Routen zwischen Kapselschichten entsprechen. Routing-Koeffizienten können bestimmt werden, indem Routen basierend auf einem oder mehreren von Korrelation oder Clustering im Anschluss an das Training basierend auf einem ersten Trainingsdatensatz gruppiert werden, wobei eine Route bestimmte Elemente in einer Kapselschicht mit Standorten in einer folgenden Kapselschicht verbindet. Routing-Koeffizienten können durch Verarbeitung mit parallelen Arrays bestimmt werden.
  • Das Trainieren des Kapselnetzwerkes kann Neutrainieren des Kapselnetzwerkes basierend auf einem zweiten Trainingsdatensatz und gespeicherten Routing-Koeffizienten beinhalten. Ein Fahrzeug kann basierend auf dem Empfang eines detektierten, klassifizierten und lokalisierten Objektes betrieben werden. Der Betrieb eines Fahrzeugs kann auf dem Empfang eines detektierten, klassifizierten und lokalisierten Objektes basieren, einschließlich der Bestimmung eines vorhergesagten Standortes des Objektes in globalen Koordinaten. Verkehrsinformationen können auf dem Empfang eines detektierten, klassifizierten und lokalisierten Objektes basieren. Die Videokameradaten können mit einer oder mehreren von einer in einem Verkehrsinfrastruktursystem beinhalteten stationären Videokamera und einer in einem oder mehreren von einem Fahrzeug oder einer Drohne beinhalteten mobilen Videokamera erfasst werden. Ein Standort des Fahrzeugs und ein Standort des Objektes können in globalen Koordinaten gemessen werden. Bei den globalen Daten kann es sich um Breitengrad, Längengrad und Höhenlage handeln. Das Fahrzeug kann basierend auf dem detektierten, klassifizierten und lokalisierten Objekt betrieben werden. Das Betreiben des Fahrzeugs kann Steuern eines oder mehrerer von Fahrzeugantriebsstrang, Fahrzeuglenkung und Fahrzeugbremsen beinhalten. Das Betreiben des Fahrzeugs kann Bestimmen eines Fahrzeugweges beinhalten.
  • Ferner wird ein computerlesbares Medium offenbart, auf dem Programmanweisungen zum Ausführen einiger oder aller der vorstehenden Verfahrensschritte gespeichert sind. Ferner offenbart wird ein Computer zum Ausführen einiger oder aller der vorstehenden Verfahrensschritte, einschließlich einer Computervorrichtung, dazu programmiert, ein Objekt durch Verarbeiten von Videokameradaten mit einem Kapselnetzwerk zu detektieren, zu klassifizieren und zu lokalisieren, wobei das Trainieren des Kapselnetzwerkes Speichern von Routing-Koeffizienten und Empfangen der detektierten, klassifizierten und lokalisierten Objekte an einer Rechenvorrichtung beinhaltet. Das Kapselnetzwerk kann ein neuronales Netzwerk beinhalten, wobei die Datenaggregation zwischen Kapselschichten auf der Bestimmung von Routing-Koeffizienten basiert, die Routen zwischen Kapselschichten entsprechen. Routing-Koeffizienten können bestimmt werden, indem Routen basierend auf einem oder mehreren von Korrelation oder Clustering im Anschluss an das Training basierend auf einem ersten Trainingsdatensatz gruppiert werden, wobei eine Route bestimmte Elemente in einer Kapselschicht mit Standorten in einer folgenden Kapselschicht verbindet. Routing-Koeffizienten können durch Verarbeitung mit parallelen Arrays bestimmt werden.
  • Die Computervorrichtung kann ferner dazu programmiert sein, das Kapselnetzwerk zu trainieren, einschließlich Neutrainieren des Kapselnetzwerkes basierend auf einem zweiten Trainingsdatensatz und gespeicherten Routing-Koeffizienten. Ein Fahrzeug kann basierend auf dem Empfang eines detektierten, klassifizierten und lokalisierten Objektes betrieben werden. Der Betrieb eines Fahrzeugs kann auf dem Empfang eines detektierten, klassifizierten und lokalisierten Objektes basieren, einschließlich der Bestimmung eines vorhergesagten Standortes des Objektes in globalen Koordinaten. Verkehrsinformationen können auf dem Empfang eines detektierten, klassifizierten und lokalisierten Objektes basieren. Die Videokameradaten können mit einer oder mehreren von einer in einem Verkehrsinfrastruktursystem beinhalteten stationären Videokamera und einer in einem oder mehreren von einem Fahrzeug oder einer Drohne beinhalteten mobilen Videokamera erfasst werden. Ein Standort des Fahrzeugs und ein Standort des Objektes können in globalen Koordinaten gemessen werden. Bei den globalen Daten kann es sich um Breitengrad, Längengrad und Höhenlage handeln. Das Fahrzeug kann basierend auf dem detektierten, klassifizierten und lokalisierten Objekt betrieben werden. Das Betreiben des Fahrzeugs kann Steuern eines oder mehrere von Fahrzeugantriebsstrang, Fahrzeuglenkung und Fahrzeugbremsen beinhalten. Das Betreiben des Fahrzeugs kann Bestimmen eines Fahrzeugweges beinhalten.
  • Figurenliste
    • 1 ist ein Blockdiagramm eines beispielhaften Verkehrsinfrastruktursystems.
    • 2 ist ein Diagramm einer beispielhaften Verkehrsszene mit einer stationären Kamera.
    • 3 ist ein Diagramm eines beispielhaften Kapselnetzwerkes.
    • 4 ist ein Ablaufdiagramm eines beispielhaften Routing-Algorithmus.
    • 5 ist ein Diagramm beispielhafter Master-Matrizen für Routing-Koeffizienten.
    • 6 ist ein anderes Diagramm beispielhafter Master-Matrizen für Routing-Koeffizienten.
    • 7 ist ein anderes Diagramm beispielhafter Master-Matrizen für Routing-Koeffizienten.
    • 8 ist ein Ablaufdiagramm eines Prozesses zum Bestimmen von Objektpositionen und zum Herunterladen dieser in ein Fahrzeug.
  • DETAILLIERTE BESCHREIBUNG
  • 1 ist ein Diagramm eines Verkehrsinfrastruktursystems 100, das ein Fahrzeug 110 beinhaltet, welches in einem autonomen („autonom“ bedeutet in dieser Offenbarung alleinstehend „vollautonom“), einem halbautonomen und einem von einem insassengesteuerten (auch als nichtautonom bezeichneten) Modus betrieben werden kann. Eine oder mehrere Rechenvorrichtungen 115 des Fahrzeugs 110 kann/können Informationen bezüglich des Betriebs des Fahrzeugs 110 von Sensoren 116 empfangen. Die Rechenvorrichtung 115 kann das Fahrzeug 110 in einem autonomen Modus, einem halbautonomen Modus oder einem nichtautonomen Modus betreiben.
  • Die Rechenvorrichtung 115 beinhaltet einen Prozessor und einen Speicher, wie diese bekannt sind. Ferner beinhaltet der Speicher eine oder mehrere Arten von computerlesbaren Medien und speichert Anweisungen, die durch den Prozessor ausgeführt werden können, um verschiedene Vorgänge durchzuführen, einschließlich der in dieser Schrift offenbarten. Zum Beispiel kann die Rechenvorrichtung 115 Programmierung beinhalten, um eines oder mehrere von Bremsen, Antrieb (z. B. Steuerung der Beschleunigung in dem Fahrzeug 110 durch Steuern von einem oder mehreren von einer Brennkraftmaschine, einem Elektromotor, Hybridmotor usw.), Lenkung, Klimasteuerung, Innen- und/oder Außenleuchten usw. des Fahrzeugs zu betreiben sowie um zu bestimmen, ob und wann die Rechenvorrichtung 115 im Gegensatz zu einem menschlichen Fahrzeugführer derartige Vorgänge steuern soll.
  • Die Rechenvorrichtung 115 kann mehr als eine Rechenvorrichtung beinhalten, z. B. Steuerungen oder dergleichen, die zum Überwachen und/oder Steuern verschiedener Fahrzeugkomponenten in dem Fahrzeug 110 beinhaltet sind, z. B. eine Antriebsstrangsteuerung 112, eine Bremssteuerung 113, eine Lenksteuerung 114 usw., oder z. B. über einen Kommunikationsbus des Fahrzeugs, wie nachfolgend genauer beschrieben, mit diesen kommunikativ gekoppelt sein. Die Rechenvorrichtung 115 ist im Allgemeinen zur Kommunikation in einem Kommunikationsnetzwerk des Fahrzeugs angeordnet, das z. B. einen Bus in dem Fahrzeug 110, wie etwa ein Controller Area Network (CAN) oder dergleichen, beinhaltet; das Netzwerk des Fahrzeugs 110 kann zusätzlich oder alternativ dazu drahtgebundene oder drahtlose Kommunikationsmechanismen beinhalten, wie sie bekannt sind, z. B. Ethernet oder andere Kommunikationsprotokolle.
  • Über das Netzwerk des Fahrzeugs kann die Rechenvorrichtung 115 Nachrichten an verschiedene Vorrichtungen in dem Fahrzeug übertragen und/oder Nachrichten von den verschiedenen Vorrichtungen, z. B. Steuerungen, Aktoren, Sensoren usw., einschließlich der Sensoren 116, empfangen. Alternativ oder zusätzlich dazu kann in Fällen, in denen die Rechenvorrichtung 115 tatsächlich mehrere Vorrichtungen umfasst, das Kommunikationsnetzwerk des Fahrzeugs zur Kommunikation zwischen Vorrichtungen verwendet werden, die in dieser Offenbarung als die Rechenvorrichtung 115 dargestellt sind. Ferner können, wie nachstehend erwähnt, verschiedene Steuerungen oder Erfassungselemente, wie etwa die Sensoren 116, der Rechenvorrichtung 115 Daten über das Kommunikationsnetzwerk des Fahrzeugs bereitstellen.
  • Darüber hinaus kann die Rechenvorrichtung 115 zur Kommunikation durch eine Fahrzeug-Infrastruktur-Schnittstelle (F-I-Schnittstelle) 111 mit einem Remote-Servercomputer 120, z. B. einem Cloud-Server, über ein Netzwerk 130 konfiguriert sein, die, wie nachstehend beschrieben, Hardware, Firmware und Software beinhaltet, welche es der Rechenvorrichtung 115 ermöglichen, mit einem entfernten Servercomputer 120 über ein Netzwerk 130, wie etwa drahtlose Internet- (Wi-Fi-) oder Mobilfunknetzwerke, zu kommunizieren. Die F-I-Schnittstelle 111 kann dementsprechend Prozessoren, einen Speicher, Sendeempfänger usw. beinhalten, die dazu konfiguriert sind, verschiedene drahtgebundene und/oder drahtlose Netzwerktechnologien zu nutzen, z. B. Mobilfunk, BLULTOOTH® und drahtgebundene und/oder drahtlose Paketnetzwerke. Die Rechenvorrichtung 115 kann zum Kommunizieren mit anderen Fahrzeugen 110 über die F-I-Schnittstelle 111 unter Verwendung von Fahrzeug-Fahrzeug-Netzwerken (F-F-Netzwerken) z. B. gemäß dedizierter Nahbereichskommunikation (Dedicated Short Range Communications - DSRC) und/oder dergleichen konfiguriert sein, die z. B. ad hoc zwischen Fahrzeugen 110 in der Nähe gebildet werden oder über infrastrukturbasierte Netzwerke gebildet werden. Die Rechenvorrichtung 115 beinhaltet zudem nichtflüchtigen Speicher, wie er bekannt ist. Die Rechenvorrichtung 115 kann Informationen protokollieren, indem sie die Informationen zum späteren Abrufen und Übertragen über das Fahrzeugkommunikationsnetzwerk und eine Fahrzeug-Infrastruktur(F-I)-Schnittstelle 111 an einen Servercomputer 120 oder eine mobile Benutzervorrichtung 160 in nichtflüchtigem Speicher speichert.
  • Wie bereits erwähnt, ist in Anweisungen, die auf dem Speicher gespeichert sind und durch den Prozessor der Rechenvorrichtung 115 ausgeführt werden können, im Allgemeinen Programmierung zum Betreiben einer oder mehrerer Komponenten des Fahrzeugs 110, z. B. Bremsung, Lenkung, Antrieb usw., ohne Eingreifen eines menschlichen Fahrzeugführers enthalten. Unter Verwendung von in der Rechenvorrichtung 115 empfangenen Daten, z. B. den Sensordaten von den Sensoren 116, dem Servercomputer 120 usw., kann die Rechenvorrichtung 115 ohne einen Fahrer zum Betreiben des Fahrzeugs 110 verschiedene Bestimmungen vornehmen und/oder verschiedene Komponenten und/oder Vorgänge des Fahrzeugs 110 steuern. Die Rechenvorrichtung 115 kann zum Beispiel Programmierung beinhalten, um Betriebsverhalten des Fahrzeugs 110 (d.h. physische Manifestationen des Betriebs des Fahrzeugs 110), wie etwa Geschwindigkeit, Beschleunigung, Verzögerung, Lenken usw., sowie taktisches Verhalten (d. h. Steuerung des Betriebsverhaltens typischerweise auf eine Weise, mit der ein sicheres und effizientes Zurücklegen einer Route erreicht werden soll), wie etwa eine Entfernung zwischen Fahrzeugen und/oder eine Zeitspanne zwischen Fahrzeugen, einen Spurwechsel, einen Mindestabstand zwischen Fahrzeugen, einen minimalen Linksabbiegeweg, eine Zeit bis zur Ankunft an einem bestimmten Ort und eine minimale Zeit bis zur Ankunft an einer Kreuzung (ohne Ampel) zum Überqueren der Kreuzung zu regulieren.
  • Im vorliegenden Zusammenhang beinhaltet der Ausdruck Steuerungen Rechenvorrichtungen, die typischerweise zum Steuern eines bestimmten Fahrzeugteilsystems programmiert sind. Beispiele beinhalten eine Antriebsstrangsteuerung 112, eine Bremssteuerung 113 und eine Lenksteuerung 114. Bei einer Steuerung kann es sich um eine elektronische Steuereinheit (electronic control unit - ECU), wie sie bekannt ist, handeln, die möglicherweise eine zusätzliche Programmierung, wie in dieser Schrift beschrieben, beinhaltet. Die Steuerungen können mit der Rechenvorrichtung 115 kommunikativ verbunden sein und Anweisungen von dieser empfangen, um das Teilsystem gemäß den Anweisungen zu betätigen. Beispielsweise kann die Bremssteuerung 113 Anweisungen von der Rechenvorrichtung 115 zum Betreiben der Bremsen des Fahrzeugs 110 empfangen.
  • Die eine oder mehreren Steuerungen 112, 113, 114 für das Fahrzeug 110 können bekannte elektronische Steuereinheiten (ECUs) oder dergleichen einschließen, zu denen als nicht einschränkende Beispiele eine oder mehrere Antriebsstrangsteuerungen 112, eine oder mehrere Bremssteuerungen 113 und eine oder mehrere Lenksteuerungen 114 gehören. Jede der Steuerungen 112, 113, 114 kann entsprechende Prozessoren und Speicher und einen oder mehrere Aktoren beinhalten. Die Steuerungen 112, 113, 114 können mit einem Kommunikationsbus des Fahrzeugs 110 programmiert und verbunden sein, wie etwa einem Controller-Area-Network-Bus (CAN-Bus) oder Local-Interconnect-Network-Bus (LIN-Bus), um Anweisungen von dem Computer 115 zu empfangen und Aktoren basierend auf den Anweisungen zu steuern.
  • Die Sensoren 116 können eine Vielfalt an Vorrichtungen beinhalten, die für die Bereitstellung von Daten über den Kommunikationsbus des Fahrzeugs bekannt sind. Beispielsweise kann ein Radar, das an einem vorderen Stoßfänger (nicht gezeigt) des Fahrzeugs 110 befestigt ist, einen Abstand des Fahrzeugs 110 zu einem nächsten Fahrzeug vor dem Fahrzeug 110 bereitstellen oder kann ein Sensor eines globalen Positionierungssystems (GPS), der in dem Fahrzeug 110 angeordnet ist, geographische Koordinaten des Fahrzeugs 110 bereitstellen. Der/Die durch das Radar und/oder die anderen Sensoren 116 bereitgestellte(n) Abstand/Abstände und/oder die durch den GPS-Sensor bereitgestellten geographischen Koordinaten können durch die Rechenvorrichtung 115 verwendet werden, um das Fahrzeug 110 zum Beispiel autonom oder halbautonom zu betreiben.
  • Das Fahrzeug 110 ist im Allgemeinen ein landbasiertes Fahrzeug 110, das zu einem autonomen und/oder halbautonomen Betrieb in der Lage ist und drei oder mehr Räder aufweist, z. B. ein Personenkraftwagen, ein Leichtlastkraftwagen usw. Das Fahrzeug 110 beinhaltet einen oder mehrere Sensoren 116, die F-I-Schnittstelle 111, die Rechenvorrichtung 115 und eine oder mehrere Steuerungen 112, 113, 114. Die Sensoren 116 können Daten in Bezug auf das Fahrzeug 110 und die Umgebung, in der das Fahrzeug 110 betrieben wird, sammeln. Beispielsweise und nicht einschränkend können zu den Sensoren 116 z. B. Höhenmesser, Kameras, LIDAR, Radar, Ultraschallsensoren, Infrarotsensoren, Drucksensoren, Beschleunigungsmesser, Gyroskope, Temperatursensoren, Drucksensoren, Hall-Sensoren, optische Sensoren, Spannungssensoren, Stromsensoren, mechanische Sensoren, wie etwa Schalter, usw. gehören. Die Sensoren 116 können dazu verwendet werden, die Umgebung zu erfassen, in der das Fahrzeug 110 betrieben wird, z. B. können die Sensoren 116 Phänomene, wie etwa Wetterbedingungen (Niederschlag, externe Umgebungstemperatur usw.), die Neigung einer Straße, die Lage einer Straße (z. B. unter Verwendung von Straßenrändern, Spurmarkierungen usw.) oder Standorte von Zielobjekten, wie etwa benachbarten Fahrzeugen 110, erfassen. Die Sensoren 116 können ferner dazu verwendet werden, Daten zu sammeln, die dynamische Daten des Fahrzeugs 110 in Bezug auf Vorgänge des Fahrzeugs 110 wie etwa Geschwindigkeit, Gierrate, Lenkwinkel, Motordrehzahl, Bremsdruck, Öldruck, der an die Steuerungen 112, 113, 114 in dem Fahrzeug 110 angelegte Leistungspegel, Konnektivität zwischen Komponenten und genaue und rechtzeitige Leistung von Komponenten des Fahrzeugs 110 beinhalten.
  • 2 ist ein Diagramm einer Verkehrsszene 200. Die Verkehrsszene 200 beinhaltet eine Fahrbahn 202, auf der Fahrzeuge 204 betrieben werden. Die Verkehrsszene 200 beinhaltet zudem eine stationäre Videokamera 206. Die stationäre Videokamera 206 kann an einem Mast 208 oder einer anderen stationären Struktur, einschließlich eines Gebäudes, montiert sein, um der stationären Videokamera 206 ein Sichtfeld 210 zu gewähren, das eine Lage der Fahrbahn 202 und normalerweise von Zeit zu Zeit Fahrzeuge 204 beinhaltet. Die stationäre Videokamera 206 kann an einem Mast 208 angebracht sein, um der stationären Videokamera 206 zu ermöglichen, ein im Wesentlichen unveränderliches Sichtfeld 210 in Bezug auf die Fahrbahn 202 beizubehalten. Die stationäre Videokamera 206 kann derart kalibriert sein, dass sie den dreidimensionalen (3D-) Standort, in globalen Koordinaten, des Sichtfeldes 210 bestimmt. Bei den globalen Koordinaten handelt es sich beispielsweise um auf einem globalen Koordinatensystem, wie es etwa durch ein GPS verwendet wird, basierende Positionsdaten, wie etwa Breitengrad, Längengrad und Höhenlage. Durch das Bestimmen des 3D-Standortes des Sichtfeldes 210 in globalen Koordinaten kann der 3D-Standort in globalen Koordinaten einer Region in einem Datensatz der stationären Videokamera bestimmt werden, wobei die Region beispielsweise einem Objekt entspricht.
  • Eine stationäre Videokamera 206 kann kalibriert werden, indem ein Bild einer stationären Videokamera erfasst wird, das ein Objekt mit gemessenen Merkmalen an einem gemessenen Standort beinhaltet. Die Größen der Merkmale können in dem Bild der stationären Videokamera bestimmt und mit den Größen der Merkmale in der realen Welt unter Verwendung von Projektionsgeometrie verglichen werden. Projektionsgeometrie ist eine Technik zum Bestimmen von Standorten in der realen Welt, die Standorten in einem Bild entsprechen, indem Standorte in der realen Welt von Standorten in Bilddaten gemessen werden, um Standorte in der realen Welt und Größen von Objekten in Bildern zu bestimmen. Die Standortmerkmale in Bilddaten können basierend auf Projektionsgleichungen, die auf Informationen bezüglich gemessener Standorte in der realen Welt, dem Sichtfeld 208 und der Vergrößerung einer in der stationären Videokamera 206 beinhalteten Linse basieren, um die Standorte in der realen Welt der Standorte in Bilddaten in globalen Koordinaten zu bestimmen.
  • Die stationäre Videokamera 206 kann in einem Verkehrsinformationssystem 100 beinhaltet sein. Ein Verkehrsinformationssystem 100 kann Servercomputer 120 beinhalten, die dazu konfiguriert sind, Daten der stationären Videokamera zu erfassen und zu verarbeiten, um Objekte zu verfolgen und die verfolgten Objekte in globalen Koordinaten zu lokalisieren. Das Verkehrsinformationssystem 100 kann zudem mit einem Fahrzeug 110 basierend auf dem Standort des Fahrzeugs 110 kommunizieren. Zum Beispiel kann ein Verkehrsinformationssystem 100 mit einem Fahrzeug 110 basierend auf dessen Nähe zu einer stationären Videokamera 206 kommunizieren. Das Verkehrsinformationssystem 100 kann Informationen bezüglich eines verfolgten Objektes bestimmen, das sich außerhalb des Sichtfeldes von in einem Fahrzeug 110 beinhalteten Sensoren befinden, jedoch beispielsweise in naher Zukunft durch das Fahrzeug 110 gesehen werden können.
  • 3 ist ein Diagramm eines beispielhaften Kapselnetzwerkes 300, das trainiert werden kann, um ein Objekt in einem Sichtfeld 210 basierend auf Videokameradaten zu detektieren, zu klassifizieren und zu lokalisieren. Bei dem Kapselnetzwerk 300 handelt es sich um neuronales Netzwerk, das Kapselschichten C1 304 (C1), C2 308 (C2), C3 312 (C3) und vollständig verbundene Schichten 320 (fully connected - FC) beinhaltet. Das Kapselnetzwerk 300 kann Videobilddaten 302 eingeben, wobei die Videobilddaten einen Rahmen von Videodaten beinhalten, die in einer Zeitfolge von in gleichen Zeitintervallen erfassten Zeitrahmen erfasst wurden. Das Kapselnetzwerk 300 verarbeitet die eingegebenen Videobilddaten 302 Rahmen für Rahmen. Ein Rahmen der Videobilddaten 302 wird in die Kapselschichten C1 304 (C1), C2 308 (C2), C3 312 (C3), gemeinsam 324, zur Verarbeitung eingegeben. Das Kapselnetzwerk 300 ist mit drei Kapselschichten C1 304, C2 308, C3 312 gezeigt, jedoch kann das Kapselnetzwerk 300 mehr oder weniger Schichten 324 aufweisen. Die erste Kapselschicht 304 kann einen Rahmen von Videodaten verarbeiten, indem eine Reihe von Faltungsfiltern auf Eingangsdaten angewendet wird, um Merkmale zu bestimmen. Von der ersten Kapselschicht 304 werden Merkmale zur Verarbeitung an die nachfolgenden Kapselschichten 308, 312 ausgegeben, um Merkmale zu identifizieren, Merkmale zu gruppieren und Eigenschaften von Gruppen von Merkmalen zu messen, indem Kapseln erzeugt werden, die Standort, Größe und Ausrichtung in Bezug auf einen Videorahmen und somit das Sichtfeld 210 beinhalten.
  • Zwischenergebnisse 314, die von den Kapselschichten 324 ausgegeben werden, werden in eine Routing-Schicht 316 (routing layer - RL) eingegeben. Die Routing-Schicht 316 wird verwendet, wenn ein Kapselnetzwerk 300 trainiert wird, und gibt die Zwischenergebnisse 314 an vollständig verbundene Schichten 320 sowohl zur Trainingszeit als auch zur Laufzeit zur weiteren Verarbeitung weiter. Die Routing-Schicht 316 bildet Routen oder Verbindungen zwischen den Kapselschichten 324 basierend auf einer Backpropagation von basierend auf einer Grundwahrheit bestimmten Belohnungsfunktionen aus, die mit Zustandsvariablen 322 verglichen wird, welche von den vollständig verbundenen Schichten 320 ausgegeben werden. Die Grundwahrheit ist eine Zustandsvariableninformation, die unabhängig von Zustandsvariablen 322, welche von den vollständig verbundenen Schichten 320 ausgegeben werden, bestimmt werden. Zum Beispiel entsprechen die Zustandsvariablen 322 der Detektion, Klassifizierung und dem Standort für das verfolgte Objekt. Dieselben Informationen können bestimmt werden, indem Standortinformationen der verfolgten Objekte basierend auf GPS- und inertialen Messeinheitssensoren (IME-Sensoren), die in dem verfolgten Objekt beinhaltet sind, aufgezeichnet werden. Die aufgezeichneten Standortinformationen können verarbeitet werden, um Grundwahrheit-Zustandsvariablen zu bestimmen, die dem Standort für das Objekt entsprechen, das den Rahmen von Videodaten entspricht, die als Videobilddaten 302 in das Kapselnetzwerk 300 eingegeben werden.
  • Die Rechenvorrichtung 115 kann die von dem Kapselnetzwerk 300 ausgegebenen und per Backpropagation übermittelte Zustandsvariablen 322 mit Grundwahrheit-Zustandsvariablen vergleichen, um eine Ergebnisfunktion während des Trainierens des Kapselnetzwerkes 300 auszubilden. Die Ergebnisfunktion wird verwendet, um Gewichtungen oder Parameter auszuwählen, die Filtern für die Kapselschicht 324 entsprechen, wobei Filtergewichtungen, die positive Ergebnisse erzeugen, durch die Belohnungsfunktion bestimmt werden. Kapselnetzwerke führen Datenaggregation von Filtergewichtungen aus, indem Routen oder Verbindungen zwischen den Kapselschichten 324 basierend auf Kapseln ausgebildet werden, wobei eine Kapsel ein n-Tupel von n Datenelementen ist, die als ein Datenelement einen Standort in der Kapselschicht 324 und als ein anderes Datenelement eine dem Standort entsprechende Belohnungsfunktion beinhaltet. In der Routing-Schicht 316 durchläuft eine for-Schleife mehrere Iterationen, um dynamisch einen Satz von Routing-Koeffizienten zu berechnen, die Kapseln der unteren Schicht (d. h. die Eingaben in die Routing-Schicht) mit Kapseln der höheren Schicht (d. h. den Ausgaben der Routing-Schicht) verbinden. Die zweiten Zwischenergebnisse 318, die von der Routing-Schicht 316 ausgegeben werden, werden dann an die vollständig verbundenen Schichten 320 des Netzwerks zur weiteren Verarbeitung gesendet. Es können auch zusätzliche Routing-Schichten im restlichen Teil des Kapselnetzwerkes 300 vorhanden sein.
  • Die durch die Routing-Schicht 316 ausgegebenen zweiten Zwischenergebnisse 318 werden in die vollständig verbundenen Schichten 320 eingegeben. Die vollständig verbundenen Schichten können die zweiten Zwischenergebnisse 318 eingeben und Zustandsvariablen 322, die Zielstandorten entsprechen, ausgeben. Eine Zeitfolge von Zielstandorten kann der Bewegung eines festen 3D-Objektes in einer parallel zu einer Fahrbahn 202 verlaufenden Ebene entsprechen, die der Newtonschen Physik unterliegt. Die Zielverfolgung beinhaltet Bestimmen der Zustandsvariablen 322, die einem Standort des verfolgten Objektes entsprechen, in Bezug auf einen Videorahmen und somit ein Sichtfeld 210 einer stationären Videokamera 206. Das Kapselnetzwerk 300 kann daraufhin trainiert werden, Objekte basierend auf Sensordateneingaben von einer Vielfalt an Sensoren, einschließlich Radarsensoren, LIDAR-Sensoren, Infrarotsensoren und Videosensoren, zu detektieren, zu klassifizieren und zu lokalisieren. Die Sensoren können an einer Vielfalt von stationären oder mobilen Plattformen, einschließlich beispielsweise Fahrzeugen 110 und Drohnen, montiert sein.
  • Die Objektdetektion kann Bestimmen von Vordergrundpixeln und Hintergrundpixeln in Videokameradaten beinhalten, wobei es sich beispielsweise bei Vordergrundpixeln um Pixel handelt, die sich bewegenden Objekten entsprechen, und Hintergrundpixel sich nicht bewegenden Regionen in den Videokameradaten 302 entsprechen. Das Kapselnetzwerk 300 kann ein Objekt detektieren, indem eine verbundene Region von Vordergrundpixeln bestimmt wird. Das detektierte Objekt kann klassifiziert werden, indem geometrische Messungen an der verbundenen Region durchgeführt werden. Zum Beispiel können eine Größe und eine Form eines Rechtecks mit minimalem Umfang bestimmen, welcher Klasse ein detektiertes Objekt zugewiesen werden kann. Detektierte Objekte können klassifiziert werden, indem die detektierten Objekte einer Klasse zugewiesen werden, die einem Fahrzeug, einem Fußgänger oder einem Tier entspricht, je nach Größe und Form. Detektierte und klassifizierte Objekte können lokalisiert werden, indem ein Maß, wie der Massenschwerpunkt, an der in dem Objekt beinhalteten zusammenhängenden Region von Pixeln bestimmt wird. Daten, die der Detektion, Klassifizierung und dem Standort eines Objektes in den Videokameradaten 302 entsprechen, können durch das Kapselnetzwerk 300 als die Zustandsvariablen 322 ausgegeben werden.
  • Die Daten zur/zum Objektdetektion, -klassifizierung und -standort für ein Objekt können durch eine Rechenvorrichtung für eine Vielfalt an Aufgaben, die den Fahrzeugbetrieb betreffen, verwendet werden. Daten zur/zum Objektdetektion, -klassifizierung und -standort anhand der Videokameradaten 302, die durch eine stationäre Videokamera 206 erfasst werden, können in ein Fahrzeug 110 heruntergeladen werden, um zum Betreiben des Fahrzeugs 110 verwendet zu werden. Zum Beispiel kann ein Fahrzeug 110 basierend auf einem vorhergesagten Standort für ein Objekt einen Fahrzeugweg bestimmen, auf dem es betrieben werden soll, wobei das Fahrzeug 110 eine Kollision oder Beinahekollision zwischen einem vorhergesagten Standort des Fahrzeugs 110 und einem vorhergesagten Standort eines Objektes detektieren kann. Daten zur/zum Objektdetektion, -standort und -klassifizierung können von einer an einem Fahrzeug 110 montierten Videokamera erfasst werden. Das Fahrzeug 110 kann die Daten zur/zum Objektdetektion, -klassifizierung und -standort verwenden, um Kollisionen und Beinahekollisionen zwischen vorhergesagten Standorten des Fahrzeugs 110 und vorhergesagten Standorten des Objektes zu bestimmen.
  • Daten zur/zum Objektdetektion, -klassifizierung und -standort können zudem durch eine Videokamera erfasst werden, die an einer mobilen Plattform, wie etwa einer Drohne, montiert ist. Daten zur/zum Objektdetektion, -klassifizierung und -standort, die durch eine an einer Drohne montierte Videokamera erfasst werden, können durch einen Servercomputer 120 in einem Verkehrsinformationssystem 100 zum Bestimmen von Verkehrsinformationen empfangen werden. Zum Beispiel kann ein Servercomputer Verkehrsinformationen, wie Informationen hinsichtlich Verkehrsstaus und Verkehrsunfällen, basierend auf einer/einem empfangenen Objektdetektion, -klassifizierung und -standort bestimmen und diese in ein Fahrzeug 110 herunterladen. Prozesse, die basierend auf dem Detektieren, Klassifizieren und Lokalisieren von Objekten Fahrzeuge betreiben oder den Fahrzeugbetrieb unterstützen, können durch Verbesserungen beim Trainieren des Kapselnetzwerkes 300 profitieren, einschließlich des in dieser Schrift offenbarten schnellen Routings des Kapselnetzwerkes 300, indem ermöglicht wird, dass das Kapselnetzwerk 300 effizienter trainiert, neu trainiert und optimiert wird als Kapselnetzwerke 300, die keine wie in dieser Schrift beschriebenen Master-Routing-Koeffizienten speichern und wiedergeben.
  • 4 ist ein Ablaufdiagramm eines Prozesses 400 zum Bestimmen von Routing-Koeffizienten für ein Kapselnetzwerk 300. Der Prozess 400 kann durch einen Prozessor der Rechenvorrichtung 115 umgesetzt werden, wobei zum Beispiel Informationen von den Sensoren 116 als Eingabe herangezogen werden und Befehle ausgeführt und Steuersignale über die Steuerungen 112, 113, 114 gesendet werden. Der Prozess 400 beinhaltet mehrere Blöcke, die in der offenbarten Reihenfolge ausgeführt werden. Der Prozess 400 könnte alternativ oder zusätzlich dazu weniger Blöcke beinhalten oder kann die Blöcke in unterschiedlichen Reihenfolgen beinhalten.
  • Der Prozess 400 beginnt bei Block 402, bei dem der Prozess 400 einen Satz von Vorhersagetensoren, ûj|i, die Anzahl der Male zum Durchführen des Routings, r, und die Anzahl der Netzwerkschichten, l, als Eingabe heranzieht. Die Vorhersagetensoren ûj|i werden anhand des Eingabebildes berechnet. Der Prozess 400 beinhaltet Bestimmen von Routing-Koeffizienten als Elternschicht-Kapseltensoren vj für ein einzelnes Eingabebild. Elternschicht-Kapseltensoren vj sind durch die nachstehende Gleichung (2) definiert und werden verwendet, um eine Route mit einem maximalen Wert gemäß den per Backpropagation übermittelten Ergebnissen auszuwählen. Der Prozess 400 wird eine durch einen Benutzer eingegebene Anzahl von Malen pro Bild für eine Vielzahl von Eingabebildern mit entsprechenden Grundwahrheitsdaten bei Trainieren eines Kapselnetzwerkes 300 wiederholt. Die in dieser Schrift verwendeten Zahlen zum Beschreiben einer Größe von Tensoren sind Beispiele und können vergrößert oder verkleinert werden, ohne die Techniken zu ändern.
  • Der Prozess 400 beginnt im Block 402, indem ein einzelner Vorhersagetensor mit der Dimension (16, 1152, 10) eingegeben wird. Die erste Zahl, 16, kennzeichnet die Dimension eines einzelnen Vorhersagevektors, wobei es sich bei einem einzelnen Vorhersagevektor um einen Vektor mit 16 Komponenten handelt, wobei jede Komponente einem konkreten Aspekt eines Objektes entspricht. Die zweite Zahl, 1152, kennzeichnet, wie viele Kapseln i in Schicht l jeder der 10 Kapseln, j, in Schicht l + 1 zugewiesen werden können. Jede Unterschicht-Kapsel i ist für die Verknüpfung eines einzelnen Vorhersagevektors mit einer Elternschicht-Kapsel j verantwortlich. Die Vorhersagevektoren werden durch das Netzwerk während des Trainings erlernt und entsprechen Objekten, wie sie durch das Netzwerk bei einem gegebenen Satz von Merkmalen bestimmt werden. Die Elternschicht-Kapseln j entsprechen den Objekten im Ganzen. Im Verlauf des gesamten Routing-Algorithmus werden die Routing-Koeffizienten iterativ berechnetet, um Unterschicht-Kapseln mit korrekten Oberschicht-Kapseln zu verbinden. Mit jedem neuen Bild, welches das Netzwerk sieht, werden diese Berechnungen zwischen jeder der 1152 Unterschicht-Kapseln i und jeder der 10 Oberschicht-Kapseln j für jede Schicht l von Beginn an durchgeführt. Ein Tensor bij mit den Dimensionen (1152, 10) wird anfangs auf null gesetzt und die Iterationsanzahl k wird anfangs auf 1 gesetzt.
  • Bei Block 402 wird eine Softmax-Funktion gemäß Gleichung (1) auf einen Tensor bij mit den Dimensionen (1152, 10) zum Bestimmen von Routing-Koeffizienten cij angewendet: c i j = e x p ( b i j ) k e x p ( b i j )
    Figure DE102020102823A1_0001
  • Die Softmax-Funktion wandelt die Anfangswerte des Tensors bij in Zahlen zwischen 0 und 0,1 um. Die Softmax-Funktion ist eine in dieser Schrift verwendete beispielhafte Normierungstechnik, allerdings können andere skaleninvariante Normierungsfunktionen vorteilhafterweise mit in dieser Schrift beschriebenen Techniken verwendet werden.
  • Bei Block 404 werden die Routing-Koeffizienten cij mit jedem der Vorhersagevektoren multipliziert und summiert, um eine Matrix sij = ∑i cijj|i zu bilden.
  • Bei Block 406 wird die Matrix sij mit Gleichung (2) komprimiert, um Ausgabe-Elternschicht-Kapseltensoren vj: v j = s j 2 s j 1 + s j 2 s j
    Figure DE102020102823A1_0002
  • Die Komprimierung gewährleistet, dass die Länge jeder der zehn Zeilen in sj auf einen Wert zwischen null und eins beschränkt wird.
  • Wenn die Iterationsanzahl k größer als eins ist, werden die Routing-Koeffizienten cij der Matrix sij bei Block 408 aktualisiert, indem das Skalarprodukt zwischen den Vorhersagevektoren ûj|i und den Elternschicht-Kapseltensoren vj gebildet und das Ergebnis zu dem Tensor bij addiert wird. Das Kapselnetzwerk 300 kann daraufhin trainiert werden, Objekte in Eingabebildern zu erkennen, indem die Zeile in vj ausgewählt wird, welche die längste Länge und somit die höchste Wahrscheinlichkeit für das korrekte Erkennen des Objektes aufweist.
  • Bei Block 410 inkrementiert der Prozess die Iterationsanzahl und vergleicht diese mit j. Wenn die Iterationsanzahl geringer als oder gleich j ist, kehrt der Prozess 400 zu Block 402 für eine weitere Iteration zurück. Wenn die Iterationsanzahl größer als j ist, endet der Prozess 400.
  • Bei dem Prozess 400 handelt es sich um eine Technik zum Bestimmen, welche Kapselrouten am wahrscheinlichsten einem erfolgreichen Betrieb des Kapselnetzwerkes 300 entsprechen, z. B. Ausgeben von Statusvariablen 322, die mit den Grundwahrheitsdaten übereinstimmen. Die bestimmten Kapselrouten können auf Datenaggregation basieren, wobei mehrere durch Faltungsfilterung bestimmte Merkmale (Kapseln) durch Routing kombiniert werden, um einem einzelnen Objekt zu entsprechen, und durch Einbeziehung von Informationen zu dessen Detektion, Klassifizierung und Standort in einem Bild. Schnelles Routing wird während der Ableitung umgesetzt, wenn das Routing der auf diese Weise bestimmten Kapsel nach dem Training verworfen werden kann, weil die Routing-Gewichtungen während des Trainings gespeichert werden können. Bei der Verwendung kann das Kapselnetzwerk 300 basierend auf den gespeicherten Routing-Gewichtungen betrieben werden und zu korrekten Ausgabe-Zustandsvariablen 322 gelangen, ohne Kapselrouten individuell zu bestimmen, da diese während des Prozesses 400 während des Trainings gespeichert wurden.
  • Andere Techniken zum Bestimmen von Kapselrouten, beispielsweise Routing über Erwartungsminimierung (EM), verwenden dynamische Programmierung, um optimale Sätze von Kapsel-Routings anstelle der Technik aus dem Prozess 400 zu bestimmen. Bei der dynamischen Programmierung handelt es sich um eine Technik zum Lösen eines komplexen Problems, indem dieses in eine Reihe kleinerer Schritte aufgegliedert wird. Die Schritte können aufeinanderfolgend sein, wobei die Ausgabe von jedem Schritt die Eingabe für den nächsten Schritt bildet. Zwischenergebnisse zwischen Schritten können im Speicher der Rechenvorrichtung 115 gespeichert und iterativ verarbeitet werden, bis vorbestimmte Endbedingungen erfüllt sind. Zum Beispiel kann eine Endbedingung sein, dass der Änderungsbetrag in der finalen Ausgabe zwischen zwei aufeinanderfolgenden Schritten weniger als ein benutzerdefinierter Schwellenwert beträgt.
  • Auf dynamischer Programmierung basierende Routing-Techniken, wie EM-Routing, sind dem Prozess 400 dahingehend ähnlich, dass die Routing-Informationen nach dem Training verworfen werden. Die in dieser Schrift beschriebenen Techniken verbessern die Verarbeitung des Kapselnetzwerkes 300, indem Routing-Informationen der Kapsel nach dem Training in einer Master-Matrix für Routing-Koeffizienten aufbewahrt werden, welche die Ableitungszeit des Kapselnetzwerkes 300 beschleunigen können, die Optimierung des Kapselnetzwerkes 300 nach dem Anfangstraining unterstützen und dabei helfen, das Kapselnetzwerk 300 schneller zu trainieren. Die in dieser Schrift beschriebenen Techniken können die Verarbeitungszeit exponentiell verringern, indem die for-Schleife in einem dynamischen Algorithmus übersprungen und diese mit einer einzelnen Tensormultiplizierungsoperation ersetzt wird, die über mehrere Graphikprozessoren (graphics processing units - GPUs) parallel geschaltet werden kann, indem das Routing nach dem Trainieren durchgeführt wird, nachdem alle Kapselrouten bestimmt wurden. Wenn zum Beispiel der ursprüngliche dynamische Routing-Algorithmus zehn Iterationen zum Berechnen der Routing-Koeffizienten verwendet, ersetzen die in dieser Schrift beschriebenen Techniken die zehn Iterationen mit einer einzelnen Tensormultiplikation. Wenn der dynamische Routing-Algorithmus 100 Iterationen zum Berechnen der Routing-Koeffizienten verwendet, können die in dieser Schrift beschriebenen Techniken die 100 Iterationen mit einer einzelnen Tensormultiplikation ersetzen und so weiter. Die in dieser Schrift beschriebenen Techniken können auf eine beliebige Kapselnetzwerkarchitektur angewendet werden, die Routing-Koeffizienten verwendet, um Objektteile dem jeweiligen gesamten Objekt zuzuweisen. Zusammengefasst kann die Verarbeitungseffizienz des Computers, einschließlich der Verringerung der Verarbeitungszeit und/oder der erforderlichen Verarbeitungsleitung, durch die in dieser Schrift offenbarten Techniken deutlich erhöht werden.
  • Master-Routing-Koeffizienten können anhand von individuellen Routing-Koeffizienten erzeugt werden, die während des Trainings des Kapselnetzwerkes 300 auftreten und den Eingaben des Kapselnetzwerkes 300 entsprechen. Dieser einzelne Satz von Master-Routing-Koeffizienten kann dann verwendet werden, um das Netzwerk während der Ableitung schneller zu machen. Die Routing-Koeffizienten können bestimmt werden, indem zuerst ein Kapselnetzwerk 300 unter Verwendung eines Trainingsdatensatzes und entsprechender Grundwahrheitsdaten trainiert wird. Routing-Koeffizienten können beispielsweise für jede Trainingseingabe in der for-Schleife des Prozesses 400 wie vorstehend erörtert dynamisch bestimmt werden. Das Kapselnetzwerk 300 kann dahingehend bestimmt sein, dass es trainiert wird, wenn ein Gesamtverlustwert gleich einer Differenz zwischen den Zustandsvariablen 322 und den Grundwahrheitsdaten stabil ist. Der Gesamtverlustwert ist dann stabil, wenn er um einen Mittelwert schwankt und nicht länger zu- oder abnimmt. Das Kapselnetzwerk 300 kann dahingehend bestimmt sein, dass es trainiert wird, wenn der Gesamtverlustwert einen maximalen Wert erreicht hat.
  • Routing-Koeffizienten können von dem Routing-Algorithmus für jede Eingabe bei jeder Routing-Iteration gespeichert werden. Das heißt, für jede Eingabe in einem Trainingssatz ist ein Satz von Routing-Koeffizienten vorhanden, die in dem Routing-Algorithmus über r Iterationen dynamisch berechnet werden. Für den Prozess 400 sind die Koeffizienten für eine einzelne Eingabe in dem Tensor cij mit der Dimension (r, 1152, 10) beinhaltet, wobei die Zahlen 1152 und 10 nur als Beispiel stehen und größer oder kleiner sein können. Für einen Stapel Eingaben ist cij ein Tensor mit der Dimension (N, r, 1152, 10), wobei N für die Anzahl der Eingaben in dem Stapel steht. Die cij sind die Routing-Koeffizienten, die gespeichert werden, wenn ein trainiertes Kapselnetzwerk 300 auf dem Trainingsdatensatz ausgewertet wird. Die gespeicherten Routing-Koeffizienten können sortiert werden, um zwischen Routing-Koeffizienten, die mit genauen Ergebnissen in hohem Ausmaß (typischerweise > 90 %) korrelieren, und Routing-Koeffizienten zu unterscheiden, die nicht in hohem Ausmaß mit genauen Ergebnissen korrelieren. Die Zahlen, die den Elementen r, 1152, 10 des Tensors cij entsprechen, können in Abhängigkeit der Anwendung variieren. Die Zahl 10 stellt die Anzahl der durch den Tensor cij bearbeiteten Klassen dar und ist für Aufgaben, wie Fahrzeugobjektverfolgung und Detektion handschriftlicher Zeichen, geeignet.
  • Die Routing-Koeffizienten können allesamt sortiert werden oder die Routing-Koeffizienten können vor dem Sortieren gefiltert werden. Das Sortieren aller Routing-Koeffizienten kann brauchbare Ergebnisse erzeugen; angesichts der Zeitspanne und des Speicherbedarfs zum Durchführen einer vollständigen Sortierung an einem vollen Satz von Routing-Koeffizienten kann ein Tensor mit der Dimension (N, r, 1152, 10) praktisch untragbar sein. Das auf Clustering-Algorithmen oder Ähnlichkeitsmaßen basierende Filtern vor dem Sortieren kann die Datenmenge und den Berechnungsaufwand wesentlich reduzieren. Das auf Clustering-Algorithmen basierende Filtern beinhaltet Filtern basierend auf bekannten Techniken, wie etwa EM-Routing, K-Mittel oder dichtebasiertem räumlichen Clustering. Das EM-Routing kann Routing-Koeffizienten basierend auf Annahmen bezüglich der Gauß-Verteilung der Koeffizienten clustern. Bei dem K-Mittel handelt es sich um eine statistische Technik, die Gruppen basierend auf der Maximierung von Wahrscheinlichkeiten bilden kann. Das dichtebasierte räumliche Clustering kann gemeinsame Wahrscheinlichkeiten basierend auf einem Modell für Gaußsches Rauschen maximieren. Eine Gemeinsamkeit dieser Techniken besteht darin, dass sie Gruppen von Clustern von Routing-Koeffizienten bilden und Daten reduzieren, indem die Gruppe oder der Cluster durch einen einzelnen Routing-Koeffizienten dargestellt wird. Nach dem Filtern durch Clustering kann ein Satz von Routing-Koeffizienten sortiert werden.
  • Das Sortieren kann an Routing-Koeffizienten durchgeführt werden, indem die Leistung von zwei Kopien eines Kapselnetzwerkes 300 verglichen wird, wobei eines Gewichtungen beinhaltet, die einem Routing-Koeffizienten entsprechen, und ein anderes keine Gewichtungen beinhaltet, die dem Routing-Koeffizienten entsprechen. Die Genauigkeit der Leistung der beiden Kapselnetzwerke 300 an einem Testdatensatz, der Bilder und Grundwahrheiten beinhaltet, kann verglichen werden. Wenn die Genauigkeit des Kapselnetzwerkes 300 mit den Routing-Koeffizientengewichtungen größer als oder gleich dem Kapselnetzwerk 300 ohne die Routing-Koeffizientengewichtungen ist, werden die Routing-Koeffizienten als „OK“ bestimmt und aufbewahrt. Wenn die Genauigkeit des Kapselnetzwerkes 300 mit den Routing-Koeffizientengewichtungen an einem Testdatensatz, der Grundwahrheiten einschließt, schlechter als die Genauigkeit des Kapselnetzwerkes 300 ohne die Routing-Koeffizientengewichtungen ist, werden die Routing-Koeffizienten als „NICHT OK“ bestimmt und verworfen.
  • Ähnlichkeitsmaße können Routing-Koeffizienten filtern, indem ein Ähnlichkeitsmaß, wie es bekannt ist, einschließlich eines Pearson-Korrelationskoeffizienten, Kreuzproduktes, einer Norm, eines Winkels usw., auf die Routing-Koeffizienten angewendet wird. Diese Maße bestimmen jeweils eine Metrik für Routing-Koeffizienten, die einen Abstand zwischen den Koeffizienten misst und diesen anwendet, um die Ähnlichkeit zu bestimmen. Ähnlichkeitsmaße können Klassen von Routing-Koeffizienten bestimmen, indem Gruppen von Koeffizienten mit zueinander kleinen Abstandsmaßen ausgewählt werden. Die Klassen können durch einen einzelnen Vertreter dargestellt werden, wodurch eine Datenreduzierung ohne Genauigkeitsverlust erzielt wird. Im Anschluss an das Filtern können die Klassen sortiert werden, um Klassen zu verwerfen, die nicht genauen Ergebnissen entsprechen, wie vorstehend erörtert. Im Anschluss an das Filtern und Sortieren kann eine Master-Matrix für Routing-Koeffizienten erstellt und gespeichert werden, um sie bei einer folgenden Verarbeitung zu verwenden.
  • 5 ist ein Diagramm beispielhafter Matrizen 500 für Routing-Koeffizienten. Die Matrizen 500 für Routing-Koeffizienten beinhalten eine Matrix 502 für Routing-Koeffizienten (routing coefficient matrix - RCM) und eine Master-Matrix 510 für Routing-Koeffizienten (master routing coefficient matrix - MRCM). Der Tensor cij mit der Dimension (N, r, 1152, 10) von Gleichung (1) und 4 beinhaltet eine Matrix 502 für Routing-Koeffizienten, bei der es sich um einen Tensor mit der Dimension (r, 1152, 10) für jedes Eingabebild n in N handelt. Im Anschluss an das Filtern und Sortieren, wie vorstehend beschrieben, wird eine Matrix 502 für Routing-Koeffizienten mit der Dimension (r, 1152, 10) gebildet. Die Anzahl der Routing-Iterationen zur Verwendung für die Extraktion der (1152, 10)-Matrix von Routing-Koeffizienten kann ausgewählt werden. Die Testdaten- und Grundwahrheitsgenauigkeit eines Kapselnetzwerkes 300, einschließlich jeder der r Routing-Koeffizientengewichtungen, kann vs. eine Kopie des Kapselnetzwerkes 300 ohne beliebige der r Routing-Koeffizientengewichtungen bestimmt werden. Auf diese Weise können Routing-Koeffizienten 504 bestimmt werden, die höchstwahrscheinlich genau sind.
  • Nach der Auswahl einer Routing-Iteration weist der resultierende Routing-Koeffiziententensor beispielsweise die Dimension (1152, 10) auf, wobei 10 die Anzahl der Klassen in dem Datensatz ist. Für jede Trainingseingabe kann die Bezeichnung (d. h. Klasse) dieser Eingabe durch eine Benutzereingabe bestimmt werden. Diese Bezeichnung entspricht einer der 10 Spalten 504 in der (1152, 10)-Matrix. Diese einzelne Spalte 504 wird dann extrahiert und in die entsprechende Spalte 508 in einer leeren (1152, 10)-Master-Matrix 510 für Routing-Koeffizienten eingefügt. Bei der leeren (1152, 10)-Master-Matrix 510 für Routing-Koeffizienten handelt es sich um den Master-Satz von Routing-Koeffizienten. Eine Routing-Iteration wird für jede Trainingseingabe n in dem Trainingssatz ausgewählt. Für wiederholte Bezeichnungen werden die Werte aus der Grundwahrheitsspalte 502 einer individuellen (1152, 10)-Koeffizientenmatrix einfach mit den vorhandenen Werten in der entsprechenden Spalte 508 in der (1152, 10)-Master-Matrix 510 für Routing-Koeffizienten summiert.
  • Wenn die Koeffizienten der Grundwahrheitsspalte für alle Trainingseingaben summiert wurden, wird jede Spalte in der (1152, 10)-Master-Matrix 510 für Routing-Koeffizienten durch Klassenhäufigkeit normiert und eine nichtlineare Funktion kann auf die (1152, 10)-Master-Matrix 510 für Routing-Koeffizienten angewendet werden. Die Nichtlinearität kann in derselben Art und Weise bestimmt werden, in der die ursprünglichen Routing-Koeffizienten während des Trainings dynamisch berechnet wurden. Zum Beispiel kann die Softmax-Funktion von Gleichung (1) auf jede Zeile in der (1152, 10)-Master-Matrix 510 für Routing-Koeffizienten angewendet werden. Nachdem die Master-Matrix 510 für Routing-Koeffizienten bestimmt wurde, kann die Master-Matrix 510 für Routing-Koeffizienten dann N-mal repliziert werden, um der Anzahl von Eingaben pro in dem Kapselnetzwerk 300 verwendeten Stapel zu entsprechen, womit die finale Dimension des Master-Koeffiziententensors (N, 1152, 10) ist.
  • 6 ist ein Diagramm beispielhafter Matrizen 600 für Routing-Koeffizienten. Die Matrizen 600 für Routing-Koeffizienten beinhalten eine Matrix 602 für Routing-Koeffizienten (RCM) und eine Master-Matrix 610 für Routing-Koeffizienten (MRCM). Der Tensor cij mit der Dimension (N, r, 1152, 10) von vorstehender Gleichung (1) und 4 beinhaltet eine Matrix 602 für Routing-Koeffizienten, bei der es sich um einen Tensor mit der Dimension (r, 1152, 10) für jedes Eingabebild n in N handelt. Im Anschluss an das Filtern und Sortieren, wie vorstehend beschrieben, wird eine Matrix 602 für Routing-Koeffizienten mit der Dimension (r, 1152, 10) gebildet. Der in 6 veranschaulichte Prozess ist derselbe wie in 5, mit der Ausnahme, dass für jede Eingaben eine ganze (1152, 10)-Matrix 602 für Routing-Koeffizienten verarbeitet wird anstatt jeder Spalte 504 der Matrix 502 für Routing-Koeffizienten. Nachdem die Routing-Koeffizienten aus allen Eingaben übertragen wurden, kann jede Spalte der Master-Matrix 610 für Routing-Koeffizienten durch die Klassenhäufigkeit für diese Spalte normiert werden.
  • 7 ist ein Diagramm beispielhafter Matrizen 700 für Routing-Koeffizienten. Die Matrizen 700 für Routing-Koeffizienten beinhalten eine erste Matrix 702 für Routing-Koeffizienten (RCM1), eine zweite Matrix 704 für Routing-Koeffizienten (RCM2), eine erste Master-Matrix 710 für Routing-Koeffizienten (MRCM1) und eine zweite Master-Matrix 712 für Routing-Koeffizienten (MRCM2). Der Tensor cij mit der Dimension (N, r, 1152, 10) von vorstehender Gleichung (1) und 4 beinhaltet eine Matrix 702, 704 für Routing-Koeffizienten für jede Klasse, auf die ein Kapselnetzwerk 300 trainiert wird. Wenn X die Anzahl der Klassen von Eingabedaten ist, auf die ein Kapselnetzwerk hinsichtlich einer Erkennung trainiert ist, ist eine Klasse als eine Gruppe von Eingabebildern definiert, für die ein Kapselnetzwerk 300 im Wesentlichen dasselbe Ergebnis ausgibt. Für jede Klasse in X Klassen kann ein Tensor mit der Dimension (r, 1152, 10) für jedes Eingabebild n in N bestimmt werden. Im Anschluss an das Filtern und Sortieren, wie vorstehend beschrieben, werden eine erste Matrix 702 für Routing-Koeffizienten und eine zweite Matrix 704 für Routing-Koeffizienten (X = 2) gebildet.
  • Nachdem X Sätze von Koeffizienten erzeugt wurden, können sie zu einem einzelnen Master-Tensor für Koeffizienten mit der Dimension (X, 1152, 10) verknüpft und dann N mal repliziert werden, um der Anzahl von Eingaben pro in dem Kapselnetzwerk verwendeten Stapel zu entsprechen - somit ist die finale Dimension des Master-Tensors für Koeffizienten (N, X, 1152, 10). Bei der Verwendung für ein schnelles Training kann die Klassenbezeichnung der Trainingseingabe verwendet werden, um auszuwählen, welches x in X für jede Eingabe angewendet werden soll.
  • Master-Tensoren für Routing-Koeffizienten können die Ableitungsgeschwindigkeit des trainierten Kapselnetzwerkes 300 verbessern, indem die for-Schleife in dem Routing-Algorithmus entfernt wird.
  • Master-Tensoren für Routing-Koeffizienten können die Ableitung eines Kapselnetzwerkes 300 verbessern, indem die Ableitung schneller gemacht wird. Für das Training wird ein Teilsatz des vollen Trainingsdatensatzes zuerst dazu verwendet, das Kapselnetzwerk zu trainieren, d. h., das Netzwerk wird unter Verwendung eines Routing-Algorithmus aus vorstehender 4 trainiert. Danach werden die Master-Tensoren für Routing-Koeffizienten extrahiert, wie in Bezug auf 5-7 beschrieben. Dann wird ein Test an einem zweiten Teilsatz des vollen Trainingsdatensatzes unter Verwendung der Master-Routing-Koeffizienten durchgeführt, die basierend auf einem ersten Teilsatz der Trainingsdaten bestimmt wurden. Für ein Kapselnetzwerk 300 mit einer Architektur, die der in 3 gezeigten ähnlich ist, kann dies die Teil/Gesamt-Beziehung eines Objektes optimieren.
  • Master-Tensoren für Routing-Koeffizienten können das Training von Kapselnetzwerken 300 verbessern, indem ein Kapselnetzwerk 300 optimiert wird. Das Optimieren eines Kapselnetzwerkes 300 bezieht sich auf den Prozess des Trainierens eines Kapselnetzwerkes 300, wobei bestimmte Schichten des Kapselnetzwerkes 300 fest sind. Zum Optimieren eines Kapselnetzwerkes 300 wird das Kapselnetzwerk 300 unter Verwendung eines Routing-Algorithmus trainiert, der eine for-Schleife aufweist, wobei ein erster Teilsatz des vollen Trainingsdatensatzes verwendet wird. Danach werden die Master-Routing-Koeffizienten aus den Trainingsdaten extrahiert. Dann wird eine Optimierung an einem zweiten Teilsatz des vollen Trainingsdatensatzes unter Verwendung der Master-Routing-Koeffizienten als feste Koeffizienten (d. h., es wird keine for-Schleife in der Routing-Prozedur verwendet) durchgeführt, indem das Kapselnetzwerk 300 mit denselben Daten und der derselben Grundwahrheit ohne die Bestimmung von beliebigen neuen Routing-Koeffizienten neu trainiert.
  • 8 ist ein Diagramm eines Ablaufdiagramms, beschrieben in Bezug auf 1-7, eines Prozesses 800 zum Bestimmen einer Objektposition, zum Verfolgen eines Objektes basierend auf der Objektposition und zum Herunterladen der Objektverfolgungsinformationen in ein Fahrzeug. Der Prozess 800 kann durch einen Prozessor des Servercomputers 120 umgesetzt werden, indem zum Beispiel Informationen von Sensoren als Eingabe dienen und Befehle ausgeführt werden und Objektverfolgungsinformationen an ein Fahrzeug 110 gesendet werden. Der Prozess 800 beinhaltet mehrere Blöcke in der offenbarten Reihenfolge. Der Prozess 800 könnte alternativ oder zusätzlich dazu weniger Blöcke beinhalten oder kann die Blöcke in unterschiedlichen Reihenfolgen beinhalten.
  • Der Prozess 800 beginnt bei Block 802, wobei ein Servercomputer 120 ein Videobild von einer Videokamera, einschließlich einer stationären Videokamera 206, erfasst und dieses in ein trainiertes Kapselnetzwerk 300 eingibt. Das Kapselnetzwerk 300 wurde unter Verwendung von Master-Tensoren für Routing-Koeffizienten trainiert, wie vorstehend in Bezug auf 3-7 beschrieben. Das Kapselnetzwerk 300 gibt die Videobilddaten 302 ein und kann Zustandsvariablen 322 ausgeben, die Daten zur/zum Objektdetektion, -klassifizierung und -standort in Bezug auf einen Videorahmen entsprechen. Videokameradaten können von einer stationären Videokamera oder einer mobilen Videokamera eingegeben werden. Eine mobile Videokamera kann beispielsweise an einem Fahrzeug 110 oder einer Drohne montiert sein.
  • Bei Block 804 kann der Servercomputer 120 die Zustandsvariablen 322, einschließlich der Daten zur/zum Objektdetektion, -klassifizierung und -standort, die von dem Kapselnetzwerk 300 ausgegeben werden, mit Grundwahrheitsinformationen bezüglich der Lage der Fahrbahn 202 in Bezug auf das Sichtfeld 210 der stationären Videokamera 206 in globalen Koordinaten kombinieren, um die Zustandsvariablen 322 in einen Standort des verfolgten Objektes in globalen Koordinaten, wie vorstehend in Bezug auf 2 beschrieben, umzuwandeln. Bei einer Sequenz von in gleichmäßigen Zeitintervallen erfassten Objektstandorten in globalen Koordinaten handelt es sich um Zeitreihendaten, die in einen Steuerprozess eingegeben werden können, der eine Objektbewegung vorhersagen und dadurch das Objekt basierend auf den Objektstandorten verfolgen kann. Der Servercomputer 120 kann zudem Objektstandorte in globalen Koordinaten in ein Fahrzeug 110 herunterladen und dem Fahrzeug 110 die Verfolgung des Objektes ermöglichen.
  • In Beispielen, in denen die Videokameradaten von einer mobilen Plattform erfasst werden, können die Daten zur/zum Objektdetektion, -klassifizierung und -standort basierend auf einem Standort und einem Sichtfeld, die einem Standort und einem Sichtfeld einer in der mobilen Plattform beinhalteten Videokamera entsprechen, in globale Koordinaten umgewandelt werden. Da sich die Plattform bewegen kann, wenn die Videokameradaten erfasst werden, können die Videokameradaten mit einem Zeitstempel versehen werden, um einen Standort der Videokamera zum Zeitpunkt der Erfassung der Videokameradaten zu identifizieren. Von mobilen Plattformen erfasste Daten zum/zur Objektdetektion, -klassifizierung und -standort können direkt in ein Fahrzeug 110 heruntergeladen oder durch einen Servercomputer 120 empfangen werden, um mit Daten zur/zum Objektdetektion, -klassifizierung und -standort aus anderen Quellen zum Bestimmen von Verkehrsinformationen kombiniert zu werden. Verkehrsinformationen können beispielsweise Verkehrsstaus oder Verkehrsunfälle beinhalten. Verkehrsinformationen können in ein Fahrzeug 110 heruntergeladen werden, um den Betrieb des Fahrzeugs 110 auf einer Fahrbahn 202 zu unterstützen. Im Anschluss an Block 804 endet der Prozess 800.
  • Rechenvorrichtungen, wie etwa die in dieser Schrift erörterten, beinhalten im Allgemeinen jeweils Befehle, die durch eine oder mehrere Rechenvorrichtungen, wie etwa die vorstehend genannten, und zum Ausführen von Blöcken oder Schritten von vorstehend beschriebenen Prozessen ausgeführt werden können. Zum Beispiel können die vorstehend erörterten Prozessblöcke als computerausführbare Befehle ausgebildet sein.
  • Computerausführbare Befehle können anhand von Computerprogrammen zusammengestellt oder ausgelegt werden, die unter Verwendung vielfältiger Programmiersprachen und/oder -technologien erstellt werden, einschließlich unter anderem und für sich oder in Kombination Java™, C, C++, Python, Julia, SCALA, Visual Basic, Java Script, Perl, HTML usw. Im Allgemeinen empfängt ein Prozessor (z. B. ein Mikroprozessor) Befehle z. B. von einem Speicher, einem computerlesbaren Medium usw. und führt diese Befehle aus, wodurch er einen oder mehrere Prozesse, einschließlich eines oder mehrerer der in dieser Schrift beschriebenen Prozesse, ausführt. Derartige Befehle und andere Daten können in Dateien gespeichert und unter Verwendung vielfältiger computerlesbarer Medien übertragen werden. Eine Datei in einer Rechenvorrichtung ist im Allgemeinen eine Sammlung von Daten, die auf einem computerlesbaren Medium, wie etwa einem Speichermedium, einem Direktzugriffsspeicher usw., gespeichert ist.
  • Ein computerlesbares Medium beinhaltet ein beliebiges Medium, das am Bereitstellen von Daten (z. B. Befehlen), die durch einen Computer gelesen werden können, beteiligt ist. Ein derartiges Medium kann viele Formen annehmen, einschließlich unter anderem nichtflüchtiger Medien, flüchtiger Medien usw. Nichtflüchtige Medien beinhalten beispielsweise optische oder Magnetplatten und anderen dauerhaften Speicher. Flüchtige Medien beinhalten dynamischen Direktzugriffsspeicher (dynamic random access memory - DRAM), der üblicherweise einen Hauptspeicher darstellt. Zu gängigen Formen computerlesbarer Medien gehören zum Beispiel eine Diskette, eine Folienspeicherplatte, eine Festplatte, ein Magnetband, ein beliebiges anderes magnetisches Medium, eine CD-ROM, eine DVD, ein beliebiges anderes optisches Medium, Lochkarten, Lochstreifen, ein beliebiges anderes physisches Medium mit Lochmustern, ein RAM, ein PROM, ein EPROM, ein FLASH-EEPROM, ein beliebiger anderer Speicherchip oder eine beliebige andere Speicherkassette oder ein beliebiges anderes Medium, das durch einen Computer ausgelesen werden kann.
  • Allen in den Patentansprüchen verwendeten Ausdrücken soll deren allgemeine und gewöhnliche Bedeutung zukommen, wie sie vom Fachmann verstanden wird, sofern nicht ausdrücklich etwas anderes angegeben ist. Insbesondere ist die Verwendung der Singularartikel wie etwa „ein“, „eine“, „der“, „die“, „das“ usw. dahingehend auszulegen, dass eines oder mehrere der aufgeführten Elemente genannt wird bzw. werden, es sei denn, ein Patentanspruch enthält ausdrücklich eine gegenteilige Einschränkung.
  • Der Ausdruck „beispielhaft“ wird in dieser Schrift in dem Sinne verwendet, dass er ein Beispiel angibt, z. B. sollte ein Verweis auf eine „beispielhafte Vorrichtung“ einfach als Bezugnahme auf ein Beispiel für eine Vorrichtung gelesen werden.
  • Das einen Wert oder ein Ergebnis modifizierende Adverb „ungefähr“ bedeutet, dass eine Form, eine Struktur, eine Messung, ein Wert, eine Bestimmung, eine Berechnung usw. von einer/einem genau beschriebenen Geometrie, Entfernung, Messung, Wert, Bestimmung, Berechnung usw. aufgrund von Mängeln hinsichtlich Materialien, Bearbeitung, Herstellung, Sensormessungen, Berechnungen, Bearbeitungszeit, Kommunikationszeit usw. abweichen kann.
  • In den Zeichnungen geben die gleichen Bezugszeichen die gleichen Elemente an. Ferner könnten einige oder alle dieser Elemente geändert werden. Hinsichtlich der in dieser Schrift beschriebenen Medien, Prozesse, Systeme, Verfahren usw. versteht es sich, dass die Schritte derartiger Prozesse usw. zwar als gemäß einer bestimmten geordneten Abfolge erfolgend beschrieben worden sind, derartige Prozesse jedoch so umgesetzt werden könnten, dass die beschriebenen Schritte in einer anderen Reihenfolge als der in dieser Schrift beschriebenen Reihenfolge durchgeführt werden. Es versteht sich ferner, dass bestimmte Schritte gleichzeitig durchgeführt, andere Schritte hinzugefügt oder bestimmte in dieser Schrift beschriebene Schritte weggelassen werden könnten. Anders ausgedrückt dienen die Beschreibungen von Prozessen in dieser Schrift der Veranschaulichung bestimmter Ausführungsformen und sollten keinesfalls dahingehend ausgelegt werden, dass sie die beanspruchte Erfindung einschränken.
  • Gemäß der vorliegenden Erfindung ist ein Verfahren bereitgestellt, das Folgendes aufweist: Detektieren, Klassifizieren und Lokalisieren eines Objektes durch Verarbeiten von Videokameradaten mit einem Kapselnetzwerk, wobei das Trainieren des Kapselnetzwerkes Speichern von Routing-Koeffizienten beinhaltet; und Empfangen des detektierten, klassifizierten und lokalisierten Objektes an einer Rechenvorrichtung.
  • Gemäß einer Ausführungsform beinhaltet das Kapselnetzwerk Bestimmen von Routing-Koeffizienten, die Routen zwischen Kapselschichten entsprechen.
  • Gemäß einer Ausführungsform werden Routing-Koeffizienten bestimmt, indem Routen basierend auf einem oder mehreren von Korrelation oder Clustering im Anschluss an das Training basierend auf einem ersten Trainingsdatensatz gruppiert werden, wobei eine Route bestimmte Elemente in einer Kapselschicht mit Standorten in einer folgenden Kapselschicht verbindet.
  • Gemäß einer Ausführungsform werden Routing-Koeffizienten durch Verarbeitung mit parallelen Arrays bestimmt.
  • Gemäß einer Ausführungsform beinhaltet das Trainieren des Kapselnetzwerkes Neutrainieren des Kapselnetzwerkes basierend auf einem zweiten Trainingsdatensatz und Speichern von Routing-Koeffizienten.
  • Gemäß einer Ausführungsform ist die Erfindung ferner gekennzeichnet durch Betreiben eines Fahrzeugs basierend auf dem Empfang eines detektierten, klassifizierten und lokalisierten Objektes.
  • Gemäß einer Ausführungsform beinhaltet das Betreiben eines Fahrzeugs basierend auf dem Empfang eines detektierten, klassifizierten und lokalisierten Objektes Bestimmen eines vorhergesagten Standortes des Objektes in globalen Koordinaten.
  • Gemäß einer Ausführungsform ist die Erfindung ferner gekennzeichnet durch Bestimmen von Verkehrsinformationen basierend auf dem Empfang eines detektierten, klassifizierten und lokalisierten Objektes.
  • Gemäß einer Ausführungsform ist die Erfindung ferner gekennzeichnet durch Erfassen der Videokameradaten mit einer oder mehreren von einer in einem Verkehrsinfrastruktursystem beinhalteten stationären Videokamera und einer in einem oder mehreren von einem Fahrzeug oder einer Drohne beinhalteten mobilen Videokamera.
  • Gemäß der vorliegenden Erfindung ist ein System bereitgestellt, das einen Prozessor; und einen Speicher aufweist, wobei der Speicher durch den Prozessor auszuführende Anweisungen für Folgendes beinhaltet: Detektieren, Klassifizieren und Lokalisieren eines Objektes durch Verarbeiten von Videokameradaten mit einem Kapselnetzwerk, wobei das Trainieren des Kapselnetzwerkes Speichern von Routing-Koeffizienten beinhaltet; und Empfangen des detektierten, klassifizierten und lokalisierten Objektes an einer Rechenvorrichtung.
  • Gemäß einer Ausführungsform beinhaltet das Kapselnetzwerk ein neuronales Netzwerk, wobei die Anweisungen ferner Anweisungen zum Bestimmen von Routing-Koeffizienten, die Routen zwischen Kapselschichten entsprechen, beinhalten.
  • Gemäß einer Ausführungsform beinhalten die Anweisungen ferner Anweisungen zum Bestimmen von Routing-Koeffizienten, indem Routen basierend auf einem oder mehreren von Korrelation oder Clustering im Anschluss an das Training basierend auf einem ersten Trainingsdatensatz gruppiert werden, wobei eine Route bestimmte Elemente in einer Kapselschicht mit Standorten in einer folgenden Kapselschicht verbindet.
  • Gemäß einer Ausführungsform beinhalten die Anweisungen ferner Anweisungen zum Bestimmen von Routing-Koeffizienten durch Verarbeitung mit parallelen Arrays.
  • Gemäß einer Ausführungsform beinhalten die Anweisungen ferner Anweisungen zum Neutrainieren des Kapselnetzwerkes basierend auf einem zweiten Trainingsdatensatz und Speichern von Routing-Koeffizienten.
  • Gemäß einer Ausführungsform ist die Erfindung ferner gekennzeichnet durch Betreiben eines Fahrzeugs basierend auf der Vorhersage eines Objektstandortes basierend auf dem Empfang eines detektierten, klassifizierten und lokalisierten Objektes.
  • Gemäß einer Ausführungsform beinhaltet das Betreiben eines Fahrzeugs basierend auf dem Empfang eines detektierten, klassifizierten und lokalisierten Objektes Bestimmen eines vorhergesagten Standortes des Objektes in globalen Koordinaten.
  • Gemäß einer Ausführungsform ist die Erfindung ferner gekennzeichnet durch Bestimmen von Verkehrsinformationen basierend auf dem Empfang eines detektierten, klassifizierten und lokalisierten Objektes.
  • Gemäß einer Ausführungsform beinhalten die Anweisungen ferner Anweisungen zum Erfassen der Videokameradaten mit einer oder mehreren von einer in einem Verkehrsinfrastruktursystem beinhalteten stationären Videokamera und einer in einem oder mehreren von einem Fahrzeug oder einer Drohne beinhalteten mobilen Videokamera.
  • Gemäß der vorliegenden Erfindung ist ein System bereitgestellt, das Folgendes aufweist: Mittel zum Steuern der Lenkung, der Bremsung und des Antriebsstrangs des Fahrzeugs; Mittel zum Detektieren, Klassifizieren und Lokalisieren eines Objektes durch Verarbeiten von Videokameradaten mit einem Kapselnetzwerk, wobei das Trainieren des Kapselnetzwerkes Speichern von Routing-Koeffizienten beinhaltet; und Mittel zum Empfangen des detektierten, klassifizierten und lokalisierten Objektes an einer Rechenvorrichtung; Mittel zum Betreiben eines Fahrzeugs basierend auf dem detektierten, klassifizierten und lokalisierten Objekt; und Mittel zum Steuern der Lenkung, der Bremsung und des Antriebsstrangs des Fahrzeugs.
  • Gemäß einer Ausführungsform beinhaltet das Kapselnetzwerk Bestimmen von Routing-Koeffizienten, die Routen zwischen Kapselschichten entsprechen.

Claims (15)

  1. Verfahren, umfassend: Detektieren, Klassifizieren und Lokalisieren eines Objektes durch Verarbeiten von Videokameradaten mit einem Kapselnetzwerk, wobei das Trainieren des Kapselnetzwerkes Speichern von Routing-Koeffizienten beinhaltet; und Empfangen des detektierten, klassifizierten und lokalisierten Objektes an einer Rechenvorrichtung.
  2. Verfahren nach Anspruch 1, wobei das Kapselnetzwerk Bestimmen von Routing-Koeffizienten, die Routen zwischen Kapselschichten entsprechen, beinhaltet.
  3. Verfahren nach Anspruch 1, wobei Routing-Koeffizienten bestimmt werden, indem Routen basierend auf einem oder mehreren von Korrelation oder Clustering im Anschluss an das Training basierend auf einem ersten Trainingsdatensatz gruppiert werden, wobei eine Route bestimmte Elemente in einer Kapselschicht mit Standorten in einer folgenden Kapselschicht verbindet.
  4. Verfahren nach Anspruch 1, wobei Routing-Koeffizienten durch Verarbeitung mit parallelen Arrays bestimmt werden.
  5. Verfahren nach Anspruch 1, wobei das Trainieren des Kapselnetzwerkes Neutrainieren des Kapselnetzwerkes basierend auf einem zweiten Trainingsdatensatz und Speichern von Routing-Koeffizienten beinhaltet.
  6. Verfahren nach Anspruch 1, ferner umfassend Betreiben eines Fahrzeugs basierend auf dem Empfang eines detektierten, klassifizierten und lokalisierten Objektes.
  7. Verfahren nach Anspruch 6, wobei das Betreiben eines Fahrzeugs basierend auf dem Empfang eines detektierten, klassifizierten und lokalisierten Objektes Bestimmen eines vorhergesagten Standortes des Objektes in globalen Koordinaten beinhaltet.
  8. Verfahren nach Anspruch 1, ferner umfassend Bestimmen von Verkehrsinformationen basierend auf dem Empfang eines detektierten, klassifizierten und lokalisierten Objektes.
  9. Verfahren nach Anspruch 1, ferner umfassend Erfassen der Videokameradaten mit einer oder mehreren von einer in einem Verkehrsinfrastruktursystem beinhalteten stationären Videokamera und einer in einem oder mehreren von einem Fahrzeug oder einer Drohne beinhalteten mobilen Videokamera.
  10. Verfahren nach Anspruch 1, wobei der Standort des Objektes in globalen Koordinaten gemessen wird.
  11. Verfahren nach Anspruch 10, wobei es sich bei den globalen Koordinaten um Breitengrad, Längengrad und Höhenlage handelt.
  12. Verfahren nach Anspruch 1, ferner umfassend Betreiben des Fahrzeugs basierend auf dem Objekt.
  13. Verfahren nach Anspruch 12, wobei das Betreiben des Fahrzeugs Steuern eines oder mehrerer von Fahrzeugantriebsstrang, Fahrzeuglenkung und Fahrzeugbremsen beinhaltet.
  14. Verfahren nach Anspruch 13, wobei das Betreiben des Fahrzeugs Bestimmen eines Fahrzeugweges beinhaltet.
  15. System, umfassend einen Computer, der dazu programmiert ist, die Verfahren nach einem der Ansprüche 1-14 durchzuführen.
DE102020102823.7A 2019-02-06 2020-02-04 Fahrzeugkapselnetzwerke Withdrawn DE102020102823A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/268,697 US20200250971A1 (en) 2019-02-06 2019-02-06 Vehicle capsule networks
US16/268,697 2019-02-06

Publications (1)

Publication Number Publication Date
DE102020102823A1 true DE102020102823A1 (de) 2020-08-06

Family

ID=71615235

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102020102823.7A Withdrawn DE102020102823A1 (de) 2019-02-06 2020-02-04 Fahrzeugkapselnetzwerke

Country Status (3)

Country Link
US (1) US20200250971A1 (de)
CN (1) CN111532225A (de)
DE (1) DE102020102823A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113936040A (zh) * 2021-10-15 2022-01-14 哈尔滨工业大学 基于胶囊网络和自然语言查询的目标跟踪方法

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11557142B1 (en) * 2019-04-23 2023-01-17 Alarm.Com Incorporated Home wildlife deterrence
CN112784652A (zh) * 2019-11-11 2021-05-11 中强光电股份有限公司 图像识别方法及装置
CN112395504B (zh) * 2020-12-01 2021-11-23 中国计量大学 一种基于序列胶囊网络的短视频点击率预测方法
CN115130664B (zh) * 2022-08-30 2022-11-08 华南师范大学 基于胶囊网络模型的脑电信号的情感分析方法以及装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113936040A (zh) * 2021-10-15 2022-01-14 哈尔滨工业大学 基于胶囊网络和自然语言查询的目标跟踪方法
CN113936040B (zh) * 2021-10-15 2023-09-15 哈尔滨工业大学 基于胶囊网络和自然语言查询的目标跟踪方法

Also Published As

Publication number Publication date
CN111532225A (zh) 2020-08-14
US20200250971A1 (en) 2020-08-06

Similar Documents

Publication Publication Date Title
DE102020102823A1 (de) Fahrzeugkapselnetzwerke
DE102019101938A1 (de) Erstellung kognitiver Karten für Fahrzeuge
DE102017120112A1 (de) Tiefenkartenschätzung mit stereobildern
DE102019122027A1 (de) Fahrzeugwegplanung
DE102019113856A1 (de) Systeme, verfahren und steuerungen für ein autonomes fahrzeug, die autonome fahreragenten und fahrrichtlinienlernende implementieren, um richtlinien basierend auf kollektiven fahrerfahrungen der autonomen fahreragenten zu erstellen und zu verbessern
DE102019113880A1 (de) Systeme, verfahren und steuerungen die autonome fahreragenten und einen richtlinienserver zum erfüllen von richtlinien für autonome fahreragenten implementieren, zum steuern eines autonomen fahrzeugs
DE102019112038A1 (de) Steuerungssysteme, steuerungsverfahren und steuerungen für ein autonomes fahrzeug
DE102019111414A1 (de) Steuerungssysteme, steuerungsverfahren und steuerungen für ein autonomes fahrzeug
DE112018005774T5 (de) Vorrichtung zur Vorhersage des Verhaltens eines sich bewegenden Körpers und Verfahren zur Vorhersage des Verhaltens eines sich bewegenden Körpers
DE102019111402A1 (de) Steuerungssysteme, steuerungsverfahren und steuerungen für ein autonomes fahrzeug
DE102019122826A1 (de) Adaptives fahrzeuglernen
DE102019119162A1 (de) Posenschätzung
DE102020107149A1 (de) Fahrzeugkapsel-netzwerke
DE102019129232A1 (de) Sprachverarbeitung für ein fahrzeug
DE102020113848A1 (de) Ekzentrizitätsbildfusion
DE102019122536A1 (de) Exzentrizitätskarten
DE102021128041A1 (de) Verbesserung eines neuronalen fahrzeugnetzwerks
DE102021127118A1 (de) Identifizieren von Objekten mit LiDAR
DE102021124913A1 (de) Metrik-backpropagation für die beurteilung der leistung von untersystemen
DE102021114724A1 (de) Verbesserter fahrzeugbetrieb
DE102021112616A1 (de) Selbstüberwachte schätzung einer beobachteten fahrzeugpose
DE102022114048A1 (de) Bildentzerrung
DE102023104789A1 (de) Verfolgung mehrerer objekte
DE102020128978A1 (de) Trainieren von tiefen neuronalen netzwerken mit synthetischen bildern
DE102020107339A1 (de) Objektverfolgung für fahrzeuge

Legal Events

Date Code Title Description
R082 Change of representative

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

R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06K0009620000

Ipc: G06V0030190000

R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee