DE102021117456A1 - Systeme und verfahren zur risikobewertung und gerichteten warnung bei fussgängerüberwegen - Google Patents

Systeme und verfahren zur risikobewertung und gerichteten warnung bei fussgängerüberwegen Download PDF

Info

Publication number
DE102021117456A1
DE102021117456A1 DE102021117456.2A DE102021117456A DE102021117456A1 DE 102021117456 A1 DE102021117456 A1 DE 102021117456A1 DE 102021117456 A DE102021117456 A DE 102021117456A DE 102021117456 A1 DE102021117456 A1 DE 102021117456A1
Authority
DE
Germany
Prior art keywords
vehicle
person
risk level
attributes
sensor
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
DE102021117456.2A
Other languages
English (en)
Inventor
Niranjan Avadhanam
Sumit Bhattacharya
Atousa Torabi
Jason Conrad Roche
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.)
Nvidia Corp
Original Assignee
Nvidia Corp
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 Nvidia Corp filed Critical Nvidia Corp
Publication of DE102021117456A1 publication Critical patent/DE102021117456A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/10Machine learning using kernel methods, e.g. support vector machines [SVM]
    • GPHYSICS
    • G08SIGNALLING
    • G08BSIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
    • G08B3/00Audible signalling systems; Audible personal calling systems
    • G08B3/10Audible signalling systems; Audible personal calling systems using electric transmission; using electromagnetic transmission
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
    • B60W30/08Active safety systems predicting or avoiding probable or impending collision or attempting to minimise its consequences
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
    • B60W30/08Active safety systems predicting or avoiding probable or impending collision or attempting to minimise its consequences
    • B60W30/09Taking automatic action to avoid collision, e.g. braking and steering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G08SIGNALLING
    • G08BSIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
    • G08B21/00Alarms responsive to a single specified undesired or abnormal condition and not otherwise provided for
    • G08B21/02Alarms for ensuring the safety of persons
    • GPHYSICS
    • G08SIGNALLING
    • G08BSIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
    • G08B21/00Alarms responsive to a single specified undesired or abnormal condition and not otherwise provided for
    • G08B21/18Status alarms
    • G08B21/22Status alarms responsive to presence or absence of persons
    • GPHYSICS
    • G08SIGNALLING
    • G08BSIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
    • G08B7/00Signalling systems according to more than one of groups G08B3/00 - G08B6/00; Personal calling systems according to more than one of groups G08B3/00 - G08B6/00
    • G08B7/06Signalling systems according to more than one of groups G08B3/00 - G08B6/00; Personal calling systems according to more than one of groups G08B3/00 - G08B6/00 using electric transmission, e.g. involving audible and visible signalling through the use of sound and light sources
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/005Traffic control systems for road vehicles including pedestrian guidance indicator
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/16Anti-collision systems
    • G08G1/166Anti-collision systems for active traffic, e.g. moving vehicles, pedestrians, bikes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Transportation (AREA)
  • Automation & Control Theory (AREA)
  • Mechanical Engineering (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biophysics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Business, Economics & Management (AREA)
  • Emergency Management (AREA)
  • Electromagnetism (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Traffic Control Systems (AREA)
  • Control Of Driving Devices And Active Controlling Of Vehicle (AREA)

Abstract

Systeme und Verfahren sind hier offenbart für ein Fußgängerüberweg-Warnsystem, das multimodale Technologie verwenden kann, um Attribute einer Person zu bestimmen und als Reaktion auf ein berechnetes Risikoniveau eine Warnung an die Person abzugeben, um eine Senkung des Risikoniveaus zu bewirken. Das System kann Sensoren verwenden, um Daten zu empfangen, die für den Bewegungsverlauf einer Person außerhalb des Fahrzeugs bezeichnend sind. Bestimmte Attribute der Person, wie Alter oder Gehhilfen, können ermittelt werden. Auf der Grundlage der Bewegungsverlaufsdaten und der spezifischen Attribute kann das System mit Hilfe eines Machine-Leaming-Modells ein Risikoniveau bestimmen. Das System kann als Reaktion auf das Risikoniveau eine Warnung an die Person aussenden.

Description

  • HINTERGRUND DER ERFINDUNG
  • Die Erfindung betrifft Verfahren zum Betreiben eines Fahrzeugs, insbesondere Verfahren zur Risikobewertung und für gerichtete Warnsysteme bei Fußgängerüberwegen.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Betrieb von Fahrzeugen ist mit einem inhärenten Kollisionsrisiko für alle Objekte im Fahrbereich des Fahrzeugs, zum Beispiel auch für Objekte in der Nähe von Fußgängerüberwegen, verbunden.
  • Dieses Risiko kann sich für Fußgänger, die den Fußgängerüberweg überqueren wollen, aber eine Wahrnehmungsschwäche wie beispielsweise ein schlechtes Gehör haben, oder für Fußgänger, die durch die Beschäftigung mit beispielsweise einem Smartphone abgelenkt sind, noch erhöhen. In einem aktuellen Ansatz können Systeme eine Bewertung darüber abgeben, wann der Fußgänger durch das Fahrzeug gefährdet sein kann, und den Fußgänger warnen. Die bereitgestellte Warnung ist jedoch allgemein gehalten und kann von jedem in der Umgebung wahrgenommen werden und kann sogar andere, nicht gefährdete Personen auf der Straße ablenken, wenn das gefährdete Objekt nicht sogleich offensichtlich ist.
  • Dementsprechend werden hier zur Überwindung der Beschränkungen aktueller Warnsysteme bei Fußgängerüberwegen Systeme und Verfahren für ein Warnsystem bei Fußgängerüberwegen beschrieben, welches eine multimodale Verfahrenstechnologie nutzen kann, um ein kalkuliertes Risikoniveau für eine Person zu bestimmen und die Person zu warnen, um das Risikoniveau zu senken. Das System kann Sensoren zum Empfangen von Daten verwenden, welche für den Bewegungsverlauf einer Person außerhalb des Fahrzeugs bezeichnend sind. So kann sich beispielsweise eine ältere Person in langsamem Schritttempo einem Fußgängerüberweg nähern. In einigen Ausführungsformen empfängt das System Kamera- und LIDAR-Sensordaten der älteren, sich dem Fußgängerüberweg nähernden Person in einer Anzahl einzelner Bilder und berechnet einen Bewegungsverlauf der Person auf Grundlage der Geschwindigkeit und Körperhaltung. Bestimmte Attribute der Person, wie Alter oder Gehhilfen, können erfasst werden. In Fortsetzung des genannten Beispiels stellt das System fest, dass die ältere Person eine Gehhilfe benutzt und ein Hörgerät trägt. Auf der Grundlage der Bewegungsverlaufsdaten und der spezifischen Attribute kann das System mit Hilfe eines Machine-Learning-Modells oder eines anderen geeigneten Modells ein Risikoniveau ermitteln. Beispielsweise kann das Risikoniveau hoch sein, wenn der älteren Person aufgrund der Feststellung des Hörgeräts eine Hörschwäche und aufgrund der Feststellung der Gehhilfe wenig Mobilität zum Ändern des Bewegungsverlaufs zugeschrieben wird. Das System kann als Reaktion auf das Risikoniveau eine Warnung an die Person ausgeben. In diesem Szenario sendet das Fahrzeug ein strahlenförmiges akustisches Signal, welches auf die aktuelle Position der älteren Person gerichtet ist und dessen Stärke dem ermittelten Risikoniveau entspricht, um sicherzustellen, dass die ältere Person in der Lage ist, die Warnung wahrzunehmen. Da die Warnung strahlförmig ausgesendet wird, wird die übrige Umgebung in ihren Aktivitäten weniger gestört.
  • In einigen Ausführungsformen der Erfindung kann das Machine-Learning-Modell einen Hardwarebeschleuniger umfassen, um zumindest partiell das Risikoniveau zu berechnen. In anderen Ausführungsformen der Erfindung implementiert die Berechnung des Risikoniveaus neuronale Netzwerke, welche Eingaben aus den Daten empfangen können, die einen Bewegungsverlauf einer Person und Attribute der Person anzeigen, um eine Wahrscheinlichkeit zu ermitteln, mit der sich das Fahrzeug auf einem Kollisionskurs mit der Person befindet.
  • In einigen Ausführungsformen der Erfindung kann das System Attribute feststellen, welche über die Person hinausgehen und umgebungsbezogene Attribute wie Wetterbedingungen, ortsspezifische Attribute (z. B. ob in der Nähe eine Schulzone, Verkehrszeichen und -signale sind) und/oder Fahrbedingungen für die Berechnung des Risikoniveaus einschließen.
  • Das als Reaktion auf das Risikoniveau durchzuführende Verfahren zur Senkung des Risikoniveaus kann in einer Vielzahl von hier offenbarten Techniken implementiert werden. In einigen Ausführungsformen der Erfindung wird ein gerichtetes akustisches Signal vom Fahrzeug an das Objekt auf der Grundlage des Risikoniveaus gesendet, wobei das akustisches Signal verschiedene Frequenzkomponenten enthält (z. B. könnte eine Komponente in einem Frequenzbereich für das menschliche Gehör und eine andere Komponente in einem anderen Frequenzbereich für das Gehör von Assistenzhunden liegen). In anderen Ausführungsformen der Erfindung kann die Warnung an die Person durch die Aussendung eines Lichtsignals vom Fahrzeug in Richtung des Objekts erfolgen.
  • Figurenliste
  • Die nachstehenden und andere Gegenstände und Vorteile der Erfindung werden unter Berücksichtigung der folgenden detaillierten Beschreibung in Verbindung mit den beigefügten Zeichnungen, in denen sich gleiche Bezugszeichen durchgehend auf gleiche Bauteile beziehen, deutlich:
    • 1A zeigt gemäß einigen Ausführungsformen der Erfindung ein Beispielszenario einer abgelenkten Person, die sich einem Fußgängerüberweg nähert;
    • 1B zeigt gemäß einigen Ausführungsformen der Erfindung ein Beispielszenario mit Personen, die in Richtung eines Fußgängerüberwegs rennen;
    • 1C zeigt gemäß einigen Ausführungsformen der Erfindung ein Beispielszenario mit Kindern, die sich einem Fußgängerüberweg in einer Schulzone nähern;
    • 1D zeigt gemäß einigen Ausführungsformen der Erfindung ein Beispielszenario mit älteren Menschen mit einem Hund, die sich einem Fußgängerüberweg nähern;
    • 2 zeigt ein Blockdiagramm zur Risikoberechnung gemäß einigen Ausführungsformen der Erfindung;
    • 3A zeigt ein Modul zur Wahrnehmung der Risikobewertung gemäß einigen Ausführungsformen der Erfindung;
    • 3B zeigt ein Modul zur Risikobewertung von Fußgängerattributen gemäß einigen Ausführungsformen der Erfindung;
    • 3C zeigt ein Modul zur Fußgängerüberquerungsabsicht gemäß einigen Ausführungsformen der Erfindung;
    • 4 zeigt eine beispielhafte strahlgeformte Audiosignalabgabe gemäß einigen Ausführungsformen der Erfindung;
    • 5A zeigt ein beispielhaftes autonomes Fahrzeug gemäß einigen Ausführungsformen der vorliegenden Erfindung;
    • 5B zeigt ein Beispiel für Kamerastandorte und Sichtfelder für das beispielhafte autonome Fahrzeug von 5A gemäß einigen Ausführungsformen der Erfindung;
    • 5C zeigt ein Blockdiagramm einer beispielhaften Systemarchitektur für das beispielhafte autonome Fahrzeug von 5A gemäß einigen Ausführungsformen der vorliegenden Erfindung;
    • 5D zeigt ein Systemdiagramm für die Kommunikation zwischen dem/den cloudbasierten Server/n und dem beispielhaften autonomen Fahrzeug von 5A gemäß einigen Ausführungsformen der vorliegenden Erfindung;
    • 6 zeigt ein Blockdiagramm eines beispielhaften Rechners, welcher zur Verwendung bei der Implementierung einiger Ausführungsformen der vorliegenden Erfindung geeignet ist;
    • 7 zeigt ein beispielhaftes Flussdiagramm eines Prozesses zum Betreiben eines Fahrzeugs gemäß einigen Ausführungsformen der Erfindung;
    • 8 zeigt ein beispielhaftes Flussdiagramm eines Prozesses zur Bestimmung des Bewegungsverlaufs eines Objekts außerhalb des Fahrzeugs gemäß einigen Ausführungsformen der Erfindung;
    • 9 zeigt ein beispielhaftes Flussdiagramm eines Prozesses zur Bestimmung von Attributen eines Objekts außerhalb des Fahrzeugs und
    • 10 zeigt ein beispielhaftes Flussdiagramm eines Verfahrens zum Veranlassen der Aussendung eines strahlgeformten akustischen Signals gemäß einigen Ausführungsformen der Erfindung.
  • DETAILLIERTE BESCHREIBUNG DER ERFINDUNG
  • 1A zeigt gemäß einigen Ausführungsformen der Erfindung ein Beispielszenario 100 einer abgelenkten Person, die sich einem Fußgängerüberweg nähert. Ein modernes Fahrzeug 102 fährt mit einem Bewegungsverlauf, der sich dem die Straße 104 kreuzenden Fußgängerüberweg 106 nähert. Das Fahrzeug umfasst Verarbeitungsschaltungen, die Funktionen realisieren können, die eine Verarbeitung erfordern, beispielsweise eine Parallelverarbeitung und/oder jede andere Funktion, die eine rechnerische Analyse erfordert. Die Verarbeitungsschaltung kann Daten von im Fahrzeug eingebauten Sensoren empfangen, die den Bewegungsverlauf einer Person außerhalb des Fahrzeugs anzeigen. Die Sensoren des Fahrzeugs können jede Art von Sensor umfassen, einschließlich aber nicht beschränkt auf GNSS-Sensoren (Sensoren des globalen Navigationssatellitensystems) (z. B. GPS-Sensor/en), RADAR-Sensor/en, Ultraschallsensor/en, LIDAR-Sensor/en, IMU-Sensor/en (Sensoren einer inertialen Messeinheit) (z. B. Beschleunigungsmesser, Gyroskop/e, Magnetkompass/e, Magnetometer usw.), Mikrofonsensor/en, Stereokamerasensor/en, Weitwinkelkamerasensor/en (z. B. Fisheye-Kameras), Infrarotkamerasensor/en, Rundumsicht-Kamerasensor/en (z. B. 360-Grad-Kamera/s), Weitbereichskamerasensor/en, Mittelbereichskamerasensor/en, Geschwindigkeitssensor/en, Vibrationssensor/en, Lenksensor/en, Bremssensor/en (z. B. als Teil eines Bremssensorsystems) und/oder andere Sensortypen. Zurückkommend auf 1A kann die Verarbeitungsschaltung Informationen von einer oder mehreren Kameravorrichtungen (wie z. B. einer oder mehreren Stereokameras, einer oder mehreren monokularen Kameras und/oder einer oder mehreren Infrarotkameras) empfangen, um ein Verkehrsschild für einen Fußgängerüberweg 108 zu erkennen, das vor einem herannahenden Fußgängerüberweg warnt. Die Kameras können auch den vorausliegenden Fußgängerüberweg 106 und eine sich nähernde Person 105 erfassen. Die von diesen Kameras empfangenen Daten (z. B. eine Serie von Bildern) können den Bewegungsverlauf eines Fußgängers, zum Beispiel eines Jugendlichen 105, anzeigen.
  • In einigen Ausführungsformen empfängt die Verarbeitungsschaltung ein oder mehrere Bilder eines Objekts (z. B. einer Person), welche von einem Sensor empfangen werden. Die Verarbeitungsschaltung kann die Gerichtetheit des Objekts auf der Grundlage eines oder mehrerer vom Kamerasensor empfangener Bilder bestimmen. Ausgehend von dem Beispiel in 1A können mehrere Bilder von den Kameras aufgenommen werden, wenn sich das Fahrzeug dem Fußgängerüberweg nähert. Diese Bilder können den Jugendlichen an mehreren verschiedenen Stellen zeigen, während er sich dem Fußgängerüberweg vertikal zum Bewegungsverlauf des Fahrzeugs nähert. Die drei Bilder zeigen, dass der Jugendliche dem Fußgängerüberweg näherkommt. Die Verarbeitungsschaltung bestimmt auf der Grundlage der Stellen, an denen sich der Jugendliche dem Fußgängerüberweg nähert, eine Richtung, die der Überquerung des Fußgängerüberwegs entspricht. Darüber hinaus kann die Verarbeitungsschaltung auf der Grundlage dieser Bilder die Geschwindigkeit des Objekts bestimmen. Beispielsweise werden die drei Bilder mit jeweiligen Zeitstempeln aufgenommen. Auf der Grundlage der relativen Entfernung des Jungen zwischen dem einen oder den mehreren Bildern und der Zeitdifferenz zwischen den Bildern kann von der Verarbeitungsschaltung unter Verwendung entsprechender Berechnungen von Entfernung und Zeit eine Geschwindigkeit berechnet werden. Die Verarbeitungsschaltung kann den Bewegungsverlauf des Objekts auf der Grundlage der Geschwindigkeit und der Gerichtetheit des Objekts bestimmen. Beispielsweise kann die Verarbeitungsschaltung des Fahrzeugs feststellen, dass der Bewegungsverlauf des Jugendlichen ausgerichtet ist, den Fußgängerüberweg mit einer Schrittgeschwindigkeit von (z. B. 3 Meilen pro Stunde) zu überqueren.
  • 1B zeigt gemäß einigen Ausführungsformen der Erfindung ein Beispielszenario 111 von Personen 112, die in Richtung eines Fußgängerüberwegs rennen. In diesem Beispiel kann die Verarbeitungsschaltung des Fahrzeugs 102 feststellen, dass der Bewegungsverlauf der Personen 112 darauf abzielt, den Fußgängerüberweg 106 mit einer Laufgeschwindigkeit von 13 Meilen pro Stunde zu überqueren. 1C zeigt gemäß einigen Ausführungsformen der Erfindung ein Beispielszenario 121 von Kindern 122, die sich einem Fußgängerüberweg 106 in einer Schulzone nähern. In diesem Beispiel kann die Verarbeitungsschaltung des Fahrzeugs 102 feststellen, dass der Bewegungsverlauf der Kinder 122 ausgerichtet ist, den Fußgängerüberweg 106 mit einer Schrittgeschwindigkeit von beispielsweise 2 Meilen pro Stunde zu überqueren. 1D zeigt gemäß einigen Ausführungsformen der Erfindung ein Beispielszenario 131 von älteren Personen 134 mit einem Hund 135, die sich einem Fußgängerüberweg 106 nähern. In diesem Beispiel kann die Verarbeitungsschaltung des Fahrzeugs 102 separate Bewegungsverläufe für jedes der Objekte 134 und 135, deren Bewegungsverlauf ausgerichtet ist, den Fußgängerüberweg 106 mit einer Schrittgeschwindigkeit von ca. 2,5 Meilen pro Stunde zu überqueren, bestimmen.
  • Die Verarbeitungsschaltung kann ein oder mehrere Attribute der Person bestimmen. In einigen Ausführungsformen kann die Bestimmung eines oder mehrerer Attribute der Person durch die Verarbeitungsschaltung unter Verwendung eines Machine-Learning-Modells (z. B. eines neuronalen Netzwerks, welches durch eine Parallelverarbeitungsschaltung implementiert wird) durchgeführt werden. Das Bild oder von dem Bild abgeleitete Informationen können als Eingabe in das Machine-Learning-Modell verwendet werden. Bei dem Objekt kann es sich beispielsweise um eine Person handeln, und die Attribute der Person können mindestens eines der folgenden Merkmale umfassen: Kopfhaltung der Person, Körperhaltung der Person, Kleidung oder andere Gegenstände der Person oder eine von der Person ausgeführte Geste. In einigen Ausführungsformen können auch andere Faktoren wie beispielsweise Umgebungsattribute als Eingabe für das Machine-Learning-Modell verwendet werden. Ein Machine-Learning-Modell kann mit einem Trainingsdatensatz, welcher eine Vielzahl von Körperhaltungen, Körpertypen (einschließlich Altersunterschiede), Kleidung oder anderen Gegenständen, Gesten, Accessoires oder Umgebungsattributen beinhaltet, trainiert werden.
  • Zurückkommend auf 1 A kann die Verarbeitungsschaltung anhand der empfangenen Bilder feststellen, dass der Jugendliche 105 auf ein Mobiltelefon schaut, das auf den Bildern sichtbar ist. Die Verarbeitungsschaltung kann ferner feststellen, dass die Kopfhaltung des Jugendlichen im Vergleich zu einer neutralen Kopfhaltung nach unten geneigt ist. Die Verarbeitungsschaltung kann ferner die Marke und den Typ der von dem Jugendlichen getragenen Kleidung sowie einen Rucksack feststellen. Die Verarbeitungsschaltung kann weiterhin feststellen, dass ein Verkehrswarnschild für einen Fußgängerüberweg 108 vorhanden ist.
  • Zurückkommend auf 1 kann die Verarbeitungsschaltung feststellen, dass die Personen 112 Sportkleidung und Sportschuhe tragen. Zurückkommend auf 1C kann die Verarbeitungsschaltung feststellen, dass ein Schulschild 124 vorhanden ist, welches auf ein Umgebungsattribut hinweist. Andere Beispiele für Umgebungsattribute sind aktuelle Wetterbedingungen, aktuelle Tageszeit oder relative Ausmaße örtlicher Aktivitäten (z. B. eine Anzahl von Fußgängern auf einem Gehweg). Zurückkommend auf 1D kann die Verarbeitungsschaltung die Rasse und den Typ des Hundes 135 bestimmen. Die Verarbeitungsschaltung kann ferner die von den älteren Personen 134 benutzten körperlichen Hilfsmittel, wie beispielsweise einen Rollstuhl und eine Gehhilfe, ermitteln.
  • Die Verarbeitungsschaltung kann eine Klassifizierung des Attributs der Person auf der Grundlage eines Machine-Learning-Modells bestimmen. Das Machine-Learning-Modell kann mit bereits existierenden Bibliotheken für alle Arten von Attributen (z. B. Kopfhaltung, Körperhaltung, Kleidung usw.) trainiert werden. Das Machine-Learning-Modell kann auf der Grundlage aller ermittelten Attribute eine spezifische Klassifizierung für die Objekte festlegen. Die Klassifizierung kann in Form von Daten erfolgen, welche sich auf ein bestimmtes Objekt in einem empfangenen Bild beziehen.
  • In 1A kann die Verarbeitungsschaltung beispielsweise, über ein Machine-Learning-Modell, basierend auf der Größe, den Körperproportionen, der Art der Kleidung, dem Rucksack und einem oder mehreren anderen Attributen, welche für den Jugendlichen ermittelt wurden, feststellen, dass der Jugendliche 105 mit hoher Wahrscheinlichkeit in einem Altersbereich von 13-18 Jahren liegt. Die Verarbeitungsschaltung kann anhand der Klassifizierung des Jugendlichen, die keine Beeinträchtigung für den Empfang einer akustischen Warnung anzeigt (z. B. keine wahrscheinliche Hörbeeinträchtigung, keine Kopfhörer, die das Gehör behindern usw.), feststellen, dass jede Art audiobasierter Warnung von dem Jugendlichen 105 empfangen werden kann. Die Verarbeitungsschaltung kann diese Klassifizierung in einem (lokalen oder netzbasierten) Speicher als Metadaten in Verbindung mit dem Objekt speichern.
  • Zurückkommend auf 1 kann die Verarbeitungsschaltung die Kinder 122 so klassifizieren, dass sie mit hoher Wahrscheinlichkeit in einem Altersbereich von sieben bis elf Jahren sind und eine einfache akustische Warnung benötigen, um diese entsprechend ihren Verständnisfähigkeiten, die ihnen als Mitglieder dieser Altersgruppe zuzuschreiben sind, zu verstehen. Zurückkommend auf 1D kann die Verarbeitungsschaltung die älteren Personen 134 so klassifizieren, dass die Wahrscheinlichkeit besteht, dass sie in einem Altersbereich von achtzig und mehr Jahren sind und eine lautere akustische Warnung benötigen, um sie entsprechend ihrer ihnen zugeschriebenen Altersgruppe und sensorischen Wahrnehmungsfähigkeiten zu verstehen.
  • In einigen Ausführungsformen kann die Verarbeitungsschaltung auf der Grundlage des Empfangs von Daten, welche eine Darstellung mindestens eines Teils des Objekts (z. B. eines Teils der Person) anzeigen, Attribute des Objekts bestimmen. Wenn die Verarbeitungsschaltung beispielsweise anhand eines empfangenen Bildes feststellt, dass eine Person eine Gehhilfe benutzt, kann dies in die Bestimmung des Alters der Person einfließen (z. B. kann dies zu der Schlussfolgerung führen, dass die Person älter ist).
  • Die Verarbeitungsschaltung kann unter Verwendung einer Parallelverarbeitungsschaltung, die ein Machine-Leaming-Modell implementiert, ein Risikoniveau basierend auf den Daten, die den Bewegungsverlauf anzeigen, und auf dem einen oder den mehreren Attributen berechnen. In einigen Ausführungsformen kann die Verarbeitungsschaltung das Risikoniveau berechnen, indem sie eine dreidimensionale Körperhaltung des Fußgängers implementiert. Die Verarbeitungsschaltung kann die dreidimensionale Körperhaltung des Fußgängers auf einem oder mehreren Bildern oder Videoaufnahmen von einem Kamerasensor ermitteln. Die Verarbeitungsschaltung kann Kalman-Filterung innerhalb des Machine-Learning-Modells implementieren, um die dreidimensionale Körperhaltung des Fußgängers abzuschätzen.
  • 2 zeigt ein Blockdiagramm zur Risikoberechnung 200 gemäß einigen Ausführungsformen der Erfindung. In einigen Ausführungsformen umfasst das Blockdiagramm zur Risikoberechnung zwei Module, umfassend ein Risikomodul 202 und ein Überquerungsabsichtsmodul 204. Das Blockdiagramm zur Risikoberechnung kann verwendet werden, um das Risikoniveaus zu berechnen. Das Risikomodul 202 umfasst ferner Untermodule, welche vier Faktoren entsprechen, die zur Bestimmung mindestens eines Teils der Risikoberechnung verwendet werden. Zu den vier Faktoren gehören Wahrnehmung, Gefährlichkeit der Situation, Fußgängerwarnung und Fußgängerattribute.
  • Die Verarbeitungsschaltung kann die Wahrnehmung des Fußgängers auf der Grundlage einer berechneten Kopfhaltung bestimmen. Die Kopfhaltung kann unter Verwendung der durch die Körperhaltung bestimmten Halsgelenke geschätzt werden. Das Machine-Learning-Modell kann einen Kopf-Begrenzungsrahmen (Bounding Box) implementieren, der an eine Kopfhaltungsschätzung weitergegeben wird. Die Schätzung der Kopfhaltung kann beispielsweise genutzt werden, um abzuschätzen, ob der Kopf des Fußgängers nach unten geneigt ist oder ob der Kopf des Fußgängers so ausgerichtet ist, dass er in einem Sekundenfenster auf das Fahrzeug blickt. In einigen Ausführungsformen kann die Schätzung der Kopfhaltung in relativer Ausrichtung zum Fahrzeug erfolgen. In einigen Ausführungsformen kann die Verarbeitungsschaltung die Wahrnehmung des Fußgängers durch Ermittlung eines sozialen und technischen Ablenkungsquotienten (z. B. ob der Fußgänger durch Benutzung eines Mobiltelefons abgelenkt ist) feststellen.
  • 3A zeigt ein Modul zur Wahrnehmung der Risikobewertung 310 gemäß einigen Ausführungsformen der Erfindung. Das Modul zur Wahrnehmung der Risikobewertung kann mindestens drei verschiedene Arten von Netzwerken enthalten. Erstens können ein oder mehrere CNNs (Convolutional Neural Networks) für die Körperhaltung 312 eine Fußgänger-Bounding Box des Fußgängers eingeben. Das CNN für die Körperhaltung wird verwendet, um die spezifischen kinematischen Werte, Fortbewegung und/oder Körperhaltung des Fußgängers zu bestimmen. Zweitens können ein oder mehrere CNNs für Objekte 314 eine Hand-Bounding Box des Fußgängers eingeben. Das CNN für Objekte wird verwendet, um ein bestimmtes Objekt zu bestimmen, das mit dem Fußgänger interagiert. Die Hand-Bounding Box kann auf der Grundlage der durch die Körperhaltung berechneten Position des Handgelenks geschätzt werden und ihre Größe kann proportional zur Körpergröße des Fußgängers sein. Drittens können ein oder mehrere CNNs für die Kopfhaltung 316 eine Bounding Box für den Kopf des Fußgängers eingeben. Das CNN für die Kopfhaltung wird verwendet, um die Kopfausrichtung des Fußgängers zu bestimmen und so den Grad seiner Aufmerksamkeit abzuschätzen. Die Kopf-Bounding Box kann auf der Grundlage der durch die Körperhaltung berechneten Halsgelenksposition des Fußgängers geschätzt werden, und ihre Größe kann proportional zur Körpergröße des Fußgängers sein. In einigen Ausführungsformen berechnen diese drei Netzwerke als Ausgänge: einen kinematischen Merkmalsvektor (z. B. dreidimensionales Körperhaltungsgelenk), einen Objekt-Merkmalsvektor, welcher die komplett verbundene Schicht des oder der CNNs für Objekte darstellt, und einen Kopfhaltungsmerkmalsvektor, welcher die komplett verbundene Schicht des oder der neuronalen Netzwerke der Kopfhaltungsschätzung darstellt. Die Verarbeitungsschaltung kann diese drei Merkmalsvektoren verketten, um sie an einen Klassifikator der Support-Vector-Machine (SVM) 318 anzupassen, um vorherzusagen, ob ein Fußgänger eine bestimmte Aktion ausführt (z. B. eine SMS schreibt, telefoniert, andere Aktionen ausführt usw.) In einigen Ausführungsformen kann der Kopfhaltungsmerkmalsvektor Neigen, Schwanken und Kreisen 320 des Kopfes des Fußgängers ausgeben. Diese Informationen können von der Verarbeitungsschaltung genutzt werden, um zu bestimmen, ob der Fußgänger zum Fahrzeug aufblickt (z. B. einschätzen, dass der Fußgänger das Fahrzeug wahrnimmt).
  • Die Verarbeitungsschaltung kann die Gefährlichkeit der Situation des Fußgängers auf der Grundlage eines berechneten vertikalen Abstands des Fahrzeugs zum Fußgänger bestimmen. Der Abstand kann zum Beispiel der vertikale Abstand des Fahrzeugs zum Fußgänger auf jedem Bild sein. Diese Abstandsschätzung wird von der Verarbeitungsschaltung durchgeführt, indem sie den Mittelwert dreidimensionaler Fußgänger-Körpergelenk-Z-Koordinaten (z. B. in Metern) relativ zum Fahrzeug berechnet.
  • Die Verarbeitungsschaltung kann die Warnung des Fußgängers auf der Grundlage einer Schätzung durch eine Änderung des horizontalen Abstands der X-Koordinaten und der horizontalen Abstandsgeschwindigkeitsänderungen des Fußgängers auf jedem Bild bestimmen. X-Koordinaten werden von der Verarbeitungsschaltung auf der Grundlage des Mittelwerts der Fußgänger-3D-Körpergelenk-X-Koordinaten berechnet.
  • 3B zeigt ein Modul zur Risikobewertung von Fußgängerattributen 320 gemäß einigen Ausführungsformen der Erfindung. Bestimmung von Attributen kann von einer Verarbeitungsschaltung durchgeführt werden, indem ein oder mehrere CNNs für Personen 322 implementiert werden, welche eine Bounding Box für Fußgänger eingeben können. Das oder die CNNs für Personen können einen Personenvektor ausgeben, der die komplett verbundene Schicht des oder der CNNs für Personen darstellt. Dieser Personenvektor kann in einen Klassifikator 324 eingegeben werden, um den Fußgänger als zu einer der folgenden Klassen zugehörig zu klassifizieren: Kind, Erwachsener, ältere Person usw.
  • Das Überquerungsabsichtsmodul kann durch Verarbeitungsschaltungen implementiert werden, um die Absicht des Fußgängers, eine Kreuzung und/oder einen Weg innerhalb des Bewegungsverlaufs des Fahrzeugs zu überqueren, festzustellen. In bestimmten Szenarien ist der Fußgänger beispielsweise gefährdet, weil er sich sehr nahe am Fahrbahnrand befindet, aber nicht die Absicht hat, die Straße zu überqueren (z. B. ein Fußgänger, der Gepäck aus dem Kofferraum seines Fahrzeugs entnimmt).
  • 3C zeigt ein Modul für Fußgängerüberquerungsabsichten 330 gemäß einigen Ausführungsformen der Erfindung. Die Verarbeitungsschaltung kann ein oder mehrere CNNs für die Körperhaltung 332 implementieren, welche in ein rekurrentes neuronales Netzwerk mit Langzeitspeicher (Long Short-Term Memory, LTSM) 334 eingegeben werden. Das oder die LTSMs können Körperbewegungsmuster und Körperausrichtung lernen. Die Ausgaben des oder der LTSMs werden in einen Klassifikator 336 (z. B. einen SoftMax-Klassifikator) eingegeben, der vorhersagen kann, ob ein Fußgänger die Straße überquert oder andere Aktivitäten ausführt.
  • Ein Risikoniveau kann ein quantitatives oder qualitatives Maß sein, das aus einer rechnerischen Analyse abgeleitet wird, welche von einer Verarbeitungsschaltung durchgeführt wird, die zumindest in einigen Ausführungsformen ein oder mehrere Machine-Learning-Modelle verwendet. Zum Beispiel kann ein Machine-Learning-Modell mit einem Datensatz trainiert werden, der Kombinationen von Bewegungsverläufen und Attributklassifikationen für verschiedene Objekte beinhaltet. Ein Machine-Learning-Modell kann ferner mit Sicherheitsdaten trainiert werden, die mit jeder Kombination verbunden sind. Die Sicherheitsdaten können für jede Kombination Daten spezifizieren (z. B. bestimmte Geschwindigkeiten und Richtungen von Fahrzeugen und Objekten), die sich auf die Wahrscheinlichkeit oder das Potenzial von Kollisionen und anderen gefährlichen Folgen beziehen. Das Machine-Learning-Modell kann in der Lage sein, ein Risikoniveau für jede dieser Kombinationen zu bestimmen. In einigen Ausführungsformen kann die Verarbeitungsschaltung das Risikoniveau auf der Grundlage einer Nachschlagetabelle berechnen, welche eine entsprechende Risikoniveauausgabe auf der Grundlage des Bewegungsverlaufs und des einen oder der mehreren Attribute aufweist.
  • In einigen Ausführungsformen kann die Verarbeitungsschaltung zumindest teilweise einen oder mehrere Hardwarebeschleuniger zur Berechnung des Risikoniveaus enthalten. Zum Beispiel kann ein programmierbarer Bildverarbeitungsbeschleuniger (PVA) verwendet werden, um Computer-Vision-Berechnungen durchzuführen. In einem anderen Beispiel kann ein Deep-Learning-Beschleuniger (DLA) eingesetzt werden, um Berechnungen für Operationen tiefer neuronaler Netzwerke durchzuführen, die in der Parallelverarbeitung verwendet werden. Insbesondere kann der DLA Eingaben, wie zum Beispiel Daten, welche einen Objektbewegungsverlauf und/oder Objektattribute anzeigen, empfangen und diese Eingaben in einem Machine-Learning-Modell (z. B. einem oder mehreren tiefen neuronalen Netzwerken) implementieren, um ein Risikoniveau zu berechnen. In einigen Ausführungsformen verwendet die Verarbeitungsschaltung zumindest teilweise ein oder mehrere neuronale Netzwerke, um das Risikoniveau zu berechnen. Die neuronalen Netzwerke verwenden Daten, die den Bewegungsverlauf und das eine oder die mehreren Attribute als Eingaben anzeigen. Die neuronalen Netzwerke melden, ob sich das Fahrzeug auf einem Kollisionskurs mit dem Objekt befindet.
  • Die Verarbeitungsschaltung kann Attribute als eine oder mehrere Eingaben für ein Machine-Learning-Modell bereitstellen. Nicht einschränkende Beispiele für geeignete Attribute können eines oder mehrere solcher Attribute wie Ortsattribut, Wetterattribut oder Verkehrssituationsattribut umfassen. In einigen Ausführungsformen kann sich das Machine-Learning-Modell von dem Machine-Learning-Modell unterscheiden, welches zur Feststellung anderer Attribute des Objekts verwendet wird. In anderen Ausführungsformen wird dasselbe Machine-Learning-Modell verwendet, um beide Sätze von Attributen des Objekts zu bestimmen. Die Verarbeitungsschaltung kann das Machine-Learning-Modell verwenden, um das Risikoniveau auf der Grundlage mindestens eines der Attribute zu berechnen. Beispielsweise kann das Risikoniveau höher sein, wenn ungünstige Wetterbedingungen erkannt werden - wie Regen, der größere Sicherheitsabstände zum Anhalten für gehende Menschen und fahrende Fahrzeuge erfordert. In einem anderen Beispiel kann das Risikoniveau höher sein, wenn die Fahrbedingungen schwierig sind, wie zum Beispiel bei Fahrzeugen, welche auf steilen, ebenfalls längere Anhaltewege erfordernden Steigungen fahren. In einem weiteren Beispiel kann die Gefahr bei schlechten Lichtverhältnissen (z. B. nachts) höher sein. In diesem Beispiel haben Fußgänger im Allgemeinen eine eingeschränkte visuelle Wahrnehmung, wodurch sich das Risikoniveau erhöht.
  • Das Risikoniveau kann ein quantitativer Wert sein, der durch das von den Verarbeitungsschaltungen verwendete Machine-Learning-Modell generiert wird, um eine entsprechende auszuführende Operation festzulegen. Das Risikoniveau kann auch eine Klassifizierung auf der Grundlage eines quantitativen Wertes sein (z. B. hohes Risiko, mittleres Risiko, niedriges Risiko). In einigen Ausführungsformen kann das Risikoniveau auf verschiedenen mathematischen, statistischen und/oder Fuzzy-Logik-Operationen beruhen, die von dem Machine-Learning-Modell verwendet werden. Das Risikoniveau kann von den Verarbeitungsschaltungen in Verbindung mit einem oder mehreren entsprechenden Objekten gespeichert werden.
  • Zurückkommend auf 1A kann die Verarbeitungsschaltung basierend auf dem ermittelten Bewegungsverlauf, dass der Jugendliche 105 orientiert ist und wahrscheinlich den Fußgängerüberweg überqueren wird, und basierend auf der Klassifizierung, dass der Jugendliche keine Hindernisse für den Empfang einer akustischen Warnung hat, aber mit einer gesenkten Kopfhaltung abgelenkt ist, ein Risikoniveau von „mittlerem Risiko“ berechnen.
  • Zurückkommend auf 1B kann die Verarbeitungsschaltung basierend auf dem ermittelten Bewegungsverlauf, dass sich die Personen 112 mit Laufgeschwindigkeit in eine Richtung bewegen, in der sie den Fußgängerüberweg überqueren werden, und basierend auf der Klassifizierung, dass die Personen keine Hindernisse für den Empfang einer akustischen Warnung haben und ihre Kopfhaltung eine vollständige Wahrnehmung der Umgebung ermöglicht, ein Risikoniveau von „niedrigem bis mittlerem Risiko“ berechnen.
  • Zurückkommend auf 1C kann die Verarbeitungsschaltung basierend auf dem ermittelten Bewegungsverlauf, dass die Kinder 122 mit einer langsamen Geschwindigkeit in eine Richtung gehen, in der sie den Fußgängerüberweg überqueren, und basierend auf der Klassifizierung, dass sich die Kinder in einer Schulzone befinden und aufgrund ihres wahrscheinlichen Alters eine geringere Verständnisfähigkeit haben, ein Risikoniveau von „mittlerem bis hohem Risiko“ berechnen.
  • Zurückkommend auf 1D kann die Verarbeitungsschaltung basierend auf dem ermittelten Bewegungsverlauf, dass die älteren Personen 134 mit einer langsamen Geschwindigkeit in eine Richtung gehen, in der sie den Fußgängerüberweg überqueren, und der Hund 135 sich in einer unvorhersehbaren Richtung in der Nähe des Beginns des Fußgängerüberwegs bewegt, und basierend auf der Klassifizierung, dass die älteren Personen aufgrund ihrer wahrscheinlichen Altersklasse ein reduziertes Hörvermögen haben, ein Risikoniveau von „hohem Risiko“ berechnen.
  • Die Verarbeitungsschaltung kann eine Operation auslösen, die als Reaktion auf das Risikoniveau durchgeführt wird, um eine Senkung des Risikoniveaus zu bewirken. Der auszuführende Vorgang kann von einer oder mehreren Hardwarekomponenten des Fahrzeugs ausgeführt werden. Beispielsweise kann das Fahrzeug mit verschiedenen Hardwarekomponenten ausgestattet sein, welche in der Lage sind, ein Übertragungsmedium bereitzustellen, wie zum Beispiel einen Lautsprecher, der ein akustisches Signal ausgibt (z. B. einen Lautsprecher, der in der Lage ist, akustische Signale gerichtet auszugeben, wie z.B. strahlgeformte akustische Signale), oder ein gerichtetes Licht, das eine lichtbasierte Ausgabe bereitstellt (z. B. über Scheinwerfer, Rücklichter oder andere in das Fahrzeug eingebaute Lichter und/oder eine spezielle Lichthardware für die gerichtete Ausgabe).
  • In anderen Ausführungsformen kann das Fahrzeug Befehle per Datenkommunikation über ein Kommunikationsnetzwerk an nahe gelegene Umgebungshardware senden, um die Warnung zu ermöglichen. Beispielsweise kann das Fahrzeug über ein drahtloses Netzwerk oder ein Datennetzwerk einen Befehl an einen Lichtmast an einem Fußgängerüberweg senden, um ein Ton- und/oder Lichtsignal an Fußgänger, welche sich dem Fußgängerüberweg nähern, zu senden. Das Fahrzeug kann mit Hardware ausgestattet sein, die mit einer Vielzahl von Kommunikationsnetzwerken verbunden ist, um die Kommunikation mit Umgebungshardware zu ermöglichen. Zu der Umgebungshardware können Ampeln, Lichtmasten, mit dem Netzwerk verbundene Bänke, Gebäude oder andere Arten von Hardware in der Umgebung gehören, mit denen über ein Kommunikationsnetzwerk kommuniziert werden kann.
  • Das Auslösen eines Vorgangs kann eine Bestimmung von Bewegungsverlauf und Größenordnung beinhalten. In einigen Ausführungsformen kann die Verarbeitungsschaltung einen Echtzeit-Bewegungsverlauf vom Fahrzeug zum Objekt bestimmen. Der Echtzeit-Bewegungsverlauf kann auf den Daten des Fahrzeugs, wie Geschwindigkeit und Richtung, basieren. Zusätzliche Daten wie der ermittelte Bewegungsverlauf des Objekts außerhalb des Fahrzeugs zu einem Ort (z. B. einem Fußgängerüberweg) können ebenfalls in die Berechnung der Verarbeitungsschaltung einfließen. Die Verarbeitungsschaltung kann diese ermittelten Daten in einem oder mehreren mathematischen Modellen verwenden, um einen Bewegungsverlauf des Fahrzeugs zu dem Objekt zu bestimmen. Beispielsweise kann die Verarbeitungsschaltung eine Wahrscheinlichkeit ermitteln, mit der sich das Fahrzeug auf Kollisionskurs mit dem Objekt befindet.
  • In einigen Ausführungsformen kann die Verarbeitungsschaltung die Größenordnung des akustischen Signals auf der Grundlage des berechneten Risikoniveaus bestimmen. Zum Beispiel kann ein niedriges Risikoniveau mit einer akustischen Warnung geringerer Größenordnung verbunden sein. Ein hohes Risikoniveau kann mit einer akustischen Warnung höherer Lautstärke und einer lichtbasierten Warnung hoher Intensität verbunden sein. In einigen Ausführungsformen kann die entsprechende Größenordnung mit der Intensität einer Lichtquelle für eine auf gerichtetem Licht basierende Warnung verknüpft sein. In einigen Ausführungsformen kann die Größenordnung eine Kombination sowohl von Lautstärke als auch Lichtintensität sein. In einigen Ausführungsformen kann die Verknüpfung zwischen Größenordnung und Risikoniveau auf einer vordefinierten, im Speicher abgelegten Tabelle basieren. In einigen Ausführungsformen kann die Verknüpfung zwischen Größenordnung und Risikoniveau in Echtzeit auf der Grundlage einer vordefinierten Berechnung bestimmt werden, die auf Eingaben basiert, welche zumindest den festgestellten Bewegungsverlauf des Objekts außerhalb des Fahrzeugs und den Bewegungsverlauf des Fahrzeugs beinhalten.
  • In einigen Ausführungsformen kann die Bestimmung einer Verknüpfung zwischen der Größenordnung eines Emissionssignals und der Höhe eines Risikoniveaus zumindest teilweise auf Echtzeitinformationen beruhen, welche von der Verarbeitungsschaltung in Bezug auf historische Informationen über das Objekt empfangen werden. Wurde das Objekt (z. B. eine Person) beispielsweise zuvor vom Fahrzeug mit einer hohen Lautstärke gewarnt, kann die gleiche Lautstärke (oder eine höhere Lautstärke) verwendet werden. In einigen Ausführungsformen kann die gleiche Lautstärke (oder eine höhere Lautstärke) verwendet werden, wenn das Objekt (z. B. eine Person) zuvor von einem oder mehreren anderen Fahrzeugen gewarnt wurde.
  • In einigen Ausführungsformen kann die Verknüpfung zwischen der Größenordnung eines Emissionssignals und der Höhe eines Risikoniveaus zumindest teilweise auf der Grundlage von Umgebungsinformationen, welche von der Verarbeitungsschaltung in Bezug auf den Standort des Fahrzeugs und/oder des Objekts empfangen werden, bestimmt werden. Wenn das Fahrzeug beispielsweise in einer Schulzone fährt, kann die Stärke des zu emittierenden akustischen Signals höher sein als wenn das Fahrzeug nicht in einer Schulzone fährt. Zurückkommend auf 1C: Da sich das Fahrzeug in einer Schulzone befindet, wird die Stärke des an die Kinder gerichteten akustischen Signals lauter sein.
  • In einigen Ausführungsformen kann die Verknüpfung zwischen der Größenordnung eines Emissionssignals und der Höhe eines Risikoniveaus zumindest teilweise auf der Grundlage zusätzlicher Umgebungsinformationen bestimmt werden, welche von der Verarbeitungsschaltung in Bezug auf den Standort des Fahrzeugs und/oder des Objekts empfangen werden. Stellt die Verarbeitungsschaltung beispielsweise mit Hilfe eines oder mehrerer Kamerasensoren fest, dass sich eine große Anzahl von Fußgängern in unmittelbarer Nähe des Objekts befindet, kann die Größenordnung des Emissionssignals höher und die Strahlbündelung stärker sein, um das Objekt gezielt anzusprechen.
  • In einigen Ausführungsformen kann die Verarbeitungsschaltung einen Befehl an mindestens einen Lautsprechersensor übertragen, um die Emission eines strahlgeformten akustischen Signals auf der Grundlage des Echtzeit-Bewegungsverlaufs und der Größenordnung des akustischen Signals auszulösen. Das strahlgeformte akustische Signal wird von der Verarbeitungsschaltung erzeugt, die die entsprechende Phase und Amplitude des akustischen Signals bestimmt, so dass ein entsprechendes Muster konstruktiver und destruktiver Interferenz an der Wellenfront entsteht. Ein Zielbereich innerhalb der Übertragung des strahlgeformten Signals empfängt die volle Stärke des Signals. Außerhalb des Zielbereichs der Übertragung des strahlgeformten Signals wird das Signal abgeschwächt. Folglich empfängt nur das von der strahlgeformten Übertragung beabsichtigte Ziel das Signal in der beabsichtigten Größenordnung. In einigen Ausführungsformen kann die Verarbeitungsschaltung eine Anordnung von Lautsprechersensoren des Fahrzeugs verwenden, um das strahlgeformte akustische Signal zu senden. Die Anordnung von Lautsprechern ist jeweils mit entsprechenden Phasen- und Amplitudenwerten konfiguriert, um den Lautsprecher des strahlgeformten akustischen Signals in eine bestimmte Richtung auf das Objekt außerhalb des Fahrzeugs zu richten. In einigen Ausführungsformen kann die Anordnung von Lautsprechern Lautsprechersensoren netzwerkverbundener Umgebungshardware umfassen (z. B. einen Lichtmast mit einem oder mehreren Lautsprechersensoren an einer Kreuzung). In anderen Ausführungsformen umfasst die Anordnung von Lautsprechern einen oder mehrere Lautsprechersensoren für ein anderes Fahrzeug, das kommunikativ mit dem von einer Verarbeitungsschaltung betriebenen aktuellen Fahrzeug gekoppelt ist. So kann beispielsweise ein erstes Fahrzeug, welches in unmittelbarer Nähe eines zweiten Fahrzeugs fährt, über ein gemeinsames Netzwerk einen Befehl an das zweite Fahrzeug ausgeben, ein akustisches Signal (mit entsprechenden Phasen- und Amplitudenwerten) zu einem gemeinsamen Objekt zu senden. Zurückkommend auf 1A: Das akustische Signal 109 ist auf den Jugendlichen gerichtet. Außerhalb des schattierten Bereichs wird das akustische Signal 109 abgeschwächt. In ähnlicher Weise sind in 1B und 1C die strahlgeformten akustischen Signale 109 auf die rennenden Personen 112 bzw. die gehenden Kinder 122 gerichtet. Wie zuvor erwähnt, kann das strahlgeformte akustische Signal vom Fahrzeug oder von netzwerkverbundener Umgebungshardware (z. B. Ampel mit eingebautem Lautsprechersensor) emittiert werden. In einigen Ausführungsformen ist das gerichtete akustische Signal auf ein Objekt (z. B. eine Person) gerichtet.
  • 4 zeigt eine beispielhafte strahlgeformte Audiosignalabgabe 400 gemäß einigen Ausführungsformen der Erfindung. Die Verarbeitungsschaltung bestimmt, wie oben beschrieben, die Position des gefährdeten Fußgängers in Bezug auf das Fahrzeug. Die Verarbeitungsschaltung veranlasst, dass ein strahlgeformtes akustisches Signal über einen Lautsprechersensor ausgesendet wird, der einen Beamforming-Algorithmus implementiert, um den Strahl in Richtung des gefährdeten Fußgängers zu lenken. Die Strahlsteuerung wird erreicht, indem dasselbe akustische Signal mit unterschiedlichen Verzögerungen von verschiedenen Lautsprechern gesendet wird. Mit dieser Technik lässt sich das akustische Signal in jeder beliebigen Entfernung innerhalb der Reichweite lenken. Dadurch wird sichergestellt, dass nur der gefährdete Fußgänger das akustische Signal mit voller Intensität hört, während alle anderen Personen in diesem Bereich den Ton mit geringerer Amplitude hören. In einigen Ausführungsformen kann die Stärke des akustischen Signals erhöht werden, wenn der Fußgänger sein Verhalten unverändert fortsetzt (z. B. Kopfhaltung, Körperhaltung, Weitergehen auf demselben Bewegungspfad).
  • In einigen Ausführungsformen kann die Verarbeitungsschaltung einen Befehl an mindestens eine Lichtquelle aussenden, um eine gerichtete Lichtemission auf Grundlage des Echtzeit-Bewegungsverlaufs und der lichtbasierten Intensität zu bewirken. In einigen Ausführungsformen ist das gerichtete Lichtsignal auf das Objekt (z. B. eine Person) gerichtet.
  • In einigen Ausführungsformen enthält das gerichtete akustische Signal eine Vielzahl unterschiedlicher Frequenzkomponenten. Beispielsweise können unterschiedliche Frequenzkomponenten auf der Grundlage bestimmter Attribute, Charakteristika oder Typen der beabsichtigten Signalempfänger bestimmt werden, um einen maximalen Empfang auf der Grundlage des Bereichs der inhärenten Empfangsfrequenzen des Objekts zu erreichen. Zurückkommend auf 1D: Ältere Personen 134 nähern sich dem Fußgängerüberweg 106 zusammen mit einem Hund 135. Zu den beabsichtigten Empfängern gehören (folglich) ältere Menschen, welche in der Lage sind, akustische Signale typischerweise im Bereich von 20 Hz bis 20 kHz zu empfangen, während der Hund ein beabsichtigter Empfänger ist, der typischerweise einen inhärenten Hörfrequenzbereich von 40 Hz bis 60 kHz hat. Beispielsweise kann die Verarbeitungsschaltung einen Befehl an einen Lautsprechersensor übermitteln, zwei unterschiedliche Frequenzkomponenten auszusenden: (1) einen 80-100 Hz-Piepton, der für die menschlichen Empfänger bestimmt ist, und (2) einen pfeifartigen Ton von 40 kHz, der für den Hund als Empfänger bestimmt ist. Wie in 1D dargestellt, werden mehrere Ausgaben erzeugt, wobei die erste Ausgabe 132 auf die älteren Personen und eine zweite Ausgabe 136 auf den Hund gerichtet ist. In einigen Ausführungsformen werden die verschiedenen Frequenzkomponenten gleichzeitig ausgesendet. In anderen Ausführungsformen werden die verschiedenen Frequenzkomponenten nicht gleichzeitig ausgesendet.
  • In einigen Ausführungsformen kann die Verarbeitungsschaltung einen Befehl an einen Lautsprechersensor übertragen, um die Ausgabe eines akustischen Signals verschiedener Arten auszulösen. In einigen Ausführungsformen kann das akustische Signal ein Warnton sein (z. B. ein Piepton, ein Hupton, ein Dauerton usw.). In einigen Ausführungsformen kann das akustische Signal eine warnende Sprachnachricht sein (z. B. „Warnung!“, „Vorsicht!“, „Gefahr!“, „Am Fußgängerüberweg warten!“, „Stopp!“ usw.). In einigen Ausführungsformen kann das akustische Signal auf den ermittelten Attributen des Objekts basieren. Zurückkommend auf 1A: Das vom Fahrzeug ausgegebene akustische Signal kann eine an den Jugendlichen gerichtete Sprachnachricht mit folgendem Text sein: „Schau von deinem Telefon auf und achte auf deine Umgebung!“ Die Sprachnachricht kann von einem Text-zu-Sprache-Generator erstellt werden, wobei die Schlüsselwörter auf den ermittelten Attributen des Objekts basieren können.
  • 5A zeigt ein Beispiel eines autonomes Fahrzeugs 500 gemäß einigen Ausführungsformen der vorliegenden Erfindung. Das autonome Fahrzeug 500 (hier alternativ „Fahrzeug 500“ genannt) kann, ohne darauf beschränkt zu sein, ein Personenfahrzeug, wie beispielsweise einen Pkw, einen Lkw, einen Bus, einen Rettungswagen, einen Shuttle, ein Elektrofahrrad oder motorisiertes Fahrrad, ein Motorrad, ein Feuerwehrauto, ein Polizeifahrzeug, einen Krankenwagen, ein Boot, ein Baufahrzeug, ein Unterwasserfahrzeug, eine Drohne und/oder eine andere Art von Fahrzeug (das z. B. unbemannt ist und/oder in dem sich ein oder mehrere Passagiere befinden) umfassen. Autonome Fahrzeuge werden im Allgemeinen in Form von Automatisierungsstufen beschrieben, welche von der US-Bundesbehörde für Straßen- und Fahrzeugsicherheit (National Highway Traffic Safety Administration, NHTSA), einer Abteilung des US-Verkehrsministeriums, und der Gesellschaft der Automobilingenieure (Society of Automotive Engineers, SAE) „Klassifizierung und Definition von Termini für straßengebundene Kraftfahrzeuge mit Systemen zum automatisierten Fahren“ (Norm Nr. J3016-201806, veröffentlicht am 15. Juni 2018, Norm Nr. J3016-201609, veröffentlicht am 30. September 2016, sowie frühere und zukünftige Versionen dieser Norm) definiert sind. Das Fahrzeug 500 kann in der Lage sein, Funktionen gemäß einer oder mehreren der Stufen 3 bis 5 der autonomen Fahrstufen auszuführen. Zum Beispiel kann das Fahrzeug 500 je nach Ausführungsform bedingt automatisiert (Stufe 3), hochautomatisiert (Stufe 4) und/oder vollständig automatisiert (Stufe 5) sein.
  • Das Fahrzeug 500 kann Komponenten wie ein Fahrgestell, eine Fahrzeugkarosserie, Räder (z. B. 2, 4, 6, 8, 18 etc.), Reifen, Achsen und andere Fahrzeugteile umfassen. Das Fahrzeug 500 kann ein Antriebssystem 550, wie z. B. einen Verbrennungsmotor, einen Hybridantrieb, einen reinen Elektromotor und/oder einen anderen Antriebstyp, umfassen. Das Antriebssystem 550 kann mit einem Antriebsstrang des Fahrzeugs 500 verbunden sein, der ein Getriebe umfassen kann, um den Antrieb des Fahrzeugs 500 zu ermöglichen. Das Antriebssystem 550 kann als Reaktion auf den Empfang von Signalen von der Drosselklappe/dem Beschleuniger 552 gesteuert werden.
  • Ein Lenksystem 554, welches ein Lenkrad enthalten kann, kann verwendet werden, um das Fahrzeug 500 zu lenken (z. B. entlang eines gewünschten Weges oder einer Route), wenn das Antriebssystem 550 in Betrieb ist (z. B. wenn das Fahrzeug in Bewegung ist). Das Lenksystem 554 kann Signale von einem Lenkaktuator 556 empfangen. Das Lenkrad kann bei vollständiger Automatisierung (Stufe 5) optional sein.
  • Das Bremssensorsystem 546 kann eingesetzt werden, um die Fahrzeugbremsen als Reaktion auf den Empfang von Signalen von den Bremsaktuatoren 548 und/oder Bremssensoren zu betätigen.
  • Eine oder mehreren Steuereinheiten 536, die eine oder mehrere CPUs, System-on-Chips (SoCs) 504 (5C) und/oder GPUs umfassen können, können Signale (z. B. Befehle) an eine oder mehrere Komponenten und/oder Systeme des Fahrzeugs 500 liefern. Beispielsweise können die eine oder die mehreren Steuereinheiten Signale zur Betätigung der Fahrzeugbremsen über einen oder mehrere Bremsaktuatoren 548, zur Betätigung des Lenksystems 554 über einen oder mehrere Lenkaktuatoren 556 und/oder zur Betätigung des Antriebssystems 550 über einen oder mehrere Drosselklappen/Beschleuniger 552 senden. Die eine oder mehreren Steuereinheiten 536 können eine oder mehrere eingebaute (z. B. integrierte) Rechner (z. B. Supercomputer) umfassen, welche Sensorsignale verarbeiten und Betriebsbefehle ausgeben (z. B. Signale, die Befehle darstellen), um autonomes Fahren zu ermöglichen und/oder einen menschlichen Fahrer beim Führen des Fahrzeugs 500 zu unterstützen. Die eine oder mehreren Steuereinheiten 536 können eine erste Steuereinheit 536 für autonome Fahrfunktionen, eine zweite Steuereinheit 536 für funktionale Sicherheitsfunktionen, eine dritte Steuereinheit 536 für Funktionen der künstlichen Intelligenz (z. B. Computer Vision), eine vierte Steuereinheit 536 für Infotainment-Funktionen, eine fünfte Steuereinheit 536 für Redundanz in Notfällen und/oder andere Steuereinheiten umfassen. In einigen Beispielen kann eine einzige Steuereinheit 536 zwei oder mehr der oben genannten Funktionen übernehmen, zwei oder mehr Steuereinheiten 536 können eine einzige Funktion übernehmen und/oder eine beliebige Kombination davon ist möglich.
  • Die eine oder mehreren Steuereinheiten 536 können Signale zur Steuerung einer oder mehrerer Komponenten und/oder Systeme des Fahrzeugs 500 als Reaktion auf Sensordaten, welche von einem oder mehreren Sensoren (z. B. Sensoreingaben) empfangen werden, bereitstellen. Die Sensordaten können beispielsweise und ohne darauf beschränkt zu sein von einem oder mehreren Sensoren des globalen Navigationssatellitensystems 558 (z. B. GPS-Sensoren), RADAR-Sensoren 560, Ultraschallsensoren 562, LIDAR-Sensoren 564, IMU-Sensoren 566 (z. B. Beschleunigungsmessern, Gyroskop/en, Magnetkompassen, Magnetometern usw.), Mikrofonen 596, einer oder mehreren Stereokameras 568, Weitwinkelkameras 570 (z. B. Fisheye-Kameras), Infrarotkameras 572, Rundumsichtkameras 574 (z. B. 360-Grad-Kameras), Fern- und/oder Mittelbereichskameras 598, einem oder mehreren Geschwindigkeitssensoren 544 (z. B. zur Messung der Geschwindigkeit des Fahrzeugs 500), Vibrationssensoren 542, Lenksensoren 540, Bremssensoren 546 (z. B. als Teil des Bremssensorsystems 546) und/oder anderen Sensortypen empfangen werden.
  • Eine oder mehrere der Steuereinheiten 536 können Eingaben (z. B. in Form von Eingabedaten) von einem Kombi-Instrument 532 des Fahrzeugs 500 empfangen und Ausgaben (z. B. in Form von Ausgabedaten, Anzeigedaten usw.) über eine Mensch-Maschinen-Schnittstelle (HMI)-Display 534, eine akustischen Meldeeinrichtung, einen Lautsprecher und/oder über andere Komponenten des Fahrzeugs 500 bereitstellen. Die Ausgaben können Informationen wie Fahrzeuggeschwindigkeit, Drehzahl, Zeit, Kartendaten (z. B. die HD-Map 522 von 5C), Ortsdaten (z. B. den Standort des Fahrzeugs 500, z. B. wie auf einer Karte), Richtung, Standort anderer Fahrzeuge (z. B. ein Belegungsraster), Informationen über Objekte und den Status von Objekten, wie von der oder den Steuereinheiten 536 wahrgenommen, usw. umfassen. Beispielsweise kann das HMI-Display 534 Informationen über das Vorhandensein eines oder mehrerer Objekte (z. B. ein Straßenschild, ein Warnschild, eine Ampelschaltung usw.) und/oder Informationen über Fahrmanöver anzeigen, die das Fahrzeug durchgeführt hat, gerade durchführt oder durchführen wird (z. B. Spurwechsel jetzt, Ausfahrt 34B in 3,2 km usw.).
  • Das Fahrzeug 500 umfasst ferner eine Netzwerkschnittstelle 524, welche eine oder mehrere drahtlose Antennen 526 und/oder ein oder mehrere Modems für die Kommunikation über ein oder mehrere Netzwerke verwenden kann. Zum Beispiel kann die Netzwerkschnittstelle 524 in der Lage sein, über LTE, WCDMA, UMTS, GSM, CDMA2000 usw. zu kommunizieren. Die eine oder mehreren drahtlosen Antennen 526 können auch die Kommunikation zwischen Objekten in der Umgebung (z. B. Fahrzeuge, mobile Geräte usw.) ermöglichen, wobei lokale Netzwerke wie Bluetooth, Bluetooth LE, Z-Wave, ZigBee usw. und/oder Low Power Wide Area Networks (LPWANs) wie LoRaWAN, SigFox usw. verwendet werden.
  • 5B zeigt ein Beispiel für Kamerastandorte und Sichtfelder für das beispielhafte autonome Fahrzeug 500 von 5A gemäß einigen Ausführungsformen der vorliegenden Erfindung. Die Kameras und die jeweiligen Sichtfelder sind ein Beispiel für eine Ausführungsform und nicht als Einschränkung zu verstehen. Beispielsweise können zusätzliche und/oder alternative Kameras vorhanden sein und/oder die Kameras können an verschiedenen Stellen des Fahrzeugs 500 angeordnet sein.
  • Die Kameratypen für die Kameras können, ohne auf diese beschränkt zu sein, Digitalkameras umfassen, welche für die Verwendung mit den Komponenten und/oder Systemen des Fahrzeugs 500 angepasst sein können. Die eine oder mehreren Kameras können auf der Sicherheitsstufe B (Automotive Safety Integrity Level, ASIL) und/oder auf einem anderen ASIL betrieben werden. Die Kameratypen können je nach Ausführungsform eine beliebige Bildaufnahmerate haben, z. B. 60 Bilder pro Sekunde (fps), 120 fps, 240 fps usw. Die Kameras können Rolling Shutter, Global Shutter, einen anderen Shutter-Typ oder eine Kombination davon verwenden. In einigen Beispielen kann die Farbfilteranordnung eine Rot-Klar-Klar-Klar-Farbfilteranordnung (RCCC), eine Rot-Klar-Klar-Blau-Farbfilteranordnung (RCCB), eine Rot-Blau-Grün-Klar-Farbfilteranordnung (RBGC), eine Foveon X3-Farbfilteranordnung, eine Bayer-Sensor-Farbfilteranordnung (RGGB), eine Monochromsensor-Farbfilteranordnung und/oder eine andere Art von Farbfilteranordnung umfassen. In einigen Ausführungsformen können Kameras mit klaren Pixeln, wie beispielsweise Kameras mit einer RCCC-, einer RCCB- und/oder einer RBGC-Farbfilteranordnung, verwendet werden, um die Lichtempfindlichkeit zu erhöhen.
  • In einigen Beispielen können eine oder mehrere der Kameras verwendet werden, um hochentwickelte Fahrerassistenz-Systemfunktionen (ADAS-Funktionen) auszuführen (z. B. als Teil einer redundanten oder ausfallsicheren Ausführung). So kann beispielsweise eine Multifunktions-Monokamera installiert werden, um Funktionen wie Spurhalteassistent, Verkehrszeichenassistent und intelligente Scheinwerfersteuerung bereitzustellen. Eine oder mehrere der Kameras (z. B. alle Kameras) können gleichzeitig Bilddaten (z. B. Videos) aufzeichnen und bereitstellen.
  • Eine oder mehrere der Kameras können in einer Baugruppe, wie beispielsweise einer kundenspezifischen (3D-gedruckten) Baugruppe, montiert sein, um Streulicht und Reflexionen aus dem Fahrzeuginneren (z. B. Reflexionen vom Armaturenbrett, die in der Windschutzscheibe reflektiert werden), welche die Bilddatenerfassungsleistungen der Kamera beeinträchtigen können, auszuschließen. Bei der Montage von Außenspiegeln können die Außenspiegel kundenspezifisch dreidimensional gedruckt sein, so dass die Kameramontageplatte der Form des Außenspiegels entspricht. In einigen Beispielen können die Kameras in den Außenspiegel integriert sein. Bei Seitenkameras können die Kameras auch in die vier Säulen an jeder Ecke des Innenraums integriert sein.
  • Kameras mit einem Sichtfeld, welches Teile der Umgebung vor dem Fahrzeug 500 einschließt (z. B. nach vom gerichtete Kameras), können für die Rundumsicht verwendet werden, um die Identifizierung vorwärts gerichteter Wege und Hindernisse zu unterstützen, sowie mit Hilfe von einem oder mehreren Steuereinheiten 536 und/oder Steuer-SoCs Informationen bereitzustellen, die zum Erstellen eines Belegungsrasters und/oder Bestimmen der bevorzugten Fahrzeugwege entscheidend sind. Nach vom gerichtete Kameras können verwendet werden, um viele der gleichen ADAS-Funktionen wie LIDAR, einschließlich Notbremsung, Fußgängererkennung und Kollisionsvermeidung, durchzuführen. Nach vom gerichtete Kameras können auch für ADAS-Funktionen und -Systeme wie Spurhalteassistent (LDW), autonome Geschwindigkeitsregelung (ACC) und/oder andere Funktionen wie Verkehrszeichenerkennung eingesetzt werden.
  • Eine Vielzahl von Kameras kann in einer nach vom gerichteten Anordnung, einschließlich und ohne Beschränkung, einer monokularen Kameraplattform, die einen CMOS-Farbbildgeber (Complementary Metal Oxide Semiconductor) enthält, verwendet werden. Ein weiteres Beispiel sind eine oder mehrere Weitwinkelkameras 570, welche verwendet werden können, um Objekte zu erkennen, die von der Peripherie ins Blickfeld kommen (z. B. Fußgänger, kreuzender Verkehr oder Fahrräder). Obwohl in 5B nur eine Weitwinkelkamera dargestellt ist, kann das Fahrzeug 500 mit einer beliebigen Anzahl von Weitwinkelkameras 570 ausgestattet sein. Darüber hinaus können die eine oder mehreren Weitbereichskameras 598 (z. B. ein Weitwinkel-Stereokamerapaar) zur tiefenbasierten Objekterkennung verwendet werden, insbesondere für Objekte, für die ein neuronales Netzwerk noch nicht trainiert wurde. Die eine oder mehreren Weitbereichskameras 598 können auch für Objekterkennung und -klassifizierung sowie grundlegende Objektnachverfolgung verwendet werden.
  • Eine oder mehrere Stereokameras 568 können auch in einer nach vom gerichteten Anordnung enthalten sein. Die eine oder mehreren Stereokameras 568 können eine integrierte Steuereinheit enthalten, welche eine skalierbare Verarbeitungseinheit umfasst, die eine programmierbare Logik (z. B. FPGA) und einen Multicore-Mikroprozessor mit einer integrierten CAN- oder Ethernet-Schnittstelle auf einem einzigen Chip bereitstellen kann. Eine solche Einheit kann verwendet werden, um eine 3-D-Karte der Fahrzeugumgebung, einschließlich einer Entfernungsschätzung für alle Punkte im Bild, zu erstellen. Eine oder mehrere alternative Stereokameras 568 können einen oder mehrere kompakte stereoskopische Sensoren umfassen, die zwei Kameralinsen (je eine links und rechts) und einen Bildverarbeitungschip enthalten, welcher die Entfernung zwischen dem Fahrzeug und dem Zielobjekt messen und die erzeugten Informationen (z. B. Metadaten) zur Aktivierung der autonomen Notbrems- und Spurhaltehalteassistent-Funktionen verwenden kann. Zusätzlich oder alternativ zu den hier beschriebenen Stereokameras können auch andere Typen von Stereokameras 568 verwendet werden.
  • Kameras mit einem Sichtfeld, das Teile der Umgebung seitlich des Fahrzeugs 500 einschließt (z. B. Seitensichtkameras), können für die Rundumsicht verwendet werden und Informationen liefern, welche zum Erstellen und Aktualisieren des Belegungsrasters sowie zum Erzeugen von Seitenaufprall-Kollisionswarnungen genutzt werden. Beispielsweise können die eine oder mehreren Rundumsichtkameras 574 (z. B. vier Rundumsichtkameras 574 wie in 5B dargestellt) um das Fahrzeug 500 herum positioniert sein. Die eine oder mehreren Rundumsichtkameras 574 können Weitwinkelkameras 570, Fisheye-Kameras, 360-Grad-Kameras und/oder Ähnliches umfassen. Beispielsweise können vier Fisheye-Kameras an der Vorderseite, am Heck und an den Seiten des Fahrzeugs angebracht sein. In einer alternativen Anordnung kann das Fahrzeug drei Rundumsichtkameras 574 (z. B. links, rechts und hinten) verwenden und eine oder mehrere andere Kameras (z. B. eine nach vorn gerichtete Kamera) als vierte Rundumsichtkamera nutzen.
  • Kameras mit einem Sichtfeld, das Teile der Umgebung hinter dem Fahrzeug 500 einschließt (z. B. Rückblickkameras), können für Einparkhilfe, Rundumsicht, Heckkollisionswarnungen und zum Erstellen und Aktualisieren des Belegungsrasters verwendet werden. Eine Vielzahl von Kameras kann verwendet werden, einschließlich aber nicht beschränkt auf Kameras, die auch wie hier beschrieben als nach vom gerichtete Kameras geeignet sind (z. B. Weit- und/oder Mittelbereichskamerals 598, Stereokamera/s 568, Infrarotkamera/s 572 usw.).
  • Kameras mit einem Sichtfeld, das Teile des Innenraums bzw. der Fahrerkabine des Fahrzeugs 500 umfasst, können verwendet werden, um eine oder mehrere Zustände von Fahrern, Fahrgästen oder Objekten im Innenraum zu überwachen. Es kann jede Art von Kamera verwendet werden, einschließlich aber ohne Beschränkung auf Innenraumkamera/s 541, welche jede hierin beschriebene Art von Kamera sein und an jeder Stelle am oder im Fahrzeug 500 platziert werden kann, die einen Blick auf die Kabine oder den Innenraum bietet. Beispielsweise können die einen oder mehreren Kabinen- bzw. Innenraumkameras 541 innerhalb oder an einem Teil des Armaturenbretts, des Rückspiegels, der Seitenspiegel, der Sitze oder der Türen des Fahrzeugs 500 angebracht und so ausgerichtet sein, dass sie Bilder von Fahrern, Fahrgästen oder anderen Objekten oder Teilen des Fahrzeugs 500 aufnehmen.
  • 5C zeigt ein Blockdiagramm einer beispielhaften Systemarchitektur für das beispielhafte autonome Fahrzeug 500 von 5A gemäß einigen Ausführungsformen der vorliegenden Erfindung. Es versteht sich, dass diese und andere hier beschriebene Anordnungen nur als Beispiele dargestellt sind. Andere Anordnungen und Elemente (z. B. Vorrichtungen, Schnittstellen, Funktionen, Reihenfolgen, Gruppierungen von Funktionen usw.) können zusätzlich zu oder anstelle der dargestellten verwendet werden, und einige Elemente können ganz weggelassen werden. Außerdem sind viele der hier beschriebenen Elemente funktionale Einheiten, welche als einzelne oder verteilte Komponenten oder in Verbindung mit anderen Komponenten und in jeder geeigneten Kombination und an jeder geeigneten Stelle implementiert sein können. Verschiedene hier beschriebene Funktionen, die von Einheiten ausgeführt werden, können von Hardware, Firmware und/oder Software ausgeführt werden. Beispielsweise können verschiedene Funktionen von einem Prozessor realisiert werden, der im Speicher gespeicherte Befehle ausführt.
  • Alle Komponenten, Merkmale und Systeme des Fahrzeugs 500 in 5C sind so dargestellt, dass sie über einen Bus 502 verbunden sind. Der Bus 502 kann eine Controller Area Network (CAN)-Datenschnittstelle (hier alternativ als „CAN-Bus“ bezeichnet) umfassen. Ein CAN-Bus kann ein Netzwerk innerhalb des Fahrzeugs 500 sein, welches zur Unterstützung der Steuerung verschiedener Einrichtungen und Funktionen des Fahrzeugs 500, wie beispielsweise Bremsantrieb, Beschleunigung, Bremsung, Lenkung, Scheibenwischer usw., verwendet wird. Ein CAN-Bus kann eingerichtet sein, Dutzende oder sogar Hunderte von Knoten zu haben, jeder mit seiner eigenen eindeutigen Kennung (z. B. einer CAN-ID). Der CAN-Bus kann gelesen werden, um Lenkradwinkel, Fahrgeschwindigkeit, Motordrehzahl (RPM), Tastenpositionen und/oder andere Fahrzeugstatusanzeigen zu ermitteln. Der CAN-Bus kann ASIL B-konform sein.
  • Obwohl der Bus 502 hier als CAN-Bus beschrieben wird, ist dies nicht als Einschränkung zu verstehen. Beispielsweise können/kann zusätzlich oder alternativ zum CAN-Bus auch FlexRay und/oder Ethernet verwendet werden. Obwohl eine einzelne Leitung zur Darstellung des Busses 502 verwendet wird, ist dies nicht als Einschränkung zu verstehen. Beispielsweise kann es eine beliebige Anzahl von Bussen 502 geben, die einen oder mehrere CAN-Busse, einen oder mehrere FlexRay-Busse, einen oder mehrere Ethernet-Busse und/oder einen oder mehrere andere Arten von Bussen mit einem anderen Protokoll umfassen können. In einigen Beispielen können zwei oder mehr Busse 502 verwendet werden, um unterschiedliche Funktionen auszuführen, und/oder sie können zur Redundanz verwendet werden. So kann beispielsweise ein erster Bus 502 für die Kollisionsvermeidungsfunktion und ein zweiter Bus 502 für die Antriebssteuerung verwendet werden. In jedem Beispiel kann jeder Bus 502 mit einer beliebigen Komponente des Fahrzeugs 500 kommunizieren, und zwei oder mehr Busse 502 können mit denselben Komponenten kommunizieren. In einigen Beispielen kann jeder SoC 504, jede Steuereinheit 536 und/oder jeder Computer innerhalb des Fahrzeugs Zugriff auf dieselben Eingangsdaten (z. B. Eingaben von Sensoren des Fahrzeugs 500) haben und mit einem gemeinsamen Bus, wie dem CAN-Bus, verbunden sein.
  • Das Fahrzeug 500 kann eine oder mehrere Steuereinheiten 536 enthalten, wie sie hier mit Bezug auf 5A beschrieben sind. Die eine oder mehreren Steuereinheiten 536 können für eine Vielzahl von Funktionen verwendet werden. Die eine oder mehreren Steuereinheiten 536 können mit einer der verschiedenen anderen Komponenten und Systeme des Fahrzeugs 500 gekoppelt und zum Steuern des Fahrzeugs 500, zur künstlichen Intelligenz des Fahrzeugs 500, zum Infotainment für das Fahrzeug 500 und/oder Ähnlichem verwendet werden.
  • Das Fahrzeug 500 kann ein oder mehrere Systeme auf einem Chip (SoC/s) 504 enthalten. Das SoC 504 kann CPU/s 506, GPU/s 508, Prozessor/en 510, Cache/s 512, Beschleuniger 514, Datenspeicher 516 und/oder andere nicht dargestellte Komponenten und Features umfassen. Das oder die SoCs 504 können zur Steuerung des Fahrzeugs 500 in einer Vielzahl von Plattformen und Systemen verwendet werden. Zum Beispiel können das oder die SoCs 504 in einem System (z. B. dem System des Fahrzeugs 500) mit einer HD-Map 522 kombiniert sein, die Kartenerneuerungen und/oder -aktualisierungen über eine Netzwerkschnittstelle 524 von einem oder mehreren Servern (z. B. dem/den Server/n 578 von 5D) erhalten kann.
  • Die eine oder mehreren CPUs 506 können einen CPU-Cluster oder CPU-Komplex (hier alternativ als „CCPLEX“ bezeichnet) umfassen. Die eine oder mehreren CPUs 506 können mehrere Kerne und/oder L2-Caches enthalten. In einigen Ausführungsformen können die eine oder mehreren CPUs 506 beispielsweise acht Kerne in einer kohärenten Multiprozessorkonfiguration umfassen. In einigen Ausführungsformen können die eine oder mehreren CPUs 506 vier Dual-Core-Cluster umfassen, wobei jeder Cluster über einen dedizierten L2-Cache (z. B. einen 2 MB L2-Cache) verfügt. Die eine oder mehreren CPUs 506 (z. B. der CCPLEX) können ausgelegt sein, den gleichzeitigen Clusterbetrieb zu unterstützen, so dass eine beliebige Kombination der Cluster der CPU/s 506 zu einem bestimmten Zeitpunkt aktiv sein kann.
  • Die eine oder mehreren CPUs 506 können Energiemanagementleistungen implementieren, welche ein oder mehrere der folgenden Features umfassen: Einzelne Hardwareblöcke können im Leerlauf automatisch taktgesteuert werden, um dynamische Leistung zu sparen; jeder Kerntakt kann gesteuert werden, wenn der Kern aufgrund der Ausführung von WFI/WFE-Befehlen nicht aktiv Befehle ausführt; jeder Kern kann unabhängig stromgesteuert sein; jeder Kerncluster kann unabhängig taktgesteuert sein, wenn alle Kerne taktgesteuert oder stromgesteuert sind; und/oder jeder Kerncluster kann unabhängig stromgesteuert sein, wenn alle Kerne stromgesteuert sind. Ferner können die eine oder mehreren CPUs 506 einen erweiterten Algorithmus zum Verwalten von Energiezuständen implementieren, bei dem zulässige Energiezustände und erwartete Wake-up-Zeiten angegeben werden und die Hardware/der Mikrocode den besten Energiezustand für den Kern, den Cluster und CCPLEX bestimmt. Die Prozessorkerne können vereinfachte Sequenzen für den Eintritt in den Energiezustand in Software unterstützen, wobei die Arbeit an den Mikrocode ausgelagert wird.
  • Die eine oder mehreren GPUs 508 können einen integrierten Grafikprozessor (hier auch als „iGPU“ bezeichnet) umfassen. Die eine oder mehreren GPUs 508 können programmierbar und für parallele Arbeitslasten effizient sein. Die eine oder mehreren GPUs 508 können in einigen Beispielen einen erweiterten Tensor-Befehlssatz verwenden. Die eine oder mehreren GPUs 508 können einen oder mehrere Streaming-Mikroprozessoren enthalten, wobei jeder Streaming-Mikroprozessor einen L1-Cache (z. B. einen L1-Cache mit mindestens 96 KB Speicherkapazität) enthalten kann und zwei oder mehr der Streaming-Mikroprozessoren sich einen L2-Cache (z. B. einen L2-Cache mit 512 KB Speicherkapazität) teilen können. In einigen Ausführungsformen können die eine oder mehreren GPUs 508 mindestens acht Streaming-Mikroprozessoren umfassen. Die eine oder mehreren GPUs 508 können computerbasierte Anwendungsprogrammierschnittstelle/n (API/s) verwenden. Darüber hinaus können die eine oder mehreren GPUs 508 eine oder mehrere parallele Rechenplattformen und/oder Programmiermodelle (z. B. CUDA von NVIDIA) verwenden.
  • Die eine oder mehreren GPUs 508 können für höchste Leistung in automobilen und eingebetteten Anwendungsfällen energieoptimiert sein. Beispielsweise können die eine oder mehreren GPUs 508 auf einem Fin-Feldeffekttransistor (FinFET) hergestellt werden. Dies ist jedoch nicht als Einschränkung zu verstehen, und die eine oder mehreren GPUs 508 können auch mit anderen Halbleiterfertigungsverfahren hergestellt werden. Jeder Streaming-Mikroprozessor kann eine Anzahl von Mixed-Precision-Rechenkernen, in mehrere Blöcke unterteilt, enthalten. Beispielsweise und ohne darauf beschränkt zu sein können 64 PF32-Keme und 32 PF64-Kerne in vier Verarbeitungsblöcke unterteilt sein. In einem solchen Beispiel können jedem Verarbeitungsblock 16 FP32-Kerne, 8 FP64-Kerne, 16 INT32-Kerne, zwei Mixed-Precision NVIDIA TENSOR COREs für Deep-Learning-Matrixarithmetik, ein L0-Befehlscache, ein Warp-Scheduler, eine Dispatch-Einheit und/oder eine 64-KB-Registerdatei zugewiesen sein. Darüber hinaus können die Streaming-Mikroprozessoren unabhängige parallele Ganzzahl- und Gleitkomma-Datenpfade enthalten, um eine effiziente Ausführung von Arbeitslasten mit einer Mischung aus Berechnungen und Adressierungsberechnungen zu ermöglichen. Die Streaming-Mikroprozessoren können unabhängige Thread-Scheduling-Leistungen enthalten, um eine feinkörnigere Synchronisierung und Kooperation zwischen parallelen Threads zu ermöglichen. Die Streaming-Mikroprozessoren können einen kombinierten L1 -Datencache und eine gemeinsam genutzte Speichereinheit enthalten, um die Leistung zu verbessern und gleichzeitig die Programmierung zu vereinfachen.
  • Die eine oder mehreren GPUs 508 können einen Speicher mit hoher Bandbreite (HBM) und/oder ein 16-GB-HBM2-Speicher-Subsystem umfassen, um in einigen Beispielen eine Spitzen-Speicherbandbreite von etwa 900 GB/Sekunde bereitzustellen. In einigen Beispielen kann zusätzlich oder alternativ zum HBM-Speicher ein synchroner Grafik-Direktzugriffsspeicher (SGRAM) verwendet werden, wie zum Beispiel ein synchroner Grafik-Doppeldatenraten-Direktzugriffsspeicher vom Typ 5 (GDDR5).
  • Die eine oder mehreren GPUs 508 können eine einheitliche Speichertechnologie mit Zugriffszählern enthalten, um eine genauere Zuweisung von Speicherseiten an den Prozessor zu ermöglichen, der am häufigsten auf sie zugreift, und so die Effizienz der von den Prozessoren gemeinsam genutzten Speicherbereiche zu verbessern. In einigen Beispielen kann die Unterstützung von Adressübersetzungsdiensten (ATS) verwendet werden, damit die eine oder mehreren GPUs 508 direkt auf die Seitentabellen der CPU/s 506 zugreifen können. In solchen Beispielen kann, wenn die Speicherverwaltungseinheit (MMU) der GPU/s 508 einen Fehler feststellt, eine Adressübersetzungsanforderung an die CPU/s 506 übermittelt werden. Als Reaktion darauf können die eine oder mehreren CPUs 506 in ihren Seitentabellen nach dem virtuell-zuphysischen Mapping für die Adresse suchen und die Übersetzung an die GPU/s 508 zurückübertragen. Als solches kann die Unified-Memory-Technologie einen einzigen einheitlichen virtuellen Adressraum für den Speicher sowohl der CPU/s 506 als auch der GPU/s 508 ermöglichen, wodurch die Programmierung der GPU/s 508 und die Portierung von Anwendungen an die GPU/s 508 vereinfacht wird.
  • Zusätzlich können die eine oder mehreren GPUs 508 einen Zugriffszähler enthalten, welcher die Häufigkeit des Zugriffs der GPU/s 508 auf den Speicher anderer Prozessoren nachverfolgen kann. Der Zugriffszähler kann dazu beitragen, dass Speicherseiten in den physischen Speicher desjenigen Prozessors verschoben werden, der am häufigsten auf die Seiten zugreift.
  • Das oder die SoCs 504 können eine beliebige Anzahl von Caches 512, einschließlich der hier beschriebenen, enthalten. Der oder die Caches 512 können beispielsweise einen L3-Cache umfassen, der sowohl den CPU/s 506 als auch den GPU/s 508 zur Verfügung steht (z. B. der sowohl mit den CPU/s 506 als auch den GPU/s 508 verbunden ist). Der eine oder die mehreren Caches 512 können einen Write-Back-Cache umfassen, welcher die Zustände von Zeilen verfolgen kann, zum Beispiel durch Verwenden eines Cache-Kohärenzprotokolls (z. B. MEI, MESI, MSI usw.). Der L3-Cache kann je nach Ausführungsform 4 MB oder mehr umfassen, obwohl auch kleinere Cache-Größen verwendet werden können.
  • Das oder die SoCs 504 können eine oder mehrere arithmetische Logikeinheiten (ALU/s) enthalten, welche bei der Realisierung von Verarbeitungen in Bezug auf eine beliebige Vielfalt von Aufgaben bzw. Operationen des Fahrzeugs 500 - wie beispielsweise Verarbeitung von DNNs - wirksam eingesetzt werden können. Darüber hinaus können das oder die SoCs 504 Gleitkommaeinheit/en (FPU/s) - oder andere mathematische Coprozessoren oder numerische Coprozessortypen - zur Durchführung mathematischer Operationen innerhalb des Systems enthalten. Zum Beispiel können das oder die SoCs 504 eine oder mehrere FPUs enthalten, welche als Ausführungseinheiten innerhalb einer oder mehrerer CPUs 506 und/oder GPUs 508 integriert sind.
  • Das oder die SoCs 504 können einen oder mehrere Beschleuniger 514 enthalten (z. B. Hardwarebeschleuniger, Softwarebeschleuniger oder eine Kombination davon). Beispielsweise können das oder die SoCs 504 einen Hardwarebeschleunigungscluster enthalten, welcher optimierte Hardwarebeschleuniger und/oder einen großen On-Chip-Speicher umfassen kann. Der große On-Chip-Speicher (z. B. 4 MB statischer Arbeitsspeicher; SRAM) kann den Hardwarebeschleunigungscluster in die Lage versetzen, neuronale Netzwerke und andere Berechnungen zu beschleunigen. Der Hardwarebeschleunigungscluster kann zur Ergänzung der GPU/s 508 und zur Entlastung einiger Aufgaben der GPU/s 508 verwendet werden (z. B., um mehr Zyklen der GPU/s 508 für die Durchführung anderer Aufgaben freizugeben). Der oder die Beschleuniger 514 können beispielsweise für gezielte Arbeitslasten (z. B. Wahrnehmung, Convolutional Neural Networks (CNNs) usw.) verwendet werden, die stabil genug sind, um beschleunigt werden zu können. Der hier verwendete Begriff „CNN“ kann alle Arten von CNNs umfassen, einschließlich auf Regionen basierender bzw. regionaler CNNs (RCNNs) und schneller RCNNs (z. B. zur Objekterkennung).
  • Der oder die Beschleuniger 514 (z. B. der Hardwarebeschleunigungscluster) können einen oder mehrere Deep-Learning-Beschleuniger (DLA) enthalten. Der oder die DLAs können eine oder mehrere Tensorverarbeitungseinheiten (TPUs) umfassen, welche ausgelegt sein können, zusätzliche zehn Billionen Operationen pro Sekunde für Deep-Learning-Anwendungen und Inferenzieren bereitzustellen. Bei den TPUs kann es sich um Beschleuniger handeln, welche für die Ausführung von Bildverarbeitungsfunktionen (z. B. für CNNs, RCNNs usw.) konfiguriert und optimiert sind. Der oder die DLAs können ferner für einen bestimmten Satz von neuronalen Netzwerktypen und Gleitkommaoperationen sowie für Inferenzieren optimiert sein. Die Ausführung des/der DLA/s kann mehr Leistung pro Millimeter als eine Universal-GPU bieten und übertrifft die Leistung einer CPU enorm. Die eine oder mehreren TPUs können verschiedene Funktionen ausführen, einschließlich einer Einzelinstanz-Faltungsfunktion, die beispielsweise INT8-, INT16- und FP16-Datentypen sowohl für Features als auch Gewichtungen sowie Postprozessorfunktionen unterstützt.
  • Der oder die DLAs können schnell und effizient neuronale Netzwerke, insbesondere CNNs, auf verarbeiteten oder unverarbeiteten Daten für eine Vielzahl von Funktionen ausführen, einschließlich, zum Beispiel und ohne darauf beschränkt zu sein: ein CNN zur Identifizierung und Erkennung von Objekten unter Verwendung von Daten von Kamerasensoren, ein CNN zur Abstandsschätzung unter Verwendung von Daten von Kamerasensoren, ein CNN zur Erkennung und Identifizierung von Einsatzfahrzeugen unter Verwendung von Daten von Mikrofonen, ein CNN zur Gesichtserkennung und Identifizierung von Fahrzeugbesitzern unter Verwendung von Daten von Kamerasensoren und/oder ein CNN für sicherheitsrelevante Ereignisse.
  • Der oder die DLAs können jede Funktion der GPU/s 508 ausführen, und durch die Verwendung eines Inferenzbeschleunigers kann ein Entwickler beispielsweise entweder den/die DLA/s oder die GPU/s 508 für eine beliebige Funktion einsetzen. Beispielsweise kann der Entwickler die Verarbeitung von CNNs und Gleitkommaoperationen auf den/die DLA/s konzentrieren und andere Funktionen der/den GPU/s 508 und/oder einem oder mehreren anderen Beschleunigern 514 überlassen.
  • Der oder die Beschleuniger 514 (z. B. der Hardwarebeschleunigungscluster) können einen oder mehrere programmierbare Bilderverarbeitungsbeschleuniger (PVA) enthalten, die hier alternativ auch als Computer-Vision-Beschleuniger bezeichnet werden können. Der oder die PVAs können zur Beschleunigung von Computer-Vision-Algorithmen für hochentwickelte Fahrerassistenzsysteme (ADAS), autonomes Fahren und/oder Augmented-Reality-(AR)- und/oder Virtual-Reality-(VR)-Anwendungen entwickelt und konfiguriert sein. Der oder die PVAs können ein Gleichgewicht zwischen Leistung und Flexibilität bieten. So kann jeder PVA beispielsweise und ohne darauf beschränkt zu sein eine beliebige Anzahl von RISC-Kernen (Computer mit reduziertem Befehlssatz), DMA (direkten Speicherzugriff) und/oder eine beliebige Anzahl von Vektorprozessoren umfassen
  • Die RISC-Kerne können mit Bildsensoren (z. B. den Bildsensoren einer der hier beschriebenen Kameras), Bildsignalprozessoren und/oder dergleichen interagieren. Jeder der RISC-Kerne kann eine beliebige Speicherkapazität umfassen. Die RISC-Kerne können je nach Ausführungsform eine beliebige Anzahl von Protokollen verwenden. In einigen Beispielen können die RISC-Kerne ein Echtzeitbetriebssystem (RTOS) ausführen. Die RISC-Kerne können unter Verwendung eines oder mehrerer integrierter Schaltungseinrichtungen, anwendungsspezifischer integrierten Schaltkreise (ASICs) und/oder Speicherbausteine implementiert sein. Beispielsweise können die RISC-Kerne einen Befehls-Cache und/oder einen eng gekoppelten RAM enthalten.
  • Der DMA kann Komponenten des/der PVA/s ermöglichen, unabhängig von der/den CPU/s 506 auf den Systemspeicher zuzugreifen. Der DMA kann eine beliebige Anzahl von Funktionen unterstützen, welche zur Optimierung des PVA verwendet werden, einschließlich aber nicht beschränkt auf die Unterstützung mehrdimensionaler Adressierung und/oder zirkularer Adressierung. In einigen Beispielen kann der DMA bis zu sechs oder mehr Dimensionen der Adressierung unterstützen, die Blockbreite, Blockhöhe, Blocktiefe, horizontales Block-Stepping, vertikales Block-Stepping und/oder Tiefen-Stepping umfassen können.
  • Bei den Vektorprozessoren kann es sich um programmierbare Prozessoren handeln, welche ausgelegt sein können, die Programmierung von Computer-Vision-Algorithmen effizient und flexibel auszuführen und Signalverarbeitungsleistungen bereitzustellen. In einigen Beispielen kann der PVA einen PVA-Kern und zwei Vektorverarbeitungs-Subsystem-Partitionen umfassen. Der PVA-Kern kann ein Prozessor-Subsystem, DMA-Engine/s (z. B. zwei DMA-Engines) und/oder andere Peripheriegeräte umfassen. Das Vektorverarbeitungs-Subsystem kann als primäre Verarbeitungseinheit des PVA fungieren und eine Vektorverarbeitungseinheit (VPU), einen Befehlscache und/oder einen Vektorspeicher (z. B. VMEM) umfassen. Ein VPU-Kern kann einen digitalen Signalprozessor enthalten, wie beispielsweise einen digitalen Signalprozessor mit einem einzigen Befehl, mehreren Daten (SIMD) und sehr langen Befehlsworten (VLIW). Die Kombination von SIMD und VLIW kann den Durchsatz und die Geschwindigkeit erhöhen.
  • Jeder der Vektorprozessoren kann einen Befehls-Cache beinhalten und mit einem dedizierten Speicher verbunden sein. Folglich kann in einigen Beispielen jeder der Vektorprozessoren eingerichtet sein, unabhängig von den anderen Vektorprozessoren zu operieren. In anderen Beispielen können die Vektorprozessoren, die in einem bestimmten PVA enthalten sind, ausgelegt sein, Datenparallelität zu verwenden. In einigen Ausführungsformen kann die Mehrzahl der in einem einzigen PVA enthaltenen Vektorprozessoren beispielsweise denselben Computer-Vision-Algorithmus, jedoch für unterschiedliche Bereiche eines Bildes, ausführen. In anderen Beispielen können die in einem bestimmten PVA enthaltenen Vektorprozessoren gleichzeitig verschiedene Computer-Vision-Algorithmen für dasselbe Bild oder sogar verschiedene Algorithmen für aufeinanderfolgende Bilder oder Teile eines Bildes ausführen. Unter anderem kann eine beliebige Anzahl von PVAs im Hardwarebeschleunigungscluster enthalten sein und eine beliebige Anzahl von Vektorprozessoren in jedem der PVAs. Darüber hinaus können der oder die PVAs einen zusätzlichen Fehlerkorrekturcode-Speicher (ECC) enthalten, um die Sicherheit des Gesamtsystems zu erhöhen.
  • Der oder die Beschleuniger 514 (z. B. der Hardwarebeschleunigungscluster) können ein Computer-Vision-Netzwerk auf dem Chip und SRAM enthalten, um einen SRAM mit hoher Bandbreite und niedriger Latenz für den/die Beschleuniger 514 bereitzustellen. In einigen Beispielen kann der On-Chip-Speicher mindestens 4 MB SRAM umfassen, welcher beispielsweise und darauf beschränkt zu sein aus acht feldkonfigurierbaren Speicherblöcken besteht, auf die sowohl der PVA als auch der DLA zugreifen können. Jedes Paar von Speicherblöcken kann eine Advanced Peripheral Bus (APB)-Schnittstelle, Konfigurationsschaltungen, eine Steuereinheit und einen Multiplexer umfassen. Es kann jeder beliebige Speichertyp verwendet werden. Der PVA und der DLA können auf den Speicher über ein Backbone zugreifen, welcher dem PVA und dem DLA einen Hochgeschwindigkeitszugriff auf den Speicher ermöglicht. Der Backbone kann ein Computer-Vision-Netzwerk auf dem Chip umfassen, das den PVA und den DLA mit dem Speicher verbindet (z. B. unter Verwendung des APB).
  • Das Computer-Vision-Netz auf dem Chip kann eine Schnittstelle enthalten, welche vor der Übertragung von Steuersignalen/Adressen/Daten feststellt, dass sowohl der PVA als auch der DLA Bereitschaftssignale und gültige Signale liefern. Eine solche Schnittstelle kann getrennte Phasen und getrennte Kanäle für die Übertragung von Steuersignalen/Adressen/Daten sowie eine Burst-Kommunikation für die kontinuierliche Datenübertragung bereitstellen. Diese Art von Schnittstelle kann den Normen ISO 26262 oder IEC 61508 entsprechen, obwohl auch andere Normen und Protokolle verwendet werden können.
  • In einigen Beispielen können das oder die SoCs 504 einen Echtzeit-Raytracing-Hardwarebeschleuniger enthalten, wie er in der US-Patentanmeldung Nr. 16/101,232 , eingereicht am 10. August 2018, beschrieben ist. Der Echtzeit-Raytracing-Hardwarebeschleuniger kann zur schnellen und effizienten Bestimmung der Positionen und Ausdehnungen von Objekten (z. B. innerhalb eines Weltmodells) eingesetzt werden, um Echtzeit-Visualisierungssimulationen zu erzeugen, die zur RADAR-Signalinterpretation, zur Schallausbreitungssynthese und/oder - analyse, zur Simulation von SONAR-Systemen, zur allgemeinen Wellenausbreitungssimulation, zum Vergleich mit LIDAR-Daten zum Zweck der Lokalisierung und/oder für andere Funktionen und/oder zu anderen Zwecke genutzt werden. In einigen Ausführungsformen können eine oder mehrere Tree Traversal Units (TTUs) für die Ausführung einer oder mehrerer Raytracing-Operationen verwendet werden.
  • Der oder die Beschleuniger 514 (z. B. der Hardwarebeschleunigungscluster) haben ein breites Anwendungsspektrum für autonomes Fahren. Der PVA kann ein programmierbarer Bildverarbeitungsbeschleuniger sein, der für entscheidende Verarbeitungsschritte in ADAS und autonomen Fahrzeugen verwendet werden kann. Die Fähigkeiten des PVA eignen sich gut für algorithmische Bereiche, welche eine vorhersehbare Verarbeitung bei geringem Stromverbrauch und geringer Latenzzeit erfordern. Anders ausgedrückt eignet sich der PVA gut für semidichte oder dichte reguläre Berechnungen selbst bei kleinen Datensätzen, welche vorhersehbare Laufzeiten mit geringer Latenz und geringem Stromverbrauch erfordern. Im Zusammenhang mit Plattformen für autonome Fahrzeuge sind die PVAs daher ausgelegt, klassische Computer-Vision-Algorithmen auszuführen, da sie effizient bei der Objekterkennung sind und mit ganzzahliger Arithmetik operieren.
  • Gemäß einer Ausführungsform der Verfahrenstechnologie wird der PVA beispielsweise zur Durchführung von Computer-Stereo-Vision verwendet. In einigen Beispielen kann ein auf semiglobalem Abgleich basierender Algorithmus verwendet werden, obwohl dies nicht als Einschränkung gedacht ist. Viele Anwendungen für das autonome Fahren der Stufen 3 bis 5 erfordern Bewegungsschätzung/-Stereo-Matching während der Fahrt (z. B. Struktur aus Bewegung, Fußgängererkennung, Fahrspurerkennung usw.). Der PVA kann eine Computer-Stereo-View-Funktion auf Eingaben von zwei monokularen Kameras durchführen.
  • In einigen Beispielen kann der PVA verwendet werden, um einen dichten optischen Fluss zu auszuführen. Beispielsweise kann der PVA verwendet werden, um RADAR-Rohdaten zu verarbeiten (z. B. mit einer 4D-Fast-Fourier-Transformation), um ein verarbeitetes RADAR-Signal zu erhalten, bevor der nächste RADAR-Impuls gesendet wird. In anderen Beispielen wird der PVA für die Verarbeitung der TOF-Tiefe verwendet, indem er zum Beispiel TOF-Rohdaten verarbeitet, um verarbeitete TOF-Daten bereitzustellen.
  • Der DLA kann zur Ausführung jeder Art von Netzwerk verwendet werden, um Steuerung und Fahrsicherheit zu verbessern, einschließlich beispielsweise eines neuronalen Netzwerks, welches für jede Objekterkennung einen Confidence-Wert ausgibt. Ein solcher Confidence-Wert kann als Wahrscheinlichkeit oder als relative „Gewichtung“ jeder Feststellung im Vergleich zu anderen Feststellungen interpretiert werden. Dieser Confidence-Wert ermöglicht es dem System, weitere Entscheidungen darüber zu treffen, welche Feststellungen eher als echt positive Feststellungen denn als falsch positive Feststellungen angesehen werden sollten. So kann das System beispielsweise einen Confidence-Schwellenwert festlegen und nur die Feststellungen, die diesen Schwellenwert überschreiten, als echt positive Feststellungen betrachten. In einem automatischen Notbremssystem (AEB) würden falsch positive Feststellungen dazu führen, dass das Fahrzeug automatisch eine Notbremsung durchführt, die natürlich unerwünscht ist. Daher sollten nur die sichersten Feststellungen als Auslöser für AEB in Betracht gezogen werden. Der DLA kann ein neuronales Netzwerk zur Regression des Confidence-Wertes einsetzen. Das neuronale Netzwerk kann als Eingabe zumindest eine Teilmenge von Parametern verwenden, wie beispielsweise Bounding Box-Abmessungen, erhaltene Grundebenenschätzung, (z. B. von einem anderen Teilsystem), Ausgabe des IMU-Sensors 566, die mit der Ausrichtung des Fahrzeugs 500 korreliert, Entfernung, 3D-Lokalisierungsschätzungen des Objekts, die von dem neuronalen Netzwerk und/oder anderen Sensoren (z. B. LIDAR-Sensor/en 564 oder RADAR-Sensor/en 560) erhalten werden, und andere.
  • Das oder die SoCs 504 können einen oder mehrere Datenspeicher 516 (z. B. Speicher) enthalten. Bei dem/den Datenspeicher/n 516 kann es sich um einen On-Chip-Speicher des/der SoC/s 504 handeln, in dem neuronale Netzwerke gespeichert werden können, welche auf der GPU und/oder dem DLA ausgeführt werden sollen. In einigen Beispielen können der oder die Datenspeicher 516 groß genug sein, um mehrere Instanzen neuronaler Netzwerke für Redundanz- und Sicherheitszwecke zu speichern. Der oder die Datenspeicher 516 können L2 oder L3 Cache/s 512 umfassen. Ein Verweis auf den/die Datenspeicher 516 kann einen Verweis auf den Speicher beinhalten, welcher, wie hier beschrieben, mit dem PVA, DLA und/oder anderen Beschleunigern 514 verknüpft ist.
  • Das oder die SoCs 504 können einen oder mehrere Prozessoren 510 (z. B. eingebettete Prozessoren) enthalten. Der oder die Prozessoren 510 können einen Boot- und Energiemanagementprozessor enthalten, der ein dedizierter Prozessor und ein Subsystem sein kann, um die Boot- und Energiemanagementfunktionen und die damit verbundene Sicherheitsdurchsetzung zu bewältigen. Der Boot- und Energiemanagementprozessor kann ein Teil der Bootsequenz des/der SoC/s 504 sein und kann Laufzeit-Energieverwaltungsdienste bereitstellen. Der Boot- und Energiemanagementprozessor kann Takt- und Spannungsprogrammierung, Unterstützung bei Systemübergängen in einen Zustand mit niedriger Leistung, Management der Thermik und Temperatursensoren von SoC/s 504 und/oder Management der Energieversorgungszustände von SoC/s 504 bieten. Jeder Temperatursensor kann als Ringoszillator implementiert sein, dessen Ausgangsfrequenz proportional zur Temperatur ist, und das oder die SoCs 504 können die Ringoszillatoren verwenden, um die Temperaturen der CPU/s 506, GPU/s 508 und/oder Beschleuniger 514 zu erfassen. Wenn festgestellt wird, dass die Temperaturen einen Schwellenwert überschreiten, kann der Boot- und Energiemanagementprozessor in eine Temperaturfehlerroutine eintreten und den/die SoC/s 504 in einen Zustand mit geringerer Leistung und/oder das Fahrzeug 500 in einen den Fahrer auslösenden Safe-Stopp-Modus versetzen (z. B. das Fahrzeug 500 zu einem sicheren Halt bringen).
  • Der oder die Prozessoren 510 können ferner einen Satz eingebauter Prozessoren umfassen, welche als Audioverarbeitungs-Engine dienen können. Die Audioverarbeitungs-Engine kann ein Audio-Subsystem sein, das eine vollständige Hardware-Unterstützung für Mehrkanal-Audio über mehrere Schnittstellen und eine breite und flexible Palette von Audio-E/A-Schnittstellen ermöglicht. In einigen Beispielen ist die Audioverarbeitungs-Engine ein dedizierter Prozessorkern mit einem digitalen Signalprozessor mit dediziertem RAM.
  • Der oder die Prozessoren 510 können ferner eine stets eingeschaltete Prozessor-Engine enthalten, welche die notwendigen Hardware-Funktionen zur Unterstützung von Low-Power-Sensor-Management- und Wake-Anwendungsfällen bereitstellt. Die stets eingeschaltete Prozessor-Engine kann einen Prozessorkern, einen eng gekoppelten RAM, unterstützende Peripheriegeräte (z. B. Timer und Interrupt-Controller), verschiedene E/A-Controller-Peripheriegeräte und Routing-Logik umfassen.
  • Der oder die Prozessoren 510 können ferner eine Sicherheitscluster-Engine enthalten, welche ein spezielles Prozessor-Subsystem für das Sicherheitsmanagement von Automobilanwendungen umfasst. Die Sicherheitscluster-Engine kann zwei oder mehr Prozessorkerne, einen eng gekoppelten Arbeitsspeicher, unterstützende Peripheriegeräte (z. B. Timer, einen Interrupt-Controller usw.) und/oder Routing-Logik umfassen. In einem Sicherheitsmodus können die zwei oder mehr Kerne in einem Lockstep-Modus arbeiten und als ein einziger Kern mit einer Vergleichslogik funktionieren, um Unterschiede zwischen ihren Operationen zu erkennen.
  • Der oder die Prozessoren 510 können ferner eine Echtzeit-Kamera-Engine enthalten, welche ein dediziertes Prozessor-Subsystem zum Echtzeit-Kamera-Management umfassen kann.
  • Der oder die Prozessoren 510 können ferner einen Signalprozessor mit hohem Dynamikbereich umfassen, welcher einen Bildsignalprozessor enthalten kann, der eine Hardware-Engine darstellt, die Teil der Kameraverarbeitungspipeline ist.
  • Der oder die Prozessoren 510 können einen Videobild-Compositor enthalten, welcher ein Verarbeitungsblock sein kann (z. B. auf einem Mikroprozessor implementiert), der Videonachverarbeitungsfunktionen ausführt, die von einer Videowiedergabeanwendung benötigt werden, um das endgültige Bild für das Playerfenster zu erzeugen. Der Videobild-Compositor kann eine Linsenverzerrungskorrektur an der/den Weitwinkelkamera/s 570, an der/den Rundumsichtkamerals 574 und/oder an den Kamerasensoren für die Überwachung im Fahrzeuginnenraum bzw. der Kabine vornehmen. Ein kabineninterner Überwachungskamerasensor wird vorzugsweise von einem neuronalen Netzwerk überwacht, welches auf einer anderen Instanz des hochentwickelten SoC läuft und eingerichtet ist, Ereignisse im Innenraum zu erkennen und entsprechend zu reagieren. Ein System im Fahrzeuginnenraum kann von den Lippen ablesen, um den Mobilfunkdienst zu aktivieren und einen Anruf zu tätigen, E-Mails zu diktieren, den Zielort des Fahrzeugs zu ändern, das Infotainment-System und die Einstellungen des Fahrzeugs zu aktivieren oder zu ändern oder sprachgesteuertes Surfen im Internet zu ermöglichen. Bestimmte Funktionen stehen dem Fahrer nur zur Verfügung, wenn das Fahrzeug in einem autonomen Modus betrieben wird, und sind ansonsten deaktiviert.
  • Der Videobild-Compositor kann eine verbesserte Rauschunterdrückung sowohl bezüglich räumlicher als auch zeitlicher Rauschunterdrückung umfassen. Tritt beispielsweise Bewegung in einem Video auf, gewichtet die Rauschunterdrückung räumliche Informationen entsprechend, in dem sie die Gewichtung der Informationen, die von benachbarten Bildern stammen, verringert. Wenn ein Bild oder ein Teil eines Bildes keine Bewegung enthält, kann die vom Videobild-Compositor durchgeführte zeitliche Rauschunterdrückung Informationen aus dem vorherigen Bild verwenden, um Rauschen im aktuellen Bild zu vermindern.
  • Der Videobild-Compositor kann auch eingerichtet sein, eine Stereorektifizierung an eingegebenen Stereolinsenbildern durchzuführen. Der Videobild-Compositor kann ferner für die Zusammensetzung der Benutzeroberfläche verwendet werden, wenn der Desktop des Betriebssystems in Gebrauch ist, und die eine oder mehreren GPUs 508 müssen nicht ständig neue Oberflächen rendern. Selbst wenn die eine oder mehreren GPUs 508 eingeschaltet sind und aktiv 3D-Rendering durchführen, kann der Videobild-Compositor verwendet werden, um die GPU/s 508 zu entlasten und Leistung und Reaktionsfähigkeit zu verbessern.
  • Der oder die SoCs 504 können ferner eine Kameraschnittstelle für mobile industrielle Bildverarbeitung (MIPI) zum Empfangen von Videos und Eingaben von Kameras, eine Hochgeschwindigkeitsschnittstelle und/oder einen Videoeingabeblock enthalten, der für Kamera- und verbundene Pixeleingabefunktionen verwendet werden kann. Der oder die SoCs 504 können ferner einen oder mehrere Eingangs-/Ausgangs-Controller enthalten, welche von Software gesteuert und für den Empfang von nicht an eine bestimmte Rolle gebundenen E/A-Signalen verwendet werden können.
  • Der oder die SoCs 504 können ferner eine breite Palette von Peripherieschnittstellen umfassen, um die Kommunikation mit Peripherie-, Audiocodecs-, Energiemanagementgeräten und/oder anderen Vorrichtungen zu ermöglichen. Der oder die SoCs 504 können zum Verarbeiten von Daten von Kameras (z. B. verbunden über Gigabit Multimedia Serial Link und Ethernet), Sensoren (z. B. LIDAR-Sensor/en 564, RADAR-Sensor/en 560 usw., die über Ethernet verbunden sein können), Daten vom Bus 502 (z. B. Geschwindigkeit des Fahrzeugs 500, Lenkradposition usw.), Daten von GNSS-Sensor/en 558 (z. B. verbunden über Ethernet oder CAN-Bus) verwendet werden. Der oder die SoCs 504 können ferner dedizierte Hochleistungs-Massenspeicher-Steuereinheiten umfassen, welche ihre eigenen DMA-Engines enthalten können und die verwendet werden können, um die CPU/s 506 von Routineaufgaben der Datenverwaltung zu entlasten.
  • Der oder die SoCs 504 können eine End-to-End-Plattform mit einer flexiblen Architektur sein, welche die Automatisierungsstufen 3 bis 5 abdeckt und dadurch eine umfassende funktionale Sicherheitsarchitektur bietet, die Computer-Vision- und ADAS-Techniken für Diversität und Redundanz nutzt und eine Plattform für ein flexibles, zuverlässiges Fahr-Softwarepaket zusammen mit Deep-Learning-Tools bereitstellt. Das oder die SoCs 504 können schneller, zuverlässiger und sogar energie- und platzsparender sein als herkömmliche Systeme. Zum Beispiel können der oder die Beschleuniger 514, wenn sie mit der/den CPU/s 506, der/den GPU/s 508 und dem/den Datenspeicher/n 516 kombiniert sind, eine schnelle, effiziente Plattform für autonome Fahrzeuge der Stufe 3-5 bereitstellen.
  • Die Technologie bietet somit Fähigkeiten und Funktionen, die von herkömmlichen Systemen nicht erreicht werden können. Beispielsweise können Computer-Vision-Algorithmen auf CPUs ausgeführt werden, welche mit Hilfe von High-Level-Programmiersprachen, wie der Programmiersprache C, konfiguriert sein können, um eine Vielzahl von Verarbeitungsalgorithmen über eine Vielzahl von visuellen Daten auszuführen. Allerdings sind CPUs oft nicht in der Lage, die Leistungsanforderungen vieler Bildverarbeitungsanwendungen zu erfüllen, zum Beispiel in Bezug auf die Ausführungszeit und den Energieverbrauch. Insbesondere sind viele CPUs nicht in der Lage, komplexe Objekterkennungsalgorithmen in Echtzeit auszuführen, wobei diese Fähigkeit eine Voraussetzung für fahrzeuginterne ADAS-Anwendungen und eine Voraussetzung für zweckmäßige autonome Fahrzeuge der Stufe 3-5 ist.
  • Im Gegensatz zu herkömmlichen Systemen ermöglicht die hier beschriebene Technologie durch die Bereitstellung eines CPU-Komplexes, eines GPU-Komplexes und eines Hardwarebeschleunigungsclusters die gleichzeitige und/oder sequentielle Ausführung mehrerer neuronaler Netzwerke und die Kombination der Ergebnisse, um autonome Fahrfunktionen der Stufe 3-5 zu ermöglichen. Beispielsweise kann ein CNN, das auf dem DLA oder der dGPU (z. B. die GPU/s 520) ausgeführt wird, eine Text- und Worterkennung umfassen, die es dem Supercomputer ermöglicht, Verkehrsschilder zu lesen und zu verstehen, einschließlich Schilder, für die das neuronale Netzwerk nicht speziell trainiert wurde. Der DLA kann ferner ein neuronales Netzwerk enthalten, welches in der Lage ist, das Zeichen zu identifizieren, zu interpretieren und ein semantisches Verständnis zu liefern und dieses semantische Verständnis an die auf dem CPU-Komplex laufenden Module zur Wegplanung weiterzuleiten.
  • Als weiteres Beispiel können mehrere neuronale Netzwerke gleichzeitig ausgeführt werden, wie es für das Fahren der Stufe 3, 4 oder 5 erforderlich ist. So kann beispielsweise ein Warnschild mit der Aufschrift „Vorsicht: Blinkende Lichter weisen auf Eisglätte hin“ zusammen mit einem elektrischen Licht von mehreren neuronalen Netzwerken unabhängig voneinander oder gemeinsam interpretiert werden. Das Schild selbst kann von einem ersten eingesetzten neuronalen Netzwerk (z. B. einem trainierten neuronalen Netzwerk) als Verkehrsschild identifiziert werden, der Text „Blinkende Lichter deuten auf Eisglätte hin“ kann von einem zweiten eingesetzten neuronalen Netzwerk interpretiert werden, das die Wegplanungssoftware des Fahrzeugs (die vorzugsweise auf dem CPU-Komplex ausgeführt wird) darüber informiert, dass beim Erkennen blinkender Lichter Glatteis vorliegt. Das Blinklicht kann über mehrere Bilder durch Betreiben eines dritten neuronalen Netzwerks, welches die Wegplanungssoftware des Fahrzeugs über das Vorhandensein (oder Fehlen) von Blinklichtern informiert, identifiziert werden. Alle drei neuronalen Netzwerke können gleichzeitig laufen, zum Beispiel. innerhalb des DLA und/oder auf der/den GPU/s 508.
  • In einigen Beispielen kann ein CNN zur Gesichtserkennung und Identifizierung des Fahrzeugbesitzers Daten von Kamerasensoren nutzen, um die Anwesenheit eines autorisierten Fahrers und/oder Besitzers des Fahrzeugs 500 zu identifizieren. Die stets eingeschaltete Sensorverarbeitungs-Engine kann verwendet werden, um das Fahrzeug zu entriegeln, wenn sich der Besitzer der Fahrertür nähert, und die Beleuchtung einschalten, und um das Fahrzeug im Sicherheitsmodus zu deaktivieren, wenn der Besitzer das Fahrzeug verlässt. Auf diese Weise sorgen das oder die SoCs 504 für Sicherheit gegen Diebstahl und/oder Carjacking.
  • In einem anderen Beispiel kann ein CNN zur Erkennung und Identifizierung von Einsatzfahrzeugen Daten von Mikrofonen 596 nutzen, um Sirenen von Einsatzfahrzeugen zu erkennen und zu identifizieren. Im Gegensatz zu herkömmlichen Systemen, die allgemeine Klassifikatoren zur Erkennung von Sirenen und zur manuellen Extraktion von Merkmalen verwenden, nutzen das oder die SoCs 504 das CNN zur Klassifizierung von Umgebungs- und Stadtgeräuschen sowie zur Klassifizierung visueller Daten. In einer bevorzugten Ausführungsform wird das auf dem DLA laufende CNN so trainiert, dass es die relative Annäherungsgeschwindigkeit des Einsatzfahrzeugs erkennt (z. B. unter Verwendung des Doppler-Effekts). Das CNN kann auch trainiert werden, Einsatzfahrzeuge zu identifizieren, die spezifisch für das lokale Gebiet sind, in dem das Fahrzeug gemäß Identifizierung durch den/die GNSS-Sensor/en 558 betrieben wird. So wird das CNN beispielsweise bei einem Einsatz in Europa versuchen, europäische Sirenen zu identifizieren, und bei einem Einsatz in den Vereinigten Staaten wird das CNN versuchen, nur nordamerikanische Sirenen zu identifizieren. Sobald ein Einsatzfahrzeug erkannt wird, kann ein Steuerprogramm verwendet werden, um eine Sicherheitsroutine für Einsatzfahrzeuge auszuführen, das Fahrzeug zu verlangsamen, an den Straßenrand zu fahren, das Fahrzeug zu parken und/oder das Fahrzeug mit Unterstützung der Ultraschallsensoren 562 im Leerlauf laufen zu lassen, bis das/die Einsatzfahrzeug/e vorbeigefahren ist/sind.
  • Das Fahrzeug kann eine oder mehrere CPUs 518 (z. B. diskrete CPUs bzw. dCPUs) enthalten, welche über eine Hochgeschwindigkeitsverbindung (z. B. PCIe) mit dem/den SoC/s 504 verbunden sein können. Die eine oder mehreren CPU/s 518 können beispielsweise einen X86-Prozessor enthalten. Die eine oder mehreren CPUs 518 können verwendet werden, um eine beliebige Funktion aus einer Vielzahl von Funktionen auszuführen, beispielsweise einschließlich Vermittlung sich potenziell widersprechender Ergebnisse zwischen ADAS-Sensoren und dem/den SoC/s 504 und/oder der Überwachung des Status und des Zustands der Steuereinheit/en 536 und/oder des Infotainment-SoC 530.
  • Das Fahrzeug 500 kann eine oder mehrere GPUs 520 (z. B. diskrete GPUs oder dGPUs) enthalten, die mit dem/den SoC/s 504 über eine Hochgeschwindigkeitsverbindung (z. B. NVIDIAs NVLINK) gekoppelt sein können. Die eine oder mehreren GPUs 520 können zusätzliche Funktionen der künstlichen Intelligenz bereitstellen, zum Beispiel durch Ausführen redundanter und/oder unterschiedlicher neuronaler Netzwerke, und können basierend auf Eingaben (z. B. Sensordaten) von Sensoren des Fahrzeugs 500 zum Trainieren und/oder Aktualisieren neuronaler Netzwerke verwendet werden.
  • Das Fahrzeug 500 kann ferner die Netzwerkschnittstelle 524 beinhalten, welche eine oder mehrere drahtlose Antennen 526 umfassen kann (z. B. eine oder mehrere drahtlose Antennen für verschiedene Kommunikationsprotokolle, wie eine Mobilfunkantenne, eine Bluetooth-Antenne usw.). Die Netzwerkschnittstelle 524 kann verwendet werden, um eine drahtlose Verbindung über das Internet mit der Cloud (z. B. mit dem/den Server/n 578 und/oder anderen Netzwerkgeräten), mit anderen Fahrzeugen und/oder mit Rechnern (z. B. Client-Geräten der Fahrgäste) zu ermöglichen. Um mit anderen Fahrzeugen zu kommunizieren, kann eine direkte Verbindung zwischen den beiden Fahrzeugen und/oder eine indirekte Verbindung (z. B. über Netzwerke und das Internet) hergestellt werden. Direkte Verbindungen können über eine Fahrzeug-zu-Fahrzeug-Kommunikationsverbindung hergestellt werden. Die Fahrzeug-zu-Fahrzeug-Kommunikationsverbindung kann dem Fahrzeug 500 Informationen über Fahrzeuge in der Nähe des Fahrzeugs 500 liefern (z. B. Fahrzeuge vor, neben und/oder hinter dem Fahrzeug 500). Diese Funktionalität kann Teil einer zusammenwirkenden adaptiven Abstands- und Geschwindigkeitsregelungsfunktion des Fahrzeugs 500 sein.
  • Die Netzwerkschnittstelle 524 kann ein SoC enthalten, welches Modulations- und Demodulationsfunktionen bereitstellt und der/den Steuereinheiten 536 ermöglicht, über drahtlose Netzwerke zu kommunizieren. Die Netzwerkschnittstelle 524 kann ein Funkfrequenz-Frontend-System für die Aufwärtskonvertierung vom Basisband auf Funkfrequenz und die Abwärtskonvertierung von Funkfrequenz auf Basisband enthalten. Die Frequenzumwandlungen können mit bekannten Verfahren und/oder mit Superheterodyn-Verfahren durchgeführt werden. In einigen Beispielen kann die Funkfrequenz-Frontend-Funktionalität durch einen separaten Chip bereitgestellt werden. Die Netzwerkschnittstelle kann drahtlose Funktionen für die Kommunikation über LTE, WCDMA, UMTS, GSM, CDMA2000, Bluetooth, Bluetooth LE, Wi-Fi, Z-Wave, ZigBee, LoRaWAN und/oder andere drahtlose Protokolle enthalten.
  • Das Fahrzeug 500 kann ferner einen oder mehrere Datenspeicher 528 umfassen, welche Off-Chip-Speicher (z. B. außerhalb des/der SoC/s 504) umfassen. Der oder die Datenspeicher 528 können ein oder mehrere Speicherelemente umfassen, einschließlich RAM, SRAM, DRAM, VRAM, Flash, Festplatten und/oder andere Komponenten und/oder Geräte, die mindestens ein Datenbit speichern können.
  • Das Fahrzeug 500 kann ferner GNSS-Sensor/en 558 (z. B. GPS- und/oder unterstützte GPS-Sensoren) umfassen, um bei Mapping, Wahrnehmung, Erzeugung von Belegungsrastern und/oder Wegplanungsfunktionen zu assistieren. Dabei kann eine beliebige Anzahl von GNSS-Sensoren 558 verwendet werden, beispielsweise und ohne darauf beschränkt zu sein ein GPS, das einen USB-Anschluss mit einer Datenbrücke zwischen Ethernet und serieller Schnittstelle (RS-232) verwendet.
  • Das Fahrzeug 500 kann ferner RADAR-Sensor/en 560 umfassen. Der oder die RADAR-Sensoren 560 können selbst bei Dunkelheit und/oder rauen Wetterbedingungen vom Fahrzeug 500 für weitreichende Fahrzeugerkennung verwendet werden. Der oder die RADAR-Sensoren 560 können den CAN-Bus und/oder den Bus 502 (z. B. zur Übertragung von Daten, die von dem oder den RADAR-Sensoren 560 erzeugt wurden) zur Steuerung und zum Zugriff auf Objektnachverfolgungsdaten verwenden, wobei in einigen Beispielen der Zugriff auf Rohdaten mit Zugriff auf Ethernet erfolgt. Dabei kann eine Vielzahl von RADAR-Sensortypen verwendet werden. Beispielsweise und ohne darauf beschränkt zu sein können der oder die RADAR-Sensoren 560 für Front-, Heck- und Seiten-Einsatz geeignet sein. In einigen Beispielen werden Pulse-Doppler-RADAR-Sensoren verwendet.
  • Der oder die RADAR-Sensoren 560 können verschiedene Konfigurationen umfassen, wie beispielsweise große Reichweite mit engem Sichtfeld, kurze Reichweite mit breitem Sichtfeld, seitliche Abdeckung mit kurzer Reichweite usw. In einigen Beispielen kann RADAR mit großer Reichweite für die adaptive Abstands- und Geschwindigkeitsregelung verwendet werden. Die RADAR-Systeme mit großer Reichweite können ein breites Sichtfeld bieten, welches durch zwei oder mehr unabhängige Abtastungen realisiert wird, zum Beispiel innerhalb einer Reichweite von 250 m. Der oder die RADAR-Sensoren 560 können helfen, zwischen statischen und sich bewegenden Objekten zu unterscheiden, und können von ADAS-Systemen für Notbremsassistenten und Warnungen vor Kollisionen mit vorausfahrenden Fahrzeugen genutzt werden. RADAR-Weitbereichssensoren können monostatische multimodale RADAR-Systeme mit mehreren (z. B. sechs oder mehr) festen RADAR-Antennen und einer Hochgeschwindigkeits-CAN- und FlexRay-Schnittstelle umfassen. In einem Beispiel mit sechs Antennen können die mittleren vier Antennen ein fokussiertes Strahlenmuster erzeugen, welches dazu dient, die Umgebung des Fahrzeugs 500 bei höheren Geschwindigkeiten mit minimalen Störungen durch Verkehr auf den benachbarten Fahrspuren zu erfassen. Die beiden anderen Antennen können das Sichtfeld erweitern, so dass Fahrzeuge, welche sich in die Fahrspur des Fahrzeugs 500 einordnen oder diese verlassen, schnell erfasst werden können.
  • RADAR-Systeme mit mittlerer Reichweite können beispielsweise eine Reichweite von bis zu 560 m (nach vorn) oder 80 m (nach hinten) und ein Sichtfeld von bis zu 42 Grad (nach vom) oder 550 Grad (nach hinten) aufweisen. Zu den RADAR-Systemen mit geringer Reichweite können unter anderem RADAR-Sensoren gehören, welche an beiden Enden des hinteren Stoßfängers angebracht werden können. Wenn ein solches RADAR-Sensorsystem an beiden Enden des hinteren Stoßfängers installiert ist, kann es zwei Strahlen erzeugen, die ständig den toten Winkel im hinteren Bereich und neben dem Fahrzeug überwachen.
  • RADAR-Systeme mit kurzer Reichweite können in einem ADAS-System zur Erkennung des toten Winkels und/oder als Spurwechselassistent eingesetzt werden.
  • Das Fahrzeug 500 kann ferner einen oder mehrere Ultraschallsensoren 562 umfassen. Der oder die Ultraschallsensoren 562, welche vorn, hinten und/oder an den Seiten des Fahrzeugs 500 angebracht sein können, können als Einparkhilfe und/oder zum Erstellen und Aktualisieren eines Belegungsrasters verwendet werden. Es kann eine Vielzahl von Ultraschallsensoren 562 verwendet werden, und unterschiedliche Ultraschallsensoren 562 können für unterschiedliche Erfassungsbereiche (z. B. 2,5 m, 4 m) eingesetzt werden. Der oder die Ultraschallsensoren 562 können bei funktionalen Sicherheitsstufen von ASIL B operieren.
  • Das Fahrzeug 500 kann einen oder mehrere LIDAR-Sensoren 564 umfassen. Der oder die LIDAR-Sensoren 564 können zur Objekt- und Fußgängererkennung, Notbremsung, Kollisionsvermeidung und/oder für andere Funktionen verwendet werden. Der oder die LIDAR-Sensoren 564 können der funktionalen Sicherheitsstufe ASIL B entsprechen. In einigen Beispielen kann das Fahrzeug 500 mehrere LIDAR-Sensoren 564 (z. B. zwei, vier, sechs usw.), die Ethernet verwenden können (z. B. um Daten an einen Gigabit-Ethernet-Switch zu liefern), umfassen.
  • In einigen Beispielen können der oder die LIDAR-Sensoren 564 in der Lage sein, eine Liste von Objekten und deren Entfernungen für ein 360-Grad-Sichtfeld bereitzustellen. Kommerziell erhältliche LIDAR-Sensoren 564 können eine angegebene Reichweite von etwa 100 m, mit einer Genauigkeit von 2 cm bis 3 cm, und beispielsweise Unterstützung für eine 100 Mbps-Ethernet-Verbindung haben. In einigen Beispielen können ein oder mehrere baulich nicht vorstehende LIDAR-Sensoren 564 verwendet werden. In solchen Beispielen können der oder die LIDAR-Sensoren 564 als kleines Gerät implementiert werden, welches in den vorderen Teil, den hinteren Teil, die Seiten und/oder die Ecken des Fahrzeugs 500 eingebaut werden kann. Der oder die LIDAR-Sensoren 564 können in solchen Beispielen ein horizontales Sichtfeld von bis zu 120 Grad und ein vertikales Sichtfeld von 35 Grad mit einer Reichweite von 200 m selbst bei Objekten mit geringer Reflexion bieten. Der oder die frontmontierten LIDAR-Sensoren 564 können für ein horizontales Sichtfeld zwischen 45 Grad und 135 Grad ausgelegt sein.
  • In einigen Beispielen können auch LIDAR-Technologien wie 3D-Blitz-LIDAR eingesetzt werden. Die 3D-Blitz-LIDAR-Technologie verwendet einen Laserblitz als Übertragungsquelle, um die Umgebung des Fahrzeugs bis zu einer Entfernung von etwa 200 m zu auszuleuchten. Eine Flash-LIDAR-Einheit umfasst einen Empfänger, welcher die Laufzeit des Laserpulses und das reflektierte Licht auf jedem Pixel aufzeichnet, was wiederum der Entfernung zwischen dem Fahrzeug und den Objekten entspricht. Mit Flash-LIDAR lassen sich mit jedem Laserblitz hochpräzise und verzerrungsfreie Bilder der Umgebung erzeugen. In einigen Beispielen können vier Flash-LIDAR-Sensoren eingesetzt werden, einer an jeder Seite des Fahrzeugs 500. Zu den verfügbaren 3D-Blitz-LIDAR-Systemen gehört eine Festkörper-3D-Star-Array-LIDAR-Kamera, die außer einem Lüfter keine beweglichen Teile aufweist (z. B. ein nicht scannendes LIDAR-Gerät). Das Flash-LIDAR-Gerät kann einen Fünf-Nanosekunden-Laserimpuls der Klasse I (augensicherer Bereich) pro Bild verwenden und das reflektierte Laserlicht in Form von 3D-Punktwolken und coregistrierten Intensitätsdaten erfassen. Aufgrund der Verwendung von Flash-LIDAR und der Tatsache, dass Flash-LIDAR ein Festkörpergerät ohne bewegliche Teile ist, können der oder die LIDAR-Sensoren 564 weniger anfällig für Bewegungsunschärfe, Vibrationen und/oder Stöße sein.
  • Das Fahrzeug kann ferner einen oder mehrere IMU-Sensoren 566 enthalten. Der oder die IMU-Sensoren 566 können in einigen Beispielen in einer Mitte der Hinterachse des Fahrzeugs 500 angeordnet sein. Der oder die IMU-Sensoren 566 können beispielsweise und ohne darauf beschränkt zu sein einen/mehrere Beschleunigungsmesser, einen/mehrere Magnetometer, ein/mehrere Gyroskop/e, einen/mehrere Magnetkompass/e und/oder andere Sensortypen umfassen. In einigen Beispielen, wie beispielsweise bei sechsachsigen Anwendungen, können der oder die IMU-Sensoren 566 Beschleunigungsmesser und Gyroskope umfassen, während bei neunachsigen Anwendungen der oder die IMU-Sensoren 566 Beschleunigungsmesser, Gyroskope und Magnetometer umfassen können.
  • In einigen Ausführungsformen können der oder die IMU-Sensoren 566 als ein miniaturisiertes, hochleistungsfähiges GPS-gestütztes Trägheitsnavigationssystem (GPS/INS) implementiert sein, welches mikroelektromechanische Trägheitssensoren (MEMS), einen hochempfindlichen GPS-Empfänger und erweiterte Kalman-Filter-Algorithmen kombiniert, um Schätzungen von Position, Geschwindigkeit und Verhalten bereitzustellen. Als solche können in einigen Beispielen der oder die IMU-Sensoren 566 das Fahrzeug 500 in die Lage versetzen, die Fahrtrichtung zu schätzen, ohne dass Eingaben von einem Magnetsensor erforderlich sind, indem die Geschwindigkeitsänderungen vom GPS zu dem/den IMU-Sensor/en 566 direkt überwacht und korreliert werden. In einigen Beispielen können der oder die IMU-Sensoren 566 und der oder die GNSS-Sensoren 558 in einer einzigen integrierten Einheit kombiniert sein.
  • Das Fahrzeug kann ein oder mehrere Mikrofone 596 umfassen, welche im und/oder um das Fahrzeug 500 herum angeordnet sind. Das oder die Mikrofone 596 können unter anderem zur Erkennung und Identifizierung von Einsatzfahrzeugen verwendet werden.
  • Das Fahrzeug kann ferner eine beliebige Anzahl von Kameratypen, einschließlich einer oder mehrerer Stereokameras 568, Weitwinkelkameras 570, Infrarotkameras 572, Rundumsichtkameras 574, Weit- und/oder Mittelbereichskameras 598 und/oder anderer Kameratypen, enthalten. Die Kameras können verwendet werden, um Bilddaten rund um ein gesamtes Umfeld des Fahrzeugs 500 zu erfassen. Die verwendeten Kameratypen hängen von den Ausführungsformen und Anforderungen für das Fahrzeug 500 ab, und es kann eine beliebige Kombination von Kameratypen verwendet werden, um die erforderliche Abdeckung rund um das Fahrzeug 500 bereitzustellen. Darüber hinaus kann die Anzahl der Kameras je nach Ausführungsform variieren. So kann das Fahrzeug beispielsweise sechs Kameras, sieben Kameras, zehn Kameras, zwölf Kameras und/oder eine andere Anzahl von Kameras umfassen. Die Kameras können zum Beispiel und ohne darauf beschränkt zu sein Gigabit Multimedia Serial Link (GMSL) und/oder Gigabit Ethernet unterstützen. Jede der Kameras wird hier mit Bezug auf 5A und 5B ausführlicher beschrieben.
  • Das Fahrzeug 500 kann ferner einen oder mehrere Vibrationssensoren 542 enthalten. Der oder die Vibrationssensoren 542 können Schwingungen von Komponenten des Fahrzeugs, wie zum Beispiel der Achse/n, messen. Beispielsweise können Änderungen der Vibrationen eine Änderung der Straßenoberfläche anzeigen. In einem anderen Beispiel können bei Verwendung von zwei oder mehr Vibrationssensoren 542 die Unterschiede zwischen den Vibrationen herangezogen werden, um Haftung oder Rutschigkeit der Straßenoberfläche zu bestimmen (z. B. wenn der Vibrationsunterschied zwischen einer angetriebenen Achse und einer frei drehenden Achse besteht).
  • Das Fahrzeug 500 kann ein ADAS-System 538 umfassen. Das ADAS-System 538 kann in einigen Beispielen einen SoC enthalten. Das ADAS-System 538 kann autonome/adaptive/automatische Abstands- und Geschwindigkeitsregelung (ACC), zusammenwirkende adaptive Abstands- und Geschwindigkeitsregelung (CACC), Auffahrwarnungen (FCW), automatische Notbremsung (AEB), Warnungen bei Verlassen der Spur (LDW), Spurhalteassistent (LKA), Toter-Winkel-Warnungen (BSW), Warnungen vor von hinten querenden Fahrzeugen (RCTW), Kollisionswarnungen (CWS), Spurenzentrierung (LC) und/oder andere Features und Funktionen umfassen.
  • Die ACC-Systeme können ein oder mehrere RADAR-Sensoren 560, LIDAR-Sensoren 564 und/oder eine oder mehrere Kameras verwenden. Die ACC-Systeme können eine ACC in Längsrichtung und/oder eine ACC in seitliche Richtung umfassen. Die ACC in Längsrichtung überwacht und steuert den Abstand zu dem sich unmittelbar vor dem Fahrzeug 500 befindenden Fahrzeug und passt die Fahrzeuggeschwindigkeit automatisch an, um einen sicheren Abstand zu vorausfahrenden Fahrzeugen einzuhalten. Die seitliche ACC hält den Abstand ein und weist das Fahrzeug 500 bei Bedarf an, die Spur zu wechseln. ACC in Längsrichtung ist mit anderen ADAS-Anwendungen wie LC und CWS verbunden.
  • CACC verwendet Informationen von anderen Fahrzeugen, welche über die Netzwerkschnittstelle 524 und/oder die drahtlose/n Antenne/n 526 von anderen Fahrzeugen über eine drahtlose Verbindung oder indirekt über eine Netzwerkverbindung (z. B. über das Internet) empfangen werden können. Direkte Verbindungen können durch eine Fahrzeug-zu-Fahrzeug-Kommunikationsverbindung (V2V) bereitgestellt werden, während indirekte Verbindungen Infrastruktur-zu-Fahrzeug-Kommunikationsverbindungen (12V) sein können. Im Allgemeinen liefert das V2V-Kommunikationskonzept Informationen über die unmittelbar vorausfahrenden Fahrzeuge (z. B. Fahrzeuge, die sich unmittelbar vor dem Fahrzeug 500 und auf derselben Fahrspur wie dieses befinden), während das I2 V-Kommunikationskonzept Informationen über den weiter vorausfahrenden Verkehr liefert. CACC-Systeme können sowohl I2V- als auch V2V-Informationsquellen enthalten. Angesichts der Informationen über die vor dem Fahrzeug 500 fahrenden Fahrzeuge kann CACC zuverlässiger sein und hat das Potenzial, den Verkehrsfluss zu verbessern und Staus auf der Straße zu reduzieren.
  • FCW-Systeme sind konfiguriert, den Fahrer vor einer Gefahr zu warnen, so dass er korrigierend eingreifen kann. FCW-Systeme verwenden eine nach vorn gerichtete Kamera und/oder RADAR-Sensor/en 560, welche mit einem speziellen Prozessor, DSP, FPGA und/oder ASIC gekoppelt sind, der wiederum elektrisch mit der Rückmeldung an den Fahrer gekoppelt ist, zum Beispiel mit einem Display, einem Lautsprecher und/oder einer vibrierenden Komponente. FCW-Systeme können eine Warnung ausgeben, beispielsweise, in Form eines Tons, einer optischen Warnung, einer Vibration und/oder eines schnellen Bremsimpulses.
  • AEB-Systeme erkennen eine nahe bevorstehende Kollision mit einem anderen vorausfahrenden Fahrzeug oder einem anderen vorausgehenden Objekt und können automatisch die Bremsen betätigen, wenn der Fahrer nicht innerhalb eines bestimmten Zeit- oder Entfernungsparameters korrigierend eingreift. AEB-Systeme können nach vom gerichtete Kamera/s und/oder RADAR-Sensor/en 560 verwenden, welche mit einem speziellen Prozessor, DSP, FPGA und/oder ASIC gekoppelt sind. Wenn das AEB-System eine Gefahr erkennt, warnt es in der Regel zunächst den Fahrer, damit er korrigierende Maßnahmen ergreift, um die Kollision zu vermeiden, und wenn der Fahrer keine korrigierenden Maßnahmen ergreift, kann das AEB-System automatisch die Bremsen betätigen, um die Auswirkungen der vorhergesehenen Kollision zu verhindern oder zumindest abzumildern. AEB-Systeme können Techniken wie dynamische Bremsunterstützung und/oder automatische Notbremsung umfassen.
  • LDW-Systeme warnen den Fahrer optisch, akustisch und/oder taktil, beispielsweise durch Lenkrad- oder Sitzvibrationen, wenn das Fahrzeug 500 die Fahrbahnmarkierungen überschreitet. Ein LDW-System wird nicht aktiviert, wenn der Fahrer durch Betätigen des Blinkers ein absichtliches Verlassen der Fahrspur anzeigt. LDW-Systeme können nach vorn gerichtete Kameras verwenden, welche mit einem speziellen Prozessor, DSP, FPGA und/oder ASIC, gekoppelt sind, der seinerseits elektrisch mit Fahrer-Feedback gekoppelt ist, zum Beispiel mit einer Anzeige, einem Lautsprecher und/oder einer vibrierenden Komponente.
  • LKA-Systeme sind eine Variante von LDW-Systemen. LKA-Systeme stellen Lenkeingaben bereit oder bremsen, um das Fahrzeug 500 zu korrigieren, wenn das Fahrzeug 500 beginnt, die Spur zu verlassen.
  • BSW-Systeme erkennen und warnen den Fahrer vor Fahrzeugen, die sich im toten Winkel des Fahrzeugs befinden. BSW-Systeme können ein optisches, akustisches und/oder taktiles Warnsignal ausgeben, um darauf hinzuweisen, dass das Übergehen in die oder Wechseln der Fahrspur unsicher ist. Das System kann eine zusätzliche Warnung bereitstellen, wenn der Fahrer einen Fahrtrichtungsblinker betätigt. BSW-Systeme können nach hinten gerichtete Kamera/s und/oder RADAR-Sensor/en 560 verwenden, welche mit einem speziellen Prozessor, DSP, FPGA und/oder ASIC, gekoppelt sind, der elektrisch mit dem Fahrer-Feedback gekoppelt ist, zum Beispiel mit einer Anzeige, einem Lautsprecher und/oder einer vibrierenden Komponente.
  • RCTW-Systeme können eine optische, akustische und/oder taktile Meldung ausgeben, wenn beim Rücksetzen des Fahrzeugs 500 ein Objekt außerhalb des Bereichs der Heckkamera erkannt wird. Einige RCTW-Systeme umfassen AEB, um sicherzustellen, dass die Fahrzeugbremsen betätigt werden, um einen Unfall zu vermeiden. RCTW-Systeme können einen oder mehrere nach hinten gerichtete RADAR-Sensoren 560 verwenden, welche mit einem speziellen Prozessor, DSP, FPGA und/oder ASIC, gekoppelt sind, der elektrisch mit dem Fahrerfeedback gekoppelt ist, wie zum Beispiel einem Display, einem Lautsprecher und/oder einer vibrierenden Komponente.
  • Herkömmliche ADAS-Systeme können anfällig für falsch positive Ergebnisse sein, die für einen Fahrer ärgerlich und ablenkend sein können, aber typischerweise nicht katastrophal sind, weil die ADAS-Systeme den Fahrer warnen und es dem Fahrer ermöglichen, zu entscheiden, ob eine sicherheitskritische Situation wirklich existiert, und entsprechend zu handeln. In einem autonomen Fahrzeug 500 muss das Fahrzeug 500 jedoch im Falle widersprüchlicher Ergebnisse selbst entscheiden, ob es das Ergebnis eines Erstrechners oder eines Zweitrechners (z. B. einer ersten Steuereinheit 536 oder einer zweiten Steuereinheit 536) befolgen soll. In einigen Ausführungsformen kann das ADAS-System 538 beispielsweise ein Backup- und/oder Zweitrechner sein, der Wahrnehmungsinformationen an ein Rationalitätsmodul des Backup-Computers liefert. Der Rationalitätsmonitor des Backup-Rechners kann eine diversitär-redundante Software auf Hardwarekomponenten ausführen, um Fehler in der Wahrnehmung und bei dynamischen Fahraufgaben zu erkennen. Die Ausgaben des ADAS-Systems 538 können an eine übergeordnete MCU weitergeleitet werden. Wenn sich die Ausgaben des Erstrechners und des Zweitrechners widersprechen, muss die überwachende MCU bestimmen, wie der Konflikt gelöst werden kann, um einen sicheren Betrieb zu gewährleisten.
  • In einigen Beispielen kann der Erstrechner eingerichtet sein, der übergeordneten MCU einen Confidence-Wert bereitzustellen, der das Vertrauen des Erstrechners in das gewählte Ergebnis angibt. Wenn der Confidence-Wert einen Schwellenwert überschreitet, kann die überwachende MCU dem Befehl des Erstrechners folgen, unabhängig davon, ob der Zweitrechner ein widersprüchliches oder nicht übereinstimmendes Ergebnis liefert. Erreicht der Confidence-Wert den Schwellenwert nicht und geben der Erst- und Zweitrechner unterschiedliche Ergebnisse an (z. B. den Konflikt), kann die übergeordnete MCU zwischen den Rechnern vermitteln, um das geeignete Ergebnis zu bestimmen.
  • Die überwachende MCU kann eingerichtet sein, ein oder mehrere neuronale Netzwerke auszuführen, die trainiert und konfiguriert sind, auf der Grundlage der Ausgaben des Erstrechners und Zweitrechners die Bedingungen zu bestimmen, unter denen der Zweitrechner Fehlalarme ausgibt. So können das oder die neuronalen Netzwerke in der überwachenden MCU lernen, wann der Ausgabe des Zweitrechners vertraut werden kann und wann nicht. Handelt es sich bei dem Zweitrechner beispielsweise um ein RADAR-basiertes FCW-System, kann ein neuronales Netzwerk in der überwachenden MCU lernen, wann das FCW-System metallische Objekte identifiziert, die in Wirklichkeit keine Gefahr darstellen, wie etwa ein Abflussgitter oder ein Kanaldeckel, der einen Alarm auslöst. Wenn der Zweitrechner ein kamerabasiertes LDW-System ist, kann ein neuronales Netzwerk in der überwachenden MCU lernen, das LDW-System zu übersteuern, wenn Radfahrer oder Fußgänger vorhanden sind und ein Verlassen der Fahrspur tatsächlich das sicherste Manöver ist. In Ausführungsformen, in denen ein oder mehrere neuronale Netzwerke auf der überwachenden MCU laufen, kann die überwachende MCU mindestens einen eines DLA oder Grafikprozessors umfassen, welcher für den Betrieb des oder der neuronalen Netzwerke mit zugehörigem Speicher geeignet ist. In bevorzugten Ausführungsformen kann die überwachende MCU eine Komponente des/der SoC(s) 504 umfassen und/oder als solche enthalten sein.
  • In anderen Beispielen kann das ADAS-System 538 einen Zweitrechner umfassen, welcher ADAS-Funktionalität unter Verwendung herkömmlicher Regeln der Computer-Vision ausführt. So kann der Zweitrechner klassische Computer-Vision-Regeln (wenn-dann) verwenden, und das Vorhandensein des oder der neuronalen Netzwerke in der überwachenden MCU kann Zuverlässigkeit, Sicherheit und Leistung verbessern. Beispielsweise machen die unterschiedliche Implementierung und absichtliche Nichtübereinstimmung das Gesamtsystem fehlertoleranter, insbesondere gegenüber Fehlern, welche durch Funktionalität der Software (oder Software-Hardware-Schnittstellen) verursacht werden. Wenn beispielsweise ein Software-Bug oder Fehler in der auf dem Erstrechner laufenden Software auftritt und der nicht identische Softwarecode auf dem Zweitrechner das gleiche Gesamtergebnis liefert, kann die überwachende MCU mit größerer Sicherheit davon ausgehen, dass das Gesamtergebnis korrekt ist und der Bug in der vom Erstrechner verwendeten Software oder Hardware keinen wesentlichen Fehler verursacht.
  • In einigen Beispielen kann die Ausgabe des ADAS-Systems 538 in den Wahrnehmungsblock des Erstrechners und/oder in den Block für dynamische Fahraufgaben des Erstrechners eingespeist werden. Wenn das ADAS-System 538 beispielsweise eine Warnung vor einem Aufprall aufgrund eines unmittelbar vorausliegenden Objekts anzeigt, kann der Wahrnehmungsblock diese Informationen beim Identifizieren von Objekten verwenden. In anderen Beispielen kann der Zweitrechner über ein eigenes neuronales Netzwerk verfügen, das trainiert ist und somit, wie hier beschrieben, das Risiko von Fehlalarmen reduziert.
  • Das Fahrzeug 500 kann ferner das Infotainment-SoC 530 (z. B. ein bordeigenes Infotainment-System (IVI)) umfassen. Obwohl das Infotainment-System als SoC dargestellt und beschrieben wird, muss es nicht unbedingt ein SoC sein, sondern kann auch zwei oder mehr diskrete Komponenten umfassen. Das Infotainment-SoC 530 kann eine Kombination aus Hardware und Software umfassen, welche zur Bereitstellung von Akustik (z. B. Musik, einem persönlichen digitalen Assistenten, Navigationsbefehlen, Nachrichten, Radio usw.), Video (z. B. Fernsehen, Filme, Streaming usw.), Telefon (z. B. Freisprechen), Netzwerkkonnektivität (z. B, LTE, Wi-Fi usw.) und/oder Informationsdiensten (z. B. Navigationssysteme, rückwärtige Einparkhilfe, ein Radiodatensystem, fahrzeugbezogene Informationen wie Kraftstoffstand, zurückgelegte Gesamtstrecke, Bremsflüssigkeitsstand, Ölstand, Tür öffnen/schließen, Luftfilterinformationen usw.) an das Fahrzeug 500 verwendet werden kann. Das Infotainment-SoC 530 kann beispielsweise Radios, Plattenspieler, Navigationssysteme, Videoplayer, USB- und Bluetooth-Anschlüsse, Car-PCs, In-Car-Entertainment, Wi-Fi, Audiobedienelemente am Lenkrad, Freisprecheinrichtung, ein Heads-up-Display (HUD), ein HMI-Display 534, ein Telematikgerät, ein Bedienfeld (z. B. zur Steuerung und/oder Interaktion mit verschiedenen Komponenten, Funktionen und/oder Systemen) und/oder andere Komponenten umfassen. Das Infotainment-SoC 530 kann ferner verwendet werden, um einem oder mehreren Nutzern des Fahrzeugs Informationen (z. B. visuell und/oder akustisch), wie beispielsweise Informationen aus dem ADAS-System 538, Informationen zum autonomen Fahren wie geplante Fahrzeugmanöver, Bewegungsverläufe, Umgebungsinformationen (z. B. Informationen über Kreuzungen, Fahrzeuginformationen, Straßeninformationen usw.) und/oder andere Informationen, Bereitzustellen.
  • Das Infotainment-SoC 530 kann GPU-Funktionen umfassen. Das Infotainment-SoC 530 kann über den Bus 502 (z. B. CAN-Bus, Ethernet usw.) mit anderen Geräten, Systemen und/oder Komponenten des Fahrzeugs 500 kommunizieren. In einigen Beispielen kann das Infotainment-SoC 530 mit einer überwachenden MCU gekoppelt sein, so dass die GPU des Infotainment-Systems einige Selbstfahrfunktionen ausführen kann, wenn die eine oder die mehreren primären Steuereinheiten 536 (z. B. der Erst- und/oder Backup-Computer des Fahrzeugs 500) ausfallen. In einem solchen Beispiel kann das Infotainment-SoC 530 das Fahrzeug 500 in einen wie hier beschriebenen Safe-Stopp-Modus durch den Fahrer versetzen.
  • Das Fahrzeug 500 kann ferner ein Kombi-Instrument 532 (z. B. ein digitales Armaturenbrett, ein elektronisches Kombi-Instrument, eine digitale Instrumententafel usw.) umfassen. Das Kombi-Instrument 532 kann eine Steuereinheit und/oder einen Supercomputer (z. B. ein diskretes Steuergerät oder einen diskreten Supercomputer) umfassen. Das Kombi-Instrument 532 kann einen Satz von Instrumenten umfassen, wie beispielsweise Tachometer, Kraftstoffstandmesser, Öldruckmesser, Drehzahlmesser, Kilometerzähler, Blinker, Schaltstellungsanzeige, Sicherheitsgurt-Warnleuchte/n, Parkbrems-Warnleuchte/n, Motor-Fehlfunktionsleuchte/n, Informationen über das Airbag-System (SRS), Beleuchtungssteuerungen, Sicherheitssystemsteuerungen, Navigationsinformationen usw. In einigen Beispielen können die Informationen vom Infotainment-SoC 530 und dem Kombi-Instrument 532 angezeigt und/oder gemeinsam genutzt werden. Anders gesagt kann das Kombi-Instrument 532 Teil des Infotainment-SoC 530 sein oder umgekehrt.
  • 5D zeigt ein Systemdiagramm für die Kommunikation zwischen dem/den cloudbasierten Server/n und dem beispielhaften autonomen Fahrzeug von 5A gemäß einigen Ausführungsformen der Erfindung. Das System 576 kann den/die Server 578, das/die Netzwerk/e 590 und die Fahrzeuge, einschließlich des Fahrzeugs 500, umfassen. Der oder die Server 578 können eine Vielzahl von GPUs 584(A)-584(H) (hier zusammenfassend als GPUs 584 bezeichnet), PCIe-Switches 582(A)-582(H) (hier zusammenfassend als PCIe-Switches 582 bezeichnet) und/oder CPUs 580(A)-580(B) (hier zusammenfassend als CPUs 580 bezeichnet) umfassen. Die GPUs 584, die CPUs 580 und die PCIe-Switches können über Hochgeschwindigkeitsverbindungen miteinander verbunden sein, wie zum Beispiel und ohne darauf beschränkt zu sein über die von NVIDIA entwickelten NVLink-Schnittstellen 588 und/oder PCIe-Verbindungen 586. In einigen Beispielen sind die GPUs 584 über NVLink und/oder NVSwitch SoC und die GPUs 584 und die PCIe-Switches 582 über PCIe-Verbindungen verbunden. Obwohl acht GPUs 584, zwei CPUs 580 und zwei PCIe-Switches dargestellt sind, ist dies nicht als Einschränkung zu verstehen. Je nach Ausführungsform kann jeder der Server 578 eine beliebige Anzahl von GPUs 584, CPUs 580 und/oder PCIe-Switches umfassen. Beispielsweise kann jeder Server 578 acht, sechzehn, zweiunddreißig und/oder mehr GPUs 584 umfassen.
  • Der oder die Server 578 können über das/die Netzwerk/e 590 und von den Fahrzeugen Bilddaten empfangen, welche für Bilder repräsentativ sind, die unerwartete oder veränderte Straßenzustände zeigen, wie beispielsweise kürzlich begonnene Straßenbauarbeiten. Der oder die Server 578 können, über das/die Netzwerk/e 590 und an die Fahrzeuge, neuronale Netzwerke 592, aktualisierte neuronale Netzwerke 592 und/oder Karteninformationen 594, einschließlich Informationen über Verkehrs- und Straßenzustände, übertragen. Die Aktualisierungen der Karteninformationen 594 können Aktualisierungen für die HD-Map 522 enthalten, zum Beispiel Informationen über Baustellen, Schlaglöcher, Umleitungen, Überschwemmungen und/oder andere Hindernisse. In einigen Beispielen können die neuronalen Netzwerke 592, die aktualisierten neuronalen Netzwerke 592 und/oder die Karteninformationen 594 Ergebnisse neuen Trainings und/oder neuer Erfahrungen sein, welche in Daten repräsentiert sind, die von einer beliebigen Anzahl von Fahrzeugen in der Umgebung empfangen wurden, und/oder auf einem Training basieren, welches in einem Datenzentrum durchgeführt wurde (z. B. unter Verwendung des oder der Server 578 und/oder anderer Server).
  • Der oder die Server 578 können zum Trainieren von Machine-Learning-Modellen (z. B. neuronalen Netzwerken) auf der Grundlage von Trainingsdaten verwendet werden. Die Trainingsdaten können von den Fahrzeugen und/oder in einer Simulation (z. B. unter Verwendung einer Spiel-Engine) erzeugt werden. In einigen Beispielen sind die Trainingsdaten mit Tags versehen (z. B. wenn das neuronale Netzwerk von überwachtem Lernen profitiert) und/oder sind einer anderen Vorverarbeitung unterzogen, während in anderen Beispielen die Trainingsdaten nicht mit Tags versehen und/oder vorverarbeitet sind (z. B. wenn das neuronale Netzwerk kein überwachtes Lernen benötigt). Das Training kann nach einer oder mehreren Klassen von Machine-Learning-Techniken durchgeführt werden, einschließlich aber nicht beschränkt auf Klassen wie: überwachtes Training, halbüberwachtes Training, nicht überwachtes Training, Selbstlernen, Reinforcement Learning (Verstärkungslemen), Federated Learning (Föderales Lernen), Transfer Learning (Transfer-Lernen), Feature Learning (Charakteristik-Lernen) (einschließlich Hauptkomponenten- und Clusteranalysen), multi-linear Subspace Learning (Multilineares Unterraumlemen), Manifold Learning (Vielfältiges Lernen), Representation Learning (Darstellendes Lernen) (einschließlich Ersatzwörterbuchlernen), regelbasiertes maschinelles Lernen, Anomalieerkennung sowie alle Varianten oder Kombinationen davon. Sobald die Machine-Learning-Modelle trainiert sind, können die Machine-Learning-Modelle von den Fahrzeugen genutzt werden (z. B. durch Übertragung an die Fahrzeuge über das/die Netzwerk/e 590, und/oder die Machine-Learning-Modelle können von dem oder den Servern 578 zur Fernüberwachung der Fahrzeuge verwendet werden.
  • In einigen Beispielen können der oder die Server 578 Daten von den Fahrzeugen empfangen und die Daten auf aktuelle neuronale Netzwerke in Echtzeit für intelligente Inferenz in Echtzeit anwenden. Der oder die Server 578 können Deep-Learning-Supercomputer und/oder dedizierte KI-Computer umfassen, welche von GPU/s 584 angetrieben werden, wie zum Beispiel die von NVIDIA entwickelten DGX- und DGX-Station-Maschinen. In einigen Beispielen können der oder die Server 578 jedoch auch Deep-Learning-Infrastrukturen, welche nur CPU-betriebene Rechenzentren verwenden, umfassen.
  • Die Deep-Learning-Infrastruktur der/des Server/s 578 kann zur schnellen Inferenz in Echtzeit fähig sein und kann diese Fähigkeit nutzen, um den ordnungsgemäßen Zustand der Prozessoren, der Software und/oder der zugehörigen Hardware im Fahrzeug 500 zu bewerten und zu überprüfen. Beispielsweise kann die Deep-Learning-Infrastruktur regelmäßige Aktualisierungen vom Fahrzeug 500 erhalten, wie etwa eine Bildsequenz und/oder Objekte, die das Fahrzeug 500 in dieser Bildsequenz geortet hat (z. B. über Computer Vision und/oder andere maschinelle Objektklassifizierungstechniken). Die Deep-Learning-Infrastruktur kann ihr eigenes neuronales Netzwerk laufen lassen, um die Objekte zu identifizieren und sie mit den vom Fahrzeug 500 identifizierten Objekten zu vergleichen, und wenn die Ergebnisse nicht übereinstimmen und die Infrastruktur zu dem Schluss kommt, dass die KI im Fahrzeug 500 eine Fehlfunktion aufweist, können der oder die Server 578 ein Signal an das Fahrzeug 500 senden, das einen ausfallsicheren Computer des Fahrzeugs 500 anweist, die Kontrolle zu übernehmen, die Fahrgäste zu benachrichtigen und ein sicheres Parkmanöver durchzuführen.
  • Für Inferenz können der oder die Server 578 die GPU/s 584 und einen oder mehrere programmierbare Inferenzbeschleuniger (z. B. TensorRT von NVIDIA) umfassen. Die Kombination von GPU-gesteuerten Servern und Inferenzbeschleunigung kann eine Reaktionsfähigkeit in Echtzeit ermöglichen. In anderen Beispielen, wenn zum Beispiel die Leistung weniger kritisch ist, können Server mit CPUs, FPGAs und anderen Prozessoren für Inferenz verwendet werden.
  • 5 zeigt ein Blockdiagramm eines beispielhaften Rechners 500, welches zur Verwendung bei der Implementierung einiger Ausführungsformen der vorliegenden Erfindung geeignet ist. Der Rechner 500 kann ein Verbindungssystem 502 umfassen, welches die folgenden Vorrichtungen direkt oder indirekt koppelt: Speicher 504, eine oder mehrere Zentraleinheiten (CPUs) 506, eine oder mehrere Grafikverarbeitungseinheiten (GPUs) 508, eine Kommunikationsschnittstelle 510, E/A-Ports 512, Eingabe-/Ausgabekomponenten 514, eine Stromversorgung 516, eine oder mehrere Präsentationskomponenten 518 (z. B. Display/s) und eine oder mehrere Logikeinheiten 520.
  • Obwohl die verschiedenen Blöcke von 5 als über das Verbindungssystem 502 mit Leitungen verbunden dargestellt sind, ist dies nicht als Einschränkung gedacht und dient nur der Anschaulichkeit. Zum Beispiel kann in einigen Ausführungsformen eine Präsentationskomponente 518, wie ein Anzeigegerät, als E/A-Komponente 514 betrachtet werden (z. B. wenn die Anzeige ein Touchscreen ist). Ein weiteres Beispiel besteht darin, dass die CPUs 506 und/oder GPUs 508 einen Speicher umfassen können (z. B. kann der Speicher 504 zusätzlich zum Speicher der GPUs 508, der CPUs 506 und/oder anderer Komponenten ein Speichergerät darstellen). Anders ausgedrückt dient der Rechner von 5 lediglich der Veranschaulichung. Es wird nicht zwischen Kategorien wie „Workstation“, „Server“, „Laptop“, „Desktop“, „Tablet“, „Client-Gerät“, „mobiles Gerät“, „Handheld-Gerät“, „Spielkonsole“, „elektronische Steuereinheit (ECU)“, „Virtual-Reality-System“, „Augmented-Reality-System“ und/oder anderen Geräte- oder Systemtypen unterschieden, da sie alle in den Anwendungsbereich des Rechners von 5 fallen.
  • Das Verbindungssystem 502 kann eine oder mehrere Verbindungen oder Busse darstellen, wie zum Beispiel einen Adressbus, einen Datenbus, einen Steuerbus oder eine Kombination davon. Das Verbindungssystem 502 kann einen oder mehrere Bus- oder Verbindungstypen umfassen, zum Beispiel einen ISA-Bus (Industry Standard Architecture), einen EISA-Bus (Extended Industry Standard Architecture), einen VESA-Bus (Video Electronics Standards Association), einen PCI-Bus (Peripheral Component Interconnect), einen PCIe-Bus (Peripheral Component Interconnect Express) und/oder eine andere Art von Bus oder Verbindung. In einigen Ausführungsformen gibt es direkte Verbindungen zwischen den Komponenten. So kann beispielsweise die CPU 506 direkt mit dem Speicher 504 verbunden sein. Außerdem kann die CPU 506 direkt mit der GPU 508 verbunden sein. Bei einer direkten oder Punkt-zu-Punkt-Verbindung zwischen Komponenten kann das Verbindungssystem 6502 eine PCIe-Verbindung umfassen, um die Verbindung zu realisieren. In diesen Beispielen muss ein PCI-Bus nicht im Rechner 500 enthalten sein.
  • Der Speicher 504 kann aus einer Vielzahl computerlesbarer Medien bestehen. Bei den computerlesbaren Medien kann es sich um jedes verfügbare Medium handeln, auf das der Rechner 500 zugreifen kann. Die computerlesbaren Medien können sowohl flüchtige als auch nichtflüchtige Medien sowie Wechsel- als auch Nicht-Wechselmedien umfassen. Als Beispiel und nicht als Einschränkung können die computerlesbaren Medien Computerspeichermedien und Kommunikationsmedien umfassen.
  • Die Computerspeichermedien können sowohl flüchtige als auch nichtflüchtige Medien und/oder Wechsel- als auch Nicht-Wechselmedien umfassen, welche in einem beliebigen Verfahren oder einer beliebigen Technologie zur Speicherung von Informationen, wie beispielsweise computerlesbarer Befehle, Datenstrukturen, Programmmodule und/oder anderer Datentypen, implementiert sind. Beispielsweise kann der Speicher 504 computerlesbare Befehle speichern (z. B. solche, die ein oder mehrere Programme und/oder ein oder mehrere Programmelemente darstellen, wie z. B. ein Betriebssystem). Computerspeichermedien können, beispielsweise und ohne darauf beschränkt zu sein RAM-, ROM-, EEPROM-, Flash-Speicher oder andere Speichertechnologien, CD-ROM, DVDs oder andere optische Plattenspeicher, Magnetkassetten, Magnetbänder, Magnetplattenspeicher oder andere magnetische Speichervorrichtungen oder jedes andere Medium sein, welches zur Speicherung der gewünschten Informationen verwendet werden kann und auf das der Rechner 500 zugreifen kann. Der hier verwendete Terminus „Computerspeichermedium“ umfasst nicht per se Signale
  • Die Computerspeichermedien können computerlesbare Befehle, Datenstrukturen, Programmmodule und/oder andere Datentypen in einem modulierten Datensignal, wie beispielsweise einer Trägerwelle oder einem anderen Transportmechanismus, verkörpern und umfassen beliebige Informationsübertragungsmedien. Der Begriff „moduliertes Datensignal“ kann sich auf ein Signal beziehen, bei dem eine oder mehrere seiner Eigenschaften so eingestellt oder verändert wurden, dass Informationen in dem Signal kodiert sind. Computerspeichermedien können beispielsweise und ohne darauf beschränkt zu sein verdrahtete Medien, wie ein verdrahtetes Netzwerk oder eine Direktverbindung, und drahtlose Medien, wie Audio-, RF-, Infrarot- und andere drahtlose Medien, sein. Kombinationen der oben genannten Medien sollten ebenfalls in den Anwendungsbereich der computerlesbaren Medien einbezogen werden.
  • Die eine oder mehreren CPUs 506 können konfiguriert sein, zumindest einige der computerlesbaren Befehle auszuführen, um eine oder mehrere Komponenten des Rechners 500 zu steuern, um eine oder mehrere der hier beschriebenen Verfahren und/oder Prozesse durchzuführen. Jede der CPUs 506 kann einen oder mehrere Kerne (z. B. einen, zwei, vier, acht, achtundzwanzig, zweiundsiebzig usw.) umfassen, welche in der Lage sind, eine Vielzahl von Software-Threads gleichzeitig zu verarbeiten. Die eine oder mehreren CPUs 506 können jede Art von Prozessor umfassen und je nach Art des implementierten Rechners 500 verschiedene Arten von Prozessoren umfassen (z. B. Prozessoren mit weniger Kernen für mobile Geräte und Prozessoren mit mehr Kernen für Server). Je nach Art des Rechners 500 kann der Prozessor beispielsweise ein Prozessor von Advanced RISC Machines (ARM) sein, der mit RISC (Berechnungen mit reduziertem Befehlssatz) arbeitet, oder ein x86-Prozessor, der mit CISC (Berechnungen mit komplexem Befehlssatz) arbeitet. Der Rechner 500 kann eine oder mehrere CPUs 506 zusätzlich zu einem oder mehreren Mikroprozessoren oder zusätzlichen Coprozessoren, wie zum Beispiel mathematischen Coprozessoren, umfassen.
  • Zusätzlich oder alternativ zu der/den CPU/s 506 können die eine oder mehreren GPUs 508 konfiguriert sein, zumindest einige der computerlesbaren Befehle auszuführen, um eine oder mehrere Komponenten des Rechners 500 zu steuern, um eines oder mehrere der hier beschriebenen Verfahren und/oder Prozesse durchzuführen. Eine oder mehrere der GPU/s 508 können eine integrierte GPU sein (z. B. mit einer oder mehreren der CPU/s 506) und/oder eine oder mehrere der GPU/s 508 können eine diskrete GPU sein. In einigen Ausführungsformen kann eine oder mehrere der GPU/s 508 ein Coprozessor einer oder mehrerer der CPU/s 506 sein. Die eine oder mehreren GPUs 508 können von dem Rechner 500 zum Rendern von Grafiken (z. B. 3D-Grafiken) oder zum Durchführen von Universalberechnungen verwendet werden. Die eine oder mehreren GPUs 508 können beispielsweise für Universalberechnungen auf GPUs (GPGPU) verwendet werden. Die eine oder mehreren GPUs 508 können Hunderte oder Tausende von Kernen umfassen, welche in der Lage sind, Hunderte oder Tausende von Software-Threads gleichzeitig zu verarbeiten. Die eine oder mehreren GPUs 508 können als Reaktion auf Rendering-Befehle (z. B. Rendering-Befehle von der/den CPU/s 506, die über eine Host-Schnittstelle empfangen werden) Pixeldaten für Ausgabebilder erzeugen. Die eine oder mehreren GPUs 508 können einen Grafikspeicher, zum Beispiel Display-Speicher, zum Speichern von Pixeldaten oder beliebigen anderen geeigneten Daten, zum Beispiel GPGPU-Daten, enthalten. Der Display-Speicher kann als Teil des Speichers 504 enthalten sein. Die eine oder mehreren GPUs 508 können zwei oder mehr GPUs umfassen, die parallel arbeiten (z. B. über eine Verbindung). Die Verbindung kann die GPUs direkt (z. B. mit NVLINK) oder über einen Switch (z. B. mit NVSwitch) verbinden. Wenn sie miteinander kombiniert werden, kann jede GPU 508 Pixeldaten oder GPGPU-Daten für verschiedene Teile einer Ausgabe oder für verschiedene Ausgaben erzeugen (z. B. eine erste GPU für ein erstes Bild und eine zweite GPU für ein zweites Bild). Jede GPU kann über einen eigenen Speicher verfügen oder den Speicher mit anderen GPUs gemeinsam nutzen.
  • Zusätzlich oder alternativ zu der/den CPU/s 506 und/oder der/den GPU/s 508 können die eine oder mehreren Logikeinheiten 520 ausgelegt sein, zumindest einige der computerlesbaren Befehle auszuführen, um eine oder mehrere Komponenten des Rechners 500 zur Durchführung eines oder mehrerer der hier beschriebenen Verfahren und/oder Prozesse zu steuern. In Ausführungsformen können die CPU/s 506, die GPU/s 508 und/oder die Logikeinheit/en 520 diskret oder gemeinsam eine beliebige Kombination der Verfahren, Prozesse und/oder Teile davon ausführen. Eine oder mehrere der Logikeinheiten 520 können Teil einer oder mehrerer der CPU/s 506 und/oder der GPU/s 508 sein und/oder eine oder mehrere der Logikeinheiten 520 können diskrete Komponenten sein oder sich anderweitig außerhalb der CPU/s 506 und/oder der GPU/s 508 befinden. In Ausführungsformen kann eine oder mehrere der Logikeinheiten 520 ein Coprozessor einer oder mehrerer der CPU/s 506 und/oder einer oder mehrerer der GPU/s 508 sein.
  • Beispiele für die Logikeinheit/en 520 umfassen einen oder mehrere Rechenkeme und/oder Komponenten davon, wie zum Beispiel TCs (Tensor-Kerne), TPUs (Tensor-Verarbeitungseinheiten), PVCs (Pixelvisualisierungskerne), VPUs (Bildverarbeitungseinheiten), GPCs (GPU-Cluster), TPCs (Texturverarbeitungscluster), SMs (Streaming-Multiprozessoren), TTUs (Bauchsucheinheiten), AIAs (KI-Beschleuniger), DLAs (Deep-Learning-Beschleuniger), ALUs (Arithmetische Logikeinheiten), ASICs (anwenderspezifische integrierte Schaltungen), FPUs (Gleitkommaeinheiten), E/A-Elemente, PCI- (Peripheriegeräteverbindung) oder PCIe (Peripheriegeräteverbindung mit Chipsatz eines Hauptprozessors)-Elemente und/oder dergleichen.
  • Die Kommunikationsschnittstelle 510 kann einen oder mehrere Empfänger, Sender und/oder Transceiver enthalten, welche es dem Rechner 500 ermöglichen, mit anderen Rechnern über ein elektronisches verdrahtetes oder drahtloses Kommunikationsnetzwerk zu kommunizieren. Die Kommunikationsschnittstelle 510 kann Komponenten und Features enthalten, um die Kommunikation über eine Reihe verschiedener Netzwerke zu ermöglichen, wie beispielsweise drahtlose Netzwerke (z. B. Wi-Fi, Z-Wave, Bluetooth, Bluetooth LE, ZigBee usw.), verdrahtete Netzwerke (z. B. Ethernet oder InfiniBand), Weitverkehrsnetzwerke mit geringer Leistung (z. B. LoRaWAN, SigFox usw.) und/oder das Internet.
  • Die E/A-Anschlüsse 512 können es ermöglichen, dass der Rechner 500 logisch mit anderen Geräten, einschließlich den E/A-Komponenten 514, den Präsentationskomponente/n 518 und/oder anderen Komponenten, von denen einige in dem Rechner 500 eingebaut (z. B. integriert) sein können, gekoppelt ist. Beispielhafte E/A-Komponenten 514 umfassen ein Mikrofon, eine Maus, eine Tastatur, einen Joystick, ein Gamepad, einen Gamecontroller, eine Satellitenschüssel, einen Scanner, einen Drucker, ein drahtloses Gerät usw. Die E/A-Komponenten 514 können eine natürliche Benutzerschnittstelle (NUI) bereitstellen, die Luftbewegungen, Sprache oder andere physiologische Eingaben eines Benutzer verarbeitet. In einigen Fällen können die Eingaben zur weiteren Verarbeitung an ein geeignetes Netzwerkelement übertragen werden. Eine NUI kann eine beliebige Kombination aus Spracherkennung, Stifterkennung, Gesichtserkennung, biometrischer Erkennung, Bewegungserkennung sowohl auf als auch neben dem Bildschirm, sowie Luftbewegungs-, Kopf- und Augenverfolgung und Berührungserkennung (wie unten ausführlicher beschrieben) in Verbindung mit einer Anzeige des Rechners 500 implementieren. Der Rechner 500 kann Tiefenkameras, wie stereoskopische Kamerasysteme, Infrarotkamerasysteme, RGB-Kamerasysteme, Touchscreen-Technologie und Kombinationen davon, zur Bewegungserkennung und -erfassung umfassen. Darüber hinaus kann der Rechner 500 Beschleunigungsmesser oder Gyroskope (z. B. als Teil einer Trägheitsmesseinheit (IMU) umfassen, welche die Erkennung von Bewegungen ermöglichen. In einigen Beispielen kann die Ausgabe der Beschleunigungsmesser oder Gyroskope von dem Rechner 500 verwendet werden, um immersive erweiterte Realität oder virtuelle Realität zu rendern.
  • Die Stromversorgung 516 kann eine festverdrahtete Stromversorgung, eine Batteriestromversorgung oder eine Kombination davon einschließen. Die Stromversorgung 516 kann den Rechner 500 mit Strom versorgen, um den Betrieb der Komponenten des Rechners 500 zu ermöglichen.
  • Die eine oder mehreren Präsentationskomponenten 518 können ein Display (z. B. einen Monitor, einen Touchscreen, einen Fernsehbildschirm, ein Heads-up-Display (HUD), andere Display-Typen oder eine Kombination davon), Lautsprecher und/oder andere Präsentationskomponenten umfassen. Die eine oder mehreren Präsentationskomponenten 518 können Daten von anderen Komponenten (z. B. der/den GPU/s 508, der/den CPU/s 506 usw.) empfangen und die Daten ausgeben (z. B. als Bild, Video, Ton usw.).
  • Die Erfindung kann im allgemeinen Kontext von Computercode oder maschinell verwendbaren Befehlen beschrieben sein, einschließlich computerausführbarer Befehle, wie zum Beispiel Programmmodule, die von einem Computer oder einer anderen Maschine, wie zum Beispiel einem persönlichen Datenassistenten oder einem anderen Handgerät, ausgeführt werden. Im Allgemeinen beziehen sich Programmmodule, einschließlich Routinen, Programme, Objekte, Komponenten, Datenstrukturen usw., auf Codes, welche bestimmte Aufgaben ausführen oder bestimmte abstrakte Datentypen implementieren. Die Erfindung kann in einer Vielzahl von Systemkonfigurationen angewendet werden, einschließlich Handheld-Geräten, Unterhaltungselektronik, Universalcomputern, spezialisierteren Datenverarbeitungsgeräten usw. Die Erfindung kann auch in verteilten Computerumgebungen realisiert werden, in denen Aufgaben von ferngesteuerten, über ein Kommunikationsnetz verbundenen Geräten ausgeführt werden.
  • Die hier verwendeten Termini „und/oder“ mit Bezug auf zwei oder mehr Elemente sind so zu interpretieren, dass sie sich auf nur ein Element oder eine Kombination von Elementen beziehen. Zum Beispiel kann „Element A, Element B und/oder Element C“ nur Element A, nur Element B, nur Element C, Element A und Element B, Element A und Element C, Element B und Element C oder die Elemente A, B und C umfassen. Darüber hinaus kann „zumindest/mindestens eines der Elemente A oder B“ mindestens eines der Elemente A, mindestens eines der Elemente B oder mindestens eines der Elemente A und mindestens eines der Elemente B umfassen. Außerdem kann „zumindest/mindestens eines der Elemente A und B“ mindestens eines der Elemente A, mindestens eines der Elemente B oder mindestens eines der Elemente A und mindestens eines der Elemente B umfassen.
  • Der Gegenstand der vorliegenden Erfindung wird hier mit einer Genauigkeit beschrieben, um den gesetzlich festgelegten Anforderungen zu entsprechen. Die Beschreibung selbst soll jedoch den Umfang dieser Erfindung nicht einschränken. Vielmehr haben die Erfinder in Betracht gezogen, dass der beanspruchte Gegenstand auch auf andere Weise verkörpert werden könnte, um verschiedene Schritte oder Kombinationen von Schritten, die den in diesem Dokument beschriebenen ähnlich sind, in Verbindung mit anderen gegenwärtigen oder zukünftigen Technologien zu umfassen. Obwohl die Termini „Schritt“ und/oder „Block“ hier verwendet werden können, um verschiedene Elemente der angewandten Verfahren zu bezeichnen, sollten die Termini nicht so interpretiert werden, dass sie eine bestimmte Reihenfolge unter oder zwischen den verschiedenen hier offenbarten Schritten implizieren, es sei denn, die Reihenfolge der einzelnen Schritte wird ausdrücklich beschrieben.
  • 7 zeigt ein beispielhaftes Flussdiagramm eines Prozesses zum Betreiben eines Fahrzeugs gemäß einigen Ausführungsformen der Erfindung. Der Prozess 700 und jeder der folgenden Prozesse kann von Verarbeitungsschaltungen ausgeführt werden. Verarbeitungsschaltungen können Inferenz- und/oder Trainingslogik umfassen. Die Verarbeitungsschaltungen können auch einen oder mehrere CPUs 518 und/oder GPUs 520 umfassen. Die Verarbeitungsschaltungen können auch einen oder mehrere Hardwarebeschleuniger (z. B. DLA/s und/oder PLA/s) enthalten. Unter Verarbeitungsschaltungen sind hier Schaltungen zu verstehen, welche auf einem oder mehreren Mikroprozessoren, Mikrocontrollern, digitalen Signalprozessoren, programmierbaren Logikbausteinen, SoCs (Ein-Chip-Systeme), FPGAs (im Feld programmierbare Gatter-Anordnungen), ASICs (anwenderspezifische integrierte Schaltungen) usw. basieren und einen Mehrkernprozessor (z. B. zwei Kerne, 4 Kerne, 6 Kerne oder eine beliebige Anzahl von Kernen) umfassen können. In einigen Ausführungsformen können Verarbeitungsschaltungen auf mehrere separate Prozessoren oder Verarbeitungseinheiten verteilt sein, zum Beispiel auf mehrere Verarbeitungseinheiten desselben Typs oder auf mehrere unterschiedliche Prozessoren. Es können jede beliebige Art und Struktur von Verarbeitungsschaltungen verwendet werden. Beispielsweise können Verarbeitungsschaltungen einen Mehrkemprozessor, einen Mehrkernprozessor, der als Grafik- oder Berechnungspipeline zur parallelen Ausführung von Operationen strukturiert ist, einen neuromorphen Prozessor, einen anderen Parallelprozessor oder Grafikprozessor oder Ähnliches umfassen. In mindestens einer Ausführungsform können Verarbeitungsschaltungen einen CISC (Mikroprozessor mit komplexem Befehlssatz), einen RISC (Mikroprozessor mit reduziertem Befehlssatz), einen VLIW-Mikroprozessor (Mikroprozessor mit sehr langem Befehlswort), einen Prozessor, der eine Kombination von Befehlssätzen implementiert, oder jeden anderen Prozessor, wie zum Beispiel einen digitalen Signalprozessor oder Grafikprozessor, umfassen ohne auf diese beschränkt zu sein.
  • Unter Bezugnahme auf die 7-10 umfasst jeder Block der in den 7-10 beschriebenen Verfahren einen Rechenprozess, welcher mit einer beliebigen Kombination aus Hardware, Firmware und/oder Software durchgeführt werden kann. Beispielsweise können verschiedene Funktionen von einem Prozessor ausgeführt werden, der im Speicher gespeicherte Befehle ausführt. Die Verfahren können auch als computergestützte Befehle auf Computerspeichermedien gespeichert sein. Die Verfahren können, um nur einige zu nennen, durch eine eigenständige Anwendung, einen Dienst oder einen gehosteten Dienst (eigenständig oder in Kombination mit einem anderen gehosteten Dienst) oder ein Plug-in für ein anderes Produkt bereitgestellt werden. Darüber hinaus werden die Verfahren in den 7-10 beispielhaft in Bezug auf das autonome Fahrzeugsystem der 5A-5D beschrieben. Diese Verfahren können jedoch zusätzlich oder alternativ von einem beliebigen System oder einer beliebigen Kombination von Systemen, einschließlich aber nicht beschränkt auf die hier beschriebenen Systeme, ausgeführt werden.
  • In Schritt 702 empfängt die Verarbeitungsschaltung von einem oder mehreren Sensoren Daten, die einen Bewegungsverlauf eines Objekts außerhalb des Fahrzeugs anzeigen. In einigen Ausführungsformen empfängt die Verarbeitungsschaltung Daten von mindestens einem der GNSS Sensor/en 558 (z. B. Global Positioning System-Sensor/en), RADAR-Sensor/en 560, Ultraschallsensor/en 562, LIDAR-Sensor/en 564, IMU-Sensor/en (IMU) 566 (z. B. Beschleunigungsmesser, Gyroskop/e, Magnetkompass/e, Magnetometer usw.), Mikrofonsensor/en596, Stereokamerasensor/en568, Weitwinkelkamerasensor/en 570 (z. B. Fisheye-Kameras), Infrarotkamerasensor/en 572, Rundumsichtkamerasensor/en 574 (z. B. 360-Grad-Kameras), Weitbereichskamera/s (in 5A nicht dargestellt), Mittelbereichskamerasensor/en (in 5A nicht dargestellt), Geschwindigkeitssensor/en 544 (z. B. zur Messung der Geschwindigkeit des Fahrzeugs 500), Vibrationssensor/en 542, Lenksensor/en 540, Bremssensor/en (z. B. als Teil des Bremssensorsystems 546) und/oder anderen Sensortypen.
  • In Schritt 704 bestimmt die Verarbeitungsschaltung ein oder mehrere Attribute des Objekts außerhalb des Fahrzeugs. In einigen Ausführungsformen ist die Verarbeitungsschaltung über ein Netzwerk 590 mit einem oder mehreren neuronalen Netzwerken 592 kommunikativ verbunden, um das eine oder die mehreren Attribute des Objekts zu bestimmen. In einigen Ausführungsformen bestimmt die Verarbeitungsschaltung ein zusätzliches Attribut, welches mindestens eines von einem Ortsattribut, einem Wetterattribut oder einem Fahrbedingungsattribut einschließt. In einigen Ausführungsformen empfängt die Verarbeitungsschaltung zumindest teilweise die zusätzlichen Attribute vom Server 578. In einigen Ausführungsformen empfängt die Verarbeitungsschaltung zumindest teilweise von mindestens einem der GNSS-Sensor/en 558 (z. B. Global Positioning System-Sensor/en), RADAR-Sensor/en 560, Ultraschallsensor/en 562, LIDAR-Sensor/en 564, IMU-Sensor/en 566 (z. B. Beschleunigungsmesser, Gyroskop/e, Magnetkompass/e, Magnetometer usw.), Mikrofonsensor/en 596, Stereokamerasensor/en 568, Weitwinkelkamerasensor/en 570 (z. B. Fisheye-Kamera), Infrarotkamerasensor/en 572, Rundumsichtkamerasensor/en 574 (z. B. 360-Grad-Kameras), Weitbereichskamerasensor/en (in 5A nicht dargestellt), Mittelbereichskamerasensor/en (in 5A nicht dargestellt), Geschwindigkeitssensor/en 544 (z. B. zur Messung der Geschwindigkeit des Fahrzeugs 500), Vibrationssensor/en 542, Lenksensor/en 540, Bremssensor/en (z. B. als Teil des Bremssensorsystems 546) und/oder anderen Sensortypen. In einigen Ausführungsformen empfängt die Verarbeitungsschaltung Daten, welche eine Darstellung von mindestens einem Teil der Person von mindestens einem oder mehreren der oben aufgeführten Sensoren des Fahrzeugs 500 anzeigen. Die Verarbeitungsschaltung bestimmt das eine oder die mehreren Attribute der Person auf der Grundlage der Daten, welche die Abbildung zumindest des Teils des Objekts (z. B. der Kleidung einer Person) anzeigen. In einigen Ausführungsformen nimmt die Verarbeitungsschaltung diese Bestimmung vor, indem sie einen Hardwarebeschleuniger unter Verwendung der neuronalen Netzwerke 592 implementiert. Beispielsweise kann der Hardwarebeschleuniger ein oder mehrere Module aus dem Hardwarebeschleunigungscluster sein. Die Module des Hardwarebeschleunigungsclusters umfassen einen oder mehrere DLA/s, einen oder mehrere PVA/s und/oder eine oder mehrere TPU/s. In einigen Ausführungsformen ist der Hardwarebeschleunigungscluster Teil des Servers 578. In dieser Ausführungsform werden die Daten zwischen den Verarbeitungsschaltungen des Fahrzeugs und dem Server ausgetauscht. In anderen Ausführungsformen umfasst Verarbeitungsschaltung die Verarbeitungsschaltung des Servers. In anderen Ausführungsformen ist der Hardwarecluster Teil des SoC 504.
  • In Schritt 706 berechnet die Verarbeitungsschaltung ein Risikoniveau auf der Grundlage der Daten, die den Bewegungsverlauf anzeigen, und des einen oder der mehreren Attribute. In einigen Ausführungsformen implementiert die Verarbeitungsschaltung ein Machine-Learning-Modell, welches eine oder mehrere der Operationen unter Verwendung der neuronalen Netzwerke 592 implementiert. In einigen Ausführungsformen verwendet das Machine-Learning-Modell eine Inferenz- und/oder Trainingslogik 515, um das Training und die Interferenzmodellierung der neuronalen Netzwerke durchzuführen. Das Training der neuronalen Netzwerke verwendet einen Trainingsdatensatz 602 mit verschiedenen Objektbewegungsverläufen in verschiedenen Umgebungen. Der Trainingsrahmen 604 erleichtert das Lernen des neuronalen Netzwerks unter Verwendung des Trainingsdatensatzes 602. In einigen Ausführungsformen implementiert die Verarbeitungsschaltung einen Hardwarebeschleuniger, um das Risikoniveau zu berechnen und/oder eine oder mehrere der Operationen unter Verwendung der neuronalen Netzwerke 592 durchzuführen. Der Hardwarebeschleuniger ist beispielsweise ein Modul aus dem Hardwarebeschleunigungscluster. Das Modul aus dem Hardwarebeschleunigungscluster umfasst einen oder mehrere DLA/s, einen oder mehrere PVA/s und/oder eine oder mehrere TPU/s. In einigen Ausführungsformen ist der Hardwarebeschleunigungscluster Teil des Servers 578. In dieser Ausführungsform werden die Daten zwischen der Verarbeitungsschaltung des Fahrzeugs und dem Server ausgetauscht. In anderen Ausführungsformen umfasst Verarbeitungsschaltung die Verarbeitungsschaltung des Servers. In anderen Ausführungsformen ist der Hardwarecluster Teil des SoC 504.
  • In Schritt 708 veranlasst die Verarbeitungsschaltung eine Operation, die als Reaktion auf das berechnete Risikoniveau durchgeführt wird, um eine Reduzierung des Risikoniveaus zu bewirken. In einigen Ausführungsformen implementiert die Verarbeitungsschaltung ein Machine-Learning-Modell, welches eine oder mehrere der Operationen unter Verwendung der neuronalen Netzwerke 592 implementiert, um eine auszuführende Operation zu veranlassen. In einigen Ausführungsformen verwendet das Machine-Learning-Modell die Inferenz- und/oder Trainingslogik 515, um das Training und die Interferenzmodellierung der neuronalen Netzwerke durchzuführen. Das Training der neuronalen Netzwerke verwendet einen Trainingsdatensatz 602 mit verschiedenen Operationen, welche auf bestimmten Risikoniveaus in verschiedenen Umgebungen basieren. Der Trainingsrahmen 604 erleichtert das Lernen des neuronalen Netzwerks unter Verwendung des Trainingsdatensatzes 602. In einigen Ausführungsformen liefert die Verarbeitungsschaltung einen Befehl an einen Sensor des Fahrzeugs. Insbesondere liefert die Verarbeitungsschaltung den Befehl an mindestens einen der GNSS-Sensoren 558 (z. B. GPS-Sensor/en), RADAR-Sensor/en 560, Ultraschallsensor/en 562, LIDAR-Sensor/en 564, IMU-Sensor/en 566 (z. B. Beschleunigungsmesser, Gyroskop/e, Magnetkompass/e, Magnetometer usw.), Mikrofonsensor/en 596, Stereokamerasensor/en 568, Weitwinkelsensor/en 570 (z. B. Fisheye-Kameras), Infrarotkamerasensor/en 572, Rundumsichtkamerasensor/en 574 (z. B. 360-Grad-Kameras), Weitbereichskamerasensor/en (in 5A nicht dargestellt), Mittelbereichskamerasensor/en (in 5A nicht dargestellt), Geschwindigkeitssensor/en 544 (z. B. zur Messung der Geschwindigkeit des Fahrzeugs 500), Vibrationssensor/en 542, Lenksensor/en 540, Bremssensor/en (z. B. als Teil des Bremssensorsystems 546) und/oder anderen Sensortypen. In einigen Ausführungsformen gibt die Verarbeitungsschaltung über das Netzwerk 590 einen Befehl an die Umgebungshardware (z. B. an das Netzwerk angeschlossene Lichtmasten). In einigen Ausführungsformen gibt die Verarbeitungsschaltung einen Befehl an einen Lautsprechersensor des Fahrzeugs, um die Aussendung eines auf das Objekt gerichteten akustischen Signals zu veranlassen. In einigen Ausführungsformen erzeugt die Verarbeitungsschaltung ein strahlgeformtes akustisches Signal, indem sie Phase und Amplitude des akustischen Signals bestimmt. In einigen Ausführungsformen bestimmt die Verarbeitungsschaltung eine Vielzahl unterschiedlicher Frequenzen für verschiedene Objekte auf der Grundlage von Objektfrequenzdaten aus Datenspeichern 516
  • 8 zeigt ein beispielhaftes Flussdiagramm eines Prozesses 800 zur Erfassung des Bewegungsverlaufs eines Objekts außerhalb des Fahrzeugs gemäß einigen Ausführungsformen der Erfindung. In Schritt 802 empfängt die Verarbeitungsschaltung ein oder mehrere Bilder des Objekts, die von einem Kamerasensor (z. B. Stereokamera/s 568, Infrarotkamera/s 572 usw.) empfangen wurden.
  • In Schritt 804 bestimmt die Verarbeitungsschaltung die Gerichtetheit des Objekts auf der Grundlage eines oder mehrerer Bilder, die vom Kamerasensor empfangen wurden. Die Verarbeitungsschaltung bestimmt die Zeitunterschiede zwischen dem einen oder den mehreren Bildern und die Unterschiede in der relativen Entfernung des Objekts. In Schritt 806 erfasst die Verarbeitungsschaltung die Geschwindigkeit des Objekts auf der Grundlage eines oder mehrerer vom Kamerasensor empfangener Bilder (z. B. unter Verwendung der Unterschiede bezüglich Zeit und relativer Entfernung).
  • In Schritt 808 erfasst die Verarbeitungsschaltung den Bewegungsverlauf eines Objekts außerhalb des Fahrzeugs auf der Grundlage der Geschwindigkeit und der Richtungsabhängigkeit des Objekts. Die Verarbeitungsschaltung verwendet ein oder mehrere mathematische Modelle, um zu ermitteln, ob sich das Objekt auf Kollisionskurs mit dem Fahrzeug befindet.
  • 9 zeigt ein beispielhaftes Flussdiagramm eines Prozesses 900 zum Bestimmen von Attributen eines Objekts außerhalb des Fahrzeugs gemäß einigen Ausführungsformen der Erfindung. In Schritt 902 empfängt die Verarbeitungsschaltung ein Bild des Objekts, das von einem Kamerasensor (z. B. Stereokamera/s 568, Infrarotkamera/s 572 usw.) empfangen wurde.
  • In Schritt 904 bestimmt die Verarbeitungsschaltung ein Attribut des Objekts, wobei das Objekt eine Person ist, basierend auf mindestens einem der nachfolgenden Merkmale: Kopfhaltung der Person, Körperhaltung der Person, Kleidung der Person, eine von der Person ausgeführte Geste oder Umgebungsattribute. Die Verarbeitungsschaltung verwendet ein Machine-Learning-Modell, um die Attribute zu bestimmen. In einigen Ausführungsformen verwendet das Machine-Learning-Modell Inferenz- und/oder Trainingslogik 515, um das Training und die Interferenzmodellierung der neuronalen Netzwerke durchzuführen. Das Training der neuronalen Netzwerke verwendet einen Trainingsdatensatz 602 mit einer Vielzahl von Objekttypen und unterschiedlichen Orientierungen und/oder Attributen (z. B. Menschen aller Altersgruppen und Körpertypen und in unterschiedlichen Körperhaltungen und unterschiedlicher Kleidung). Der Trainingsrahmen 604 erleichtert das Lernen des neuronalen Netzwerks unter Verwendung des Trainingsdatensatzes 602.
  • In Schritt 906 bestimmt die Verarbeitungsschaltung eine Klassifizierung des Attributs der Person auf der Grundlage des Machine-Learning-Modells. Die ermittelten Attribute werden dem Machine-Learning-Modell bereitgestellt, welches auf der Grundlage dieser Attribute eine Klassifizierung vornimmt.
  • 10 zeigt ein beispielhaftes Flussdiagramm eines Verfahrens zum Veranlassen der Aussendung eines strahlgeformten akustischen Signals gemäß einigen Ausführungsformen der Erfindung. In Schritt 1002 bestimmt die Verarbeitungsschaltung einen Echtzeit-Bewegungsverlauf vom Fahrzeug zum Objekt. Die Verarbeitungsschaltung bestimmt den Echtzeit-Bewegungsverlauf vom Fahrzeug zum Objekt auf der Grundlage eines oder mehrerer Bilder des Objekts, die von einem Kamerasensor (z. B. Stereokamera/s 568, Infrarotkamera/s 572 usw.) empfangen wurden.
  • In Schritt 1004 bestimmt die Verarbeitungsschaltung eine Stärke des akustischen Signals basierend auf dem berechneten Risikoniveau. In einigen Ausführungsformen verwendet die Verarbeitungsschaltung ein Machine-Learning-Modell zur Bestimmung der Attribute. In einigen Ausführungsformen ruft die Verarbeitungsschaltung eine Mapping-Tabelle aus dem Datenspeicher 516 ab, wobei die Mapping-Tabelle eine entsprechende Größenordnung für Berechnungen des Risikoniveaus hat. In einigen Ausführungsformen ruft die Verarbeitungsschaltung zusätzliche Attribute aus Umgebungsinformationen (z. B. Umgebungsschildern) ab, welche die Verarbeitungsschaltung in Bezug auf den Standort des Fahrzeugs und/oder des Objekts empfangen hat. In einigen Ausführungsformen ruft die Verarbeitungsschaltung zusätzliche Attribute aus Zusatzinformationen (z. B. Ortsinformationen, Wetterinformationen und/oder Informationen über Fahrbedingungen) ab, welche von der Verarbeitungsschaltung in Bezug auf den Standort des Fahrzeugs und/oder des Objekts empfangen wurden. Die Verarbeitungsschaltung empfängt die zusätzlichen Attribute vom Netzwerk 590 und/oder von mindestens einem der GNSS-Sensoren 558 (z. B. GPS-Senso/en, RADAR-Sensor/en 560, Ultraschallsensor/en 562, LIDAR-Sensor/en 564, IMU-Sensor/en 566 (z. B. Beschleunigungsmesser, Gyroskop/e, Magnetkompass/e, Magnetometer usw.), Mikrofonsensor/en 596, Stereokamerasensor/en 568, Weitwinkelkamerasensor/en 570 (z. B. Fisheye-Kameras), Infrarotkamerasensor/en 572, Rundumsichtkamerasensor/en 574 (z. B. 360-Grad-Kameras), Weitbereichskamerasensor/en (in 5A nicht dargestellt), Mittelbereichskamerasensor/en (in 5A nicht dargestellt), Geschwindigkeitssensor/en 544 (z. B. zur Messung der Geschwindigkeit des Fahrzeugs 500), Vibrationssensor/en 542, Lenksensor/en 540, Bremssensor/en (z. B. als Teil des Bremssensorsystems 546) und/oder anderen Sensortypen.
  • In Schritt 1006 überträgt die Verarbeitungsschaltung einen Befehl an einen Lautsprechersensor, um die Aussendung eines strahlgeformten akustischen Signals auf der Grundlage des Echtzeit-Bewegungsverlaufs und der Stärke des akustischen Signals zu veranlassen. In einigen Ausführungsformen überträgt die Verarbeitungsschaltung den Befehl an die Umgebungshardware, das strahlgeformte akustische Signal auf der Grundlage des Echtzeit-Bewegungsverlaufs und der Stärke des akustischen Signals zu übertragen. In einigen Ausführungsformen überträgt die Verarbeitungsschaltung einen Befehl an einen Lichtquellensensor des Fahrzeugs (z. B. einen Scheinwerfer oder eine spezielle Lichtquelle), ein Lichtsignal an das Objekt zu senden. In einigen Ausführungsformen greift die Verarbeitungsschaltung auf den Datenspeicher 516 zu, um sprachbasierte akustische Emissionen abzurufen, welche an das Objekt abgegeben werden sollen.
  • Es wird in Betracht gezogen, dass einige geeignete Schritte oder geeignete Beschreibungen von 7-10 mit anderen geeigneten Ausführungsformen dieser Erfindung verwendet werden können. Darüber hinaus können einige geeignete Schritte und Beschreibungen, die mit Bezug auf 7-10 angeführt sind, in alternativer Reihenfolge oder parallel ausgeführt werden, um die Zwecke dieser Erfindung zu unterstützen. Beispielsweise können einige geeignete Schritte in beliebiger Reihenfolge oder parallel oder im Wesentlichen gleichzeitig ausgeführt werden, um die Verzögerung zu verringern oder die Geschwindigkeit des Systems oder Verfahrens zu erhöhen. Einige geeignete Schritte können auch übersprungen oder im Prozess ausgelassen werden. Ferner sollte beachtet werden, dass einige geeignete Vorrichtungen oder Ausrüstungen, die mit Bezug auf 5A-6 diskutiert wurden, verwendet werden könnten, um einen oder mehrere der Schritte in 7-10 durchzuführen.
  • Die oben erörterten Verfahren sind zur Veranschaulichung und nicht als einschränkend beabsichtigt. Für Fachleute versteht es sich, dass die Schritte der hier beschriebenen Verfahren ausgelassen, modifiziert, kombiniert und/oder neu angeordnet werden können, und dass zusätzliche Schritte durchgeführt werden können, ohne den Rahmen der Erfindung zu sprengen. Allgemeiner ausgedrückt ist die obige Erfindung als beispielhaft und nicht einschränkend zu verstehen. Lediglich die nachfolgenden Ansprüche sollen den Umfang der vorliegenden Erfindung einschränken. Darüber hinaus ist zu beachten, dass die in einer beliebigen Ausführungsform beschriebenen Merkmale und Beschränkungen auf jede andere hierin beschriebene Ausführungsform angewendet werden können, und Flussdiagramme oder Beispiele, die sich auf eine Ausführungsform beziehen, können mit jeder anderen Ausführungsform in geeigneter Weise kombiniert, in unterschiedlicher Reihenfolge oder parallel ausgeführt werden. Darüber hinaus können die hier beschriebenen Systeme und Verfahren in Echtzeit durchgeführt werden. Es sollte auch beachtet werden, dass die oben beschriebenen Systeme und/oder Verfahren auf andere Systeme und/oder Verfahren angewandt oder in Übereinstimmung mit diesen verwendet werden können.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • US 16101232 [0091]

Claims (27)

  1. Verfahren zum Betreiben eines Fahrzeugs, umfassend: Empfang von Daten, bezeichnend für einen Bewegungsverlauf einer Person außerhalb des Fahrzeugs, von einem oder mehreren Sensoren; Bestimmung eines oder mehrerer Attribute der Person unter Verwendung von Parallelverarbeitungsschaltungen; Berechnung eines Risikoniveaus auf der Grundlage der den Bewegungsverlauf bezeichnenden Daten und des einen oder der mehreren Attribute unter Verwendung einer Parallelverarbeitungsschaltung, die ein Machine-Learning-Modell implementiert; Veranlassung, unter Verwendung einer Parallelverarbeitungsschaltung, einer Operation, die als Reaktion auf das Risikoniveau durchzuführen ist, um das Risikoniveau zu senken, wobei die Operation eine Warnung an die Person abgibt.
  2. Verfahren nach Anspruch 1, wobei Berechnung des Risikoniveaus Berechnung des Risikoniveaus unter Verwendung mindestens eines Hardwarebeschleunigers umfasst.
  3. Verfahren nach Anspruch 1 oder 2, wobei Berechnung des Risikoniveaus Verwendung eines oder mehrerer neuronaler Netzwerke umfasst, welche als Eingabe die Daten, die den Bewegungsverlauf bezeichnen, und das eine oder die mehreren Attribute verwenden, um eine Wahrscheinlichkeit zu bestimmen, mit der sich das Fahrzeug auf einem Kollisionskurs mit der Person befindet.
  4. Verfahren nach einem der vorhergehenden Ansprüche, ferner umfassend Bestimmung mindestens eines zusätzlichen Attributs, welches mindestens eines von einem Ortsattribut, einem Wetterattribut oder einem Fahrbedingungsattribut umfasst, wobei die Berechnung des Risikoniveaus ferner auf dem mindestens einen zusätzlichen Attribut beruht.
  5. Verfahren nach einem der vorhergehenden Ansprüche, wobei Veranlassung der Operation, die als Reaktion auf das Risikoniveau durchzuführen ist, um das Risikoniveau zu senken, Veranlassung des Aussendens eines gerichteten akustischen Signals von dem Fahrzeug basierend auf dem Risikoniveau umfasst, wobei das gerichtete akustische Signal auf die Person gerichtet ist.
  6. Verfahren nach Anspruch 5, wobei das gerichtete akustische Signal mindestens ein strahlgeformtes akustisches Signal umfasst.
  7. Verfahren nach Anspruch 5 oder 6, wobei das gerichtete akustische Signal eine Vielzahl unterschiedlicher Frequenzkomponenten umfasst.
  8. Verfahren nach einem der Ansprüche 5 bis 7, wobei eine Größenordnung des ausgesendeten gerichteten akustischen Signals auf dem Risikoniveau basiert.
  9. Verfahren nach einem der vorhergehenden Ansprüche, wobei Veranlassung der Operation, die als Reaktion auf das Risikoniveau durchzuführen ist, um das Risikoniveau zu senken, Veranlassung des Aussendens eines gerichteten Lichtsignals von dem Fahrzeug basierend auf dem Risikoniveau umfasst, wobei das gerichtete Lichtsignal auf die Person gerichtet ist.
  10. Verfahren nach einem der vorhergehenden Ansprüche, wobei Bestimmung des einen oder der mehreren Attribute der Person Folgendes umfasst: Empfangen von Daten, die für eine Darstellung von mindestens einem Teil der Person bezeichnend sind; und Bestimmen des einen oder der mehreren Attribute der Person auf der Grundlage der Daten, die für die Darstellung zumindest des Teils der Person bezeichnend sind.
  11. Verfahren nach einem der vorhergehenden Ansprüche, wobei das eine oder die mehreren Attribute mindestens eines der folgenden Merkmale umfassen: Kopfhaltung der Person, Körperhaltung der Person, Kleidung der Person, eine von der Person ausgeführte Geste oder Umgebungsmerkmale.
  12. Verfahren nach einem der vorhergehenden Ansprüchen, ferner umfassend Übermittlung von auf dem Risikoniveau beruhender Daten an eine elektronische Vorrichtung außerhalb des Fahrzeugs.
  13. Verfahren nach einem der vorhergehenden Ansprüche, wobei der eine oder die mehreren Sensoren mindestens einen der folgenden Sensoren umfassen: einen Kamera-, einen LIDAR-, einen Radar-, einen Ultraschall-, einen Mikrofon- oder einen Lautsprechersensor.
  14. System zum Betreiben eines Fahrzeugs, das System umfassend: einen oder mehrere Sensoren, die ausgelegt sind, Daten zu empfangen, die für eine Person außerhalb des Fahrzeugs bezeichnend sind, wobei die Daten der Person zugehörige Bewegungsverlaufsdaten umfassen, und Parallelverarbeitungsschaltung, die konfiguriert ist: ein oder mehrere Attribute der Person zumindest teilweise auf der Grundlage der Daten zu bestimmen, die bezeichnend für die Person außerhalb des Fahrzeugs sind, ein Risikoniveau auf der Grundlage der Bewegungsverlaufsdaten und des einen oder der mehreren Attribute zu berechnen, wobei die Berechnung zumindest teilweise unter Verwendung eines Machine-Learning-Modells ausgeführt wird, und eine Operation als Reaktion auf das Risikoniveau zu veranlassen, um das Risikoniveau zu senken, wobei die Operation eine Warnung an die Person abgibt.
  15. System nach Anspruch 14, wobei die Parallelverarbeitungsschaltung konfiguriert ist, bei der Berechnung des Risikoniveaus mindestens einen Hardwarebeschleuniger zu verwenden, um das Risikoniveau zu berechnen.
  16. System nach Anspruch 14 oder 15, wobei die Parallelverarbeitungsschaltung konfiguriert ist, bei Berechnung des Risikoniveaus ein oder mehrere neuronale Netzwerke zu verwenden, die als Eingabe die Bewegungsverlaufsdaten und das eine oder die mehreren Attribute nutzen, um eine Wahrscheinlichkeit zu bestimmen, mit der sich das Fahrzeug auf einem Kollisionskurs mit der Person befindet.
  17. System nach einem der Ansprüche 14 bis 16, wobei die Parallelverarbeitungsschaltung ferner konfiguriert ist, mindestens ein zusätzliches Attribut zu bestimmen, das mindestens eines von einem Ortsattribut, einem Wetterattribut oder einem Fahrbedingungsattribut umfasst, und wobei Berechnung des Risikoniveaus ferner auf dem mindestens einen zusätzlichen Attribut beruht.
  18. System nach einem der Ansprüche 14 bis 17, wobei die Parallelverarbeitungsschaltung konfiguriert ist, bei Veranlassung der Operation, die als Reaktion auf das Risikoniveau durchzuführen ist, um das Risikoniveau zu senken, zu veranlassen, dass von dem Fahrzeug ein gerichtetes akustisches Signal auf der Grundlage des Risikoniveaus ausgesendet wird, wobei das gerichtete akustische Signal auf die Person gerichtet ist.
  19. System nach Anspruch 18, wobei das gerichtete akustische Signal mindestens ein strahlgeformten akustisches Signal umfasst.
  20. System nach Anspruch 18 oder 19, wobei das akustische Signal eine Vielzahl von unterschiedlichen Frequenzkomponenten umfasst.
  21. System nach einem der Ansprüche 18 bis 20, wobei eine Größenordnung des ausgesendeten gerichteten akustischen Signals auf dem Risikoniveau beruht.
  22. System nach einem der Ansprüche 14 bis 21, wobei die Parallelverarbeitungsschaltung konfiguriert ist, bei Veranlassung der Operation, die als Reaktion auf das Risikoniveau durchzuführen ist, um das Risikoniveau zu senken, zu veranlassen, dass von dem Fahrzeug ein gerichtetes Lichtsignal basierend auf dem Risikoniveau ausgesendet wird, wobei das gerichtete Lichtsignal auf die Person gerichtet ist.
  23. System nach einem der Ansprüche 14 bis 22, wobei die parallele Steuerschaltung konfiguriert ist, bei Bestimmung des einen oder der mehreren Attribute der Person: Daten zu empfangen, die für eine Darstellung von mindestens einem Teil der Person bezeichnend sind, und das eine oder die mehreren Attribute der Person auf der Grundlage der Daten, die für die Darstellung zumindest des Teils der Person bezeichnend sind, zu bestimmen.
  24. System nach einem der Ansprüche 14 bis 23, wobei das eine oder die mehreren Attribute mindestens eines der folgenden Merkmale umfassen: Kopfhaltung der Person, Körperhaltung der Person, Kleidung der Person, eine von der Person ausgeführte Geste oder Umgebungsmerkmale.
  25. System nach einem der Ansprüche 14 bis 24, wobei die Parallelverarbeitungsschaltung ferner ausgelegt ist, auf dem Risikoniveau beruhende Daten an eine elektronische Vorrichtung außerhalb des Fahrzeugs zu übermitteln.
  26. System nach einem der Ansprüche 14 bis 25, wobei der eine oder die mehreren Sensoren mindestens einen der folgenden Sensoren umfassen: einen Kamera-, einen LIDAR-, einen Radar-, einen Ultraschall-, einen Mikrofon- oder einen Lautsprechersensor.
  27. Nicht-transitorisches computerlesbares Medium mit auf ihm kodierten Befehlen, welche dann, wenn sie von einer Verarbeitungsschaltung ausgeführt werden, die Verarbeitungsschaltung veranlassen, ein Verfahren nach einem der Ansprüche 1 bis 13 auszuführen.
DE102021117456.2A 2020-07-07 2021-07-06 Systeme und verfahren zur risikobewertung und gerichteten warnung bei fussgängerüberwegen Pending DE102021117456A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/922,601 2020-07-07
US16/922,601 US11682272B2 (en) 2020-07-07 2020-07-07 Systems and methods for pedestrian crossing risk assessment and directional warning

Publications (1)

Publication Number Publication Date
DE102021117456A1 true DE102021117456A1 (de) 2022-01-13

Family

ID=79020477

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021117456.2A Pending DE102021117456A1 (de) 2020-07-07 2021-07-06 Systeme und verfahren zur risikobewertung und gerichteten warnung bei fussgängerüberwegen

Country Status (4)

Country Link
US (1) US11682272B2 (de)
JP (1) JP2022014909A (de)
CN (1) CN113968215A (de)
DE (1) DE102021117456A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114550297A (zh) * 2022-02-25 2022-05-27 北京拙河科技有限公司 一种行人的意图分析方法及***

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101996418B1 (ko) * 2016-12-30 2019-07-04 현대자동차주식회사 센서 융합 기반 보행자 탐지 및 보행자 충돌 방지 장치 및 방법
JP7450481B2 (ja) * 2020-07-14 2024-03-15 本田技研工業株式会社 移動体制御装置、移動体、移動体制御方法、およびプログラム
US20220024488A1 (en) * 2020-07-23 2022-01-27 Autobrains Technologies Ltd Child Forward Collision Warning
US20220067547A1 (en) * 2020-09-01 2022-03-03 International Business Machines Corporation Smart environment mitigation of identified risk
KR20220039903A (ko) * 2020-09-21 2022-03-30 현대자동차주식회사 자율주행 제어 장치 및 방법
US11361201B2 (en) 2020-10-08 2022-06-14 Argo AI, LLC Systems and methods for determining an object type and an attribute for an observation based on fused sensor data
US11731662B2 (en) * 2020-10-08 2023-08-22 Ford Global Technologies, Llc Autonomous vehicle system for detecting pedestrian presence
EP4012603B1 (de) * 2020-12-10 2023-12-06 Aptiv Technologies Limited Verfahren zur klassifizierung eines verfolgten objekts
US20220230655A1 (en) * 2021-01-15 2022-07-21 Continental Automotive Systems Inc. Method and device for detecting characteristic frequencies with a sensor
JP7452455B2 (ja) * 2021-02-05 2024-03-19 トヨタ自動車株式会社 制御装置、方法、及びプログラム
US11981326B2 (en) * 2021-03-24 2024-05-14 Ford Global Technologies, Llc Object identification with thermal imaging
US11532221B1 (en) * 2021-08-05 2022-12-20 Ford Global Technologies, Llc System and method for vehicle security monitoring
US11912311B2 (en) * 2021-08-10 2024-02-27 GM Global Technology Operations LLC System and method of detecting and mitigating erratic on-road vehicles
US11972614B2 (en) * 2021-11-09 2024-04-30 Zoox, Inc. Machine-learned architecture for efficient object attribute and/or intention classification
CN114312778A (zh) * 2022-01-27 2022-04-12 中国第一汽车股份有限公司 一种巡航控制***的功能安全需求获取方法及装置
CN115042823B (zh) * 2022-07-29 2024-07-02 浙江吉利控股集团有限公司 一种代客泊车方法、装置、电子设备及存储介质
US11972682B2 (en) 2022-09-18 2024-04-30 International Business Machines Corporation Displaying vehicle information to a pedestrian using a visual indicator
EP4350656A1 (de) * 2022-10-04 2024-04-10 Volvo Car Corporation Verfahren zum erkennen eines unaufmerksamen fussgängers, der eine strasse überquert, verfahren zum betreiben eines vollständig oder teilweise autonomen fahrzeugs, verfahren zur information einer zentralen verkehrskontrolleinheit über einen unaufmerksamen fussgänger, verfahren zur steuerung eines verkehrssystems, datenverarbeitungsvorrichtung und verkehrskontrollsystem
WO2024097410A1 (en) * 2022-11-03 2024-05-10 Exploration Robotics Technologies Inc. Method for determining sensor pose based on visual data and non-visual data
DE102022132598A1 (de) * 2022-12-07 2024-06-13 KEBA Group AG System und Verfahren zur Überwachung

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004004320A1 (en) * 2002-07-01 2004-01-08 The Regents Of The University Of California Digital processing of video images
US7095336B2 (en) * 2003-09-23 2006-08-22 Optimus Corporation System and method for providing pedestrian alerts
JP4614005B2 (ja) * 2009-02-27 2011-01-19 トヨタ自動車株式会社 移動軌跡生成装置
WO2011042230A1 (en) * 2009-10-08 2011-04-14 Svenska Tracab Ab Head pose estimation
WO2011068184A1 (ja) * 2009-12-03 2011-06-09 独立行政法人産業技術総合研究所 移動体の測位装置
US8537030B2 (en) * 2010-02-15 2013-09-17 Ford Global Technologies, Llc Pedestrian alert system and method
US9111147B2 (en) * 2011-11-14 2015-08-18 Massachusetts Institute Of Technology Assisted video surveillance of persons-of-interest
US20140354684A1 (en) * 2013-05-28 2014-12-04 Honda Motor Co., Ltd. Symbology system and augmented reality heads up display (hud) for communicating safety information
US20150109148A1 (en) * 2013-10-18 2015-04-23 Elwha Llc Pedestrian Warning System
US9505412B2 (en) * 2013-08-02 2016-11-29 Honda Motor Co., Ltd. System and method for detection and utilization of driver distraction level
US9786177B2 (en) * 2015-04-10 2017-10-10 Honda Motor Co., Ltd. Pedestrian path predictions
EP3400419A2 (de) * 2016-01-05 2018-11-14 Mobileye Vision Technologies Ltd. Trainiertes navigationssystem mit auferlegten einschränkungen
US20180090005A1 (en) * 2016-09-27 2018-03-29 GM Global Technology Operations LLC Method And Apparatus For Vulnerable Road User Incidence Avoidance
US10529137B1 (en) * 2016-11-29 2020-01-07 MAX-PLANCK-Gesellschaft zur Förderung der Wissenschaften e.V. Machine learning systems and methods for augmenting images
KR102441060B1 (ko) * 2016-12-13 2022-09-06 현대자동차주식회사 보행자 추돌 사고 방지 장치, 그를 포함한 시스템 및 그 방법
KR102465970B1 (ko) * 2017-08-11 2022-11-10 삼성전자주식회사 주변 상황에 기초하여 음악을 재생하는 방법 및 장치
US11475351B2 (en) * 2017-11-15 2022-10-18 Uatc, Llc Systems and methods for object detection, tracking, and motion prediction
US11176453B2 (en) * 2017-12-28 2021-11-16 Fujifilm Business Innovation Corp. System and method for detangling of interleaved conversations in communication platforms
US10810415B1 (en) * 2018-01-22 2020-10-20 Apple Inc. Low bandwidth transmission of event data
US10363944B1 (en) * 2018-02-14 2019-07-30 GM Global Technology Operations LLC Method and apparatus for evaluating pedestrian collision risks and determining driver warning levels
US11169536B2 (en) * 2018-04-09 2021-11-09 SafeAI, Inc. Analysis of scenarios for controlling vehicle operations
WO2019229125A1 (en) * 2018-05-29 2019-12-05 Deepmind Technologies Limited Deep reinforcement learning with fast updating recurrent neural networks and slow updating recurrent neural networks
JP6988698B2 (ja) * 2018-05-31 2022-01-05 トヨタ自動車株式会社 物体認識装置
US10885698B2 (en) 2018-08-10 2021-01-05 Nvidia Corporation Method for programmable timeouts of tree traversal mechanisms in hardware
KR102619558B1 (ko) * 2018-11-16 2024-01-02 현대모비스 주식회사 자율주행차의 제어시스템 및 그 제어방법
US11667301B2 (en) * 2018-12-10 2023-06-06 Perceptive Automata, Inc. Symbolic modeling and simulation of non-stationary traffic objects for testing and development of autonomous vehicle systems
US11651192B2 (en) * 2019-02-12 2023-05-16 Apple Inc. Compressed convolutional neural network models
EP3706034A1 (de) * 2019-03-06 2020-09-09 Robert Bosch GmbH Bewegungsvorhersage für fussgänger zur verwendung für ein autonomes fahren
US10696222B1 (en) * 2019-03-12 2020-06-30 Waymo Llc Communications for autonomous vehicles
WO2020195732A1 (ja) * 2019-03-22 2020-10-01 日本電気株式会社 画像処理装置、画像処理方法、およびプログラムが格納された記録媒体
US11231905B2 (en) * 2019-03-27 2022-01-25 Intel Corporation Vehicle with external audio speaker and microphone
US20200398743A1 (en) * 2019-06-24 2020-12-24 GM Global Technology Operations LLC Method and apparatus for learning how to notify pedestrians
US11587329B2 (en) * 2019-12-27 2023-02-21 Valeo Schalter Und Sensoren Gmbh Method and apparatus for predicting intent of vulnerable road users
US20210390492A1 (en) * 2020-06-15 2021-12-16 Sri International Automated collaboration skills assessment

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114550297A (zh) * 2022-02-25 2022-05-27 北京拙河科技有限公司 一种行人的意图分析方法及***

Also Published As

Publication number Publication date
JP2022014909A (ja) 2022-01-20
US20220012988A1 (en) 2022-01-13
CN113968215A (zh) 2022-01-25
US11682272B2 (en) 2023-06-20

Similar Documents

Publication Publication Date Title
DE102021117456A1 (de) Systeme und verfahren zur risikobewertung und gerichteten warnung bei fussgängerüberwegen
US11841458B2 (en) Domain restriction of neural networks through synthetic data pre-training
DE102021121558A1 (de) Auf neuronalen netzen basierende bestimmung der blickrichtung unter verwendung räumlicher modelle
DE102021126254A1 (de) Überwachen der Aufmerksamkeit und der kognitiven Belastung der Insassen für autonome und halbautonome Fahranwendungen
DE112021000135T5 (de) Sensorfusion für anwendungen autonomer maschinen durch maschinelles lernen
DE112020006404T5 (de) Planung und steuerung von spurwechseln in autonomen maschinenapplikationen
DE112020001897T5 (de) Trainieren neuronaler Netze unter Verwendung von Grundwahrheitsdaten, die mit Karteninformationen ergänzt wurden, für autonome Maschinenanwendungen
DE112020002166T5 (de) Simulation realistischer testdaten aus transformierten sensordaten der realen welt für autonome maschinenanwendungen
DE112021000422T5 (de) Vorhersage künftiger Trajektorien in Umgebungen mit mehreren Aktoren für autonome Maschinenanwendungen
DE112019000279T5 (de) Steuern autonomer fahrzeuge anhand sicherer ankunftszeiten
DE112020002602T5 (de) Multi-objektverfolgung mit hilfe von korrelationsfiltern in videoanalyseanwendungen
DE102020117792A1 (de) Wirksames einsetzen von hindernis- und spurerkennungen, um spurzuweisungen für objekte in einer umgebung zu bestimmen
DE102021123159A1 (de) Adaptiver objektverfolgungsalgorithmus für autonome maschinenanwendungen
DE112019006484T5 (de) Detektion von abständen zu hindernissen in autonomen maschinenanwendungen
DE112020000413T5 (de) Detektion von orientierungspunkten unter verwendung von kurvenanpassung für anwendungen für autonomes fahren
DE102021206235A1 (de) Maschinenlern-basierte sicherheitsgurt-detektion und benutzungserkennung unter verwenden von messmarkierung
DE112021001994T5 (de) Modellbasiertes bestärkendes lernen zur verhaltensvorhersage in autonomen systemen und anwendungen
DE102021129528A1 (de) Erkennung von Einsatzfahrzeugen für Anwendungen im Bereich des autonomen Fahrens
DE102021100065A1 (de) Verwendung neuronaler netze zur fehlererkennung bei anwendungen für autonomes fahren
DE112020006181T5 (de) Blickbestimmung mit blendung als eingabe
DE102019113114A1 (de) Verhaltensgesteuerte wegplanung in autonomen maschinenanwendungen
DE102022121121A1 (de) Objektverfolgung unter Verwendung von LiDAR-Daten für autonome Maschinenanwendungen
DE102022107848A1 (de) System und verfahren zur aktualisierung von karten mit hoher auflösung
DE102022111322A1 (de) Engine für adaptive maschinelle lernmodelle zur augenverfolgung
DE102022124361A1 (de) Sichtweiteabschätzung unter verwendung von deep learning in autonomen maschinenanwendungen

Legal Events

Date Code Title Description
R012 Request for examination validly filed