-
EINLEITUNG
-
Die vorliegende Offenbarung bezieht sich im Allgemeinen auf Fahrzeuge und bezieht sich insbesondere auf Verfahren und Systeme zur Verwaltung von Karteninformationen mit niedriger Auflösung und Lokalisierungsinformationen zur Verwendung beim Steuern eines Fahrzeugs.
-
Ein autonomes Fahrzeug ist ein Fahrzeug, das in der Lage ist, seine Umgebung zu erfassen und mit wenigen oder keinen Benutzereingaben zu navigieren. Ein autonomes Fahrzeug nimmt seine Umgebung mit Hilfe von Sensorvorrichtungen wie Radar, Lidar, Bildsensoren und ähnlichem wahr. Das autonome Fahrzeugsystem nutzt darüber hinaus Informationen aus der Technologie der globalen Positionierungssysteme (GPS), Navigationssysteme, Fahrzeug-zu-Fahrzeug-Kommunikation, Fahrzeug-zu-Infrastruktur-Technologie und/oder Drive-by-Wire-Systeme zur Navigation des Fahrzeugs.
-
Während autonome und halbautonome Fahrzeuge viele potenzielle Vorteile gegenüber traditionellen Fahrzeugen bieten, kann es unter bestimmten Umständen für einen verbesserten Betrieb der Fahrzeuge wünschenswert sein. Beispielsweise bestimmen autonome Fahrzeuge ihren Standort, z.B. innerhalb der Umgebung und insbesondere innerhalb der Fahrbahngrenzen (hier als Lokalisierung bezeichnet) und nutzen diesen Standort zur Navigation des Fahrzeugs. Autonome Fahrzeuge bestimmen ihren Standort auf der Grundlage von Umgebungskarten. Einige Karten werden aus den von einem Lidar empfangenen Daten generiert. Lidars können teuer sein und sind bei schlechten Wetterbedingungen nicht optimal. Einige Karten, die nicht von Lidar generiert werden, gelten als Karten mit niedriger Auflösung und enthalten nur Informationen über die Fahrbahn. Solche Karten sind möglicherweise nicht ganz genau.
-
Dementsprechend ist es wünschenswert, verbesserte Systeme und Verfahren für die Erstellung von Karten und die Lokalisierung eines Fahrzeugs bereitzustellen. Außerdem ist es wünschenswert, verbesserte Systeme und Verfahren für die Kartierung und Lokalisierung des Fahrzeugs auf der Grundlage von Karten mit niedriger Auflösung bereitzustellen, deren Herstellung weniger kostspielig ist. Darüber hinaus werden weitere wünschenswerte Merkmale und Charakteristika der vorliegenden Offenbarung aus der nachfolgenden detaillierten Beschreibung und den beigefügten Ansprüchen in Verbindung mit den begleitenden Figuren und dem vorgenannten technischen Bereich und Hintergrund deutlich.
-
BESCHREIBUNG
-
Es werden Systeme und Verfahren zum Steuern eines Fahrzeugs bereitgestellt. In einer Ausführungsform beinhaltet ein Verfahren: Empfangen von Landmarken-Daten, die von einem Bildsensor des Fahrzeugs erhalten wurden, durch einen Prozessor; Fusionieren der Landmarken-Daten mit Fahrzeugpositions-Daten durch den Prozessor, um fusionierte Fahrbahn-Daten zu erzeugen, wobei das Fusionieren auf einem Kalman-Filter basiert; Abrufen von Karten-Daten aus einer Fahrbahnkarte durch den Prozessor auf der Grundlage der Fahrzeugpositions-Daten; selektives Aktualisieren der Fahrbahnkarte durch den Prozessor auf der Grundlage einer Änderung in den fusionierten Fahrbahn-Daten aus den Karten-Daten; und Steuern des Fahrzeugs durch den Prozessor auf der Grundlage der aktualisierten Fahrbahnkarte.
-
In verschiedenen Ausführungsformen umfassen die fusionierten Fahrbahn-Daten einen rechten Fahrbahnrand und einen linken Fahrbahnrand, und wobei das selektive Aktualisieren das selektive Aktualisieren eines rechten Fahrbahnrands und eines linken Fahrbahnrands der Fahrbahnkarte auf der Grundlage des rechten Fahrbahnrands und des linken Fahrbahnrands der fusionierten Fahrbahn-Daten umfasst. In verschiedenen Ausführungsformen umfasst das selektive Aktualisieren: Ersetzen des rechten Fahrbahnrands und des linken Fahrbahnrands, wenn die Änderung größer als ein Schwellenwert ist; und Fusionieren des rechten Fahrbahnrands und des linken Fahrbahnrands der Fahrbahn-Daten mit dem rechten Fahrbahnrand und dem linken Fahrbahnrand der Fahrbahnkarte, wenn die Änderung kleiner als der Schwellenwert ist. In verschiedenen Ausführungsformen basiert das Berechnen der Veränderung auf einem Hypothesentest. In verschiedenen Ausführungsformen basiert das Berechnen der Veränderung auf einer Mahalanobis-Distanz.
-
In verschiedenen Ausführungsformen enthalten die fusionierten Fahrbahn-Daten eine Position der Fahrbahnmitte, und wobei das Verfahren ferner die Korrektur der Fahrzeugpositions-Daten auf der Grundlage der Karten-Daten und der Position der Fahrbahnmitte umfasst.
-
In verschiedenen Ausführungsformen umfassen die Landmarken-Daten Fahrbahnmarkierungen entlang der Straße. In verschiedenen Ausführungsformen enthalten die Landmarken-Daten aus Bild-Daten abgeleitete Fahrbahnränder. In verschiedenen Ausführungsformen umfassen die Landmarken-Daten Strukturen, die neben einem Fahrbahnrand identifiziert wurden.
-
In einer anderen Ausführungsform umfasst ein System mindestens einen Bildsensor, der Bild-Daten erzeugt, die mit der Umgebung des Fahrzeugs in Verbindung stehen; ein Karten-Datenspeicher, der eine Fahrbahnkarte speichert; und eine Steuerung, die so eingerichtet ist, dass sie durch einen Prozessor von einem Bildsensor des Fahrzeugs erhaltene Landmarken-Daten empfängt, die Landmarken-Daten mit Fahrzeugpositions-Daten fusioniert, um fusionierte Fahrbahn-Daten zu erzeugen, wobei das Fusionieren auf einem Kalman-Filter basiert, Karten-Daten von der Fahrbahnkarte auf der Grundlage der Fahrzeugpositions-Daten abruft, die Fahrbahnkarte auf der Grundlage einer Änderung der fusionierten Fahrbahn-Daten aus den Karten-Daten selektiv aktualisiert; und das Fahrzeug auf der Grundlage der aktualisierten Fahrbahnkarte steuert.
-
In verschiedenen Ausführungsformen umfassen die fusionierten Fahrbahn-Daten einen rechten Fahrbahnrand und einen linken Fahrbahnrand, und wobei das selektive Aktualisieren das selektive Aktualisieren eines rechten Fahrbahnrands und eines linken Fahrbahnrands der Fahrbahnkarte auf der Grundlage des rechten Fahrbahnrands und des linken Fahrbahnrands der fusionierten Fahrbahn-Daten umfasst.
-
In verschiedenen Ausführungsformen aktualisiert die Steuerung selektiv, indem sie den rechten und den linken Fahrbahnrand ersetzt, wenn die Änderung größer als ein Schwellenwert ist; und sie fusioniert den rechten und den linken Fahrbahnrand der Fahrbahn-Daten mit dem rechten und dem linken Fahrbahnrands der Fahrbahnkarte, wenn die Änderung kleiner als der Schwellenwert ist.
-
In verschiedenen Ausführungsformen berechnet die Steuerung die Änderung auf der Grundlage eines Hypothesentests. In verschiedenen Ausführungsformen berechnet die Steuerung die Veränderung auf der Grundlage einer Mahalanobis-Distanz.
In verschiedenen Ausführungsformen enthalten die fusionierten Fahrbahn-Daten eine Position der Fahrbahnmitte, und wobei die Steuerung die Fahrzeugpositions-Daten auf der Grundlage der Karten-Daten und der Position der Fahrbahnmitte korrigiert.
-
In verschiedenen Ausführungsformen umfassen die Landmarken-Daten Fahrbahnmarkierungen entlang der Straße. In verschiedenen Ausführungsformen enthalten die Landmarken-Daten aus Bild-Daten abgeleitete Fahrbahnränder.
In verschiedenen Ausführungsformen umfassen die Landmarken-Daten Strukturen, die neben einem Fahrbahnrand identifiziert wurden. In verschiedenen Ausführungsformen aktualisiert die Steuerung die Karte während des Betriebs des Fahrzeugs kontinuierlich.
-
In verschiedenen Ausführungsformen generiert die Steuerung Kartenfehlerdaten, um den Fehler auf der Fahrbahnkarte für einen Benutzer grafisch darzustellen.
-
Figurenliste
-
Die beispielhaften Ausführungsformen werden im Folgenden in Verbindung mit den folgenden Zeichnungsfiguren beschrieben, wobei gleiche Bezugszeichen gleiche Elemente bezeichnen und wobei
- 1 ist ein funktionales Blockdiagramm, das ein autonomes Fahrzeug mit einem Kartierungs- und Lokalisierungssystem in Übereinstimmung mit verschiedenen Ausführungsformen darstellt;
- 2 ist ein Datenflussdiagramm, das ein autonomes Fahrsystem illustriert, das das Kartierungs- und Lokalisierungssystem in Übereinstimmung mit verschiedenen Ausführungsformen umfasst;
- 3 ist ein Datenflussdiagramm, das ein Aktualisierungssystem des Kartierungs- und Lokalisierungssystems in Übereinstimmung mit verschiedenen Ausführungsformen veranschaulicht;
- 4 und 5 sind Flussdiagramme, die die Verfahren veranschaulichen, die das Kartierungs- und Lokalisierungssystem in Übereinstimmung mit verschiedenen Ausführungsformen durchführen kann.
-
DETAILLIERTE BESCHREIBUNG
-
Die folgende detaillierte Beschreibung hat lediglich beispielhaften Charakter und soll die Anwendung und den Gebrauch nicht einschränken. Darüber hinaus besteht nicht die Absicht, sich an eine ausdrückliche oder implizite Theorie zu binden, die im vorhergehenden Fachgebiet, im Hintergrund, in einer kurzen Zusammenfassung oder in der folgenden detaillierten Beschreibung dargestellt wird. Wie hier verwendet, bezieht sich der Begriff Modul auf jede Hardware, Software, Firmware, elektronische Steuerkomponente, Verarbeitungslogik und/oder Prozessorvorrichtung, einzeln oder in beliebiger Kombination, einschließlich, aber nicht beschränkt auf: anwendungsspezifische integrierte Schaltung (ASIC), eine elektronische Schaltung, einen Prozessor (gemeinsam, dediziert oder gruppenweise) und Speicher, der ein oder mehrere Software- oder Firmwareprogramme ausführt, eine kombinierte Logikschaltung und/oder andere geeignete Komponenten, die die beschriebene Funktionalität bereitstellen.
-
Ausführungsformen der vorliegenden Offenbarung können hier in Form von funktionalen und/oder logischen Blockkomponenten und verschiedenen Verarbeitungsschritten beschrieben werden. Es sollte geschätzt werden, dass solche Blockkomponenten durch eine beliebige Anzahl von Hardware-, Software- und/oder Firmwarekomponenten realisiert werden können, die so eingerichtet sind, dass sie die angegebenen Funktionen erfüllen. Eine Ausführungsform der vorliegenden Offenbarung kann beispielsweise verschiedene integrierte Schaltkreiskomponenten verwenden, z.B. Speicherelemente, digitale Signalverarbeitungselemente, Logikelemente, Nachschlagetabellen oder ähnliches, die unter der Kontrolle eines oder mehrerer Mikroprozessoren oder anderer Steuervorrichtungen eine Vielzahl von Funktionen ausführen können. Darüber hinaus werden diejenigen, die sich in dem Fachgebiet auskennen, es zu schätzen wissen, dass Ausführungsformen der vorliegenden Offenbarung in Verbindung mit einer beliebigen Anzahl von Systemen praktiziert werden können und dass die hier beschriebenen Systeme lediglich beispielhafte Ausführungsformen der vorliegenden Offenbarung sind.
-
Der Kürze halber werden konventionelle Techniken der Signalverarbeitung, Datenübertragung, Signalisierung, Steuerung und andere funktionelle Aspekte der Systeme (und der einzelnen Betriebskomponenten der Systeme) hier nicht im Detail beschrieben. Darüber hinaus sollen die in den verschiedenen Abbildungen gezeigten Verbindungslinien beispielhafte funktionale Beziehungen und/oder physikalische Kopplungen zwischen den verschiedenen Elementen darstellen. Es ist zu beachten, dass viele alternative oder zusätzliche funktionale Beziehungen oder physische Verbindungen in einer Ausführungsform der vorliegenden Offenbarung vorhanden sein können.
-
Unter Bezugnahme auf 1 wird ein Kartierungs- und Lokalisierungssystem, das in der Regel bei 100 gezeigt wird, einem Fahrzeug 10 nach verschiedenen Ausführungsformen zugeordnet. Im Allgemeinen verarbeitet das Kartierungs- und Lokalisierungssystem 100 Daten, die von einem oder mehreren Sensoren, die um das Fahrzeug 10 herum angeordnet sind (wie weiter unten näher erläutert wird), zusammen mit Daten aus einer Karte mit niedriger Auflösung, um eine Karte der Umgebung zu aktualisieren. Das Kartierungs- und Lokalisierungssystem 100 verwendet dann die Karte, um das Fahrzeug 10 während der Fahrt zu lokalisieren. Das Fahrzeug 10 navigiert dann intelligent auf der Grundlage der Ausgaben des Kartierungs- und Lokalisierungssystems 100.
-
Wie in 1 dargestellt, besteht das Fahrzeug 10 im Allgemeinen aus einem Fahrgestell 12, einer Karosserie 14, Vorderrädern 16 und Hinterrädern 18. Die Karosserie 14 ist auf dem Fahrgestell 12 angeordnet und umschließt im Wesentlichen Komponenten des Fahrzeugs 10. Die Karosserie 14 und das Fahrgestell 12 können gemeinsam einen Rahmen bilden. Die Räder 16-18 sind jeweils in der Nähe einer Ecke der Karosserie 14 mit dem Fahrgestell 12 drehgekoppelt.
-
In verschiedenen Ausführungsformen ist das Fahrzeug 10 ein autonomes Fahrzeug und das Lokalisierungssystem 100 ist in das autonome Fahrzeug 10 (im Folgenden als autonomes Fahrzeug 10 bezeichnet) integriert. Das autonome Fahrzeug 10 ist zum Beispiel ein automatisch gesteuertes Fahrzeug, das Passagiere von einem Ort zum anderen befördert. Das Fahrzeug 10 ist in der abgebildeten Ausführungsform als PKW dargestellt, aber es sollte geschätzt werden, dass jedes andere Fahrzeug, einschließlich Motorräder, LKWs, Sport Utility Vehicles (SUVs), Freizeitfahrzeuge (RVs), Wasserfahrzeuge, Flugzeuge oder einfach nur Roboter usw., ebenfalls verwendet werden kann. In einer beispielhaften Ausführungsform ist das autonome Fahrzeug 10 ein so genanntes Level-Vier- oder Level-Fünf-Automatisierungssystem. Ein Level-Vier-Automatisierungssystem weist auf eine „hohe Automatisierung“ hin und bezieht sich auf die fahrmodus-spezifische Leistung aller Aspekte der dynamischen Fahraufgabe durch ein automatisiertes Fahrsystem, selbst wenn ein menschlicher Fahrer nicht angemessen auf eine Aufforderung zum Eingreifen reagiert. Ein Level-Fünf-Automatisierungssystem bedeutet „Vollautomatisierung“ und bezieht sich auf die Vollzeitleistung eines automatisierten Fahrsystems in allen Aspekten der dynamischen Fahraufgabe unter allen Straßen- und Umgebungsbedingungen, die von einem menschlichen Fahrer bewältigt werden können. Wie zu schätzen ist, kann das autonome Fahrzeug 10 in verschiedenen Ausführungsformen jeden beliebigen Automatisierungsgrad aufweisen.
-
Wie gezeigt, umfasst das autonome Fahrzeug 10 im Allgemeinen ein Antriebssystem 20, ein Getriebesystem 22, ein Lenksystem 24, ein Bremssystem 26, ein Sensorsystem 28, ein Aktuatorsystem 30, mindestens eine Datenspeichervorrichtung 32, mindestens eine Steuerung 34 und ein Kommunikationssystem 36. Das Antriebssystem 20 kann in verschiedenen Ausführungsformen einen Verbrennungsmotor, eine elektrische Maschine, wie z.B. einen Fahrmotor, und/oder ein Brennstoffzellen-Antriebssystem umfassen. Das Getriebesystem 22 ist so eingerichtet, dass es die Leistung vom Antriebssystem 20 auf die Fahrzeugräder 16-18 entsprechend wählbarer Geschwindigkeitsverhältnisse überträgt. Je nach Ausführung kann das Getriebesystem 22 ein Stufenautomatikgetriebe, ein stufenloses Getriebe oder ein anderes geeignetes Getriebe umfassen. Das Bremssystem 26 ist so eingerichtet, dass es die Fahrzeugräder 16-18 mit Bremsmoment versorgt. Das Bremssystem 26 kann in verschiedenen Ausführungsformen Reibungsbremsen, Drahtbremse, ein regeneratives Bremssystem, wie z.B. eine elektrische Maschine, und/oder andere geeignete Bremssysteme umfassen. Das Lenksystem 24 beeinflusst die Position der Fahrzeugräder 16-18. Obwohl das Lenksystem 24 zur Veranschaulichung mit einem Lenkrad dargestellt wird, kann es in einigen Ausführungsformen, die im Rahmen dieser Offenbarung in Betracht gezogen werden, kein Lenkrad enthalten.
-
Das Sensorsystem 28 umfasst eine oder mehrere Sensorvorrichtungen 40a-40n, die die beobachtbaren Bedingungen der äußeren Umgebung und/oder der inneren Umgebung des autonomen Fahrzeugs erfassen 10. Die Sensorvorrichtungen 40a-40n können unter anderem Radare, Lidare, globale Positionierungssysteme, optische Kameras, Wärmebildkameras, Ultraschallsensoren und/oder andere Sensoren umfassen. In verschiedenen Ausführungsformen enthalten die Sensorvorrichtungen 40a-40n einen oder mehrere Bildsensoren, die Bildsensordaten erzeugen, die vom Kartierungs- und Lokalisierungssystem 100 verwendet werden. In verschiedenen Ausführungsformen erfassen die Sensorvorrichtungen 40a-40n einen oder mehrere beobachtbare Zustände des Fahrzeugs 10. Solche Sensoren können u.a. Kilometerzähler, Geschwindigkeitssensoren, Inertial-Messeinheiten (IMU), globale Positionssysteme (GPS) usw. umfassen.
-
Das Aktuatorsystem 30 umfasst eine oder mehrere Aktuatorvorrichtungen 42a-42n, die ein oder mehrere Fahrzeugmerkmale wie z.B. das Antriebssystem 20, das Getriebesystem 22, das Lenksystem 24 und das Bremssystem 26 steuern, aber nicht darauf beschränkt sind. In verschiedenen Ausführungsformen können die Fahrzeugmerkmale darüber hinaus, aber nicht ausschließlich, Innen- und/oder Außenmerkmale des Fahrzeugs umfassen, wie z.B. Türen, einen Kofferraum und Kabinenmerkmale wie Luft, Musik, Beleuchtung usw. (nicht nummeriert).
-
Das Kommunikationssystem 36 ist so eingerichtet, dass es drahtlos Informationen zu und von anderen Einheiten 48 übermittelt, wie z.B., aber nicht nur, andere Fahrzeuge („V2V“-Kommunikation), Infrastruktur („V2I“-Kommunikation), entfernte Systeme und/oder persönliche Geräte (genauer beschrieben in Bezug auf 2). In einer beispielhaften Ausführung ist das Kommunikationssystem 36 ein drahtloses Kommunikationssystem, das für die Kommunikation über ein drahtloses lokales Netzwerk (WLAN) unter Verwendung der IEEE 802.11-Normen oder durch zelluläre Datenkommunikation eingerichtet ist. Zusätzliche oder alternative Kommunikationsmethoden, wie z.B. ein dedizierter Kurzstreckenkommunikationskanal (DSRC), werden jedoch ebenfalls im Rahmen dieser Offenbarung in Betracht gezogen. DSRC-Kanäle beziehen sich auf Einweg- oder Zweiweg-Kommunikationskanäle mit kurzer bis mittlerer Reichweite, die speziell für den Einsatz in Kraftfahrzeugen entwickelt wurden, sowie auf einen entsprechenden Satz von Protokollen und Standards.
-
Das Datenspeichergerät 32 speichert Daten zur Verwendung bei der automatischen Steuerung des autonomen Fahrzeugs 10. In verschiedenen Ausführungsformen speichert das Datenspeichergerät 32 definierte Karten der navigierbaren Umgebung. In verschiedenen Ausführungsformen umfassen die definierten Karten niedrig aufgelöste Karten, die vom Kartierungs- und Lokalisierungssystem 100 verwendet und/oder daraus generiert werden. In verschiedenen Ausführungsformen werden einige der Karten von einem entfernten System und/oder anderen Fahrzeugen empfangen. Wie man sich vorstellen kann, kann das Datenspeichergerät 32 Teil der Steuerung 34 sein, getrennt von der Steuerung 34, oder Teil der Steuerung 34 und Teil eines separaten Systems.
-
Die Steuerung 34 umfasst mindestens einen Prozessor 44 und ein computerlesbares Speichergerät oder -medium 46. Bei dem Prozessor 44 kann es sich um einen beliebigen kundenspezifischen oder kommerziell erhältlichen Prozessor, eine Zentraleinheit (CPU), eine Grafikverarbeitungseinheit (GPU), einen Hilfsprozessor unter mehreren mit der Steuerung 34 verbundenen Prozessoren, einen Mikroprozessor auf Halbleiterbasis (in Form eines Mikrochips oder Chipsatzes), einen Makroprozessor, eine beliebige Kombination davon oder allgemein eine beliebige Vorrichtung zur Ausführung von Befehlen handeln. Das computerlesbare Speichergerät bzw. die computerlesbaren Speichermedien 46 können z.B. flüchtige und nichtflüchtige Speicherung in Festwertspeicher (ROM), Direktzugriffsspeicher (RAM) und Keep-Alive-Speicher (KAM) umfassen. KAM ist ein persistenter oder nichtflüchtiger Speicher, der zur Speicherung verschiedener Betriebsvariablen verwendet werden kann, während der Prozessor 44 abgeschaltet ist. Das computerlesbare Speichergerät oder -medium 46 kann unter Verwendung einer beliebigen Anzahl bekannter Speichergeräte wie PROMs (programmierbarer Festwertspeicher), EPROMs (elektrisches PROM), EEPROMs (elektrisch löschbares PROM), Flash-Speicher oder jedes anderen elektrischen, magnetischen, optischen oder kombinierten Speichergeräts, das in der Lage ist, Daten zu speichern, von denen einige ausführbare Befehle darstellen, die von der Steuerung 34 des autonomen Fahrzeugs 10 verwendet werden, implementiert werden.
-
Die Anweisungen können ein oder mehrere separate Programme enthalten, von denen jedes eine geordnete Auflistung von ausführbaren Anweisungen zur Implementierung logischer Funktionen enthält. Die Befehle empfangen und verarbeiten, wenn sie vom Prozessor 44 ausgeführt werden, Signale vom Sensorsystem 28, führen Logik, Berechnungen, Verfahren und/oder Algorithmen zum automatischen Steuern der Komponenten des autonomen Fahrzeugs 10 aus und erzeugen Steuersignale an das Aktuatorsystem 30, um die Komponenten des autonomen Fahrzeugs 10 auf der Grundlage der Logik, Berechnungen, Verfahren und/oder Algorithmen automatisch zu steuern. Obwohl nur ein Controller 34 in 1 dargestellt ist, können Ausführungsformen des autonomen Fahrzeugs 10 eine beliebige Anzahl von Steuerungen 34 enthalten, die über ein beliebiges geeignetes Kommunikationsmedium oder eine Kombination von Kommunikationsmedien kommunizieren und die zusammenarbeiten, um die Sensorsignale zu verarbeiten, Logik, Berechnungen, Verfahren und/oder Algorithmen durchzuführen und Steuersignale zur automatischen Steuerung von Merkmalen des autonomen Fahrzeugs 10 zu erzeugen. In verschiedenen Ausführungsformen sind eine oder mehrere Anweisungen der Steuerung 34 in den hier beschriebenen Abbildungs- und Lokalisierungssystemen 100 und Verfahren 200, 300 enthalten.
-
Entsprechend verschiedener Ausführungsformen implementiert die Steuerung 34 ein autonomes Antriebssystem (ADS) 50, wie in 2 dargestellt. D.h. es werden geeignete Software- und/oder Hardwarekomponenten des Steuergeräts 34 (z.B. der Prozessor 44 und das computerlesbare Speichergerät 46) verwendet, um ein autonomes Antriebssystem 50 bereitzustellen, das in Verbindung mit Fahrzeug 10 eingesetzt wird.
-
In verschiedenen Ausführungsformen können die Anweisungen des autonomen Antriebssystems 50 nach Funktion, Modul oder System organisiert sein. Wie in 2 dargestellt, kann das autonome Fahrsystem 50 beispielsweise ein Computer-Vision-System 54, ein Positionierungssystem 56, ein Leitsystem 58 und ein Fahrzeugsteuerungssystem 60 umfassen. Wie zu schätzen ist, können die Anweisungen in verschiedenen Ausführungsformen in beliebig vielen Systemen (z.B. kombiniert, weiter unterteilt usw.) organisiert werden, da die Offenbarung nicht auf die vorliegenden Beispiele beschränkt ist.
-
In verschiedenen Ausführungsformen synthetisiert und verarbeitet das Computer-Vision-System 54 Sensordaten und sagt die Anwesenheit, den Standort, die Klassifizierung und/oder den Weg von Objekten und Merkmalen der Umgebung des Fahrzeugs 10 voraus. In verschiedenen Ausführungsformen kann das Computer-Vision-System 54 Informationen von mehreren Sensoren aufnehmen, einschließlich, aber nicht beschränkt auf Kameras, Lidars, Radars und/oder eine beliebige Anzahl anderer Sensortypen.
-
Das Positionierungssystem 56 verarbeitet Sensordaten zusammen mit anderen Daten, um eine Position (z.B. eine lokale Position relativ zu einer Karte, eine genaue Position relativ zur Fahrbahn einer Straße, die Fahrzeugrichtung, die Geschwindigkeit usw.) des Fahrzeugs 10 relativ zur Umgebung zu bestimmen. Das Leitsystem 58 verarbeitet Sensordaten zusammen mit anderen Daten, um einen Weg für das Fahrzeug 10 zu bestimmen. Das Fahrzeugsteuerungssystem 80 erzeugt Steuersignale zum Steuern des Fahrzeugs 10 entsprechend der festgelegten Bahn.
-
In verschiedenen Ausführungsformen implementiert die Steuerung 34 Techniken des maschinellen Lernens, um die Funktionalität der Steuerung 34 zu unterstützen, wie z.B. Merkmalserkennung/Klassifizierung, Hindernisminderung, Routenüberquerung, Kartierung, Sensorintegration, Bestimmung der Bodenwahrheit und ähnliches.
-
In verschiedenen Ausführungsformen kann das Kartierungs- und Lokalisierungssystem 100 aus 1 in die ADS 50 aufgenommen werden, z.B. als Teil des Positionierungssystems 56. In solchen Ausführungsformen liefert das Kartierungs- und Lokalisierungssystem 100 Karten und Lokalisierungsdaten an das Positionierungssystem 56, die einen Standort des Fahrzeugs 10 zur Verwendung in der Navigation angeben.
-
Wie im Hinblick auf 3 und unter weiterer Bezugnahme auf 1 und 2 näher erläutert, enthält das Kartierungs- und Lokalisierungssystem 100 ein Aktualisierungssystem 101. Das Aktualisierungssystem 101 kann als ein oder mehrere Module und/oder Untermodule implementiert werden. Wie man sich vorstellen kann, können die gezeigten Module in verschiedenen Ausführungsformen kombiniert und/oder weiter unterteilt werden. Das Aktualisierungssystem 101 umfasst ein globales Posen-Bestimmungsmodul 102, ein Landmarken-Fusionsmodul 104, ein Posen-Korrekturmodul 106, ein Karten-Korrekturmodul 108 und einen Karten-Datenspeicher 110.
-
Das globale Posen-Bestimmungsmodul 102 empfängt als Eingabe Positionsdaten 114 und Kilometerzähler-/IMU-Daten 116. Die Positionsdaten 114 geben eine globale Position des Fahrzeugs 10 an und können vom GPS oder einem anderen Positionierungssystem empfangen werden. Der Kilometerzähler/IMU-Daten 116 zeigt eine bestimmte Stellung des Fahrzeugs 10 einschließlich einer Richtung und einer Längsgeschwindigkeit des Fahrzeugs 10 an.
-
Das globale Posen-Bestimmungsmodul 102 bestimmt die globalen Posen-Daten 118 des Fahrzeugs 10 durch Fusionieren der Positionsdaten 114 und der Kilometerzählerdaten 116. Beispielsweise verwendet das globale Posen-Bestimmungsmodul 116 einen Kalman-Filter (EKF, UKF usw.), um die Daten 114, 116 zu Fusionieren. Das Ergebnis der Fusion umfasst eine globale Geschwindigkeit, einen globalen Kurs und eine globale Position des Fahrzeugs 10, die zusammen als globale Posen-Daten 118 bezeichnet werden.
-
Das Landmarken-Fusionsmodul 104 erhält als Eingabe die globalen Posen-Daten 118 und die Landmarken-Daten 120. Die Landmarken-Daten 120 können von einer Kamera oder anderen Bildgeräten des Fahrzeugs empfangen werden 10. Die Landmarken-Daten 120 geben eine erfasste Position (entsprechend einem Koordinatensystem des Fahrzeugs 10) von identifizierten Landmarken wie Fahrbahnmarkierungen, Schildern oder anderen Strukturen durch die Fahrbahnränder, den freien Raum usw. entlang der Straße an, die auf einen Fahrbahnrand hinweisen können. In verschiedenen Ausführungsformen können die Landmarken-Daten 120 vorverarbeitet werden und Informationen über die Fahrbahnränder enthalten, die aus den in den Bild-Daten 120 oder aus anderen Daten abgeleitet wurden. Die nachfolgend beschriebenen Ausführungsformen beziehen sich beispielhaft auf die Fahrbahnmarkierungen als Landmarken-Daten 120. Wie zu schätzen ist, können andere Landmarken zur Bestimmung der Fahrbahnränder auf ähnliche Weise implementiert werden.
-
Das Landmarken-Fusionsmodul 104 schätzt die globalen Fahrbahnränder 122, indem es die globalen Posen-Daten 118 mit den Landmarken-Daten 120 fusioniert. Das Landmarken-Fusionsmodul 104 beispielsweise verwendet einen Kalman-Filter, um die Daten im Laufe der Zeit zu Fusionieren. Das Ergebnis der Fusion umfasst eine Position der linken und eine Position des rechten Fahrbahnrands in einem globalen Koordinatensystem sowie eine Unsicherheit jeder der Positionen, die zusammen als globale Fahrbahnrändern-Daten 122 bezeichnet werden. Die Ausgabe der Fusion umfasst ferner eine Position des Fahrbahnmittelpunkts in einem globalen Koordinatensystem, das als globale Fahrbahnmittelpunktdaten 121 bezeichnet wird.
-
Das Posen-Korrekturmodul 106 empfängt als Eingabe die globalen Posen-Daten 118 und die globalen Fahrbahnmitten-Daten 121. Das Posen-Korrekturmodul 106 bezieht die Spurdaten 124 aus einer niedrig definierten Karte, die im Karten-Datenspeicher 110 gespeichert ist. Die Fahrbahn-Daten 124 umfassen die Positionen der rechten, der linken und der mittleren Fahrbahn. Das Posen-Korrekturmodul 106 ermittelt eventuelle Abweichungen zwischen den Fahrbahn-Daten 124 aus der Karte und den globalen Fahrbahnmittelpunktdaten 121. Das Posen-Korrekturmodul 106 korrigiert die globalen Posen-Daten 118 auf der Grundlage der Diskrepanzen, um eine korrigierte Pose 128 zu erzeugen, die z.B. von der ADS 50 verwendet werden kann.
-
Das Posen-Korrekturmodul bestimmt die Abweichungen auf der Grundlage einer Größe der Differenz zwischen den globalen Fahrbahnmittelpunktdaten 121 und den Kartenfahrbahn-Daten 124. Das Posen-Korrekturmodul 106 stellt die Abweichungen als Kartenfehlerdaten 126 zur Verwendung beim Steuern des Fahrzeugs 10 zur Verfügung.
Das Karten-Korrekturmodul 108 empfängt die globalen Fahrbahnrand-Daten 122 und die Kartenspurdaten 124. Das Karten-Korrekturmodul 108 aktualisiert kontinuierlich die in der Karte gespeicherten Fahrbahnränder-Informationen auf der Grundlage der globalen Fahrbahnrändern-Daten 122. In verschiedenen Ausführungsformen aktualisiert das Karten-Korrekturmodul 10 die Karte, indem es die globalen Fahrbahnrand-Daten 122 mit den Fahrbahn-Daten 124 der Karte fusioniert. In verschiedenen Ausführungsformen aktualisiert das Karten-Korrekturmodul 108 die Karte, wenn die Änderungen der Karte drastisch sind, indem es die Fahrbahn-Daten der Karte durch die globalen Fahrbahnrand-Daten 122 ersetzt (d.h. anstatt die Daten zu fusionieren). Die Änderungen in der Karte können einem Benutzer des Fahrzeugs 10 grafisch dargestellt oder zur Navigation des Fahrzeugs 10 verwendet werden.
-
In verschiedenen Ausführungsformen bestimmt das Karten-Korrekturmodul 108, ob die Änderungen drastisch sind, basierend auf einem Hypothesentest, der die Wahrscheinlichkeit vergleicht, dass die neuen Daten von einer durch die Karte beschriebenen Verteilung (Nullhypothese Ho) gegenüber einer anderen Verteilung (Alternativhypothese Hi) stammen. In verschiedenen Ausführungsformen bestimmt das Karten-Korrekturmodul 108, ob die Änderungen drastisch sind, basierend auf einem Mahalanobis-Abstand zwischen der Karteninformation und der globalen Fahrbahninformation. In solchen Ausführungsformen kann der Schwellenwert aus einer Extremwertverteilung aus n Entfernungen mit Hilfe einer Gumbel-Verteilung bestimmt werden. Wie zu schätzen ist, können andere Verfahren zur Feststellung, ob die Veränderungen drastisch sind, in verschiedenen Ausführungsformen umgesetzt werden.
-
Unter Bezugnahme auf die 4 und 5 und weiterhin unter Bezugnahme auf die 1-3 zeigen Flussdiagramme die Verfahren 200, 300, die das System 100 nach verschiedenen Ausführungsformen durchführen kann. Wie man angesichts der Offenbarung erkennen kann, ist die Reihenfolge der Operationen innerhalb der Verfahren 200, 300 nicht auf die sequentielle Ausführung, wie in den und dargestellt, beschränkt, sondern kann in einer oder mehreren unterschiedlichen Anordnungen, je nach Fall und in Übereinstimmung mit der vorliegenden Offenbarung, durchgeführt werden. In verschiedenen Ausführungsformen können die Verfahren 200, 300 auf der Grundlage eines oder mehrerer vorbestimmter Ereignisse geplant werden und/oder während des Betriebs des autonomen Fahrzeugs 10 kontinuierlich laufen.
-
4 zeigt ein beispielhaftes Verfahren 200 für die Fusionierung von Daten, wie z.B. die Fusionierung zur Gewinnung der globalen Fahrbahnrändern-Daten 122. Wie man sich vorstellen kann, kann die gleiche oder eine ähnliche Verfahren für andere Fixierungen verwendet werden. In einem Beispiel kann das Verfahren bei 200 beginnen. Die Bild-Daten 120 und die globalen Posen-Daten 118 werden bei 210 empfangen. In verschiedenen Ausführungsformen enthalten die Bild-Daten 120 eine polynomische Darstellung der Landmarken, die einen Fahrbahnrand entsprechend einem Rahmen des Host-Fahrzeugs (HV) anzeigen: y = a0 +a1x +a2x2 +..., wobei x der Längsabstand und y der Querabstand ist. Die Fahrbahnabstände aus den Bild-Daten 120 werden dann in einen Fahrbahnrahmen (z.B. wenn das Fahrzeug 10 nicht parallel zum Fahrbahnrand ist) bei 220 mit d -= a0 cos δ umgewandelt, wobei δ= tan-1a1 und d der seitliche Abstand zum Fahrzeug 10 von dem Fahrbahnrand ist. In ähnlicher Weise wird die Längsgeschwindigkeit aus den globalen Posen-Daten 118 in den Fahrbahnrahmen bei 230 mit v = v' cos δ umgerechnet, wobei v' die Längsgeschwindigkeit im Rahmen des Host-Fahrzeugs und v die Längsgeschwindigkeit im Fahrbahnrahmen ist.
-
Die Fahrbahnabstände und die Längsgeschwindigkeit werden mit einem Kalman-Filter bei 240 mit Hilfe eines Prozessmodells verarbeitet:
wobei c den vorzeichenbehafteten Versatz von der Fahrbahnmitte darstellt, w die Breite der Bahn, die konstante D bestimmt die Konvergenzrate zum Nominalwert, ΔT ist eine Stichprobenperiode, v steht für die Längsgeschwindigkeit des Fahrzeugs im Fahrbahnrahmen und wo für eine nominale Straßenbreite (z.B. 3,7 m).
-
Eine Prozess-Kovarianz:
wobei
vorher abgestimmte Abweichungen sind.
-
Ein Beobachtungsmodell:
-
Dabei steht d1 für den seitlichen Abstand des linken Fahrbahnrands zum Gastgeberfahrzeug und dr für den seitlichen Abstand des rechten Fahrbahnrands zum Host-Fahrzeug.
-
Eine Beobachtungs-Kovarianz:
-
Wobei
die linke Abstandsvarianz darstellt und
die richtige Abstandsvarianz darstellt, die vom Sensor abgeleitet werden. Wie zu schätzen ist, können diese Werte vordefiniert sein, wenn der Sensor die Informationen nicht liefert (z.B. mittels Nachschlagetabelle).
Danach werden bei
250 der fusionierte Spurmittenversatz und die Breite mit Hilfe von
250 in seitliche Links- und Rechtsabstände im Spurrahmen umgerechnet:
-
Die Entfernungen werden in den Rahmen des Gastgeberfahrzeugs umgerechnet:
-
Wobei
linke und rechte kartesische Koordinaten sind.
-
Die Koordinaten werden unter Verwendung des Kurses des Host-Fahrzeugs und der Position aus den globalen Posen-Daten
118 bei
260 in den globalen Rahmen umgewandelt:
-
Wobei θ der Kurs des Host-Fahrzeugs ist und
ist eine Rotationsmatrix.
-
Die resultierenden Vektoren
geben die endgültigen Koordinaten der linken und rechten Fahrbahnränder an.
-
Die Kovarianz jedes Vektors wird dann mit
270 angegeben:
-
Wobei ∑GPS die HV-Positionskovarianz ist, Pl und Pr linke und rechte Prozesskovarianzen sind. Danach kann das Verfahren zum Fusionieren der Fahrbahnrand-Informationen bei 280 enden. Wie zu schätzen ist, können andere Verfahren und Berechnungen in verschiedenen anderen Ausführungsformen implementiert werden.
-
5 illustriert ein beispielhaftes Verfahren 300 zur Korrektur einer Pose des Fahrzeugs 10 und zum Aktualisieren der Karte. In einem Beispiel kann das Verfahren 300 bei 305 beginnen. Die Daten 114-116, 120 werden vom Sensorsystem 28 erfasst, z.B. von der Kamera, der IMU, dem Kilometerzähler, dem GPS usw. Die globalen Posen-Daten 118 werden auf der Grundlage der Positionsdaten 114 und der Kilometerzähler/IMU-Daten 116 bei 310 bestimmt. Die globalen Fahrbahnrand-Daten 122 werden auf der Grundlage der globalen Posen-Daten 118 und der Landmark-Daten 120 bei 320 bestimmt, wie z.B. in 4 diskutiert.
-
Danach wird die Fahrzeugposition auf der Grundlage der Kartenspurdaten 124, der globalen Spurmittelpunktdaten 121 und der globalen Positionsdaten 118 bei 330 korrigiert und der Kartenfehler 126 wird darauf basierend bei 340 erzeugt. Die Veränderungen werden dann bestimmt und mit einem Schwellenwert von 350 verglichen, um zu sehen, ob sie drastisch sind. Wenn der Kartenfehler 126 den Schwellenwert bei 350 (drastisch) überschreitet, werden die Kartenränder durch die fusionierten Fahrbahnränder bei 360 ersetzt und die Karte bei 380 aktualisiert. Wenn der Kartenfehler 126 den Schwellenwert bei 350 (nicht drastisch) nicht überschreitet, werden die globalen Fahrbahnränder mit den Fahrbahnrändern der Karte fusioniert, z.B. mit den Techniken, die in 4 bei 370 beschrieben sind, und die Karte wird bei 380 aktualisiert. Danach kann das Verfahren bei 90 enden.
-
Obwohl in der vorstehenden detaillierten Beschreibung mindestens eine beispielhafte Ausführungsform vorgestellt wurde, sollte man sich darüber im Klaren sein, dass es eine große Anzahl von Variationen gibt. Es sollte auch gewürdigt werden, dass die beispielhafte Verkörperung oder beispielhafte Ausführungsformen nur Beispiele sind und nicht dazu gedacht sind, den Umfang, die Anwendbarkeit oder die Konfiguration der Offenbarung in irgendeiner Weise einzuschränken. Vielmehr wird die vorstehende detaillierte Beschreibung den Fachleuten eine praktische Roadmap für die Umsetzung der beispielhaften Ausführungsform oder der beispielhaften Ausführungsformen liefern. Es sollte verstanden werden, dass verschiedene Änderungen in der Funktion und Anordnung der Elemente vorgenommen werden können, ohne dass der Umfang der Offenbarung, wie er in den beigefügten Ansprüchen und deren rechtlichen Äquivalenten festgelegt ist, verlassen wird.