-
QUERVERWEIS AUF VERWANDTE ANMELDUNG
-
Diese Anmeldung beansprucht die Priorität der vorläufigen
US-Patentanmeldung Nr. 63/416,490 eingereicht am 15. Oktober 2022, die durch Bezugnahme in ihrer Gesamtheit hierin aufgenommen wird.
-
HINTERGRUND
-
Karten liefern geografische Informationen im Zusammenhang mit realen Standorten. Computergestützte Navigationssysteme verwenden digitale Karten, um Informationen über einen Bereich zu erhalten und Navigationsentscheidungen zu treffen. Die Genauigkeit dieser digitalen Karten wird von Menschen überprüft.
-
KURZBESCHREIBUNG DER FIGUREN
-
- 1 ist eine beispielhafte Umgebung, in der ein Fahrzeug, das eine oder mehrere Komponenten eines autonomen Systems beinhaltet, implementiert werden kann;
- 2 ist ein Diagramm eines oder mehrerer Systeme eines Fahrzeugs, das ein autonomes System beinhaltet;
- 3 ist ein Diagramm von Komponenten einer oder mehrerer Vorrichtungen und/oder eines oder mehrerer Systeme aus 1 und 2;
- 4A ist ein Diagramm bestimmter Komponenten eines autonomen Systems;
- 4B ist ein Diagramm einer Implementierung eines neuronalen Netzes;
- 4C und 4D sind Diagramme, die einen beispielhaften Betrieb eines CNN veranschaulichen;
- 5 ist ein Diagramm einer Implementierung eines Prozesses für Kartendatenerfassung;
- 6 ist eine Darstellung von Kartenschichten einer hochauflösenden Karte;
- 7A zeigt überlappende Merkmalskarten entlang einer Trajektorie;
- 7B zeigt vorhergesagte Rasterbilder gemäß verschiedenen Aggregationsfunktionen;
- 8 zeigt die Extraktion von Geometrieinstanzen aus einem Raster aggregierter Vorhersagen;
- 9 ist ein Flussdiagramm eines Prozesses, der eine Erzeugung von Polylinien ermöglicht.
- 10 zeigt Kommentierungen, die auf Polylinien angewendet werden, um global konsistente Fahrspurbegrenzungskommentierungen zu erhalten;
- 11 zeigt ein Flussdiagramm eines Prozesses für ein vereinheitlichtes Framework und Werkzeuge zur Kommentierung von Fahrspurbegrenzungen.
-
AUSFÜHRLICHE BESCHREIBUNG
-
In der folgenden Beschreibung werden zahlreiche spezifische Einzelheiten dargelegt, um ein umfassendes Verständnis der vorliegenden Offenbarung für Erläuterungszwecke bereitzustellen. Es versteht sich jedoch, dass die durch die vorliegende Offenbarung beschriebenen Ausführungsformen ohne diese spezifischen Einzelheiten umgesetzt werden können. In einigen Fällen werden bekannte Strukturen und Vorrichtungen in Blockdiagrammform dargestellt, um eine unnötige Verschleierung von Aspekten der vorliegenden Offenbarung zu vermeiden.
-
Konkrete Anordnungen oder Ordnungen schematischer Elemente, wie z.B. solche, die Systeme, Vorrichtungen, Module, Befehlsblöcke, Datenelemente und/oder dergleichen darstellen, sind zur leichteren Beschreibung in den Zeichnungen veranschaulicht. Ein Fachmann versteht jedoch, dass die konkrete Ordnung oder Anordnung der schematischen Elemente in den Zeichnungen nicht implizieren soll, dass eine bestimmte Reihenfolge oder Abfolge der Verarbeitung oder eine Trennung von Prozessen erforderlich ist, soweit dies nicht explizit angegeben ist. Ferner soll die Aufnahme eines schematischen Elements in eine Zeichnung nicht bedeuten, dass dieses Element in allen Ausführungsformen erforderlich ist oder dass die durch dieses Element dargestellten Merkmale in einigen Ausführungsformen nicht in andere Elemente aufgenommen oder mit anderen Elementen kombiniert werden können, soweit dies nicht explizit angegeben ist.
-
Ferner soll in den Zeichnungen, in denen Verbindungselemente wie etwa durchgezogene oder gestrichelte Linien oder Pfeile verwendet werden, um eine Verbindung, Beziehung oder Zuordnung zwischen oder unter zwei oder mehr anderen schematischen Elementen zu veranschaulichen, das Nichtvorhandensein jeglicher solcher Verbindungselemente nicht andeuten, dass keine Verbindung, Beziehung oder Zuordnung bestehen kann. Mit anderen Worten sind einige Verbindungen, Beziehungen oder Zuordnungen zwischen Elementen in den Zeichnungen nicht veranschaulicht, um die Offenbarung nicht unklar zu machen. Zusätzlich kann zur Vereinfachung der Veranschaulichung ein einzelnes Verbindungselement verwendet werden, um mehrere Verbindungen, Beziehungen oder Zuordnungen zwischen Elementen zu repräsentieren. Wenn beispielsweise ein Verbindungselement Kommunikation von Signalen, Daten oder Anweisungen (z.B. „Software-Anweisungen“) darstellt, sollte ein Fachmann verstehen, dass ein solches Element einen oder mehrere Signalwege (z.B. einen Bus) repräsentieren kann, je nachdem, was erforderlich ist, um die Kommunikation zu bewirken.
-
Auch wenn die Ausdrücke „erste/r/s“, „zweite/r/s“, „dritte/r/s“ und/oder dergleichen zur Beschreibung verschiedener Elemente verwendet werden, ist nicht beabsichtigt, dass diese Elemente durch diese Ausdrücke eingeschränkt werden. Die Ausdrücke „erste/r/s“, „zweite/r/s“, „dritte/r/s“ und/oder dergleichen werden nur verwendet, um ein Element von einem anderen zu unterscheiden. Beispielsweise könnte ein erster Kontakt als zweiter Kontakt bezeichnet werden und entsprechend ein zweiter Kontakt als erster Kontakt, ohne vom Umfang der beschriebenen Ausführungsformen abzuweichen. Sowohl beim ersten Kontakt als auch beim zweiten Kontakt handelt es sich um Kontakte, jedoch nicht um denselben Kontakt.
-
Die vorliegend verwendete Terminologie der verschiedenen vorliegend beschriebenen Ausführungsformen dient lediglich dem Zweck der Beschreibung bestimmter Ausführungsformen und soll nicht einschränkend sein. Die Singularformen „ein/eine“ und „der/die/das“, wie sie in der Beschreibung der verschiedenen beschriebenen Ausführungsformen und den beiliegenden Ansprüchen verwendet werden, sollen ebenso die Pluralformen einschließen und können synonym mit „eine/r oder mehrere“ oder „mindestens ein/e“ verwendet werden, sofern nicht durch den Kontext eindeutig anders angegeben. Zudem versteht es sich, dass sich der Ausdruck „und/oder“ wie vorliegend verwendet auf sämtliche mögliche Kombinationen aus einem oder mehreren der zugehörigen aufgeführten Elemente bezieht und diese umfasst. Es versteht sich ferner, dass die Ausdrücke „beinhaltet“, „einschließlich“, „umfasst“ und/oder „umfassend“, soweit in dieser Beschreibung verwendet, das Vorhandensein genannter Merkmale, Ganzzahlen, Schritte, Operationen, Elemente und/oder Komponenten spezifizieren, aber nicht das Vorhandensein oder den Zusatz eines/einer oder mehrerer anderer Merkmale, Ganzzahlen, Schritte, Operationen, Elemente, Komponenten und/oder Gruppen davon ausschließen.
-
Vorliegend beziehen sich die Bezeichnungen „Kommunikation“ und „kommunizieren“ auf den Empfang und/oder den Erhalt und/oder die Übertragung und/oder den Transfer und/oder die Bereitstellung und/oder dergleichen von Informationen (oder Informationen, die beispielsweise durch Daten, Signale, Nachrichten, Anweisungen, Befehle und/oder dergleichen repräsentiert werden). Dass eine Einheit (z.B. eine Vorrichtung, ein System, eine Komponente einer Vorrichtung oder eines Systems, Kombinationen davon und/oder dergleichen) in Kommunikation mit einer anderen Einheit steht, bedeutet, dass die eine Einheit in der Lage ist, direkt oder indirekt Informationen von der anderen Einheit zu empfangen und/oder zu dieser zu senden (z.B. zu übertragen). Dies kann sich auf eine direkte oder indirekte Verbindung beziehen, die drahtgebunden und/oder drahtlos ist. Zusätzlich können zwei Einheiten in Kommunikation miteinander stehen, selbst wenn die übertragenen Informationen zwischen der ersten und zweiten Einheit modifiziert, verarbeitet, weitergeleitet und/oder geroutet werden. So kann beispielsweise eine erste Einheit auch dann mit einer zweiten Einheit in Kommunikation stehen, wenn die erste Einheit passiv Informationen empfängt und nicht aktiv Informationen an die zweite Einheit überträgt. Als weiteres Beispiel kann eine erste Einheit mit einer zweiten Einheit in Kommunikation stehen, wenn mindestens eine Zwischeneinheit (z.B. eine dritte Einheit, die sich zwischen der ersten und der zweiten Einheit befindet) von der ersten Einheit empfangene Informationen verarbeitet und die verarbeiteten Informationen an die zweite Einheit weiterleitet. In einigen Ausführungsformen kann sich eine Nachricht auf ein Netzwerkpaket (z.B. ein Datenpaket und/oder dergleichen) beziehen, das Daten beinhaltet.
-
Vorliegend soll der Ausdruck „falls“ wahlweise so ausgelegt werden, dass er in Abhängigkeit vom Zusammenhang „wenn“ „bei“, „in Reaktion auf Bestimmen“, „in Reaktion auf Erkennen“ und/oder dergleichen bedeutet. Gleichermaßen wird der Ausdruck „falls bestimmt wird“ oder „falls [eine angegebene Bedingung oder ein angegebenes Ereignis] erkannt wird“ wahlweise als „bei Bestimmen“, „in Reaktion auf Bestimmen“, „bei Erkennen [der angegebenen Bedingung oder des angegebenen Ereignisses]“, „in Reaktion auf Erkennen [der angegebenen Bedingung oder des angegebenen Ereignisses]“ und/oder dergleichen bedeutend, in Abhängigkeit vom Kontext, ausgelegt. Vorliegend sollen zudem die Ausdrücke „hat/weist auf“, „haben/aufweisen“, „aufweisend“ oder dergleichen offene Ausdrücke sein. Ferner soll die Formulierung „auf Grundlage von“ bedeuten „zumindest teilweise auf Grundlage von“, sofern nicht explizit etwas anderes angegeben ist.
-
Es wird nunmehr ausführlicher Bezug auf Ausführungsformen genommen, zu denen Beispiele in den beiliegenden Zeichnungen veranschaulicht werden. In der folgenden ausführlichen Beschreibung werden zahlreiche spezifische Einzelheiten dargelegt, um ein umfassendes Verständnis der verschiedenen beschriebenen Ausführungsformen bereitzustellen. Ein Fachmann versteht jedoch, dass die verschiedenen beschriebenen Ausführungsformen auch ohne diese konkreten Einzelheiten umgesetzt werden können. In anderen Fällen sind wohlbekannte Verfahren, Prozeduren, Komponenten, Schaltungen und Netzwerke nicht ausführlich beschrieben, damit Aspekte der Ausführungsformen nicht unnötig unklar gemacht werden.
-
Allgemeiner Überblick
-
Gemäß einigen Aspekten und/oder Ausführungsformen beinhalten und/oder implementieren vorliegend beschriebene Systeme, Verfahren und Computerprogrammprodukte ein vereinheitlichtes Framework und Werkzeuge zur Kommentierung von Fahrspurbegrenzungen. Es werden Sensordaten entlang einer Trajektorie erhalten, die Standorten einer Basiskarte entspricht. Aus den Sensordaten werden Merkmale extrahiert, und reichhaltige Merkmalskarten werden gemäß einer Aggregationsfunktion aggregiert und zur Erzeugung von Rasterbildern verwendet. Auf die Rasterbilder wird Vektorisierung angewendet, um eine Fahrbahngeometrie zu extrahieren, die durch global konsistente Polylinien dargestellt wird. In einigen Beispielen ermöglichen die global konsistenten Polylinien Lokalisierung, wenn ein Fahrzeug die Standorte der Basiskarte navigiert. Zudem verwendet in einigen Beispielen ein menschlicher Kommentator die global konsistenten Polylinien, um automatisch semantische Objekte zu erzeugen, die Standorten der Basiskarte entsprechen. Zum Beispiel wird von einem menschlichen Kommentator ein Begrenzungspolygon gezeichnet, das mindestens eine global konsistente Polylinie schneidet. Es werden Schnittpunkte zwischen dem Begrenzungspolygon, mindestens einer global konsistenten Polylinie und inneren Punkten der global konsistenten Polylinien innerhalb des Begrenzungspolygons bestimmt. Ein mit konvexen Hüllen arbeitender Algorithmus erzeugt aus den Schnittpunkten und den inneren Punkten Polygone, die semantische Objekte darstellen, die Standorten der Basiskarte entsprechen.
-
Durch die Implementierung vorliegend beschriebener Systeme, Verfahren und Computerprogrammprodukte ermöglichen die Methoden für das vereinheitlichte Framework und die Werkzeuge zur Kommentierung von Fahrspurbegrenzungen eine automatische Erzeugung global konsistenter Polylinien, die Straßengeometrieinstanzen (z.B. Fahrspuren, Fahrspurteiler, Kreuzungen und Haltelinien) für eine Region einer Basiskartenschicht darstellen. In einigen Fällen werden Regionen von Polylinien aus einer kleinen Anzahl von LiDAR-Abtastungen (Scans) erzeugt (viel weniger als die Scans, die zur Darstellung einer Region einer Basiskartenschicht verwendet werden), was zu diskontinuierlichen, lokalen Polylinien führt, die keine kontinuierliche Beschreibung einer Region der Basiskarte liefern. Darüber hinaus ermöglichen die vorliegend beschriebenen global konsistenten Polylinien eine Benutzerschnittstelle, mit der ein menschlicher Kommentator eine Kreuzung oder einen anderen Bereich auswählen und automatisch semantische Objekte im Zusammenhang mit dem Bereich erzeugen kann, ohne jedes semantische Objekt in dem Bereich manuell identifizieren zu müssen.
-
In 1 ist eine beispielhafte Umgebung 100 dargestellt, in der sowohl Fahrzeuge mit autonomen Systemen als auch Fahrzeuge ohne solche Systeme betrieben werden. Wie veranschaulicht wird, beinhaltet die Umgebung 100 Fahrzeuge 102a-102n, Objekte 104a-104n, Routen 106a-106n, einen Bereich 108, eine Fahrzeug-zu-Infrastruktur- (V2I-) Vorrichtung 110, ein Netzwerk 112, ein entfernt angeordnetes AV-(autonomes Fahrzeug) System 114, ein Fuhrparkverwaltungssystem 116 und ein V2I-System 118. Die Fahrzeuge 102a-102n, die Fahrzeug-zu-Infrastruktur- (V2I-) Vorrichtung 110, das Netzwerk 112, das AV-System 114, das Fuhrparkverwaltungssystem 116 und das V2l-System 118 sind über drahtgebundene Verbindungen, drahtlose Verbindungen oder eine Kombination von drahtgebundenen oder drahtlosen Verbindungen miteinander verbunden (z.B. stellen diese eine Verbindung zur Kommunikation her und/oder dergleichen). In einigen Ausführungsformen sind die Objekte 104a-104n über drahtgebundene Verbindungen, drahtlose Verbindungen oder eine Kombination von drahtgebundenen oder drahtlosen Verbindungen mit den Fahrzeugen 102a-102n und/oder der Fahrzeug-zu-Infrastruktur- (V2I-) Vorrichtung 110 und/oder dem Netzwerk 112 und/oder dem AV-System 114 und/oder dem Fuhrparkverwaltungssystem 116 und/oder dem V2l-System 118 verbunden.
-
Die Fahrzeuge 102a-102n (einzeln als Fahrzeug 102 und zusammengefasst als Fahrzeuge 102 bezeichnet) beinhalten mindestens eine Vorrichtung, die zum Transportieren von Gütern und/oder Personen ausgelegt ist. In einigen Ausführungsformen sind die Fahrzeuge 102 so ausgelegt, dass sie über das Netzwerk 112 mit der V2I-Vorrichtung 110, dem entfernt angeordneten AV-System 114, dem Fuhrparkverwaltungssystem 116 und/oder dem V2l-System 118 kommunizieren können. In einigen Ausführungsformen beinhalten die Fahrzeuge 102 Autos, Busse, Lastkraftwagen, Züge und/oder dergleichen. In einigen Ausführungsformen sind die Fahrzeuge 102 gleich oder ähnlich wie die vorliegend beschriebenen Fahrzeuge 200 (siehe 2). In einigen Ausführungsformen ist ein Fahrzeug 200 eines Satzes von Fahrzeugen 200 mit einem Verwalter eines autonomen Fuhrparks assoziiert. In einigen Ausführungsformen fahren die Fahrzeuge 102 entlang jeweiliger Routen 106a-106n (einzeln als Route 106 und gemeinsam als Routen 106 bezeichnet), wie vorliegend beschrieben. In einigen Ausführungsformen beinhalten ein oder mehrere Fahrzeuge 102 ein autonomes System (z.B. ein autonomes System, das gleich oder ähnlich ist wie das autonome System 202).
-
Zu den Objekten 104a-104n (einzeln als Objekt 104 und gemeinsam als Objekte 104 bezeichnet) zählen beispielsweise mindestens ein Fahrzeug, mindestens ein Fußgänger, mindestens ein Radfahrer, mindestens ein Gebilde (z.B. ein Gebäude, ein Schild, ein Hydrant usw.) und/oder dergleichen. Jedes Objekt 104 ist stationär (z.B. für eine bestimmte Zeit an einem festen Ort) oder mobil (z.B. mit einem Geschwindigkeitsvektor und mindestens einer Trajektorie). In einigen Ausführungsformen sind die Objekte 104 mit entsprechenden Standorten in dem Bereich 108 assoziiert.
-
Die Routen 106a-106n (einzeln als Route 106 und gemeinsam als Routen 106 bezeichnet) sind jeweils mit einer Abfolge von Aktionen (auch als Trajektorie bezeichnet) assoziiert (z.B. geben sie diese vor), die Zustände miteinander verbinden, entlang derer ein AV navigieren kann. Jede Route 106 beginnt mit einem Anfangszustand (z.B. einem Zustand, der einem ersten raumzeitlichen Standort, einem Geschwindigkeitsvektor und/oder dergleichen entspricht) und einem Endzielzustand (z.B. einem Zustand, der einem zweiten raumzeitlichen Standort entspricht, der sich vom ersten raumzeitlichen Standort unterscheidet) oder einer Zielregion (z.B. einem Teilraum akzeptabler Zustände (z.B. Endzustände)). In einigen Ausführungsformen beinhaltet der erste Zustand einen Standort, an dem ein Individuum oder Individuen durch das AV abzuholen ist/sind, und der zweite Zustand oder die zweite Region beinhaltet einen Standort oder Standorte, an dem/denen das Individuum oder die Individuen, das/die durch das AV abgeholt wurde/n, abzusetzen ist/sind. In einigen Ausführungsformen beinhalten die Routen 106 eine Vielzahl von akzeptablen Zustandsabfolgen (z.B. eine Vielzahl von raumzeitlichen Standortabfolgen), wobei die Vielzahl von Zustandsabfolgen mit einer Vielzahl von Trajektorien assoziiert ist (z.B. diese definiert). In einem Beispiel beinhalten die Routen 106 nur übergeordnete Aktionen oder ungenaue Zustandsorte, wie z.B. eine Reihe verbundener Straßen, die Abbiegerichtungen an Straßenkreuzungen vorgeben. Zusätzlich oder alternativ können die Routen 106 präzisere Aktionen oder Zustände beinhalten, wie beispielsweise bestimmte Zielfahrspuren oder genaue Standorte innerhalb der Fahrspurbereiche und eine Zielgeschwindigkeit an diesen Positionen. In einem Beispiel beinhalten die Routen 106 eine Vielzahl präziser Zustandsabfolgen entlang der mindestens einen Abfolge übergeordneter Aktionen mit einem begrenzten Vorausschauhorizont, um Zwischenziele zu erreichen, wobei die Kombination aufeinanderfolgender Iterationen von Zustandsabfolgen mit begrenztem Horizont kumulativ einer Vielzahl von Trajektorien entspricht, die zusammen die übergeordnete Route bilden, um im endgültigen Zielzustand oder der Zielregion anzukommen.
-
Der Bereich 108 beinhaltet einen physischen Bereich (z.B. eine geografische Region), in dem die Fahrzeuge 102 navigieren können. In einem Beispiel beinhaltet der Bereich 108 mindestens einen Staat (z.B. ein Land, eine Provinz, einen einzelnen Staat einer Vielzahl von Staaten, die zu einem Land gehören, usw.), mindestens einen Teil eines Staates, mindestens eine Stadt, mindestens einen Teil einer Stadt usw. In einigen Ausführungsformen beinhaltet der Bereich 108 mindestens eine benannte Durchgangsstraße (im Folgenden als „Straße“ bezeichnet), wie z.B. eine Autobahn, eine Fernstraße, eine Parkstraße, eine Stadtstraße usw. Zusätzlich oder alternativ beinhaltet der Bereich 108 in einigen Beispielen mindestens einen unbenannten Verkehrsweg wie eine Einfahrt, einen Abschnitt eines Parkplatzes, einen Abschnitt eines freien und/oder unbebauten Grundstücks, einen Feldweg usw. In einigen Ausführungsformen beinhaltet eine Straße mindestens eine Fahrspur (z.B. einen Teil der Straße, der durch Fahrzeuge 102 befahren werden kann). In einem Beispiel beinhaltet eine Straße mindestens eine Fahrspur, die mit mindestens einer Fahrspurmarkierung assoziiert ist (z.B. auf Grundlage dieser Markierung identifiziert wird).
-
Die Fahrzeug-zu-Infrastruktur- (V2I-) Vorrichtung 110 (manchmal auch als Fahrzeug-zu-Infrastruktur- (V2X-) Vorrichtung bezeichnet) beinhaltet mindestens eine Vorrichtung, die so ausgelegt ist, dass sie mit Fahrzeugen 102 und/oder dem V2I-Infrastruktursystem 118 in Kommunikation steht. In einigen Ausführungsformen ist die V2I-Einrichtung 110 so ausgelegt, dass sie über das Netzwerk 112 mit den Fahrzeugen 102, dem entfernt angeordneten AV-System 114, dem Fuhrparkverwaltungssystem 116 und/oder dem V2l-System 118 in Kommunikation steht. In einigen Ausführungsformen beinhaltet die V2I-Vorrichtung 110 eine Hochfrequenzkennungs- (Radio Frequency Identification, RFID-) Vorrichtung, Verkehrsschilder, Kameras (z.B. zweidimensionale (2D-) und/oder dreidimensionale (3D-) Kameras), Fahrspurmarkierungen, Straßenlaternen, Parkuhren usw. In einigen Ausführungsformen ist die V2I-Vorrichtung 110 dazu ausgelegt, direkt mit den Fahrzeugen 102 zu kommunizieren. Zusätzlich oder alternativ ist die V2I-Vorrichtung 110 in einigen Ausführungsformen dazu ausgelegt, über das V2l-System 118 mit den Fahrzeugen 102, dem entfernt angeordneten AV-System 114 und/oder dem Fuhrparkverwaltungssystem 116 zu kommunizieren. In einigen Ausführungsformen ist die V2I-Vorrichtung 110 dazu ausgelegt, über das Netzwerk 112 mit dem V2l-System 118 zu kommunizieren.
-
Das Netzwerk 112 beinhaltet ein oder mehrere drahtgebundene und/oder drahtlose Netzwerke. In einem Beispiel beinhaltet das Netzwerk 112 ein Mobilfunknetz (z.B. ein LTE- (Long Term Evolution) Netz, ein 3G- (dritte Generation) Netz, ein 4G-(vierte Generation) Netz, ein 5G- (fünfte Generation) Netz, ein CDMA- (code division multiple access, Codemultiplex-Vielfachzugriff-) Netz usw.), ein öffentliches Mobilfunknetz (PLMN, public land mobile network), ein lokales Netzwerk (local area network, LAN), ein Weitverkehrsnetz (wide area network, WAN), ein Stadtnetz (metropolitan area network, MAN), ein Telefonnetz (z.B. das öffentliche Telefonnetz (PSTN, public switched telephone network), ein privates Netzwerk, ein Ad-hoc-Netz, ein Intranet, das Internet, ein glasfaserbasiertes Netzwerk, ein Cloud-Computing-Netzwerk usw., eine Kombination einiger oder aller dieser Netzwerke und/oder dergleichen.
-
Das entfernt angeordnete AV-System 114 beinhaltet mindestens eine Vorrichtung, die so ausgelegt ist, dass sie über das Netzwerk 112 mit den Fahrzeugen 102, der V2I-Vorrichtung 110, dem Netzwerk 112, dem Fuhrparkverwaltungssystem 116 und/oder dem V2l-System 118 in Kommunikation steht. In einem Beispiel beinhaltet das entfernt angeordnete AV-System 114 einen Server, eine Gruppe von Servern und/oder andere gleichartige Vorrichtungen. In einigen Ausführungsformen ist das entfernt angeordnete AV-System 114 zusammen mit dem Fuhrparkverwaltungssystem 116 angeordnet. In einigen Ausführungsformen ist das entfernt angeordnete AV-System 114 an der Installation einiger oder aller Komponenten eines Fahrzeugs beteiligt, einschließlich eines autonomen Systems, eines AV-Computers, von einem AV-Computer implementierter Software und/oder dergleichen. In einigen Ausführungsformen wartet (z.B. aktualisiert und/oder ersetzt) das entfernt angeordnete AV-System 114 solche Komponenten und/oder Software während der Lebensdauer des Fahrzeugs.
-
Das Fuhrparkverwaltungssystem 116 beinhaltet mindestens eine Vorrichtung, die so ausgelegt ist, dass sie sich in Kommunikation mit den Fahrzeugen 102, der V2I-Vorrichtung 110, dem entfernt angeordneten AV-System 114 und/oder dem V2l-Infrastruktursystem 118 befindet. In einem Beispiel beinhaltet das Fuhrparkverwaltungssystem 116 einen Server, eine Gruppe von Servern und/oder andere ähnliche Vorrichtungen. In einigen Ausführungsformen ist das Fuhrparkverwaltungssystem 116 mit einem Fahrgemeinschaftsunternehmen assoziiert (z.B. einer Organisation, die den Betrieb mehrerer Fahrzeuge steuert (z.B. Fahrzeuge, die autonome Systeme beinhalten, und/oder Fahrzeuge, die keine autonomen Systeme beinhalten), und/oder dergleichen).
-
In einigen Ausführungsformen beinhaltet das V2l-System 118 mindestens eine Vorrichtung, die so ausgelegt ist, dass sie sich über das Netzwerk 112 mit den Fahrzeugen 102, der V2I-Vorrichtung 110, dem entfernt angeordneten AV-System 114 und/oder dem Fuhrparkverwaltungssystem 116 in Kommunikation befindet. In einigen Beispielen ist das V2l-System 118 so ausgelegt, dass es mit der V2I-Vorrichtung 110 über eine andere Verbindung als das Netzwerk 112 in Kommunikation steht. In einigen Ausführungsformen beinhaltet das V2l-System 118 einen Server, eine Gruppe von Servern und/oder andere gleichartige Vorrichtungen. In einigen Ausführungsformen ist das V2l-System 118 mit einer Stadtverwaltung oder einer privaten Institution (z.B. einer privaten Institution, die die V2I-Vorrichtung 110 verwaltet und/oder dergleichen) assoziiert.
-
Die Anzahl und Anordnung der in 1 dargestellten Elemente ist lediglich beispielhaft. Es können zusätzliche Elemente, weniger Elemente, andere Elemente und/oder anders angeordnete Elemente als die in 1 dargestellten vorhanden sein. Zusätzlich oder alternativ kann mindestens ein Element der Umgebung 100 eine oder mehrere Funktionen ausführen, die als von mindestens einem anderen Element in 1 ausgeführt beschrieben sind. Zusätzlich oder alternativ kann mindestens ein Satz von Elementen der Umgebung 100 eine oder mehrere Funktionen durchführen, die als durch mindestens einen anderen Satz von Elementen der Umgebung 100 durchgeführt beschrieben werden.
-
Gemäß 2 beinhaltet das Fahrzeug 200 (das dem Fahrzeug 102 aus 1 gleichen oder ähneln kann) das autonome System 202, das Antriebsstrangsteuersystem 204, das Lenkungssteuersystem 206 und das Bremssystem 208 oder ist mit diesen assoziiert. In einigen Ausführungsformen ist das Fahrzeug 200 gleich oder ähnlich wie das Fahrzeug 102 (siehe 1). In einigen Ausführungsformen ist das autonome System 202 so ausgelegt, dass es dem Fahrzeug 200 die Fähigkeit zum autonomen Fahren verleiht (z.B. mindestens eine fahrautomatisierungs- oder manöverbasierte Funktion, ein Merkmal, eine Vorrichtung und/oder dergleichen implementiert, die es ermöglichen, dass das Fahrzeug 200 teilweise oder vollständig ohne menschliches Eingreifen betrieben werden kann, einschließlich, ohne Einschränkung, vollständig autonomer Fahrzeuge (z.B. Fahrzeuge, die auf menschliches Eingreifen verzichten, wie ADS-betriebene Fahrzeuge der Stufe 5), hochautonomer Fahrzeuge (z.B. Fahrzeuge, die in bestimmten Situationen auf menschliches Eingreifen verzichten, wie ADS-betriebene Fahrzeuge der Stufe 4), bedingt autonomer Fahrzeuge (z.B. Fahrzeuge, die in begrenzten Situationen auf menschliches Eingreifen verzichten, wie ADS-betriebene Fahrzeuge der Stufe 3) und/oder dergleichen. In einer Ausführungsform beinhaltet das autonome System 202 operative oder taktische Funktionen, die erforderlich sind, um das Fahrzeug 200 im Straßenverkehr zu betreiben und eine dynamische Fahraufgabe (dynamic driving task, DDT) teilweise oder ganz und dauerhaft auszuführen. In einer anderen Ausführungsform beinhaltet das autonome System 202 ein Fahrassistenzsystem (Advanced Driver Assistance System, ADAS), das Funktionen zur Unterstützung des Fahrers enthält. Das autonome System 202 unterstützt verschiedene Stufen der Fahrautomatisierung, die von keiner Fahrautomatisierung (z.B. Stufe 0) bis zur vollständigen Fahrautomatisierung (z.B. Stufe 5) reichen. Für eine detaillierte Beschreibung von vollautonomen Fahrzeugen und hochautonomen Fahrzeugen kann auf den Standard J3016 von SAE International: Taxonomy and Definitions for Terms Related to On-Road Motor Vehicle Automated Driving Systems (Klassifizierung und Definitionen für Begriffe bezüglich automatisierter Fahrsysteme für Straßenkraftfahrzeuge) verwiesen werden. In einigen Ausführungsformen ist das Fahrzeug 200 mit einem Verwalter eines autonomen Fuhrparks und/oder einem Fahrgemeinschaftsunternehmen assoziiert.
-
Das autonome System 202 beinhaltet eine Sensorsuite, die eine oder mehrere Vorrichtungen wie etwa Kameras 202a, LiDAR-Sensoren 202b, Radarsensoren 202c und Mikrofone 202d beinhaltet. In einigen Ausführungsformen kann das autonome System 202 mehr oder weniger Vorrichtungen und/oder andere Vorrichtungen beinhalten (z.B. Ultraschallsensoren, Trägheitssensoren, GPS-Empfänger (siehe unten), Odometriesensoren, die Daten im Zusammenhang mit einer Anzeige einer zurückgelegten Strecke des Fahrzeugs 200 erzeugen, und/oder dergleichen). In einigen Ausführungsformen verwendet das autonome System 202 die eine oder die mehreren Vorrichtungen, die im autonomen System 202 enthalten sind, um Daten im Zusammenhang mit der Umgebung 100 wie vorliegend beschrieben zu erzeugen. Die durch die eine oder die mehreren Vorrichtungen des autonomen Systems 202 erzeugten Daten können durch ein oder mehrere vorliegend beschriebene Systeme verwendet werden, um die Umgebung (z.B. die Umgebung 100) zu beobachten, in der sich das Fahrzeug 200 befindet. In einigen Ausführungsformen beinhaltet das autonome System 202 eine Kommunikationsvorrichtung 202e, einen AV-Computer 202f, ein Drive-by-Wire-(DBW-) System 202h und eine Sicherheitssteuereinheit 202g.
-
Die Kameras 202a beinhalten mindestens eine Vorrichtung, die so ausgelegt ist, dass sie über einen Bus (z.B. einen Bus, der dem Bus 302 in 3 gleicht oder ähnelt) mit der Kommunikationsvorrichtung 202e, dem AV-Computer 202f und/oder der Sicherheitssteuereinheit 202g in Kommunikation steht. Die Kameras 202a beinhalten mindestens eine Kamera (z.B. eine Digitalkamera mit einem Lichtsensor wie beispielsweise einer ladungsgekoppelten Vorrichtung (charge-coupled device, CCD), eine Wärmebildkamera, eine Infrarot- (IR-) Kamera, eine Ereigniskamera und/oder dergleichen), um Bilder mit physischen Objekten (z.B. Autos, Busse, Bordsteine, Menschen und/oder dergleichen) aufzunehmen. In einigen Ausführungsformen erzeugt die Kamera 202a Kameradaten als Ausgabe. In einigen Beispielen erzeugt die Kamera 202a Kameradaten, die mit einem Bild assoziierte Bilddaten enthalten. In diesem Beispiel können die Bilddaten mindestens einen Parameter (z.B. Bildcharakteristiken wie etwa Belichtung, Helligkeit usw., einen Bildzeitstempel und/oder dergleichen) entsprechend dem Bild spezifizieren. In einem solchen Beispiel kann das Bild in einem bestimmten Format vorliegen (z.B. RAW, JPEG, PNG und/oder dergleichen). In einigen Ausführungsformen beinhaltet die Kamera 202a eine Vielzahl unabhängiger Kameras, die an einem Fahrzeug konfiguriert (z.B. positioniert) sind, um Bilder für Stereopsis (räumliches Sehen) aufzunehmen. In einigen Beispielen beinhaltet die Kamera 202a eine Vielzahl von Kameras, die Bilddaten erzeugen und die Bilddaten an den AV-Computer 202f und/oder ein Fuhrparkverwaltungssystem (z.B. ein Fuhrparkverwaltungssystem, das dem Fuhrparkverwaltungssystem 116 aus 1 gleicht oder ähnlich ist) übertragen. In einem solchen Beispiel bestimmt der AV-Computer 202f eine Tiefe zu einem oder mehreren Objekten in einem Sichtfeld von mindestens zwei Kameras der Vielzahl von Kameras auf Grundlage der Bilddaten von den mindestens zwei Kameras. In einigen Ausführungsformen sind die Kameras 202a so ausgelegt, dass sie Bilder von Objekten innerhalb einer Entfernung von den Kameras 202a aufnehmen (z.B. bis zu 100 Meter, bis zu einem Kilometer und/oder dergleichen). Dementsprechend beinhalten die Kameras 202a Merkmale wie Sensoren und Objektive, die für die Wahrnehmung von Objekten optimiert sind, die sich in einer oder mehreren Entfernungen zu den Kameras 202a befinden.
-
In einer Ausführungsform beinhaltet die Kamera 202a mindestens eine Kamera, die dazu ausgelegt ist, ein oder mehrere Bilder aufzunehmen, die mit einer oder mehreren Ampeln, einem oder mehreren Straßenschildern und/oder anderen physischen Objekten assoziiert sind, die visuelle Navigationsinformationen bereitstellen. In einigen Ausführungsformen erzeugt die Kamera 202a Ampeldaten im Zusammenhang mit einem oder mehreren Bildern. In einigen Beispielen erzeugt die Kamera 202a TLD- (traffic light detection, TLD - Ampelerkennungs-) Daten, die mit einem oder mehreren Bildern assoziiert sind, die ein Format (z.B. RAW, JPEG, PNG und/oder dergleichen) beinhalten. In einigen Ausführungsformen unterscheidet sich die Kamera 202a, die TLD-Daten erzeugt, von anderen vorliegend beschriebenen Systemen, die Kameras enthalten, dadurch, dass die Kamera 202a eine oder mehrere Kameras mit einem weiten Sichtfeld beinhalten kann (z.B. ein Weitwinkelobjektiv, ein Fischaugenobjektiv, ein Objektiv mit einem Betrachtungswinkel von etwa 120 Grad oder mehr und/oder dergleichen), um Bilder über möglichst viele physische Objekte zu erzeugen.
-
Die LiDAR- (laser detection and ranging, Lichtabstandsmessung) Sensoren 202b beinhalten mindestens eine Vorrichtung, die so ausgelegt ist, dass sie über einen Bus (z.B. einen Bus, der dem Bus 302 in 3 gleicht oder ähnelt) mit der Kommunikationsvorrichtung 202e, dem AV-Computer 202f und/oder der Sicherheitssteuereinheit 202g in Kommunikation steht. Die LiDAR-Sensoren 202b beinhalten ein System, das dazu ausgelegt ist, Licht von einem Lichtemitter (z.B. einem Lasersender) zu übertragen. Durch die LiDAR-Sensoren 202b emittiertes Licht beinhaltet Licht (z.B. Infrarotlicht und/oder dergleichen), das sich außerhalb des sichtbaren Spektrums befindet. In einigen Ausführungsformen trifft von den LiDAR-Sensoren 202b emittiertes Licht während des Betriebs auf ein physisches Objekt (z.B. ein Fahrzeug) und wird zu den LiDAR-Sensoren 202b zurückreflektiert. In einigen Ausführungsformen durchdringt das von den LiDAR-Sensoren 202b emittierte Licht die physischen Objekte, auf die das Licht trifft, nicht. Die LiDAR-Sensoren 202b beinhalten zudem mindestens einen Lichtdetektor, der das Licht erkennt, das vom Lichtemitter emittiert wurde, nachdem das Licht auf ein physisches Objekt traf. In einigen Ausführungsformen erzeugt mindestens ein Datenverarbeitungssystem, das mit den LiDAR-Sensoren 202b assoziiert ist, ein Bild (z.B. eine Punktwolke, eine kombinierte Punktwolke und/oder dergleichen), das die in einem Sichtfeld der LiDAR-Sensoren 202b enthaltenen Objekte darstellt. In einigen Beispielen erzeugt das mindestens eine mit dem LiDAR-Sensor 202b assoziierte Datenverarbeitungssystem ein Bild, das die Grenzen eines physischen Objekts, die Oberflächen (z.B. die Topologie der Oberflächen) des physischen Objekts und/oder dergleichen darstellt. In einem solchen Beispiel wird das Bild verwendet, um die Grenzen von physischen Objekten im Sichtfeld der LiDAR-Sensoren 202b zu bestimmen.
-
Die Radar- (radio detection and ranging, Funkabstandsmessung) Sensoren 202c beinhalten mindestens eine Vorrichtung, die so ausgelegt ist, dass sie über einen Bus (z.B. einen Bus, der dem Bus 302 in 3 gleicht oder ähnelt) mit der Kommunikationsvorrichtung 202e, dem AV-Computer 202f und/oder der Sicherheitssteuereinheit 202g in Kommunikation steht. Die Radarsensoren 202c beinhalten ein System, das so ausgelegt ist, dass es Funkwellen (entweder gepulst oder kontinuierlich) überträgt. Die durch die Radarsensoren 202c übertragenen Funkwellen beinhalten Funkwellen, die innerhalb eines vorbestimmten Spektrums liegen. In einigen Ausführungsformen treffen während des Betriebs Funkwellen, die durch die Radarsensoren 202c übertragen werden, auf ein physisches Objekt und werden zu den Radarsensoren 202c zurückreflektiert. In einigen Ausführungsformen werden die von den Radarsensoren 202c gesendeten Funkwellen von einigen Objekten nicht reflektiert. In einigen Ausführungsformen erzeugt mindestens ein mit den Radarsensoren 202c assoziiertes Datenverarbeitungssystem Signale, die die in einem Sichtfeld der Radarsensoren 202c enthaltenen Objekte darstellen. Beispielsweise erzeugt das mindestens eine mit dem Radarsensor 202c assoziierte Datenverarbeitungssystem ein Bild, das die Grenzen eines physischen Objekts, die Oberflächen (z.B. die Topologie der Oberflächen) des physischen Objekts und/oder dergleichen darstellt. In einigen Beispielen wird das Bild verwendet, um die Grenzen von physischen Objekten im Sichtfeld der Radarsensoren 202c zu bestimmen.
-
Die Mikrofone 202d beinhalten mindestens eine Vorrichtung, die so ausgelegt ist, dass sie über einen Bus (z.B. einen Bus, der dem Bus 302 in 3 gleicht oder ähnelt) mit der Kommunikationsvorrichtung 202e, dem AV-Computer 202f und/oder der Sicherheitssteuereinheit 202g in Kommunikation steht. Die Mikrofone 202d beinhalten ein oder mehrere Mikrofone (z.B. Array-Mikrofone, externe Mikrofone und/oder dergleichen), die Audiosignale erfassen und Daten erzeugen, die mit den Audiosignalen assoziiert sind (z.B. diese repräsentieren). In einigen Beispielen beinhalten die Mikrofone 202d Wandlervorrichtungen und/oder ähnliche Vorrichtungen. In einigen Ausführungsformen können ein oder mehrere vorliegend beschriebene Systeme die von den Mikrofonen 202d erzeugten Daten empfangen und eine Position eines Objekts relativ zum Fahrzeug 200 (z.B. eine Entfernung und/oder dergleichen) auf Grundlage der mit den Daten assoziierten Audiosignale bestimmen.
-
Die Kommunikationsvorrichtung 202e beinhaltet mindestens eine Vorrichtung, die so ausgelegt ist, dass sie mit den Kameras 202a, den LiDAR-Sensoren 202b, den Radarsensoren 202c, den Mikrofonen 202d, dem AV-Computer 202f, der Sicherheitssteuereinheit 202g und/oder dem DBW-System 202h in Kommunikation steht. Beispielsweise kann die Kommunikationsvorrichtung 202e eine Vorrichtung beinhalten, die der Kommunikationsschnittstelle 314 aus 3 gleicht oder ähnlich ist. In einigen Ausführungsformen beinhaltet die Kommunikationsvorrichtung 202e eine Fahrzeug-zu-Fahrzeug- (V2V-) Kommunikationsvorrichtung (z.B. eine Vorrichtung, die eine drahtlose Kommunikation von Daten zwischen Fahrzeugen ermöglicht).
-
Der AV-Computer 202f beinhaltet mindestens eine Vorrichtung, die so ausgelegt ist, dass sie mit den Kameras 202a, den LiDAR-Sensoren 202b, den Radarsensoren 202c, den Mikrofonen 202d, der Kommunikationsvorrichtung 202e, der Sicherheitssteuereinheit 202g und/oder dem DBW-System 202h in Kommunikation steht. In einigen Beispielen beinhaltet der AV-Computer 202f eine Vorrichtung wie etwa eine Client-Vorrichtung, eine mobile Vorrichtung (z.B. ein Mobiltelefon, ein Tablet und/oder dergleichen), einen Server (z.B. eine Rechenvorrichtung, die eine oder mehrere Zentralverarbeitungseinheiten, Grafikverarbeitungseinheiten und/oder dergleichen beinhaltet) und/oder dergleichen. In einigen Ausführungsformen gleicht oder ähnelt der AV-Computer 202f dem vorliegend beschriebenen AV-Computer 400. Zusätzlich oder alternativ ist in einigen Ausführungsformen der AV-Computer 202f so ausgelegt, dass er mit einem AV-System (z.B. einem AV-System, das dem entfernt angeordneten AV-System 114 aus 1 gleicht oder ähnelt), einem Fuhrparkverwaltungssystem (z.B. einem Fuhrparkverwaltungssystem, das dem Fuhrparkverwaltungssystem 116 aus 1 gleicht oder ähnelt), einer V2I-Vorrichtung (z.B. einer V2I-Vorrichtung, die der V2I-Vorrichtung 110 aus 1 gleicht oder ähnelt), und/oder einem V2I-System (z.B. einem V2l-System, das dem V2l-System 118 aus 1 gleicht oder ähnelt) in Kommunikation steht.
-
Die Sicherheitssteuereinheit 202g beinhaltet mindestens eine Vorrichtung, die so ausgelegt ist, dass sie mit den Kameras 202a, den LiDAR-Sensoren 202b, den Radarsensoren 202c, den Mikrofonen 202d, der Kommunikationsvorrichtung 202e, dem AV-Computer 202f und/oder dem DBW-System 202h in Kommunikation steht. In einigen Beispielen beinhaltet die Sicherheitssteuereinheit 202g eine oder mehrere Steuereinheiten (elektrische Steuereinheiten, elektromechanische Steuereinheiten und/oder dergleichen), die so ausgelegt sind, dass sie Steuersignale erzeugen und/oder übertragen, um eine oder mehrere Vorrichtungen des Fahrzeugs 200 (z.B. das Antriebsstrangsteuersystem 204, das Lenkungssteuersystem 206, das Bremssystem 208 und/oder dergleichen) zu betreiben. In einigen Ausführungsformen ist die Sicherheitssteuereinheit 202g dazu ausgelegt, Steuersignale zu erzeugen, die gegenüber Steuersignalen Vorrang haben (z.B. überschreiben), die durch den AV-Computer 202f erzeugt und/oder übertragen werden.
-
Das DBW-System 202h beinhaltet mindestens eine Vorrichtung, die so ausgelegt ist, dass sie mit der Kommunikationsvorrichtung 202e und/oder dem AV-Computer 202f in Kommunikation steht. In einigen Beispielen beinhaltet das DBW-System 202h eine oder mehrere Steuereinheiten (z.B. elektrische Steuereinheiten, elektromechanische Steuereinheiten und/oder dergleichen), die so ausgelegt sind, dass sie Steuersignale erzeugen und/oder übertragen, um eine oder mehrere Vorrichtungen des Fahrzeugs 200 (z.B. das Antriebsstrangsteuersystem 204, das Lenkungssteuersystem 206, das Bremssystem 208 und/oder dergleichen) zu betreiben. Zusätzlich oder alternativ sind die eine oder die mehreren Steuereinheiten des DBW-Systems 202h so ausgelegt, dass sie Steuersignale erzeugen und/oder übertragen, um mindestens eine andere Vorrichtung (z.B. einen Blinker, Scheinwerfer, Türschlösser, Scheibenwischer und/oder dergleichen) des Fahrzeugs 200 zu betreiben.
-
Das Antriebsstrangsteuersystem 204 beinhaltet mindestens eine Vorrichtung, die dazu ausgelegt ist, sich in Kommunikation mit dem DBW-System 202h zu befinden. In einigen Beispielen beinhaltet das Antriebsstrangsteuersystem 204 mindestens eine Steuereinheit, einen Aktuator und/oder dergleichen. In einigen Ausführungsformen empfängt das Antriebsstrangsteuersystem 204 Steuersignale vom DBW-System 202h und das Antriebsstrangsteuersystem 204 bewirkt, dass das Fahrzeug 200 eine Fahrzeugbewegung in Längsrichtung vollzieht, beispielsweise anfängt, sich vorwärtszubewegen, aufhört, sich vorwärtszubewegen, anfängt, sich rückwärtszubewegen, aufhört, sich rückwärtszubewegen, in eine Richtung beschleunigt, in eine Richtung abbremst, oder eine seitliche Fahrzeugbewegung vollzieht, beispielsweise nach links abbiegt, nach rechts abbiegt und/oder dergleichen. In einem Beispiel bewirkt das Antriebsstrangsteuersystem 204, dass die einem Motor des Fahrzeugs bereitgestellte Energie (z.B. Kraftstoff, Elektrizität und/oder dergleichen) zunimmt, gleich bleibt oder abnimmt, wodurch bewirkt wird, dass sich mindestens ein Rad des Fahrzeugs 200 dreht oder nicht dreht.
-
Das Lenkungssteuersystem 206 beinhaltet mindestens eine Vorrichtung, die so ausgelegt ist, dass sie ein oder mehrere Räder des Fahrzeugs 200 dreht. In einigen Beispielen beinhaltet das Lenkungssteuersystem 206 mindestens eine Steuereinheit, einen Aktuator und/oder dergleichen. In einigen Ausführungsformen bewirkt das Lenkungssteuersystem 206, dass sich die beiden Vorderräder und/oder die beiden Hinterräder des Fahrzeugs 200 nach links oder rechts drehen, um zu bewirken, dass das Fahrzeug 200 nach links oder rechts abbiegt. Mit anderen Worten veranlasst das Lenkungssteuersystem 206 die für die Regulierung der y-Achsen-Komponente der Fahrzeugbewegung erforderlichen Aktivitäten.
-
Das Bremssystem 208 beinhaltet mindestens eine Vorrichtung, die dazu ausgelegt ist, eine oder mehrere Bremsen zu betätigen, um zu bewirken, dass das Fahrzeug 200 die Geschwindigkeit reduziert und/oder stationär bleibt. In einigen Beispielen beinhaltet das Bremssystem 208 mindestens eine Steuereinheit und/oder einen Aktuator, die/der so ausgelegt ist, dass sie/er einen oder mehrere Bremssättel, die mit einem oder mehreren Rädern des Fahrzeugs 200 assoziiert sind, veranlasst, sich an einem entsprechenden Rotor des Fahrzeugs 200 zu schließen. Zusätzlich oder alternativ beinhaltet das Bremssystem 208 in einigen Beispielen ein automatisches Notbrems-(automatic emergency braking, AEB) System, ein regeneratives Bremssystem und/oder dergleichen.
-
In einigen Ausführungsformen beinhaltet das Fahrzeug 200 mindestens einen (nicht explizit dargestellten) Plattformsensor, der Eigenschaften eines Zustands oder einer Bedingung des Fahrzeugs 200 misst oder ableitet. In einigen Beispielen beinhaltet das Fahrzeug 200 Plattformsensoren wie einen GPS- (Global Positioning System) Empfänger, eine Trägheitsmesseinheit (inertial measurement unit, IMU), einen Raddrehzahlsensor, einen Radbremsdrucksensor, einen Raddrehmomentsensor, einen Motordrehmomentsensor, einen Lenkwinkelsensor und/oder dergleichen. Auch wenn das Bremssystem 208 in 2 auf der hinteren Seite des Fahrzeugs 200 dargestellt ist, kann sich das Bremssystem 208 überall im Fahrzeug 200 befinden.
-
In 3 ist ein schematisches Diagramm einer Vorrichtung 300 veranschaulicht. Wie dargestellt, beinhaltet die Vorrichtung 300 einen Prozessor 304, einen Speicher 306, eine Speicherkomponente 308, eine Eingabeschnittstelle 310, eine Ausgabeschnittstelle 312, eine Kommunikationsschnittstelle 314 und einen Bus 302. In einigen Ausführungsformen entspricht die Vorrichtung 300 mindestens einer Vorrichtung der Fahrzeuge 102 (z.B. mindestens einer Vorrichtung eines Systems der Fahrzeuge 102), mindestens einer Vorrichtung eines entfernten AV-Systems 114 und/oder einer oder mehreren Vorrichtungen des Netzwerks 112 (z.B. einer oder mehreren Vorrichtungen eines Systems des Netzwerks 112). In einigen Ausführungsformen beinhalten eine oder mehrere Vorrichtungen der Fahrzeuge 102 (z.B. eine oder mehrere Vorrichtungen eines Systems der Fahrzeuge 102), mindestens eine Vorrichtung eines entfernten AV-Systems 114, und/oder eine oder mehrere Vorrichtungen des Netzwerks 112 (z. B. eine oder mehrere Vorrichtungen eines Systems des Netzwerks 112) beinhalten mindestens eine Vorrichtung 300 und/oder mindestens eine Komponente der Vorrichtung 300. Wie in 3 gezeigt, beinhaltet die Vorrichtung 300 den Bus 302, den Prozessor 304, den Speicher 306, die Speicherkomponente 308, die Eingabeschnittstelle 310, die Ausgabeschnittstelle 312 und die Kommunikationsschnittstelle 314.
-
Der Bus 302 beinhaltet eine Komponente, die eine Kommunikation zwischen den Komponenten der Vorrichtung 300 ermöglicht. In einigen Fällen beinhaltet der Prozessor 304 einen Prozessor (z.B. eine Zentraleinheit (CPU), eine Grafikverarbeitungseinheit (GPU), eine beschleunigte Verarbeitungseinheit (APU) und/oder dergleichen), ein Mikrofon, einen digitalen Signalprozessor (DSP) und/oder eine beliebige Verarbeitungskomponente (z.B. ein frei programmierbares Gate-Array (FPGA), eine anwendungsspezifische integrierte Schaltung (ASIC) und/oder dergleichen), die programmiert werden kann, um mindestens eine Funktion auszuführen. Der Speicher 306 beinhaltet Direktzugriffsspeicher (RAM), Nur-Lese-Speicher (ROM) und/oder eine andere Art von dynamischer und/oder statischer Speichervorrichtung (z.B. Flash-Speicher, magnetischer Speicher, optischer Speicher und/oder dergleichen), die Daten und/oder Anweisungen zur Verwendung durch den Prozessor 304 speichert.
-
Die Speicherkomponente 308 speichert Daten und/oder Software im Zusammenhang mit dem Betrieb und der Verwendung der Vorrichtung 300. In einigen Beispielen beinhaltet die Speicherkomponente 308 eine Festplatte (z.B. eine Magnetplatte, eine optische Platte, eine magneto-optische Platte, eine Solid-State-Platte und/oder dergleichen), eine Compact Disc (CD), eine Digital Versatile Disc (DVD), eine Diskette, eine Kassette, ein Magnetband, eine CD-ROM, RAM, PROM, EPROM, FLASH-EPROM, NV-RAM und/oder eine andere Art von computerlesbarem Medium zusammen mit einem entsprechenden Laufwerk.
-
Die Eingabeschnittstelle 310 beinhaltet eine Komponente, die es der Vorrichtung 300 ermöglicht, Informationen zu empfangen, z.B. über Benutzereingaben (z.B. eine Touchscreen-Anzeige, eine Tastatur, ein Tastenfeld, eine Maus, eine Taste, einen Schalter, ein Mikrofon, eine Kamera und/oder dergleichen). Zusätzlich oder alternativ beinhaltet die Eingabeschnittstelle 310 in einigen Ausführungsformen einen Sensor, der Informationen erfasst (z.B. einen GPS- (Global Positioning System) Empfänger, einen Beschleunigungsmesser, ein Gyroskop, einen Aktuator und/oder dergleichen). Die Ausgabeschnittstelle 312 beinhaltet eine Komponente, die Ausgabeinformationen von der Vorrichtung 300 bereitstellt (z.B. eine Anzeige, einen Lautsprecher, eine oder mehrere Leuchtdioden (LEDs) und/oder dergleichen).
-
In einigen Ausführungsformen beinhaltet die Kommunikationsschnittstelle 314 eine Sendeempfänger-ähnliche Komponente (z.B. einen Sendeempfänger, einen separaten Empfänger und Sender und/oder dergleichen), die es der Vorrichtung 300 ermöglicht, mit anderen Vorrichtungen über eine drahtgebundene Verbindung, eine drahtlose Verbindung oder eine Kombination aus drahtgebundenen und drahtlosen Verbindungen zu kommunizieren. In einigen Beispielen ermöglicht die Kommunikationsschnittstelle 314 der Vorrichtung 300, Informationen von einer anderen Vorrichtung zu empfangen und/oder einer anderen Vorrichtung Informationen bereitzustellen. In einigen Beispielen beinhaltet die Kommunikationsschnittstelle 314 eine Ethernet-Schnittstelle, eine optische Schnittstelle, eine Koaxialschnittstelle, eine Infrarotschnittstelle, eine Hochfrequenz- (radio frequency, RF-) Schnittstelle, eine USB-(Universal Serial Bus) Schnittstelle, eine Wi-Fi®-Schnittstelle, eine Zellularnetzwerkschnittstelle und/oder dergleichen.
-
In einigen Ausführungsformen führt die Vorrichtung 300 einen oder mehrere vorliegend beschriebene Prozesse durch. Die Vorrichtung 300 führt diese Prozesse basierend darauf durch, dass der Prozessor 304 Softwareanweisungen ausführt, die durch ein computerlesbares Medium gespeichert werden, wie etwa den Speicher 305 und/oder die Speicherkomponente 308. Ein computerlesbares Medium (z.B. ein nichtflüchtiges computerlesbares Medium) ist vorliegend als eine nichtflüchtige Speichervorrichtung definiert. Eine nichtflüchtige Speichervorrichtung beinhaltet Speicherplatz, der sich in einer einzigen physischen Speichervorrichtung befindet, oder Speicherplatz, der über mehrere physische Speichervorrichtungen verteilt ist.
-
In einigen Ausführungsformen werden Softwareanweisungen von einem anderen computerlesbaren Medium oder von einer anderen Vorrichtung über die Kommunikationsschnittstelle 314 in den Speicher 306 und/oder die Speicherkomponente 308 eingelesen. Bei ihrer Ausführung bewirken die im Speicher 306 und/oder in der Speicherkomponente 308 gespeicherten Softwareanweisungen, dass der Prozessor 304 einen oder mehrere vorliegend beschriebene Prozesse durchführt. Zusätzlich oder alternativ werden festverdrahtete Schaltungsanordnungen anstelle von oder in Kombination mit Softwareanweisungen verwendet, um einen oder mehrere vorliegend beschriebene Prozesse durchzuführen. Somit sind vorliegend beschriebene Ausführungsformen nicht auf eine bestimmte Kombination von Hardware-Schaltungsanordnung und Software beschränkt, sofern nicht ausdrücklich anders angegeben.
-
Der Speicher 306 und/oder die Speicherkomponente 308 beinhalten einen Datenspeicher oder mindestens eine Datenstruktur (z.B. eine Datenbank und/oder dergleichen). Die Vorrichtung 300 ist in der Lage, Informationen aus dem Datenspeicher oder der mindestens einen Datenstruktur in dem Speicher 306 oder der Speicherkomponente 308 zu empfangen, darin zu speichern, Informationen zu übermitteln oder darin gespeicherte Informationen zu durchsuchen. In einigen Beispielen beinhalten die Informationen Netzwerkdaten, Eingabedaten, Ausgabedaten oder eine beliebige Kombination aus diesen.
-
In einigen Ausführungsformen ist die Vorrichtung 300 so ausgelegt, dass sie Softwareanweisungen ausführt, die entweder im Speicher 306 und/oder im Speicher einer anderen Vorrichtung (z.B. einer anderen Vorrichtung, die der Vorrichtung 300 gleicht oder ähnelt) gespeichert sind. Vorliegend bezieht sich die Bezeichnung „Modul“ auf mindestens eine im Speicher 306 und/oder im Speicher einer anderen Vorrichtung gespeicherte Anweisung, die bei Ausführung durch den Prozessor 304 und/oder durch einen Prozessor einer anderen Vorrichtung (z.B. einer anderen Vorrichtung, die der Vorrichtung 300 gleicht oder ähnelt) die Vorrichtung 300 (z.B. mindestens eine Komponente der Vorrichtung 300) veranlasst, einen oder mehrere vorliegend beschriebene Prozesse durchzuführen. In einigen Ausführungsformen wird ein Modul in Software, Firmware, Hardware und/oder dergleichen implementiert.
-
Die Anzahl und Anordnung der in 3 dargestellten Komponenten ist lediglich beispielhaft. In einigen Ausführungsformen kann die Vorrichtung 300 zusätzliche Komponenten, weniger Komponenten, andere Komponenten oder anders angeordnete Komponenten als die in 3 veranschaulichten beinhalten. Zusätzlich oder alternativ kann ein Satz von Komponenten (z.B. eine oder mehrere Komponenten) der Vorrichtung 300 eine oder mehrere Funktionen durchführen, die als durch eine andere Komponente oder einen anderen Satz von Komponenten der Vorrichtung 300 durchgeführt beschrieben werden.
-
4 veranschaulicht ein beispielhaftes Blockdiagramm eines AV-Computers 400 (manchmal auch als „AV-Stapel“ (AV stack) bezeichnet). Wie veranschaulicht ist, beinhaltet der AV-Computer 400 ein Wahrnehmungssystem 402 (manchmal als Wahrnehmungsmodul bezeichnet), ein Planungssystem 404 (manchmal als Planungsmodul bezeichnet), ein Lokalisierungssystem 406 (manchmal als Lokalisierungsmodul bezeichnet), ein Steuersystem 408 (manchmal als Steuermodul bezeichnet) und eine Datenbank 410. In einigen Ausführungsformen sind das Wahrnehmungssystem 402, das Planungssystem 404, das Lokalisierungssystem 406, das Steuersystem 408 und die Datenbank 410 in einem autonomen Navigationssystem eines Fahrzeugs (z.B. dem AV-Computer 202f des Fahrzeugs 200) enthalten und/oder implementiert. Zusätzlich oder alternativ sind in einigen Ausführungsformen das Wahrnehmungssystem 402, das Planungssystem 404, das Lokalisierungssystem 406, das Steuersystem 408 und die Datenbank 410 in einem oder mehreren eigenständigen Systemen enthalten (z.B. einem oder mehreren Systemen, die dem AV-Computer 400 gleichen oder ähneln, und/oder dergleichen). In einigen Beispielen sind das Wahrnehmungssystem 402, das Planungssystem 404, das Lokalisierungssystem 406, das Steuersystem 408 und die Datenbank 410 in einem oder mehreren eigenständigen Systemen enthalten, die sich in einem Fahrzeug und/oder in mindestens einem entfernt angeordneten System wie vorliegend beschrieben befinden. In einigen Ausführungsformen sind beliebige und/oder alle Systeme, die im AV-Computer 400 enthalten sind, in Software (z.B. in Softwareanweisungen, die im Speicher gespeichert sind), Computerhardware (z.B. durch Mikroprozessoren, Mikrocontroller, anwendungsspezifische integrierte Schaltungen (ASICs), frei programmierbare Gate-Arrays (FPGAs) und/oder dergleichen) oder Kombinationen aus Computersoftware und Computerhardware implementiert. Es versteht sich zudem, dass in einigen Ausführungsformen der AV-Computer 400 so ausgelegt ist, dass er mit einem entfernt angeordneten System kommuniziert (z.B. einem AV-System, das dem entfernt angeordneten AV-System 114 gleicht oder ähnelt, einem Fuhrparkverwaltungssystem 116, das dem Fuhrparkverwaltungssystem 116 gleicht oder ähnelt, einem V2l-System, das dem V2I-System 118 gleicht oder ähnelt, und/oder dergleichen).
-
In einigen Ausführungsformen empfängt das Wahrnehmungssystem 402 Daten im Zusammenhang mit mindestens einem physischen Objekt (z.B. Daten, die vom Wahrnehmungssystem 402 zur Erkennung des mindestens einen physischen Objekts verwendet werden) in einer Umgebung und klassifiziert das mindestens eine physische Objekt. In einigen Beispielen empfängt das Wahrnehmungssystem 402 Bilddaten, die von mindestens einer Kamera (z.B. den Kameras 202a) erfasst wurden, wobei das Bild mit einem oder mehreren physischen Objekten in einem Sichtfeld der mindestens einen Kamera assoziiert ist (z.B. diese darstellt). In einem solchen Beispiel klassifiziert das Wahrnehmungssystem 402 mindestens ein physisches Objekt auf Grundlage einer oder mehrerer Gruppierungen physischer Objekte (z.B. Fahrräder, Fahrzeuge, Verkehrsschilder, Fußgänger und/oder dergleichen). In einigen Ausführungsformen überträgt das Wahrnehmungssystem 402 Daten, die mit der Klassifizierung der physischen Objekte assoziiert sind, an das Planungssystem 404 auf Grundlage des Klassifizierens der physischen Objekte durch das Wahrnehmungssystem 402.
-
In einigen Ausführungsformen empfängt das Planungssystem 404 Daten, die mit einem Zielort assoziiert sind, und erzeugt Daten, die mit mindestens einer Route (z.B. den Routen 106) assoziiert sind, entlang derer ein Fahrzeug (z.B. die Fahrzeuge 102) zu einem Zielort fahren kann. In einigen Ausführungsformen empfängt das Planungssystem 404 periodisch oder kontinuierlich Daten vom Wahrnehmungssystem 402 (z.B. Daten, die mit der vorstehend beschriebenen Klassifizierung physischer Objekte zusammenhängen), und das Planungssystem 404 aktualisiert die mindestens eine Trajektorie oder erzeugt mindestens eine andere Trajektorie auf Grundlage der vom Wahrnehmungssystem 402 erzeugten Daten. Mit anderen Worten kann das Planungssystem 404 taktische funktionsbezogene Aufgaben ausführen, die für den Betrieb des Fahrzeugs 102 im Straßenverkehr erforderlich sind. Zu taktischen Maßnahmen gehört das Manövrieren des Fahrzeugs im Verkehr während einer Fahrt, darunter, ohne jedoch hierauf eingeschränkt zu sein, das Entscheiden, ob und wann ein anderes Fahrzeug überholt oder die Fahrspur gewechselt werden soll, oder das Auswählen einer geeigneten Geschwindigkeit, Beschleunigung, Verlangsamung usw. In einigen Ausführungsformen empfängt das Planungssystem 404 Daten im Zusammenhang mit einer aktualisierten Position eines Fahrzeugs (z.B. der Fahrzeuge 102) vom Lokalisierungssystem 406, und das Planungssystem 404 aktualisiert die mindestens eine Trajektorie oder erzeugt mindestens eine andere Trajektorie auf Grundlage der vom Lokalisierungssystem 406 erzeugten Daten.
-
In einigen Ausführungsformen empfängt das Lokalisierungssystem 406 Daten, die mit einem Standort eines Fahrzeugs (z.B. der Fahrzeuge 102) in einem Bereich assoziiert sind (z.B. diesen darstellen). In einigen Beispielen empfängt das Lokalisierungssystem 406 LiDAR-Daten im Zusammenhang mit mindestens einer Punktwolke, die von mindestens einem LiDAR-Sensor (z.B. den LiDAR-Sensoren 202b) erzeugt wurden. In bestimmten Beispielen empfängt das Lokalisierungssystem 406 Daten im Zusammenhang mit mindestens einer Punktwolke von mehreren LiDAR-Sensoren, und das Lokalisierungssystem 406 erzeugt eine kombinierte Punktwolke auf Grundlage jeder der Punktwolken. In diesen Beispielen vergleicht das Lokalisierungsmodul 406 die mindestens eine Punktwolke oder die kombinierte Punktwolke mit einer in der Datenbank 410 gespeicherten zweidimensionalen (2D-) und/oder einer dreidimensionalen (3D-) Karte des Bereichs. Das Lokalisierungssystem 406 bestimmt dann die Position des Fahrzeugs in dem Bereich basierend darauf, dass das System 406 die mindestens eine Punktwolke oder die kombinierte Punktwolke mit der Karte vergleicht. In einigen Ausführungsformen beinhaltet die Karte eine kombinierte Punktwolke des Bereichs, die vor der Navigation des Fahrzeugs erzeugt wird. In einigen Ausführungsformen beinhalten Karten, ohne jedoch hierauf eingeschränkt zu sein, hochpräzise Karten der geometrischen Eigenschaften der Fahrbahn, Karten, die Verbindungseigenschaften des Straßennetzes beschreiben, Karten, die physische Eigenschaften der Fahrbahn beschreiben (z.B. Verkehrsgeschwindigkeit, Verkehrsaufkommen, Anzahl der Fahrspuren für den Auto- und Radverkehr, Fahrspurbreite, Fahrspurrichtungen oder Fahrspurmarkierungstypen und -orte oder Kombinationen davon), sowie Karten, die die räumliche Lage von Straßenmerkmalen wie Fußgängerüberwegen, Verkehrsschildern oder anderen Verkehrssignalen verschiedener Arten beschreiben. In einigen Ausführungsformen wird die Karte in Echtzeit auf Grundlage der vom Wahrnehmungssystem empfangenen Daten erzeugt.
-
In einem anderen Beispiel empfängt das Lokalisierungssystem 406 GNSS-(Global Navigation Satellite System, globales Navigationssatellitensystem) Daten, die von einem GPS- (Global Positioning System, globales Positionsbestimmungssystem) Empfänger erzeugt werden. In einigen Beispielen empfängt das Lokalisierungssystem 406 GNSS-Daten im Zusammenhang mit dem Standort des Fahrzeugs in dem Bereich, und das Lokalisierungssystem 406 bestimmt einen Breitengrad und Längengrad des Fahrzeugs in dem Bereich. In einem solchen Beispiel bestimmt das Lokalisierungssystem 406 die Position des Fahrzeugs in dem Bereich auf Grundlage des Breiten- und Längengrads des Fahrzeugs. In einigen Ausführungsformen erzeugt das Lokalisierungssystem 406 Daten im Zusammenhang mit der Position des Fahrzeugs. In einigen Beispielen erzeugt das Lokalisierungssystem 406 Daten im Zusammenhang mit der Position des Fahrzeugs auf Grundlage des Bestimmens der Position des Fahrzeugs durch das Lokalisierungssystem 406. In einem solchen Beispiel beinhalten die Daten im Zusammenhang mit der Position des Fahrzeugs Daten, die mit einer oder mehreren semantischen Eigenschaften entsprechend der Position des Fahrzeugs assoziiert sind.
-
In einigen Ausführungsformen empfängt das Steuersystem 408 Daten im Zusammenhang mit mindestens einer Trajektorie vom Planungssystem 404, und das Steuersystem 408 steuert den Betrieb des Fahrzeugs. In einigen Beispielen empfängt das Steuersystem 408 Daten im Zusammenhang mit mindestens einer Trajektorie vom Planungssystem 404, und das Steuersystem 408 steuert den Betrieb des Fahrzeugs, indem es Steuersignale erzeugt und überträgt, um ein Antriebsstrangsteuersystem (z.B. das DBW-System 202h, das Antriebsstrangsteuersystem 204 und/oder dergleichen), ein Lenkungssteuersystem (z.B. das Lenkungssteuersystem 206) und/oder ein Bremssystem (z.B. das Bremssystem 208) in Betrieb zu setzen. Das Steuersystem 408 ist beispielsweise so ausgelegt, dass es betriebliche Funktionen wie eine seitliche Fahrzeugbewegungssteuerung oder eine Fahrzeuglängsbewegungssteuerung ausführt. Die seitliche Fahrzeugbewegungssteuerung bewirkt Aktivitäten, die für die Regulierung der y-Achsen-Komponente der Fahrzeugbewegung notwendig sind. Die Fahrzeuglängsbewegungssteuerung bewirkt Aktivitäten, die für die Regulierung der x-Achsen-Komponente der Fahrzeugbewegung erforderlich sind. In einem Beispiel, in dem eine Trajektorie eine Linkskurve beinhaltet, überträgt das Steuersystem 408 ein Steuersignal, um das Lenkungssteuersystem 206 zu veranlassen, einen Lenkwinkel des Fahrzeugs 200 einzustellen, wodurch bewirkt wird, dass das Fahrzeug 200 nach links abbiegt. Zusätzlich oder alternativ erzeugt und überträgt das Steuersystem 408 Steuersignale, um zu bewirken, dass andere Vorrichtungen (z.B. Scheinwerfer, Blinker, Türverriegelungen, Scheibenwischer und/oder dergleichen) des Fahrzeugs 200 ihren Zustand ändern.
-
In einigen Ausführungsformen implementieren das Wahrnehmungssystem 402, das Planungssystem 404, das Lokalisierungssystem 406 und/oder das Steuersystem 408 mindestens ein maschinelles Lernmodell (z.B. mindestens ein mehrschichtiges Perzeptron (multilayer perceptron, MLP), mindestens ein neuronales Faltungsnetz (convolutional neural network, CNN), mindestens ein rekurrentes neuronales Netz (RNN), mindestens einen Autoencoder, mindestens einen Transformator und/oder dergleichen). In einigen Beispielen implementieren das Wahrnehmungssystem 402, das Planungssystem 404, das Lokalisierungssystem 406 und/oder das Steuersystem 408 mindestens ein maschinelles Lernmodell allein oder in Kombination mit einem oder mehreren der vorstehend genannten Systeme. In einigen Beispielen implementieren das Wahrnehmungssystem 402, das Planungssystem 404, das Lokalisierungssystem 406 und/oder das Steuersystem 408 mindestens ein maschinelles Lernmodell als Teil einer Pipeline (z.B. einer Pipeline zum Identifizieren eines oder mehrerer Objekte, die sich in einer Umgebung befinden, und/oder dergleichen). Ein Beispiel einer Implementierung eines maschinellen Lernmodells ist nachstehend mit Bezug auf 4B-4D enthalten.
-
In der Datenbank 410 werden Daten gespeichert, die an das Wahrnehmungssystem 402, das Planungssystem 404, das Lokalisierungssystem 406 und/oder das Steuersystem 408 übertragen, von diesen empfangen und/oder aktualisiert werden. In einigen Beispielen beinhaltet die Datenbank 410 eine Speicherkomponente (z.B. eine Speicherkomponente, die der Speicherkomponente 308 aus 3 gleicht oder ähnelt), die Daten und/oder Software im Zusammenhang mit dem Betrieb speichert und mindestens ein System des AV-Computers 400 verwendet. In einigen Ausführungsformen speichert die Datenbank 410 Daten im Zusammenhang mit 2D- und/oder 3D-Karten mindestens eines Bereichs. In einigen Beispielen speichert die Datenbank 410 Daten im Zusammenhang mit 2D- und/oder 3D-Karten eines Teils einer Stadt, mehrerer Teile mehrerer Städte, mehrerer Städte, eines Bezirks, eines Bundesstaates, eines Staates (z.B. eines Landes) und/oder dergleichen. In einem solchen Beispiel kann ein Fahrzeug (z.B. ein Fahrzeug, das den Fahrzeugen 102 und/oder dem Fahrzeug 200 gleicht oder ähnelt) entlang einer oder mehrerer befahrbarer Regionen (z.B. einspurige Straßen, mehrspurige Straßen, Autobahnen, Nebenstraßen, Geländepfade und/oder dergleichen) fahren und mindestens einen LiDAR-Sensor (z.B. einen LiDAR-Sensor, der den LiDAR-Sensoren 202b gleicht oder ähnelt) veranlassen, Daten im Zusammenhang mit einem Bild zu erzeugen, das die in einem Sichtfeld des mindestens einen LiDAR-Sensors enthaltenen Objekte darstellt.
-
In einigen Ausführungsformen kann die Datenbank 410 auf einer Vielzahl von Vorrichtungen implementiert werden. In einigen Beispielen ist die Datenbank 410 in einem Fahrzeug (z.B. einem Fahrzeug, das den Fahrzeugen 102 und/oder dem Fahrzeug 200 gleicht oder ähnelt), einem AV-System (z.B. einem AV-System, das dem entfernt angeordneten AV-System 114 gleicht oder ähnelt), einem Fuhrparkverwaltungssystem (z.B. einem Fuhrparkverwaltungssystem, das dem Fuhrparkverwaltungssystem 116 aus 1 gleicht oder ähnelt), einem V2I-System (z.B. einem V2I-System, das dem V2I-System 118 aus 1 gleicht oder ähnelt) und/oder dergleichen enthalten.
-
Gemäß 4B ist ein Diagramm einer Implementierung eines maschinellen Lernmodells veranschaulicht. Genauer gesagt ist ein Diagramm einer Implementierung eines neuronalen Faltungsnetzes (convolutional neural network, CNN) 420 veranschaulicht. Für Veranschaulichungszwecke wird die folgende Beschreibung des CNN 420 mit Bezug auf eine Implementierung des CNN 420 durch das Wahrnehmungssystem 402 erfolgen. Es versteht sich jedoch, dass in einigen Beispielen das CNN 420 (z.B. eine oder mehrere Komponenten des CNN 420) durch andere Systeme verschieden von oder zusätzlich zu dem Wahrnehmungssystem 402 implementiert wird, wie etwa das Planungssystem 404, das Lokalisierungssystem 406 und/oder das Steuersystem 408. Wenngleich das CNN 420 bestimmte Merkmale beinhaltet, wie vorliegend beschrieben, sind diese Merkmale für Veranschaulichungszwecke bereitgestellt und sollen die vorliegende Offenbarung nicht beschränken.
-
Das CNN 420 beinhaltet eine Vielzahl von Faltungsschichten einschließlich einer ersten Faltungsschicht 422, einer zweiten Faltungsschicht 424 und einer Faltungsschicht 426. In einigen Ausführungsformen beinhaltet das CNN 420 eine Subsampling-Schicht 428 (manchmal als eine Pooling-Schicht bezeichnet). In einigen Ausführungsformen haben die Subsampling-Schicht 428 und/oder andere Subsampling-Schichten eine Dimension (d.h. eine Menge an Knoten), die kleiner ist als eine Dimension eines vorgelagerten (Upstream-) Systems. Da die Subsampling-Schicht 428 eine Dimension aufweist, die kleiner ist als eine Dimension einer Upstream-Schicht, konsolidiert das CNN 420 die Datenmenge, die mit der initialen Eingabe und/oder der Ausgabe einer Upstream-Schicht assoziiert ist, um dadurch die Menge an Berechnungen zu verringern, die notwendig sind, damit das CNN 420 weitere (Downstream-) Faltungsoperationen durchführt. Zusätzlich oder alternativ konsolidiert das CNN 420, da die Subsampling-Schicht 428 mit mindestens einer Subsampling-Funktion assoziiert ist (z.B. ausgelegt ist, diese durchzuführen) (wie nachstehend mit Bezug auf 4C und 4D beschrieben), die Menge an Daten, die mit der initialen Eingabe assoziiert ist.
-
Das Wahrnehmungssystem 402 führt Faltungsoperationen basierend darauf durch, dass das Wahrnehmungssystem 402 jeweilige Eingaben und/oder Ausgaben bereitstellt, die mit sowohl der ersten Faltungsschicht 422, der zweiten Faltungsschicht 424 als auch der Faltungsschicht 426 assoziiert sind, um jeweilige Ausgaben zu erzeugen. In einigen Beispielen implementiert das Wahrnehmungssystem 402 das CNN 420 basierend darauf, dass das Wahrnehmungssystem 402 Daten als Eingabe in die erste Faltungsschicht 422, die zweite Faltungsschicht 424 und die Faltungsschicht 426 bereitstellt. In einem solchen Beispiel liefert das Wahrnehmungssystem 402 die Daten als Eingabe in die erste Faltungsschicht 422, die zweite Faltungsschicht 424 und die Faltungsschicht 426 basierend darauf, dass das Wahrnehmungssystem 402 Daten von einem oder mehreren verschiedenen Systemen empfängt (z.B. einem oder mehreren Systemen eines Fahrzeugs, das gleich oder ähnlich ist wie das Fahrzeug 102, einem entfernt angeordneten AV-System, das gleich oder ähnlich ist wie das entfernt angeordnete AV-System 114, einem Fuhrparkverwaltungssystem, das gleich oder ähnlich ist wie das Fuhrparkverwaltungssystem 116, einem V2I-System, das gleich oder ähnlich ist wie das V2I-System 118, und/oder dergleichen). Eine ausführliche Beschreibung von Faltungsoperationen ist nachstehend mit Bezug auf 4C enthalten.
-
In einigen Ausführungsformen liefert das Wahrnehmungssystem 402 Daten im Zusammenhang mit einer Eingabe (als eine initiale Eingabe bezeichnet) in die erste Faltungsschicht 422, und das Wahrnehmungssystem 402 erzeugt Daten im Zusammenhang mit einer Ausgabe unter Verwendung der ersten Faltungsschicht 422. In einigen Ausführungsformen liefert das Wahrnehmungssystem 402 eine Ausgabe, die durch eine Faltungsschicht erzeugt wird, als Eingabe in eine andere Faltungsschicht. Beispielsweise liefert das Wahrnehmungssystem 402 die Ausgabe der ersten Faltungsschicht 422 als Eingabe in die Subsampling-Schicht 428, die zweite Faltungsschicht 424 und/oder die Faltungsschicht 426. In einem solchen Beispiel wird die erste Faltungsschicht 422 als eine Upstream-Schicht bezeichnet und die Subsampling-Schicht 428, die zweite Faltungsschicht 424 und/oder die Faltungsschicht 426 werden als Downstream-Schichten bezeichnet. Gleichermaßen liefert das Wahrnehmungssystem 402 in einigen Ausführungsformen die Ausgabe der Subsampling-Schicht 428 an die zweite Faltungsschicht 424 und/oder die Faltungsschicht 426, und in diesem Beispiel würde die Subsampling-Schicht 428 als eine Upstream-Schicht bezeichnet werden und die zweite Faltungsschicht 424 und/oder die Faltungsschicht 426 würden als Downstream-Schichten bezeichnet werden.
-
In einigen Ausführungsformen verarbeitet das Wahrnehmungssystem 402 die Daten, die mit der dem CNN 420 bereitgestellten Eingabe assoziiert sind, bevor das Wahrnehmungssystem 402 die Eingabe an das CNN 420 liefert. Beispielsweise verarbeitet das Wahrnehmungssystem 402 die Daten, die mit der dem CNN 420 bereitgestellten Eingabe assoziiert sind, basierend darauf, dass das Wahrnehmungssystem 402 Sensordaten (z.B. Bilddaten, LiDAR-Daten, Radardaten und/oder dergleichen) normalisiert.
-
In einigen Ausführungsformen erzeugt das CNN 420 eine Ausgabe basierend darauf, dass das Wahrnehmungssystem 402 Faltungsoperationen durchführt, die mit jeder Faltungsschicht assoziiert sind. In einigen Beispielen erzeugt das CNN 420 eine Ausgabe basierend darauf, dass das Wahrnehmungssystem 402 Faltungsoperationen durchführt, die mit jeder Faltungsschicht und einer initialen Eingabe assoziiert sind. In einigen Ausführungsformen erzeugt das Wahrnehmungssystem 402 die Ausgabe und liefert die Ausgabe als eine vollständig verknüpfte Schicht 430. In einigen Beispielen liefert das Wahrnehmungssystem 402 die Ausgabe der Faltungsschicht 426 als die vollständig verknüpfte Schicht 430, wobei die vollständig verknüpfte Schicht 430 Daten beinhaltet, die mit einer Vielzahl von Merkmalswerten assoziiert sind, bezeichnet als F1, F2... FN. In diesem Beispiel beinhaltet die Ausgabe der Faltungsschicht 426 Daten, die mit einer Vielzahl von Ausgabemerkmalswerten assoziiert sind, die eine Vorhersage repräsentieren.
-
In einigen Ausführungsformen identifiziert das Wahrnehmungssystem 402 eine Vorhersage aus einer Vielzahl von Vorhersagen basierend darauf, dass das Wahrnehmungssystem 402 einen Merkmalswert identifiziert, der mit der höchsten Wahrscheinlichkeit assoziiert ist, dass es sich um die korrekte Vorhersage aus der Vielzahl von Vorhersagen handelt. Wenn beispielsweise die vollständig verknüpfte Schicht 430 Merkmalswerte F1, F2, ... FN beinhaltet und F1 der größte Merkmalswert ist, identifiziert das Wahrnehmungssystem 402 die mit F1 assoziierte Vorhersage als die korrekte Vorhersage aus der Vielzahl von Vorhersagen. In einigen Ausführungsformen trainiert das Wahrnehmungssystem 402 das CNN 420 darauf, die Vorhersage zu erzeugen. In einigen Beispielen trainiert das Wahrnehmungssystem 402 das CNN 420 darauf, die Vorhersage zu erzeugen, basierend darauf, dass das Wahrnehmungssystem 402 dem CNN 420 Trainingsdaten im Zusammenhang mit der Vorhersage bereitstellt.
-
Gemäß 4C und 4D ist ein Diagramm eines beispielhaften Betriebs eines CNN 440 durch das Wahrnehmungssystem 402 veranschaulicht. In einigen Ausführungsformen gleicht oder ähnelt das CNN 440 (z.B. eine oder mehrere Komponenten des CNN 440) dem CNN 420 (z.B. einer oder mehreren Komponenten des CNN 420) (siehe 4B).
-
In Schritt 450 liefert das Wahrnehmungssystem 402 Daten, die mit einem Bild assoziiert sind, als Eingabe in ein CNN 440 (Schritt 450). Beispielsweise liefert, wie veranschaulicht, das Wahrnehmungssystem 402 die Daten, die mit dem Bild assoziiert sind, an das CNN 440, wobei das Bild ein Graustufenbild ist, das als Werte repräsentiert ist, die in einem zweidimensionalen (2D-) Array gespeichert sind. In einigen Ausführungsformen können die Daten, die mit dem Bild assoziiert sind, Daten beinhalten, die mit einem Farbbild assoziiert sind, wobei das Farbbild als Werte repräsentiert ist, die in einem dreidimensionalen (3D-) Array gespeichert sind. Zusätzlich oder alternativ können die Daten, die mit dem Bild assoziiert sind, Daten beinhalten, die mit einem Infrarotbild, einem Radarbild und/oder dergleichen assoziiert sind.
-
In Schritt 455 führt das CNN 440 eine erste Faltungsfunktion durch. Beispielsweise führt das CNN 440 die erste Faltungsfunktion basierend darauf durch, dass das CNN 440 die Werte, die das Bild repräsentieren, als Eingabe in ein oder mehrere Neuronen (nicht ausdrücklich veranschaulicht), die in der ersten Faltungsschicht 442 enthalten sind, bereitstellt. In diesem Beispiel können die Werte, die das Bild repräsentieren, Werten entsprechen, die eine Region des Bildes repräsentieren (manchmal als ein rezeptives Feld bezeichnet). In einigen Ausführungsformen ist jedes Neuron mit einem Filter (nicht ausdrücklich veranschaulicht) assoziiert. Ein Filter (manchmal als ein Kernel bezeichnet) ist als ein Array von Werten repräsentierbar, das in der Größe den Werten entspricht, die als Eingabe in das Neuron bereitgestellt werden. In einem Beispiel kann ein Filter dazu ausgelegt sein, Kanten (z.B. horizontale Linien, vertikale Linien, gerade Linien und/oder dergleichen) zu identifizieren. In folgenden Faltungsschichten können die mit Neuronen assoziierten Filter dazu ausgelegt sein, sukzessive komplexere Muster (z.B. Bögen, Objekte und/oder dergleichen) zu identifizieren.
-
In einigen Ausführungsformen führt das CNN 440 die erste Faltungsfunktion basierend darauf durch, dass das CNN 440 die Werte, die jedem des einen oder der mehreren in der ersten Faltungsschicht 442 enthaltenen Neuronen als Eingabe bereitgestellt werden, mit den Werten des Filters, das jedem des einen oder der mehreren Neuronen entspricht, multipliziert. Beispielsweise kann das CNN 440 die Werte, die jedem des einen oder der mehreren in der ersten Faltungsschicht 442 enthaltenen Neuronen als Eingabe bereitgestellt werden, mit den Werten des Filters, das jedem des einen oder der mehreren Neuronen entspricht, multiplizieren, um einen einzelnen Wert oder ein Array von Werten als eine Ausgabe zu erzeugen. In einigen Ausführungsformen wird die kollektive Ausgabe der Neuronen der ersten Faltungsschicht 442 als eine gefaltete Ausgabe bezeichnet. In einigen Ausführungsformen, in denen jedes Neuron das gleiche Filter aufweist, wird die gefaltete Ausgabe als eine Merkmalskarte (feature map) bezeichnet.
-
In einigen Ausführungsformen liefert das CNN 440 die Ausgaben jedes Neurons der ersten Faltungsschicht 442 an Neuronen einer Downstream-Schicht. Für Verdeutlichungszwecke kann eine Upstream-Schicht eine Schicht sein, die Daten an eine andere Schicht (als eine Downstream-Schicht bezeichnet) überträgt. Beispielsweise kann das CNN 440 die Ausgaben jedes Neurons der ersten Faltungsschicht 442 an entsprechende Neuronen einer Subsampling-Schicht liefern. In einem Beispiel liefert das CNN 440 die Ausgaben jedes Neurons der ersten Faltungsschicht 442 an entsprechende Neuronen der ersten Subsampling-Schicht 444. In einigen Ausführungsformen fügt das CNN 440 einen Bias-Wert zu den Aggregaten aller Werte hinzu, die jedem Neuron der Downstream-Schicht geliefert werden. Beispielsweise fügt das CNN 440 einen Bias-Wert zu den Aggregaten aller Werte hinzu, die jedem Neuron der ersten Subsampling-Schicht 444 geliefert werden. In einem solchen Beispiel bestimmt das CNN 440 einen finalen Wert, der jedem Neuron der ersten Subsampling-Schicht 444 bereitzustellen ist, basierend auf den Aggregaten aller Werte, die jedem Neuron geliefert werden, und einer Aktivierungsfunktion, die mit jedem Neuron der ersten Subsampling-Schicht 444 assoziiert ist.
-
In Schritt 460 führt das CNN 440 eine erste Subsampling-Funktion durch. Beispielsweise kann das CNN 440 eine erste Subsampling-Funktion basierend darauf durchführen, dass das CNN 440 die Werte, die durch die erste Faltungsschicht 442 ausgegeben werden, an entsprechende Neuronen der ersten Subsampling-Schicht 444 liefert. In einigen Ausführungsformen führt das CNN 440 die erste Subsampling-Funktion basierend auf einer Aggregationsfunktion durch. In einem Beispiel führt das CNN 440 die erste Subsampling-Funktion basierend darauf durch, dass das CNN 440 die maximale Eingabe unter den Werten bestimmt, die einem gegebenen Neuron geliefert werden (als Max-Pooling-Funktion bezeichnet). In einem anderen Beispiel führt das CNN 440 die erste Subsampling-Funktion basierend darauf durch, dass das CNN 440 die durchschnittliche Eingabe unter den Werten bestimmt, die einem gegebenen Neuron geliefert werden (als Average-Pooling-Funktion bezeichnet). In einigen Ausführungsformen erzeugt das CNN 440 eine Ausgabe basierend darauf, dass das CNN 440 die Werte jedem Neuron der ersten Subsampling-Schicht 444 liefert, wobei die Ausgabe manchmal als gefaltete Subsampling-Ausgabe bezeichnet wird.
-
In Schritt 465 führt das CNN 440 eine zweite Faltungsfunktion durch. In einigen Ausführungsformen führt das CNN 440 die zweite Faltungsfunktion auf eine ähnliche Weise durch, wie das CNN 440 die vorstehend beschriebene erste Faltungsfunktion durchführte. In einigen Ausführungsformen führt das CNN 440 die zweite Faltungsfunktion basierend darauf durch, dass das CNN 440 die Werte, die durch die erste Subsampling-Schicht 444 ausgegeben werden, als Eingabe in ein oder mehrere Neuronen (nicht ausdrücklich veranschaulicht), die in der zweiten Faltungsschicht 446 enthalten sind, bereitstellt. In einigen Ausführungsformen ist jedes Neuron der zweiten Faltungsschicht 446 mit einem Filter assoziiert, wie vorstehend beschrieben. Das eine oder die mehreren mit der zweiten Faltungsschicht 446 assoziierten Filter können dazu ausgelegt sein, komplexere Muster als das Filter zu identifizieren, das mit der ersten Faltungsschicht 442 assoziiert ist, wie vorstehend beschrieben.
-
In einigen Ausführungsformen führt das CNN 440 die zweite Faltungsfunktion basierend darauf durch, dass das CNN 440 die Werte, die jedem des einen oder der mehreren in der zweiten Faltungsschicht 446 enthaltenen Neuronen als Eingabe bereitgestellt werden, mit den Werten des Filters, das jedem des einen oder der mehreren Neuronen entspricht, multipliziert. Beispielsweise kann das CNN 440 die Werte, die jedem des einen oder der mehreren in der zweiten Faltungsschicht 446 enthaltenen Neuronen als Eingabe bereitgestellt werden, mit den Werten des Filters, das jedem des einen oder der mehreren Neuronen entspricht, multiplizieren, um einen einzelnen Wert oder ein Array von Werten als eine Ausgabe zu erzeugen.
-
In einigen Ausführungsformen liefert das CNN 440 die Ausgaben jedes Neurons der zweiten Faltungsschicht 446 an Neuronen einer Downstream-Schicht. Beispielsweise kann das CNN 440 die Ausgaben jedes Neurons der ersten Faltungsschicht 442 an entsprechende Neuronen einer Subsampling-Schicht liefern. In einem Beispiel liefert das CNN 440 die Ausgaben jedes Neurons der ersten Faltungsschicht 442 an entsprechende Neuronen der zweiten Subsampling-Schicht 448. In einigen Ausführungsformen fügt das CNN 440 einen Bias-Wert zu den Aggregaten aller Werte hinzu, die jedem Neuron der Downstream-Schicht geliefert werden. Beispielsweise fügt das CNN 440 einen Bias-Wert zu den Aggregaten aller Werte hinzu, die jedem Neuron der zweiten Subsampling-Schicht 448 geliefert werden. In einem solchen Beispiel bestimmt das CNN 440 einen finalen Wert, der jedem Neuron der zweiten Subsampling-Schicht 448 bereitzustellen ist, basierend auf den Aggregaten aller Werte, die jedem Neuron geliefert werden, und einer Aktivierungsfunktion, die mit jedem Neuron der zweiten Subsampling-Schicht 448 assoziiert ist.
-
In Schritt 470 führt das CNN 440 eine zweite Subsampling-Funktion durch. Beispielsweise kann das CNN 440 eine zweite Subsampling-Funktion basierend darauf durchführen, dass das CNN 440 die Werte, die durch die zweite Faltungsschicht 446 ausgegeben werden, an entsprechende Neuronen der zweiten Subsampling-Schicht 448 liefert. In einigen Ausführungsformen führt das CNN 440 die zweite Subsampling-Funktion basierend darauf durch, dass das CNN 440 eine Aggregationsfunktion verwendet. In einem Beispiel führt das CNN 440 die erste Subsampling-Funktion basierend darauf durch, dass das CNN 440 die maximale Eingabe oder eine durchschnittliche Eingabe unter den Werten, die einem gegebenen Neuron bereitgestellt werden, bestimmt, wie vorstehend beschrieben. In einigen Ausführungsformen erzeugt das CNN 440 eine Ausgabe basierend darauf, dass das CNN 440 die Werte jedem Neuron der zweiten Subsampling-Schicht 448 liefert.
-
In Schritt 475 liefert das CNN 440 die Ausgabe jedes Neurons der zweiten Subsampling-Schicht 448 an vollständig verknüpfte Schichten 449. Beispielsweise liefert das CNN 440 die Ausgabe jedes Neurons der zweiten Subsampling-Schicht 448 an vollständig verknüpfte Schichten 449, um zu bewirken, dass die vollständig verknüpften Schichten 449 eine Ausgabe erzeugen. In einigen Ausführungsformen sind die vollständig verknüpften Schichten 449 dazu ausgelegt, eine Ausgabe zu erzeugen, die mit einer Vorhersage (manchmal als eine Klassifikation bezeichnet) assoziiert ist. Die Vorhersage kann eine Indikation beinhalten, dass ein Objekt, das in dem als Eingabe in das CNN 440 bereitgestellten Bild enthalten ist, ein Objekt, einen Satz von Objekten und/oder dergleichen beinhaltet. In einigen Ausführungsformen führt das Wahrnehmungssystem 402 eine oder mehrere Operationen durch und/oder liefert die mit der Vorhersage assoziierten Daten an ein anderes vorliegend beschriebenes System.
-
5 zeigt Diagramme einer Implementierung 500 eines Prozesses für Kartendatenerfassung. In einigen Ausführungsformen beinhaltet die Implementierung 500 ein autonomes System 504. Das autonome System 504 gleicht oder ähnelt dem autonomen System 202 aus 2. Wie in 5 gezeigt, beinhaltet das autonome System 504 eine Sensorsuite mit Kameras 506a, LiDAR-Sensoren 506b, Radarsensoren 506c und Mikrofonen 506d. Die Kameras 506a, die LiDAR-Sensoren 506b, die Radarsensoren 506c und die Mikrofone 506d gleichen oder ähneln den Kameras 202a, den LiDAR-Sensoren 202b, den Radarsensoren 202c und den Mikrofonen 202d aus 2. In einigen Ausführungsformen werden von der Sensorsuite erfasste Daten verwendet, um hochauflösende (HD-) Karten mit global konsistenten Polylinien zu erzeugen. In der Implementierung 500 empfängt ein autonomes System 504 periodisch oder kontinuierlich Daten von Sensoren (z.B. den Kameras 506a, den LiDAR-Sensoren 506b, den Radarsensoren 506c und den Mikrofonen 506d) eines Fahrzeugs 502. In einigen Beispielen erfassen die Sensoren Sensor-Rohdaten im Zusammenhang mit der Umgebung (z.B. der Umgebung 100 aus 1).
-
In einigen Beispielen beinhalten die Sensor-Rohdaten LiDAR-Daten, wobei die LiDAR-Daten von den LiDAR-Sensoren 506b erfasst werden. Die LiDAR-Sensoren 506b erfassen Daten, während das Fahrzeug entlang der Trajektorie durch die Umgebung navigiert. Die erfassten LiDAR-Daten werden zum Erzeugen mindestens einer Punktwolke verwendet, In einigen Beispielen handelt es sich bei einer Punktwolke um eine Sammlung von 2D- oder 3D-Punkten, die verwendet wird, um eine Darstellung der Umgebung zu konstruieren. In einigen Beispielen tastet ein LiDAR-Sensor die Umgebung wiederholt in einem 360-Grad-Schwenk ab, während das Fahrzeug die Umgebung gemäß der Trajektorie durchfährt. Die Rotationsabtastung der Umgebung durch das LiDAR wird umgangssprachlich als Full Sweep (vollständiger Schwenk bzw. vollständige Abtastung) bezeichnet. Die Sweeps überschneiden sich typischerweise derart, dass dieselben Standorte in den Sweeps der LiDAR-Daten (z.B. Punktwolken) mit unterschiedlichen Zeitstempeln dargestellt werden. Die LiDAR-Daten werden verarbeitet, um Merkmale in einer Vogelperspektive (bird's-eye view, BEV) zu extrahieren. Eine BEV ist beispielsweise eine Draufsicht auf die Umgebung. Die BEV-Merkmale, die aus überlappenden LiDAR-Abtastungen extrahiert wurden, werden zur Erzeugung überlappender reichhaltiger Merkmalskarten (rich feature maps) verwendet.
-
In einigen Ausführungsformen werden die Merkmalskarten in HD-Karten integriert. Bei einer HD-Karte handelt es sich beispielsweise um eine hochpräzise Karte, die es computergestützten Navigationssystemen ermöglicht, präzise Trajektorien und andere Informationen für die Navigation in der Umgebung zu bestimmen. Eine HD-Karte ist umfassend und so aufgebaut, dass sie sichere und effiziente Entscheidungsfindung unterstützt. Eine HD-Karte enthält mehrere Schichten, wie z.B. eine Standard-Basiskartenschicht, eine geometrische Schicht, die geometrischer Eigenschaften der Fahrbahn und Eigenschaften der Straßennetzkonnektivität beschreibt, und eine semantische Schicht, die physische Eigenschaften der Fahrbahn (z.B. die Anzahl der Fahrspuren für Fahrzeuge und Radfahrer, Fahrspurbreite, Fahrtrichtung von Fahrspuren oder Art und Position von Fahrspurmarkierungen oder beliebige Kombinationen aus diesen) und räumliche Standorte von Straßenmerkmalen wie Fußgängerüberwegen, Verkehrsschildern oder anderen Verkehrssignalen verschiedener Art beschreibt. Im Betrieb vergleicht ein Lokalisierungssystem (z.B. das Lokalisierungssystem 406 aus 4) die erfassten Sensordaten mit gespeicherten Karten, um eine Position eines Fahrzeugs einschließlich des computergestützten Navigationssystems in dem Bereich zu bestimmen. Die Erstellung und Aktualisierung der HD-Karten beinhaltet eine Visualisierung der Karten derart, dass menschliche Kommentatoren die HD-Karten an einer Benutzerschnittstelle (z.B. der Eingabeschnittstelle 310 aus 3) überprüfen und mit weiteren Kommentierungen versehen können. In einigen Beispielen werden Merkmalskarten, die aus den von den LiDAR-Sensoren 506b entlang der verschiedenen Trajektorien erfassten LiDAR-Daten abgeleitet werden, aggregiert, um Visualisierungen der Umgebung zu extrahieren, wie z.B. der Straßengeometrie einschließlich Konnektivitätseigenschaften, physischer Eigenschaften und räumlicher Standorte von Straßenmerkmalen wie Fußgängerüberwegen, Verkehrszeichen oder anderen Verkehrssignalen verschiedener Art. Die Visualisierungen werden beispielsweise an einer Ausgabeschnittstelle ausgegeben (z.B. der Ausgabeschnittstelle 312 aus 3).
-
6 ist eine Darstellung von Kartenschichten 600 einer hochauflösenden Karte. Zur besseren Veranschaulichung wird eine einzelne Kreuzung durch die Schichten 600 in einem bestimmten Bereich von x- und y-Koordinatenwerten in einer BEV dargestellt. Die Karten können jedoch gemäß den vorliegenden Methoden eine beliebige Anzahl von geografischen Merkmalen enthalten und in ihrem Umfang variieren. In einigen Beispielen erstrecken sich Karten gemäß den vorliegenden Methoden über eine Region und sind in der gesamten Region konsistent. Bei der großen Region handelt es sich zum Beispiel um eine Teilmenge einer Stadt, deren x- und y-Koordinatenwerte mehreren Meilen der Umgebung entsprechen.
-
Im Beispiel von 6 handelt es sich bei der Basiskarte 602 um eine weniger detaillierte Karte, die allgemeine Merkmalsinformationen der Region enthält. Die Basiskarte 602 enthält beispielsweise standardmäßige geografische Informationen im Zusammenhang mit der Landschaft. In einigen Beispielen handelt es sich bei der Basiskarte (2D) um eine Standardkarte, die von Dritten, z.B. einem Kartenanbieter, bezogen wird. Die Basiskarte 602 ist eine standardisierte Karte ohne Anpassungen. In einigen Beispielen handelt es sich bei der Basiskarte 602 um eine Standarddefinitionskarte, die keine Straßengeometrie wie z.B. Konnektivitätseigenschaften, physische Eigenschaften und räumliche Standorte von Straßenmerkmalen, einschließlich Fußgängerüberwegen, Verkehrszeichen oder anderer Verkehrssignale verschiedener Art, enthält.
-
In einigen Beispielen werden aus LiDAR-Daten bestimmte Merkmalskarten verwendet, um die Basiskarte 602 mit Straßengeometrie und Straßenmerkmalen zu ergänzen. Wenn ein Fahrzeug beispielsweise entlang einer Trajektorie in einer Region navigiert, die mindestens einer Basiskarte entspricht, werden LiDAR-Abtastungen der Umgebung erfasst. Im Beispiel von 6 werden Merkmale aus den sich überlappenden LiDAR-Abtastungen extrahiert. Die Merkmale werden in ein trainiertes neuronales Netz eingegeben, das reichhaltige Merkmalskarten ausgibt, die um Polylinien ergänzt sind. Die reichhaltigen Merkmalskarten werden aggregiert, um global konsistente Polylinien 610 zu erzeugen, wodurch Straßengeometrieinstanzen einer geometrischen Schicht 604 gebildet werden. Auf Grundlage der erzeugten global konsistenten Polylinien 610 können menschliche Kommentatoren Begrenzungsrahmen (bounding boxes) zeichnen, um die Einfügung global konsistenter Fahrspurbegrenzungskommentierungen 620 anzuzeigen. Wie in 6 dargestellt, enthält die semantische Schicht 606 semantische Informationen wie global konsistente Fahrspurbegrenzungskommentierungen 620, die semantische Merkmale der Umgebung abgrenzen. In einigen Beispielen handelt es sich bei Fahrspurbegrenzungskommentierungen um Markierungen auf einer Karte, die Standorte kennzeichnen, die mit Fahrspuren assoziierten Begrenzungen entsprechen, wie z.B. Fahrspurbegrenzungen, die befahrbare Bereiche in Fahrspuren unterteilen, Bordsteinbegrenzungen und weiterer Straßengeometrie, einschließlich Konnektivitätseigenschaften, physischer Eigenschaften und Straßenmerkmalen wie Fußgängerüberwegen, Verkehrszeichen oder anderen Verkehrssignalen verschiedener Art.
-
7A zeigt überlappende Merkmalskarten 700A entlang einer Trajektorie 702. Bei den überlappenden Merkmalskarten 700A handelt es sich um reichhaltige Merkmalskarten, die auf Merkmalen basieren, die aus LiDAR-Abtastungen extrahiert wurden, die während der Navigation des Fahrzeugs entlang der Trajektorie 702 erfasst wurden. In einigen Beispielen entspricht die Trajektorie 702 Standorten der Basiskarte 602 aus 6. Wie in 7A gezeigt, ist die Trajektorie 702 durch eine Reihe von Pfeilen angegeben. Jede jeweilige reichhaltige Merkmalskarte 704A...704N wird durch ein Rechteck dargestellt. In einigen Beispielen wird eine große Anzahl von Merkmalskarten, die eine Region darstellen, aggregiert, um global konsistente Polylinien für die Region zu erstellen. Global konsistente Polylinien erstrecken sich über eine Region, die z.B. einer Teilmenge einer Stadt entspricht. Einige Methoden erzeugen Polylinien auf Grundlage einiger weniger Abtastungen oder Bildrahmen von LiDAR-Daten, was zu global inkonsistenten Polylinien führt. Die inkonsistenten Polylinien erhöhen den Kommentierungsaufwand für menschliche Kommentatoren, die dann Unstimmigkeiten durch manuelle Aktualisierung der HD-Karte ausgleichen müssen.
-
Die vorliegenden Methoden ermöglichen eine global konsistente HD-Kartenregion. In einigen Ausführungsformen werden Polylinien auf Grundlage von Merkmalen erzeugt, die aus überlappenden LiDAR-Abtastungen extrahiert wurden. Beispielsweise werden die LiDAR-Daten erfasst und in eine BEV umgewandelt. Zu LiDAR-Daten zählen beispielsweise Koordinaten (z.B. x-, y-, z-) und Reflektivitätsinformationen für jeden vom LiDAR abgetasteten Punkt. Merkmale werden aus den LiDAR-Daten in der BEV extrahiert. In einigen Ausführungsformen werden die Merkmale in ein trainiertes maschinelles Lernmodell eingegeben, um reichhaltige Merkmalskarten zu erhalten. In einigen Beispielen beinhalten reichhaltige Merkmalskarten eine oder mehrere Polylinien. Die reichhaltigen Merkmalskarten werden aggregiert und zur Erzeugung eines Rasterbildes verwendet, bei dem jeder Punkt (z.B. Zelle, Pixel) in einem zweidimensionalen Bild auf Grundlage der entsprechenden x- und y-Koordinaten verortet ist. In den aggregierten reichhaltigen Merkmalskarten ist der Wert für jeden Punkt im Bild ein Gleitkommawert, der den aggregierten Polylinien an einem jeweiligen Punkt entspricht. In einigen Beispielen ist das Rasterbild eine Anordnung von Zellen oder Pixeln, die in Zeilen und Spalten organisiert sind (z.B. ein Raster), wobei jede Zelle oder jedes Pixel einen Wert enthält, der Informationen darstellt. In einigen Ausführungsformen werden die reichhaltigen Merkmalskarten auf eine rechteckige Form zugeschnitten, um die Verarbeitung zu erleichtern. Die rechteckige Form ist rechnerisch einfacher zu handhaben, sie kann in ein Array eingefügt und in ein neuronales Netz eingegeben werden. In einigen Ausführungsformen wird für jeden Punkt der Trajektorie 702 eine räumliche Ausdehnung erhalten, in der die LiDAR-Abtastungen relevant sind. Die reichhaltigen Merkmalskarten 704A...704N werden so zugeschnitten, dass sie der räumlichen Ausdehnung der LiDAR-Abtastungen entsprechen. Während ein Fahrzeug die vorgegebene Trajektorie 702 abfährt, überlappen sich die LiDAR-Abtastungen und die daraus resultierenden reichhaltigen Merkmalskarten 704A...704N. Zum Beispiel überlappen sich die reichhaltigen Merkmalskarten 704A...704N bei den Bezugszeichen 706 und 708. Die vorliegenden Methoden aggregieren die reichhaltigen Merkmalskarten und verwenden die aggregierten reichhaltigen Merkmalskarten, um ein Rasterbild zu erhalten.
-
7B zeigt vorhergesagte Rasterbilder gemäß verschiedenen Aggregationsfunktionen. In einigen Ausführungsformen werden Aggregationsfunktionen verwendet, um einen Wert für jeden Standort (z.B. für Standorte, die einer Basiskarte entsprechen) auf Grundlage mehrerer sich überlappender Merkmalskarten zu bestimmen. Dementsprechend aggregieren die Aggregationsfunktionen in einigen Ausführungsformen reichhaltige Merkmalskarten wie beispielsweise die überlappenden reichhaltigen Merkmalskarten 704A...704N aus 7A. In Beispielen erhalten die Aggregationsfunktionen Gleitkommawerte aus N Merkmalskarten, die der Höhe oder dem Höhenwert (z.B. der z-Koordinate) an einem jeweiligen Punkt der Basiskarte entsprechen. Die Aggregationsfunktionen bestimmen einen endgültigen Wert für den jeweiligen Punkt im Rasterbild auf Grundlage mindestens einer Merkmalskarte, die den jeweiligen Punkt enthält. In den Rasterbildern 720, 722 und 724 zeigt die Dicke oder Intensität bestimmter Bereiche ein höheres Ansprechverhalten (z.B. Vorhandensein von Datenwerten) einer bestimmten Aggregationsfunktion an. Im Beispiel von 7B wird ein Rasterbild 720 gemäß einer maximalen Aggregationsfunktion erzeugt; ein Rasterbild 722 wird gemäß einer minimalen Aggregationsfunktion erzeugt; und ein Rasterbild 724 wird gemäß einer mittleren Aggregationsfunktion erzeugt.
-
Die Performanz der Aggregationsfunktionen wird statistisch quantifiziert. Das resultierende aggregierte Rasterbild wird z.B. im Hinblick auf die Anzahl falsch Positiver, falsch Negativer, Genauigkeit, Trefferquote (recall) oder beliebige Kombinationen aus diesen evaluiert. Ein falsch-positives Ergebnis ist ein Fehler, der anzeigt, dass ein Zustand vorliegt, obwohl dieser tatsächlich nicht vorliegt. Ein falschnegatives Ergebnis ist ein Fehler, der fälschlicherweise anzeigt, dass ein Zustand nicht vorliegt. Ein richtig-positives Ergebnis ist ein korrekt angegebener positiver Zustand und ein richtig-negatives Ergebnis ist ein korrekt angegebener negativer Zustand. Die Genauigkeit ist die Anzahl richtig-positiver Ergebnisse geteilt durch die Summe richtig-positiver und falsch-positiver Ergebnisse. In ähnlicher Weise ist die Trefferquote die Anzahl richtig-positiver Ergebnisse geteilt durch die Summe richtig-positiver und falsch-positiver Ergebnisse.
-
Ein Rasterbild 720 wird gemäß einer maximalen Aggregationsfunktion erzeugt. Die maximale Aggregationsfunktion erhält das Rasterbild 720 durch Evaluieren der Werte, die für eine jeweilige Zelle oder ein jeweiliges Pixel, die bzw. das einem Standort der Basiskarte entspricht, bestimmt wurden. Die Werte werden evaluiert, und der höchste Wert (z.B. das Maximum) aus den mehreren Merkmalskarten wird als endgültiger Wert für die Zelle oder das Pixel beibehalten. In einigen Ausführungsformen maximiert die maximale Aggregationsfunktion die Trefferquote gegenüber der Genauigkeit. Die maximale Aggregationsfunktion ist mit einem Ansprechverhalten assoziiert, das im Vergleich zu anderen Aggregationsfunktionen eine höhere Anzahl falsch-positiver und eine geringere Anzahl falsch-negativer Ergebnisse enthält. Wie in Rasterbild 720 zu sehen ist, führt die höhere Anzahl falsch-positiver Ergebnisse zu dichten Polylinien, die eine Straßengeometrie anzeigen, die in Wirklichkeit nicht existiert.
-
Ein Rasterbild 722 wird gemäß einer minimalen Aggregationsfunktion erzeugt. Die minimale Aggregationsfunktion erhält das Rasterbild 722 durch Evaluieren der Werte, die für eine jeweilige Zelle oder ein jeweiliges Pixel, die bzw. das einem Standort der Basiskarte entspricht, bestimmt wurden. Die Werte werden evaluiert, und der niedrigste Wert (z.B. das Minimum) aus den mehreren Merkmalskarten wird als endgültiger Wert für die Zelle oder das Pixel beibehalten. In einigen Ausführungsformen maximiert die minimale Aggregationsfunktion die Genauigkeit gegenüber der Trefferquote. Die minimale Aggregationsfunktion ist mit einem Ansprechverhalten assoziiert, das im Vergleich zu anderen Aggregationsfunktionen eine höhere Anzahl falsch-negativer und eine geringere Anzahl falsch-positiver Ergebnisse enthält. Wie in Rasterbild 722 zu sehen ist, führt die höhere Anzahl falsch-negativer Ergebnisse zu spärlichen Polylinien, die fälschlicherweise anzeigen, dass keine Straßengeometrie vorhanden ist.
-
Ein Rasterbild 724 wird gemäß einer mittleren Aggregationsfunktion erzeugt. Die mittlere Aggregationsfunktion erhält das Rasterbild 724 durch Evaluieren der Werte, die für eine jeweilige Zelle oder ein jeweiliges Pixel, die bzw. das einem Standort der Basiskarte entspricht, bestimmt wurden. Die Werte werden evaluiert, und ein Durchschnitt (z.B. Mittelwert) wird auf Grundlage der aus den mehreren Merkmalskarten erhaltenen Werte berechnet. Die mittlere Aggregationsfunktion verwaltet die Kompromisse zwischen der maximalen Aggregationsfunktion und der minimalen Aggregationsfunktion. Wie in Rasterbild 724 zu sehen ist, führt das Ansprechverhalten der mittleren Aggregationsfunktion zu Polylinien, die dicker sind als die in Rasterbild 722, jedoch nicht so dick wie die Polylinien in Rasterbild 720.
-
8 zeigt die Extraktion von Geometrieinstanzen aus einem Raster aggregierter Vorhersagen. In einigen Beispielen wird das Raster 802 aus aggregierten Vorhersagen durch Anwenden einer Aggregationsfunktion (z.B. der Aggregationsfunktionen 700B aus 7) auf N reichhaltige Merkmalskarten (z.B. die reichhaltigen Merkmalskarten 704A...704N aus 7A) erhalten. Auf das Raster 802 aus aggregierten Vorhersagen wird eine Vektorisierung 804 angewendet, um extrahierte Geometrieinstanzen 806 zu erhalten. In einigen Beispielen handelt es sich bei der Vektorisierung 804 um einen Bildverarbeitungsalgorithmus, der pixelbasierte Merkmalskarten in geordnete Vektorlinienzüge umwandelt.
-
Je höher die Anzahl der sich überlappenden Merkmalskarten ist, die zur Erzeugung der global konsistenten Polylinien verwendet werden, desto höher ist in einigen Beispielen die Konfidenz in die Polylinien. Die vorliegenden Methoden ermöglichen ein reibungsloses Ansprechverhalten, indem sie alle in den LiDAR-Abtastungen erfassten Informationen nutzen, die in den reichhaltigen Merkmalskarten dargestellt sind. In einigen Beispielen verwenden die reichhaltigen Merkmalskarten Gleitkommawerte zur Darstellung von Merkmalen. Dies führt zu einer besseren Schätzung der globalen Polylinien als eine einfache Aggregation von Polylinien, die aus einer kleinen Anzahl von LiDAR-Abtastungen erzeugt wurden. Die Polylinien gemäß den vorliegenden Methoden sind innerhalb einer Region durchgängig, und für jede Region wird eine große Anzahl reichhaltiger Merkmalskarten aggregiert. Die Vektorisierungsprozedur ermöglicht eine Extraktion der Fahrbahngeometrie auf Grundlage der aggregierten Vorhersage von Polylinien. Die aggregierten Polylinien stellen zum Beispiel unterschiedliche, überlappende Fahrspurbegrenzungen dar. Die Vektorisierung extrahiert die Straßengeometrie, z.B. Fahrspurbegrenzungen, Bordsteinbegrenzungen, Konnektivitätseigenschaften der Straßen und physische (topologische) Eigenschaften der Straße.
-
9 veranschaulicht ein Flussdiagramm eines Prozesses 900 zur Erzeugung von Polylinien. In einigen Ausführungsformen werden ein oder mehrere der Schritte, die mit Bezug auf den Prozess 900 beschrieben sind, (z.B. vollständig, teilweise und/oder dergleichen) durch den AV-Computer 202f aus 2 oder die Vorrichtung 300 aus 3 durchgeführt. Zusätzlich oder alternativ werden in einigen Ausführungsformen ein oder mehrere Schritte, die mit Bezug auf den Prozess 900 beschrieben sind, (z.B. vollständig, teilweise und/oder dergleichen) durch eine andere Vorrichtung oder Gruppe von Vorrichtungen separat von oder einschließlich des autonomen Systems 202, wie etwa das entfernt angeordnete AV-System 114 aus 1, durchgeführt.
-
In Block 902 werden Sensordaten entlang einer Trajektorie erhalten, die Standorten einer Basiskarte entspricht. In Block 904 werden Merkmale aus den Sensordaten in einer Vogelperspektive extrahiert. In einigen Beispielen werden die Merkmale aus sich überlappenden LiDAR-Abtastungen extrahiert. Die LiDAR-Abtastungen werden während der Navigation eines Fahrzeugs entlang einer Trajektorie erfasst.
-
In Block 906 werden die Merkmale in ein trainiertes neuronales Netz eingegeben. Das trainierte neuronale Netz gibt reichhaltige Merkmalskarten mit Polylinien aus, die den LiDAR-Abtastungen entsprechen. Die reichhaltigen Merkmalskarten werden als Gleitkommawerte dargestellt. In Block 908 werden die überlappenden reichhaltigen Merkmalskarten gemäß einer Aggregationsfunktion aggregiert, um Rasterbilder einer Region zu erhalten. In einigen Beispielen handelt es sich bei der Aggregationsfunktion um eine maximale Aggregationsfunktion, eine minimale Aggregationsfunktion oder eine mittlere Aggregationsfunktion. In einigen Beispielen werden Vektordaten, die die reichhaltigen Merkmalskarten darstellen, in ein neuronales Graphennetz eingegeben, das global konsistente Polylinien ausgibt.
-
In Block 910 wird die Vektorisierung auf die Rasterbilder angewendet. Die Vektorisierung beinhaltet beispielsweise Skelettierung, graphenbasierte Geometrieextraktion und Sparsifizierung. Die Vektorisierung extrahiert eine Fahrbahngeometrie. Die Fahrbahngeometrie (z.B. die Geometrieinstanzen 604 aus 6) wird durch global konsistente Polylinien (z.B. die Polylinien 610 aus 6) dargestellt. In einigen Beispielen entspricht die Fahrbahngeometrie der Basiskarte. Die global konsistenten Polylinien können verwendet werden, um zusätzliche semantische Informationen zu erhalten. In einigen Beispielen werden die global konsistenten Polylinien gespeichert, wobei die global konsistenten Polylinien Lokalisierung ermöglichen, während ein Fahrzeug die Standorte der Basiskarte befährt. In einigen Beispielen werden aus den global konsistenten Polylinien semantische Informationen extrahiert.
-
Nachdem die global konsistenten Polylinien erhalten wurden, werden den Polylinien zusätzliche komplexe Kommentierungen hinzugefügt. Die Kommentierungen beinhalten beispielsweise Fahrspurkommentierungen, Assoziationsinformationen wie Basiswege und dergleichen, die fein abgestimmt werden, um eine HD-Karte für den Gebrauch durch ein computergestütztes Navigationssystem zu erhalten. Zu den Fahrspurkommentierungen zählen beispielsweise Ampeln, Ampelrichtung, Fußgängerüberwege und Haltelinien. Durch automatisches Erzeugen semantischer Objekte wird eine Vielzahl semantischer Informationen in die HD-Karte eingebettet.
-
In einigen Ausführungsformen ermöglicht eine angepasste Benutzerschnittstelle (z.B. die Eingabeschnittstelle 310 aus 3) einem menschlichen Kommentator eine allgemeine Auswahl von Bereichen der Karte zur automatischen Erzeugung semantischer Objekte. Die allgemeine Auswahl definiert beispielsweise räumliche Grenzen, um einen Bereich einzugrenzen, der einer automatischen Erzeugung semantischer Objekte unterzogen wird. In einigen Ausführungsformen werden die semantischen Objekte in der HD-Karte als Polygone dargestellt, die semantische Merkmale der Umgebung abgrenzen. Auf diese Weise ermöglichen die global konsistenten Polylinien eine Benutzerschnittstelle mit Visualisierungen, die die Polylinien und die Basiskarte einer Region für menschliche Kommentierung enthalten, und beseitigen die Notwendigkeit für menschliche Kommentatoren, Unstetigkeiten in Polylinien zu korrigieren oder auszugleichen, was zu Unstetigkeiten in geometrischen Instanzen oder der geometrischen Kartenschicht führt. Einige Methoden beschränken sich beispielsweise auf das Bestimmen von Polylinien auf Grundlage einiger weniger LiDAR-Abtastungen. Die begrenzten LiDAR-Abtastungen führen zu unstetigen Polylinien, die von menschlichen Kommentatoren korrigiert werden. In 6 sind global konsistente Fahrspurbegrenzungskommentierungen 620 dargestellt.
-
10 zeigt Kommentierungen, die auf Polylinien angewendet werden, um global konsistente Fahrspurbegrenzungskommentierungen zu erhalten. In dem Beispiel von 10 ist ein Kommentierungsprozess bei Bezugszeichen 1020 dargestellt. Gezeigt sind Polylinien 1002A-1002D (zusammen als Polylinien 1002 bezeichnet). Ein menschlicher Kommentator fügt manuell ein Begrenzungspolygon 1004 mit mindestens einer Polylinie ein. Beispielsweise wird das manuell gezeichnete Begrenzungspolygon 1004 von einem semantischen Kommentator gezeichnet, um Teile erzeugter Polylinien zu bestimmen, die zur Erzeugung eines gewünschten Kreuzungs- oder Fahrspurpolygons verwendet werden sollen. Wie in 10 dargestellt, enthalten die Polylinien einen oder mehrere Punkte oder Knoten. In einigen Beispielen werden Punkte entlang der Polylinien an Schnittpunkten mit dem Begrenzungspolygon 1004 oder an Polylinien, die vollständig vom Begrenzungspolygon 1004 umfasst werden, eingefügt. Das manuell gezeichnete Begrenzungspolygon 1004 schneidet sich mit den erzeugten Polylinien 1002 an Schnittpunkten 1006. Das Ergebnis wird bei Bezugszeichen 1030 mit dem Ergebnispolygon 1010 angezeigt. Es werden somit menschliche Kommentatoren verwendet, um die resultierenden semantischen Polygone zu erzeugen. Allerdings zeichnen die menschlichen Kommentatoren nicht so detailliert und aufwendig ein, wie es bei global inkonsistenten Polylinien nötig wäre.
-
In einigen Beispielen ermöglicht eine angepasste Benutzerschnittstelle (z.B. die Eingabeschnittstelle 310 aus 3) einem menschlichen Kommentator eine allgemeine Auswahl von Bereichen der Karte zur automatischen Erzeugung semantischer Objekte durch Einzeichnen eines Begrenzungspolygons. In einigen Beispielen beinhaltet die angepasste Benutzeroberfläche eine integrierte betriebliche Workflow-Verwaltung. So werden beispielsweise Kommentierungen mithilfe von Projektmanagement-Tools verfolgt. Bereiche der Karte, in denen es Probleme mit der Kommentierung gibt, werden über ein Ticketsystem mit einem Ticket versehen und bis zur Lösung des Problems weiterverfolgt. Kommentierungen sind mit einer integrierten Änderungsverwaltung assoziiert, bei der der Verlauf der Änderungen an den Kommentierungen, die für jeweilige Änderungen verantwortlichen Personen und dergleichen gespeichert und auf der angepassten Anzeige dargestellt werden. In einigen Beispielen enthält der Änderungsverlauf Details zur Überprüfung, Genehmigung und Ablehnung von Änderungen an den Kommentierungen.
-
11 zeigt ein Flussdiagramm eines Prozesses 1100 für ein vereinheitlichtes Framework und Werkzeuge zur Kommentierung von Fahrspurbegrenzungen. In einigen Ausführungsformen werden ein oder mehrere der Schritte, die mit Bezug auf den Prozess 1100 beschrieben sind, (z.B. vollständig, teilweise und/oder dergleichen) durch den AV-Computer 202f aus 2 oder die Vorrichtung 300 aus 3 durchgeführt. Zusätzlich oder alternativ werden in einigen Ausführungsformen ein oder mehrere Schritte, die mit Bezug auf den Prozess 1100 beschrieben sind, (z.B. vollständig, teilweise und/oder dergleichen) durch eine andere Vorrichtung oder Gruppe von Vorrichtungen separat von oder einschließlich des autonomen Systems 202, wie etwa das entfernt angeordnete AV-System 114 aus 1, durchgeführt.
-
In Block 1102 werden Polylinien erzeugt. In einigen Beispielen werden Polylinien gemäß dem unter Bezugnahme auf 9 beschriebenen Prozess 900 erzeugt. In Block 1104 zeichnet ein menschlicher Kommentator ein schneidendes Begrenzungspolygon ein, das mindestens eine Polylinie umfasst.
-
In Block 1106 werden Schnittpunkte zwischen den erzeugten Polylinien und dem manuell eingezeichneten Begrenzungspolygon bestimmt. Zusätzlich werden Punkte der erzeugten Polylinien innerhalb des manuell eingezeichneten Begrenzungspolygons bestimmt.
-
In Block 1108 werden unter Verwendung der Schnittpunkte zwischen den erzeugten Polylinien und dem manuell eingezeichneten Begrenzungspolygon sowie der Punkte der erzeugten Polylinien innerhalb des manuell eingezeichneten Begrenzungspolygons konvexe Hüllen konstruiert. In einigen Ausführungsformen werden Algorithmen für konvexe Hüllen verwendet, um die konvexen Hüllen zu erzeugen. So wird beispielsweise ein Algorithmus für konvexe Hüllen auf die Schnittpunkte zwischen dem manuell eingezeichneten Begrenzungspolygon und den erzeugten Polygonen sowie auf Polylinienpunkte innerhalb des Begrenzungspolygons angewendet. Bei den Polylinienpunkten innerhalb des Begrenzungspolygons handelt es sich um Knoten, die beim Aggregieren der Polylinien erzeugt werden.
-
Auf Grundlage der konvexen Hüllen werden in Block 1110 Polygone (z.B. die Polygone 620 aus 6) erhalten, die semantischen Objekten der Basiskarte entsprechen. Diese automatische Erzeugung von Polygonen, die semantischen Objekten entsprechen, beschleunigt die Kommentierungen. Ferner beinhalten die vorliegenden Methoden eine Benutzerschnittstelle, die es einem Kommentator ermöglicht, eine Kreuzung oder einen Bereich ohne Korrektur unstetiger Polylinien allgemein zu definieren.
-
Gemäß einigen nicht einschränkenden Ausführungsformen oder Beispielen wird ein Verfahren bereitgestellt. Das Verfahren beinhaltet mit mindestens einem Prozessor erfolgendes Erhalten von Sensordaten entlang einer Trajektorie, die Standorten einer Basiskarte entspricht. Das Verfahren beinhaltet zudem mit dem mindestens einen Prozessor erfolgendes Extrahieren von Merkmalen aus den Sensordaten und mit dem mindestens einen Prozessor erfolgendes Eingeben der Merkmale in ein trainiertes neuronales Netz, das überlappende reichhaltige Merkmalskarten mit Polylinien ausgibt. Das Verfahren beinhaltet mit dem mindestens einen Prozessor erfolgendes Aggregieren der überlappenden reichhaltigen Merkmalskarten gemäß einer Aggregationsfunktion, um Rasterbilder zu erhalten. Zudem beinhaltet das Verfahren mit dem mindestens einen Prozessor erfolgendes Anwenden von Vektorisierung auf die Rasterbilder, um eine durch global konsistente Polylinien dargestellte Straßengeometrie zu extrahieren.
-
Gemäß einigen nicht einschränkenden Ausführungsformen oder Beispielen wird ein System bereitgestellt, das mindestens einen Prozessor und mindestens ein nichtflüchtiges Speichermedium enthält. Das mindestens eine nichtflüchtige Speichermedium speichert Anweisungen, die bei Ausführung durch den mindestens einen Prozessor bewirken, dass der mindestens eine Prozessor Arbeitsschritte durchführt. Die Arbeitsschritte beinhalten Erhalten von Sensordaten entlang einer Trajektorie, die Standorten einer Basiskarte entspricht, und Extrahieren von Merkmalen aus den Sensordaten. Das Verfahren beinhaltet Eingeben der Merkmale in ein trainiertes neuronales Netz, das überlappende reichhaltige Merkmalskarten ausgibt, die Polylinien umfassen, und Aggregieren der überlappenden reichhaltigen Merkmalskarten gemäß einer Aggregationsfunktion, um Rasterbilder zu erhalten. Zudem beinhaltet das Verfahren Anwenden von Vektorisierung auf die Rasterbilder, um eine durch global konsistente Polylinien dargestellte Straßengeometrie zu extrahieren.
-
Gemäß einigen nicht einschränkenden Ausführungsformen oder Beispielen wird mindestens ein nichtflüchtiges Speichermedium bereitgestellt, auf dem Anweisungen gespeichert sind, die bei Ausführung durch mindestens einen Prozessor den mindestens einen Prozessor veranlassen, Arbeitsschritte durchzuführen. Die Arbeitsschritte beinhalten Erhalten von Sensordaten entlang einer Trajektorie, die Standorten einer Basiskarte entspricht, und Extrahieren von Merkmalen aus den Sensordaten. Das Verfahren beinhaltet Eingeben der Merkmale in ein trainiertes neuronales Netz, das überlappende reichhaltige Merkmalskarten ausgibt, die Polylinien umfassen, und Aggregieren der überlappenden reichhaltigen Merkmalskarten gemäß einer Aggregationsfunktion, um Rasterbilder zu erhalten. Zudem beinhaltet das Verfahren Anwenden von Vektorisierung auf die Rasterbilder, um eine durch global konsistente Polylinien dargestellte Fahrbahngeometrie zu extrahieren.
-
Weitere nicht einschränkende Aspekte oder Ausführungsformen sind in den nachstehenden nummerierten Klauseln aufgeführt:
-
Klausel 1: Verfahren, umfassend: mit mindestens einem Prozessor erfolgendes Erhalten von Sensordaten entlang einer Trajektorie, die Standorten einer Basiskarte entspricht; mit dem mindestens einen Prozessor erfolgendes Extrahieren von Merkmalen aus den Sensordaten; mit dem mindestens einen Prozessor erfolgendes Eingeben der Merkmale in ein trainiertes neuronales Netz, das überlappende reichhaltige Merkmalskarten ausgibt, die Polylinien umfassen; mit dem mindestens einen Prozessor erfolgendes Aggregieren der überlappenden reichhaltigen Merkmalskarten gemäß einer Aggregationsfunktion, um Rasterbilder zu erhalten; und mit dem mindestens einen Prozessor erfolgendes Anwenden von Vektorisierung auf die Rasterbilder, um eine durch global konsistente Polylinien dargestellte Fahrbahngeometrie zu extrahieren.
-
Klausel 2: Verfahren nach Klausel 1, ferner umfassend: Einzeichnen eines Begrenzungspolygons, das mindestens eine global konsistente Polylinie schneidet; Bestimmen von Schnittpunkten zwischen dem Begrenzungspolygon und der mindestens einen global konsistenten Polylinie und von inneren Punkten der global konsistenten Polylinien innerhalb des Begrenzungspolygons; und Konstruieren konvexer Hüllen unter Verwendung der Schnittpunkte und der inneren Punkte, um Polygone zu erzeugen, die semantische Objekte darstellen, die Standorten der Basiskarte entsprechen.
-
Klausel 3: Verfahren nach Klausel 2, wobei die semantischen Objekte Eigenschaften einer Straßennetzkonnektivität, physische Eigenschaften der Fahrbahn, Straßenmerkmale oder beliebige Kombinationen aus diesen darstellen.
-
Klausel 4: Verfahren nach einer der Klauseln 1 bis 3, wobei es sich bei der Aggregationsfunktion um eine maximale Aggregationsfunktion, eine minimale Aggregationsfunktion oder eine mittlere Aggregationsfunktion handelt.
-
Klausel 5: Verfahren nach einer der Klauseln 1 bis 4, wobei das trainierte neuronale Netz reichhaltige Merkmalskarten in einem Gleitkommaformat ausgibt.
-
Klausel 6: Verfahren nach einer der Klauseln 1 bis 5, wobei die Sensordaten überlappende LiDAR-Abtastungen umfassen.
-
Klausel 7: Verfahren nach einer der Klauseln 1 bis 6, umfassend Speichern der global konsistenten Polylinien, wobei die global konsistenten Polylinien Lokalisierung ermöglichen, während ein Fahrzeug an Standorten navigiert, die der Basiskarte entsprechen.
-
Klausel 8: Verfahren nach einer der Klauseln 1 bis 7, umfassend Speichern der Basiskarte, der global konsistenten Polylinien und der Polygone, die semantische Objekte darstellen, als hochauflösende Karte.
-
Klausel 9: Verfahren nach einer der Klauseln 1 bis 8, wobei ein menschlicher Kommentator ein Begrenzungspolygon einzeichnet, das mindestens eine global konsistente Polylinie schneidet, um semantische Objekte in eine semantische Kartenschicht einzufügen, die der Basiskarte entspricht.
-
Klausel 10: Verfahren nach einer der Klauseln 1 bis 9, wobei die Straßengeometrie Fahrspuren, Fahrspurteiler, Kreuzungen und Haltelinien umfasst.
-
Klausel 11. System, umfassend: mindestens einen Prozessor; und einen Speicher, in dem Anweisungen gespeichert sind, die bei Ausführung durch den mindestens einen Prozessor bewirken, dass der mindestens eine Prozessor Arbeitsschritte durchführt, die Folgendes umfassen: Erhalten von Sensordaten entlang einer Trajektorie, die Standorten einer Basiskarte entspricht; Extrahieren von Merkmalen aus den Sensordaten; Eingeben der Merkmale in ein trainiertes neuronales Netz, das überlappende reichhaltige Merkmalskarten ausgibt, die Polylinien umfassen; Aggregieren der überlappenden reichhaltigen Merkmalskarten gemäß einer Aggregationsfunktion, um Rasterbilder zu erhalten; und Anwenden von Vektorisierung auf die Rasterbilder, um eine durch global konsistente Polylinien dargestellte Fahrbahngeometrie zu extrahieren.
-
Klausel 12. System nach Klausel 11, ferner umfassend: Einzeichnen eines Begrenzungspolygons, das mindestens eine global konsistente Polylinie schneidet; Bestimmen von Schnittpunkten zwischen dem Begrenzungspolygon und der mindestens einen global konsistenten Polylinie und von inneren Punkten der global konsistenten Polylinien innerhalb des Begrenzungspolygons; und Konstruieren konvexer Hüllen unter Verwendung der Schnittpunkte und der inneren Punkte, um Polygone zu erzeugen, die semantische Objekte darstellen, die Standorten der Basiskarte entsprechen.
-
Klausel 13: System nach Klausel 12, wobei die semantischen Objekte Eigenschaften einer Straßennetzkonnektivität, physische Eigenschaften der Fahrbahn, Straßenmerkmale oder beliebige Kombinationen aus diesen darstellen.
-
Klausel 14: System nach einer der Klauseln 11 bis 13, wobei es sich bei der Aggregationsfunktion um eine maximale Aggregationsfunktion, eine minimale Aggregationsfunktion oder eine mittlere Aggregationsfunktion handelt.
-
Klausel 15: System nach einer der Klauseln 11 bis 14, wobei das trainierte neuronale Netz reichhaltige Merkmalskarten in einem Gleitkommaformat ausgibt.
-
Klausel 16: System nach einer der Klauseln 11 bis 15, wobei die Sensordaten überlappende LiDAR-Abtastungen umfassen.
-
Klausel 17: System nach einer der Klauseln 11 bis 16, umfassend Speichern der global konsistenten Polylinien, wobei die global konsistenten Polylinien Lokalisierung ermöglichen, während ein Fahrzeug an Standorten navigiert, die der Basiskarte entsprechen.
-
Klausel 18: System nach einer der Klauseln 11 bis 17, umfassend Speichern der Basiskarte, der global konsistenten Polylinien und der Polygone, die semantische Objekte darstellen, als hochauflösende Karte.
-
Klausel 19: Nichtflüchtiges computerlesbares Speichermedium, auf dem Anweisungen gespeichert sind, die bei Ausführung durch mindestens einen Prozessor den mindestens einen Prozessor veranlassen, Arbeitsschritte durchzuführen, die Folgendes umfassen: Erhalten von Sensordaten entlang einer Trajektorie, die Standorten einer Basiskarte entspricht; Extrahieren von Merkmalen aus den Sensordaten; Eingeben der Merkmale in ein trainiertes neuronales Netz, das überlappende reichhaltige Merkmalskarten ausgibt, die Polylinien umfassen; Aggregieren der überlappenden reichhaltigen Merkmalskarten gemäß einer Aggregationsfunktion, um Rasterbilder zu erhalten; und Anwenden von Vektorisierung auf die Rasterbilder, um eine durch global konsistente Polylinien dargestellte Fahrbahngeometrie zu extrahieren.
-
Klausel 20: Speichermedium nach Klausel 19, ferner umfassend: Einzeichnen eines Begrenzungspolygons, das mindestens eine global konsistente Polylinie schneidet; Bestimmen von Schnittpunkten zwischen dem Begrenzungspolygon und der mindestens einen global konsistenten Polylinie und von inneren Punkten der global konsistenten Polylinien innerhalb des Begrenzungspolygons; und Konstruieren konvexer Hüllen unter Verwendung der Schnittpunkte und der inneren Punkte, um Polygone zu erzeugen, die semantische Objekte darstellen, die Standorten der Basiskarte entsprechen.
-
In der vorstehenden Beschreibung wurden Aspekte und Ausführungsformen der vorliegenden Offenbarung mit Bezugnahme auf zahlreiche spezifische Einzelheiten beschrieben, die von Implementierung zu Implementierung variieren können. Dementsprechend sind die Beschreibung und die Zeichnungen als veranschaulichend anstatt beschränkend aufzufassen. Der einzige und ausschließliche Indikator für den Umfang der Erfindung und das, was die Anmelder als Umfang der Erfindung beabsichtigen, ist der wörtliche und äquivalente Umfang des Satzes von Ansprüchen, die aus dieser Anmeldung hervorgehen, in der spezifischen Form, in der diese Ansprüche ausgegeben werden, einschließlich jeder späteren Korrektur. Alle vorliegend ausdrücklich festgelegten Definitionen von Bezeichnungen, die in solchen Ansprüchen enthalten sind, gelten für die Bedeutung der in den Ansprüchen verwendeten Bezeichnungen. Wenn in der vorstehenden Beschreibung oder in den nachstehenden Ansprüchen der Ausdruck „ferner umfassend“ verwendet wird, kann das, was auf diesen Satz folgt, ein zusätzlicher Schritt oder eine zusätzliche Entität oder ein Unterschritt/eine Unterentität eines zuvor erwähnten Schritts oder einer zuvor erwähnten Entität sein.
-
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
-