-
EINFUHRUNG
-
Die vorliegende Offenbarung bezieht sich auf Navigationssysteme für Fahrzeuge, einschließlich Systeme und Verfahren zum Erstellen und Detaillieren von digital gespeicherten Karten und darauf basierende Fahrzeugsteuerung.
-
Fahrzeuge, die für den autonomen Betrieb eingerichtet sind, sind in der Lage, eine oder mehrere Fahrzeugfunktionen wie Beschleunigen, Abbremsen, Bremsen und/oder Lenken vollständig oder teilweise zu steuern, wobei außer einem Bediener eine gewisse Autonomie besteht. Ein autonomes Fahrzeug kann mit Sensoren zur Überwachung seiner Umgebung ausgestattet sein, einschließlich z.B. Radarvorrichtungen, Lidarvorrichtungen und Bildkameras. Ein autonomes Fahrzeug kann in der Lage sein, außerhalb des Fahrzeugs über die Fahrzeug-zu-Fahrzeug-Kommunikation (V2V) und andere Kommunikationen, die als Fahrzeug bezeichnet werden können, zu jeder (V2X)-Kommunikation zu kommunizieren, die Infrastruktur, intelligente Straße und andere Systeme umfassen kann. Ein autonomes Fahrzeug kann mit einem Navigationssystem ausgestattet sein, das ein Ortungssystem wie beispielsweise einen GPS-Sensor (Global Positioning System) beinhalten kann.
-
Ein Navigationssystem im Fahrzeug kann sich auf eine digital gespeicherte Navigationskarte verlassen, die eine hochauflösende (HD) Karte sein kann. Der Betrieb eines autonomen Fahrzeugs kann durch verbesserte Präzision und aktuelle Kartendetails verbessert werden, einschließlich des Vorhandenseins und der Lage dynamischer, halbdynamischer und statischer Objekte, die in einem Fahrweg vorhanden sein können.
-
Es ist wünschenswert, eine Navigationskarte zu haben, die für ein fahrzeuggebundenes Navigationssystem zugänglich ist, das genaue Angaben zu Kreuzungspunkten, Verkehrszeichen, Ampeln, Fahrbahnmarkierungen, Gehwegen, Fußgängerüberwegen usw. enthält. Es ist auch wünschenswert, eine Navigationskarte zu haben, die regelmäßig aktualisiert werden kann, während man sich der Anforderungen und Einschränkungen bewusst ist, die durch drahtlose Kommunikationsprotokolle wie 3G, 4G, 5G usw. entstehen können. Es ist auch wünschenswert, eine Navigationskarte zu haben, die regelmäßig aktualisiert werden kann, indem Informationen aus anderen Fahrzeugen verwendet werden.
-
BESCHREIBUNG
-
Ein Objektfahrzeug wird beschrieben und beinhaltet eine fahrzeugseitige Steuerung, ein Zusatzfahrzeug-Kommunikationssystem, einen GPS-Sensor, ein räumliches Überwachungssystem und ein Navigationssystem, das eine fahrzeugseitige Navigationskarte verwendet. Ein Verfahren zum Steuern des Fahrzeugs beinhaltet das Erfassen einer 3D-Sensordarstellung eines Sichtfeldes proximal des betreffenden Fahrzeugs und einer zugehörigen GPS-Position über das räumliche Überwachungssystem, das Ausführen einer Merkmalsextraktionsroutine zum Extrahieren von Merkmalen aus der 3D-Sensordarstellung, das Ausführen einer semantischen Segmentierung der extrahierten Merkmale aus der 3D-Sensordarstellung, das Ausführen einer gleichzeitigen Lokalisierung und Zuordnung (SLAM) der extrahierten Merkmale aus der 3D-Sensordarstellung und der zugehörigen semantischen Segmentierung, das Ausführen einer Kontext-Extraktion aus der gleichzeitigen Lokalisierung und Zuordnung der extrahierten Merkmale sowie das Aktualisieren der Fahrzeug-Navigationskarte basierend auf der Kontext-Extraktion. Eine einfache Kartendarstellung wird basierend auf der aktualisierten Fahrzeug-Navigationskarte erzeugt und an eine zweite Steuerung übermittelt, wobei die zweite Steuerung eine Off-Board-Steuerung ist. Die zweite Steuerung führt eine spärliche Kartenheftung durch, um eine Basis-Navigationskarte basierend auf der einfachen Kartendarstellung zu aktualisieren. Die Fahrzeug-Navigationskarte wird basierend auf der Off-Board-Navigationskarte aktualisiert.
-
Ein Aspekt der Offenbarung beinhaltet die Kontrolle des Betriebs des betreffenden Fahrzeugs auf der Grundlage der aktualisierten Fahrzeug-Navigationskarte.
-
Ein weiterer Aspekt der Offenbarung beinhaltet ein autonomes Betriebssystem, wobei das Steuern des Betriebs des betreffenden Fahrzeugs basierend auf der aktualisierten Fahrzeugnavigationskarte das Steuern der autonomen Betriebssysteme basierend auf der aktualisierten Fahrzeugnavigationskarte beinhaltet.
-
Ein weiterer Aspekt der Offenbarung beinhaltet das Erzeugen einer einfache Kartendarstellung basierend auf der aktualisierten Fahrzeug-Navigationskarte, die eine Reihe von Merkmalen beinhaltet, die aus der Umgebung extrahiert werden, die durch ihre Merkmals-Deskriptoren, semantischen Bezeichnungen und 3D-Positionen zusammen mit ihren Aussichtspunkten definiert sind.
-
Ein weiterer Aspekt der Offenbarung beinhaltet die Ausführung eines progressiven Relokalisierungsschemas zur Durchführung von spärlicher Kartenheftung, um die Cloud-basierte Navigationskarte basierend auf der einfachen Kartendarstellung zu aktualisieren.
-
Ein weiterer Aspekt der Offenbarung beinhaltet die Ausführung eines einmaligen Relokalisierungsschemas zur Ausführung von spärlicher Kartenheftung, um die Cloud-basierte Navigationskarte basierend auf der einfachen Kartendarstellung zu aktualisieren.
-
Ein weiterer Aspekt der Offenbarung beinhaltet das Hinzufügen einer semantischen Segmentierung zur SLAM-Karte, um die gleichzeitige Lokalisierung und Abbildung der extrahierten Merkmale aus der 3D-Sensordarstellung und der zugehörigen semantischen Segmentierung durchzuführen.
-
Ein weiterer Aspekt der Offenbarung ist, dass die Off-Board-Steuerung Cloud-basiert ist.
-
Ein weiterer Aspekt der Offenbarung beinhaltet die Off-Board-Steuerung, die eine ferngesteuerte Backoffice-Steuerung ist.
-
Die obigen Merkmale und Vorteile sowie andere Merkmale und Vorteile der vorliegenden Lehren ergeben sich aus der folgenden detaillierten Beschreibung einiger der bevorzugte Ausführungsformen und anderer Ausführungsformen zur Durchführung der vorliegenden Lehren, wie sie in den beigefügten Ansprüchen definiert sind, wenn sie in Verbindung mit den beigefügten Zeichnungen verwendet werden.
-
Figurenliste
-
Eine oder mehrere Ausführungsformen werden nun exemplarisch mit Bezug auf die begleitenden Figuren beschrieben, in denen:
- 1 stellt schematisch eine Ausführungsform eines autonomen Fahrzeugs dar, das gemäß der Offenbarung einen Global Position System (GPS)-Sensor, ein Navigationssystem, eine Telematikvorrichtung und ein räumliches Überwachungssystem beinhaltet.
- 2 stellt schematisch eine Systemarchitektur dar, die von einem betreffenden Fahrzeug verwendet wird, einschließlich eines Fahrzeugabtastsystems aus der Menge, um eine kontextbezogene, spärliche HD-Navigationskarte zu erzeugen und dynamisch zu aktualisieren, die gemäß der Offenbarung mit halbdynamischen und statischen Objekten erweitert wurde.
- 3 zeigt schematisch Details im Zusammenhang mit einer semantischen Segmentierungsroutine, die semantische Bezeichnungen und Positionen von semi-dynamischen Objekten erzeugt, die von einem räumlichen Überwachungssystem gemäß der Offenbarung erfasst werden.
- 4 stellt schematisch eine einmalige Relokalisierungsroutine dar, die die Lokalisierung eines einzelnen Keyframes aus einer Fahrzeug-Navigationskarte auf einer Basis-Navigationskarte gemäß der Offenbarung beinhaltet.
- 5 zeigt schematisch eine progressive Relokalisierungsroutine, die die Lokalisierung der vom jeweiligen Fahrzeug gesammelten Keyframes unter Verwendung einer Fusion von BoVWs (Bag of Visual Words), Merkmals Mapping und PnP-Solver-Modulen gemäß der Offenbarung beinhaltet.
-
Es ist zu verstehen, dass die beigefügten Figuren nicht unbedingt maßstabsgetreu sind und eine etwas vereinfachte Darstellung verschiedener bevorzugter Merkmale der vorliegenden Offenbarung, wie sie hierin offenbart werden, darstellen, einschließlich beispielsweise spezifischer Abmessungen, Orientierungen, Positionen und Formen. Details, die mit solchen Merkmalen verbunden sind, werden teilweise durch die jeweilige beabsichtigte Anwendung und Einsatzumgebung bestimmt.
-
DETAILLIERTE BESCHREIBUNG
-
Die Komponenten der offenbarten Ausführungsformen, wie hierin beschrieben und veranschaulicht, können in einer Vielzahl von verschiedenen Konfigurationen angeordnet und gestaltet werden. Die folgende detaillierte Beschreibung soll daher nicht den Umfang der Offenbarung, wie behauptet, einschränken, sondern ist lediglich repräsentativ für mögliche Ausführungsformen. Darüber hinaus werden in der folgenden Beschreibung zwar zahlreiche spezifische Details dargelegt, um ein gründliches Verständnis der hierin offenbarten Ausführungsformen zu ermöglichen, aber einige Ausführungsformen können auch ohne einige dieser Details geübt werden. Darüber hinaus wurden aus Gründen der Übersichtlichkeit bestimmte technische Materialien, die von den Fachleuten verstanden werden, nicht im Detail beschrieben, um eine unnötige Verschleierung der Offenbarung zu vermeiden.
-
Unter Bezugnahme auf die Figuren, wobei die Darstellungen zum Zwecke der Veranschaulichung bestimmter exemplarischer Ausführungsformen und nicht zum Zwecke der Begrenzung derselben dienen, stellt 1 schematisch eine Ausführungsform eines betreffenden Fahrzeugs 10 dar, das mit einem Navigationssystem 55 eingerichtet ist. In einer Ausführungsform und wie hierin beschrieben, beinhaltet das betreffende Fahrzeug 10 einen Global Position System (GPS)-Sensor 50, eine Telematikvorrichtung 60, ein räumliches Überwachungssystem 65, ein Mensch-Maschine-Schnittstellen (HMI)-System 75, eine oder mehrere Steuerungen 15 und ein autonomes Betriebssystem 45, das so angeordnet ist, dass es einen Grad des autonomen Fahrzeugbetriebs bereitstellt. Eine fahrzeugseitige Navigationskarte 56 wird auf einer fahrzeugseitigen Steuerung gespeichert, die mit dem Navigationssystem 55 in Verbindung steht.
-
Das betreffende Fahrzeug 10 beinhaltet eine Telematikvorrichtung 60, die ein drahtloses Telematik-Kommunikationssystem beinhaltet, das zur Kommunikation mit anderen Fahrzeugen geeignet ist, einschließlich der Kommunikation mit einem Kommunikationsnetzwerksystem mit drahtlosen und drahtgebundenen Kommunikationsmöglichkeiten. Die Telematikvorrichtung 60 ist in der Lage, eine Zusatzfahrzeug-Kommunikation durchzuführen, die eine Kommunikation zwischen Fahrzeugen im Nahbereich (V2V) und/oder eine Kommunikation zwischen Fahrzeugen und Infrastruktur (V2X) beinhaltet, die auch die Kommunikation mit einem Infrastrukturmonitor, z.B. einer Verkehrskamera, beinhalten kann. Alternativ oder zusätzlich verfügt die Telematikvorrichtung 60 über ein drahtloses Telematik-Kommunikationssystem, das in der Lage ist, drahtlos mit einer tragbaren Vorrichtung, z.B. einem Mobiltelefon, einem Satellitentelefon oder einer anderen Telefonvorrichtung, zu kommunizieren. In einer Ausführungsform wird die tragbare Vorrichtung mit einer Softwareanwendung geladen, die ein drahtloses Protokoll zur Kommunikation mit der Telematikvorrichtung 60 beinhaltet, und die tragbare Vorrichtung führt die Zusatzfahrzeug-Kommunikation aus, einschließlich der Kommunikation mit einer externen Steuerung 95 über ein Kommunikationsnetzwerk 90, das einen Satelliten 80, eine Antenne 85 und/oder einen anderen Kommunikationsmodus beinhaltet. Alternativ oder zusätzlich führt die Telematikvorrichtung 60 die Kommunikation mit dem Zusatzfahrzeug direkt durch, indem sie über das Kommunikationsnetzwerk 90 mit der externen Steuerung 95 kommuniziert. Eine Basisnavigationskarte 96 ist in einer oder mehreren Speichervorrichtungen der Off-Board-Steuerung 95 gespeichert. Die Basisnavigationskarte 96 ist eine hochauflösende (HD) Karte, die eine Genauigkeit aufweist, die in einer Größenordnung von Metern in Bezug auf die Position und in einer Größenordnung von Zentimetern in Bezug auf die Objektpositionen liegt. Die Off-Board-Steuerung 95 kann ein Cloud-basiertes Computersystem oder ein Back-Office-Computersystem sein, das mit einem Dienstanbieter verbunden ist. Der Begriff „Cloud“ und verwandte Begriffe können als Modell für den allgegenwärtigen, bequemen, bedarfsgerechten Netzwerkzugriff auf einen gemeinsamen Pool von konfigurierbaren Computerressourcen (z.B. Netzwerke, Server, Speicher, Anwendungen und Dienste) definiert werden, die über Virtualisierung schnell bereitgestellt und mit minimalem Verwaltungsaufwand oder Interaktion mit dem Dienstanbieter freigegeben und dann entsprechend skaliert werden können. Ein Cloud-Modell kann sich aus verschiedenen Merkmalen zusammensetzen (z.B. On-Demand-Self-Service, breiter Netzwerkzugang, Ressourcen-Pooling, schnelle Elastizität, gemessener Service, etc.), Servicemodelle (z.B. Software as a Service („SaaS“), Platform as a Service („PaaS“), Infrastructure as a Service („IaaS“) und Bereitstellungsmodelle (z.B. Private Cloud, Community Cloud, Public Cloud, Hybrid Cloud, etc.).
-
Das Fahrzeug-Raumüberwachungssystem 65 beinhaltet eine Raumüberwachungssteuerung in Verbindung mit einer Vielzahl von Abtastvorrichtungen. Das Fahrzeugraumüberwachungssystem 65 überwacht dynamisch einen Bereich in der Nähe des betreffenden Fahrzeugs 10 und erzeugt digitale Darstellungen von beobachteten oder anderweitig erkannten entfernten Objekten. Das räumliche Überwachungssystem 65 kann einen linearen Bereich, eine relative Geschwindigkeit und eine Trajektorie für jedes benachbarte entfernte Objekt bestimmen. Die Abtastvorrichtungen des Raumüberwachungssystems 65 können durch nicht einschränkende Beschreibungen Vordereckensensoren, Hintereckensensoren, Rückwinkelsensoren, Seitensensoren, Seitensensoren, einen Vorderradarsensor und eine Kamera in einer Ausführungsform beinhalten, obwohl die Offenbarung nicht so eingeschränkt ist. Die Platzierung der vorgenannten Sensoren ermöglicht es dem Raumüberwachungssystem 65, den Verkehrsfluss einschließlich benachbarter Fahrzeuge und anderer Objekte um das betreffende Fahrzeug herum zu überwachen. Die vom Raumüberwachungssystem 65 erzeugten Daten können von einem Spuranreißer-Erfassungsprozessor (nicht dargestellt) verwendet werden, um die Fahrbahn zu schätzen. Die Abtastvorrichtungen des Fahrzeug-Raumüberwachungssystems 65 können ferner objektlokalisierende Abtastvorrichtungen einschließlich Entfernungssensoren, wie FM-CW-Radar (Frequency Modulated Continuous Wave), Impuls- und FSK-Radar (Frequency Shift Keying) und Lidar (Light Detection and Ranging) Vorrichtungen sowie Ultraschallvorrichtungen beinhalten, die auf Effekte wie Doppler-Effekt-Messungen zum Lokalisieren von Vorwärtsobjekten angewiesen sind. Die möglichen Objektortungsvorrichtungen beinhalten ladungsgekoppelte Vorrichtungen (CCD) oder komplementäre Metalloxid-Halbleiter-(CMOS)-Videobildsensoren und andere Kamera/Videobildprozessoren, die digitale fotografische Verfahren verwenden, um vordere und/oder hintere Objekte, einschließlich eines oder mehrerer Objektfahrzeuge, zu „betrachten“. Solche Sensorsysteme werden zum Erkennen und Lokalisieren von Objekten in Automobilanwendungen eingesetzt und sind mit autonomen Betriebssystemen verwendbar, einschließlich z.B. adaptiver Geschwindigkeitsregelung, autonomer Bremsung, autonomer Lenkung und Seitenobjekterkennung. Der Begriff „Bild“ wird hierin verwendet, um sich auf eine Darstellung eines Sichtfeldes (FOV) zu beziehen, das von einer Abtastvorrichtung des Raumüberwachungssystems 65 erfasst wird und ein von einer Kamera aufgenommenes pixelgenaues Bild, einen Radarscan, einen Lidarscan usw. beinhalten kann. Der Begriff „Bild“ kann auch als „Sensordarstellung“ bezeichnet werden, was bedeutet, dass die Ausgänge von Sensoren wie Lidars und Radars gescannt werden, während der Ausgang einer Kamera ein Bild ist.
-
Die dem Raumüberwachungssystem 65 zugeordneten Abtastvorrichtungen werden vorzugsweise innerhalb des betreffenden Fahrzeugs 10 in relativ ungehinderten Positionen positioniert und sind in der Lage, das zugehörige Sichtfeld (FOV) 3D zu erfassen. Die Abtastvorrichtung kann so angeordnet sein, dass sie ein Bild eines FOV, das vor dem betreffenden Fahrzeug 10 liegt, in einer Ausführungsform erfasst. Alternativ oder zusätzlich kann die Abtastvorrichtung angeordnet werden, um ein Bild eines FOV aufzunehmen, das sich neben dem betreffenden Fahrzeug 10 und/oder hinter dem betreffenden Fahrzeug 10 in einer Ausführungsform befindet. Ein Bild kann eine Vielzahl von RGB- oder Graustufenpixeln beinhalten, die mit einer vorbestimmten Auflösung in einer Ausführungsform erfasst werden. Jeder dieser Sensoren liefert eine Schätzung der tatsächlichen Position oder des Zustands eines Objekts, wobei die Schätzung eine geschätzte Position und Standardabweichung beinhaltet. Daher kann die sensorische Erkennung und Messung von Objektpositionen und -bedingungen stattdessen als „Schätzungen“ bezeichnet werden. Die Eigenschaften dieser Sensoren können sich insofern ergänzen, als dass einige bei der Schätzung bestimmter Parameter zuverlässiger sein können als andere. Die Abtastvorrichtungen können unterschiedliche Betriebsbereiche und Winkelabdeckungen aufweisen, die in der Lage sind, verschiedene Parameter innerhalb ihrer Betriebsbereiche zu schätzen. Beispielsweise können Radarsensoren die Reichweite, die Entfernungsrate und die Azimutposition eines Objekts schätzen, sind aber normalerweise nicht robust bei der Schätzung der Größe eines erfassten Objekts. Eine Kamera mit Bildverarbeitungsprozessor ist robuster beim Schätzen einer Form- und Azimutposition des Objekts, kann aber weniger effizient beim Schätzen der Reichweite und Entfernungsrate eines Objekts sein. Lidarsensoren vom Abtasttyp arbeiten effizient und genau in Bezug auf die Schätzung der Reichweite und der Azimutposition, können aber typischerweise die Entfernungsrate nicht schätzen und sind daher möglicherweise nicht so genau in Bezug auf die Erfassung bzw. Erkennung neuer Objekte. Ultraschallsensoren sind in der Lage, die Reichweite zu schätzen, können aber weniger in der Lage sein, die Reichweitenrate und die Azimutposition zu schätzen oder zu berechnen. Die Leistung jeder der oben genannten Sensortechnologien wird durch unterschiedliche Umgebungsbedingungen beeinflusst. So können einige der Sensorvorrichtungen während des Betriebs parametrische Abweichungen aufweisen, obwohl überlappende Abdeckungsbereiche der Sensoren Möglichkeiten zur Sensordatenfusion schaffen. Die Sensordatenfusion beinhaltet die Kombination von Sensordaten oder Daten, die aus Sensordaten aus verschiedenen Quellen stammen, die ein gemeinsames Sichtfeld beobachten, so dass die resultierenden Informationen genauer und präziser sind, als es bei individueller Nutzung dieser Quellen möglich wäre.
-
Das HMI-System 75 ermöglicht die Interaktion zwischen Mensch und Maschine, um den Betrieb eines Infotainmentsystems, des GPS-Sensors 50, des Fahrzeugnavigationssystems 55, einer entfernt gelegenen Servicezentrale und dergleichen zu steuern. Das HMI-System 75 überwacht Bedieneranfragen und liefert dem Bediener Informationen, einschließlich des Status von Fahrzeugsystemen, Service- und Wartungsinformationen. Das HMI-System 75 kommuniziert und/oder steuert den Betrieb einer Vielzahl von fahrzeuginternen Bedienerschnittstellengeräten. Das HMI-System 75 kann auch mit einer oder mehreren Vorrichtungen kommunizieren, die biometrische Daten überwachen, die dem Fahrzeugführer zugeordnet sind, einschließlich z.B. Blickposition, Haltung und Kopfpositionsverfolgung. Das HMI-System 75 wird zur Vereinfachung der Beschreibung als einheitliche Vorrichtung dargestellt, kann aber als eine Vielzahl von Steuerungen und zugehörigen Sensorvorrichtungen in einer Ausführungsform des hierin beschriebenen Systems eingerichtet werden. Die fahrzeuginterne(n) Bedienerschnittstellenvorrichtung(en) können Vorrichtungen beinhalten, die in der Lage sind, eine Meldung zu übertragen, die den Bediener zum Handeln drängt, und können ein elektronisches visuelles Anzeigemodul beinhalten, z.B. eine Flüssigkristallanzeige (LCD)-Vorrichtung, eine Heads-up-Anzeige (HUD), eine Audio-Feedbackvorrichtung, eine tragbare Vorrichtung und einen haptischen Sitz.
-
Das autonome Betriebssystem 45 ist so angeordnet, dass es einen autonomen Fahrzeugbetrieb ermöglicht. Das autonome Betriebssystem 45 beinhaltet eine Steuerung und ein oder mehrere Subsysteme, die ein autonomes Lenksystem, ein adaptives Geschwindigkeitsregelsystem, ein autonomes Brems-/Kollisionsvermeidungssystem und/oder andere Systeme beinhalten können, die eingerichtet sind, um den autonomen Fahrzeugbetrieb getrennt von oder in Verbindung mit Bedieneranforderungen zu steuern. Es können autonome Betriebsbefehle zum Steuern des autonomen Lenksystems, des adaptiven Geschwindigkeitsregelsystems, des autonomen Brems- /Kollisionsvermeidungssystems und/oder der anderen Systeme erzeugt werden. Der Fahrzeugbetrieb beinhaltet den Betrieb in einem der Antriebsmodi als Reaktion auf gewünschte Befehle, die Betreiberanforderungen und/oder autonome Fahrzeuganforderungen beinhalten können. Der Fahrzeugbetrieb, einschließlich des autonomen Fahrzeugbetriebs, umfasst Beschleunigung, Bremsen, Lenken, stationären Betrieb, Ausrollen und Leerlauf. Bedieneranforderungen können basierend auf den Eingaben des Bedieners zu einem Gaspedal, einem Bremspedal, einem Lenkrad, einem Getriebebereichswahlschalter und einem Geschwindigkeitsregelsystem erzeugt werden. Die Fahrzeugbeschleunigung beinhaltet ein Kippereignis, das eine Aufforderung zur Erhöhung der Fahrzeuggeschwindigkeit, d.h. zur Beschleunigung des Fahrzeugs ist. Ein Tip-in-Ereignis kann als Bedieneranforderung für die Beschleunigung oder als autonome Fahrzeuganforderung für die Beschleunigung entstehen. Ein nicht einschränkendes Beispiel für eine autonome Fahrzeuganforderung zur Beschleunigung kann auftreten, wenn ein Sensor für ein adaptives Geschwindigkeitsregelsystem anzeigt, dass ein Fahrzeug eine gewünschte Fahrzeuggeschwindigkeit erreichen kann, weil ein Hindernis aus einer Fahrspur entfernt wurde, wie es beispielsweise auftreten kann, wenn ein langsam fahrendes Fahrzeug von einer Autobahn mit begrenztem Zugang ausfährt. Das Bremsen beinhaltet eine Anforderung des Bedieners, die Fahrzeuggeschwindigkeit zu verringern. Der stationäre Betrieb beinhaltet den Fahrzeugbetrieb, wobei sich das Fahrzeug derzeit mit einer Geschwindigkeit bewegt, ohne dass der Bediener eine Brems- oder Beschleunigungsanforderung stellt, wobei die Fahrzeuggeschwindigkeit basierend auf der aktuellen Fahrzeuggeschwindigkeit und dem Fahrzeugmoment, dem Fahrzeugwind- und Rollwiderstand, dem Trägheitswiderstand des Antriebsstrangs oder dem Widerstandsmoment bestimmt wird. Das Ausrollen beinhaltet den Fahrzeugbetrieb, wobei die Fahrzeuggeschwindigkeit über einer minimalen Schwellengeschwindigkeit liegt und die Bedieneranforderung an das Gaspedal an einem Punkt erfolgt, der kleiner ist als zur Aufrechterhaltung der aktuellen Fahrzeuggeschwindigkeit erforderlich. Leerlauf beinhaltet den Fahrzeugbetrieb, an dem die Fahrzeuggeschwindigkeit bei oder nahe Null liegt. Das autonome Betriebssystem 45 beinhaltet einen Befehlssatz, der ausführbar ist, um eine Trajektorie für das betreffende Fahrzeug 10 zu bestimmen und aktuelle und/oder bevorstehende Straßenzustände und Verkehrsbedingungen basierend auf der Trajektorie für das betreffende Fahrzeug 10 zu bestimmen.
-
Der Begriff „Steuerung“ und verwandte Begriffe wie Steuermodul, Modul, Steuerung, Steuereinheit, Prozessor und ähnliche Begriffe beziehen sich auf eine oder mehrere Kombinationen von anwendungsspezifischen integrierten Schaltungen (ASIC), feldprogrammierbarem Gate-Array (FPGA), elektronischen Schaltungen, Zentraleinheit(en), z.B. Mikroprozessor(en) und zugehörigen nichtflüchtigen Speicherkomponenten in Form von Speicher- und Speichervorrichtungen (Read Only, programmierbare Read Only, Random Access, Festplatte, etc.). Die nichtflüchtige Speicherkomponente ist in der Lage, maschinenlesbare Anweisungen in Form von einem oder mehreren Software- oder Firmwareprogrammen oder -routinen, kombinatorischen Logikschaltungen, Ein- /Ausgabeschaltungen und Vorrichtungen, Signalkonditionierungs- und Pufferschaltungen und anderen Komponenten zu speichern, auf die ein oder mehrere Prozessoren zugreifen können, um eine beschriebene Funktionalität bereitzustellen. Ein-/Ausgabeschaltung(en) und Vorrichtungen beinhalten Analog/Digital-Wandler und zugehörige Vorrichtungen, die Eingänge von Sensoren überwachen, wobei diese Eingänge mit einer voreingestellten Abtastfrequenz oder als Reaktion auf ein auslösendes Ereignis überwacht werden. Software, Firmware, Programme, Anweisungen, Steuerroutinen, Code, Algorithmen und ähnliche Begriffe bedeuten steuerungsausführbare Befehlssätze einschließlich Kalibrierungen und Nachschlagetabellen. Jede Steuerung führt eine oder mehrere Steuerroutinen aus, um die gewünschten Funktionen bereitzustellen. Routinen können in regelmäßigen Abständen ausgeführt werden, z.B. alle 100 Mikrosekunden im laufenden Betrieb. Alternativ können Routinen als Reaktion auf das Auftreten eines auslösenden Ereignisses ausgeführt werden. Die Kommunikation zwischen den Steuerungen und die Kommunikation zwischen den Steuerungen, Stellgliedern und/oder Sensoren kann über eine direkte drahtgebundene Punkt-zu-Punkt-Verbindung, eine vernetzte Kommunikationsbusverbindung, eine drahtlose Verbindung oder eine andere geeignete Kommunikationsverbindung erfolgen. Zur Kommunikation gehört der Austausch von Datensignalen in geeigneter Form, wie beispielsweise elektrische Signale über ein leitfähiges Medium, elektromagnetische Signale über Luft, optische Signale über Lichtwellenleiter und dergleichen. Die Datensignale können diskrete, analoge oder digitalisierte analoge Signale beinhalten, die Eingänge von Sensoren, Stellgliedbefehle und die Kommunikation zwischen Steuerungen darstellen. Der Begriff „Signal“ bezieht sich auf einen physikalisch erkennbaren Indikator, der Informationen vermittelt und eine geeignete Wellenform (z.B. elektrisch, optisch, magnetisch, mechanisch oder elektromagnetisch) sein kann, wie DC, AC, Sinuswelle, Dreieckwelle, Rechteckwelle, Vibration und dergleichen, die in der Lage ist, durch ein Medium zu wandern.
-
Der Begriff „Modell“ bezieht sich auf einen prozessorbasierten oder prozessorausführbaren Code und die zugehörige Kalibrierung, die eine physikalische Existenz einer Vorrichtung oder eines physikalischen Prozesses simuliert. Wie hierin verwendet, beschreiben die Begriffe „dynamisch“ und „dynamische“ Schritte oder Prozesse, die in Echtzeit ausgeführt werden und gekennzeichnet sind durch das Überwachen oder anderweitige Bestimmen von Zuständen von Parametern und das regelmäßige oder regelmäßige Aktualisieren der Zustände der Parameter während der Ausführung einer Routine oder zwischen den Wiederholungen der Ausführung der Routine. Die Begriffe „Kalibrierung“, „Kalibrieren“ und verwandte Begriffe beziehen sich auf ein Ergebnis oder einen Prozess, der eine mit einer Vorrichtung verbundene Ist- oder Standardmessung mit einer wahrgenommenen oder beobachteten Messung oder einer vorgegebenen Position vergleicht. Eine Kalibrierung, wie hierin beschrieben, kann auf eine speicherbare parametrische Tabelle, eine Vielzahl von ausführbaren Gleichungen oder eine andere geeignete Form reduziert werden, die als Teil einer Mess- oder Kontrollroutine verwendet werden kann.
-
Ein Parameter ist definiert als eine messbare Größe, die eine physikalische Eigenschaft einer Vorrichtung oder eines anderen Elements darstellt, die unter Verwendung eines oder mehrerer Sensoren und/oder eines physikalischen Modells erkennbar ist. Ein Parameter kann einen diskreten Wert haben, z.B. entweder „1“ oder „0“, oder er kann stufenlos variabel sein.
Die 2, 3, 4 und 5 zeigen schematisch Details im Zusammenhang mit der dynamischen Konstruktion und Aktualisierung der Fahrzeug-Navigationskarte 56, die vom fahrzeuginternen Navigationssystem 55 verwendet wird. Dieses Konzept beinhaltet die Verwendung eines Crowdsourced-Fahrzeugsensorsystems zum Erstellen und Aktualisieren einer kontextabhängigen, spärlichen HD-Karte, die mit semidynamischen und statischen Objekten ergänzt wird und eine erweiterte 3D-Sicht für Fahrzeuge über größere Zeiträume ermöglicht. Das Crowd-sourcing beinhaltet die gemeinsame Nutzung spärlicher Daten mit der Cloud und die anschließende präzise, robuste und effiziente Zusammenführung der Daten aus mehreren Fahrzeugen zu einer einzigen spärlichen HD-Kartendarstellung. Dazu gehört ein robuster semantischer Segmentierungsansatz zur Unterscheidung zwischen dynamischen, halbdynamischen und statischen Objekten in der Umgebung.
-
2 stellt schematisch eine Systemarchitektur 200 dar, die in einer Ausführungsform des betreffenden Fahrzeugs 10 verwendet werden kann, die mit Bezug auf 1 beschrieben wird, wobei die Systemarchitektur 200 ein Fahrzeugabtastsystem aus der Masse verwendet, um eine kontextbezogene, spärliche HD-Navigationskarte zu erzeugen und dynamisch zu aktualisieren, die mit semidynamischen und statischen Objekten erweitert wurde. Ein Ziel der neuartigen Systemarchitektur 200 ist es, eine erweiterte 3D-Vision für das betroffene Fahrzeug 10 über große Zeiträume bereitzustellen und damit die Steuerbarkeit beim Betrieb eines oder mehrerer Subsysteme des autonomen Betriebssystems 45 zu verbessern.
-
Die Systemarchitektur 200 kann im Fahrzeug unter Verwendung der verschiedenen zuvor beschriebenen Systeme und der Fahrzeugsteuerung 15 implementiert werden. Die Systemarchitektur 200 beinhaltet ein erstes Segment 210, das eine einfache Kartendarstellung 224 erzeugt, die an ein zweites Segment 230 übermittelt werden kann. In einer Ausführungsform kann das erste Segment 210 im Fahrzeug und das zweite Segment 230 von der Off-Board-Steuerung 95 ausgeführt werden, die ein Cloud-basiertes Computersystem oder ein Back-Office-Computersystem in Verbindung mit einem Dienstanbieter sein kann.
-
Das erste Segment 210 beinhaltet das Erfassen eines 3D-Bildes eines Sichtfeldes, das sich proximal zum betreffenden Fahrzeug 10 befindet, über eine Abtastvorrichtung des Raumüberwachungssystems 65 und das gleichzeitige Erfassen eines zugehörigen GPS-Standortes über den GPS-Sensor 50 (212). Ein Merkmals-Extraktionsprogramm wird ausgeführt, um Merkmale aus dem 3D-Bild 214 zu extrahieren. Die Merkmalsextraktion beinhaltet das Auffinden von interessanten Punkten im 3D-Bild, z.B. Ecken oder Kanten, und das Berechnen oder anderweitige Bestimmen ihrer Merkmalsdeskriptoren unter Verwendung von umgebenden Pixeln im 3D-Bild.
-
Die aus dem 3D-Bild extrahierten Merkmale werden einer semantischen Segmentierung 216 unterzogen, die das Ausführen einer gleichzeitigen Lokalisierung und Zuordnung (SLAM) der extrahierten Merkmale aus dem 3D-Bild und der zugehörigen semantischen Segmentierung 218 beinhaltet. Eine Ausführungsform einer semantischen Segmentierungsroutine wird mit Bezug auf 3 beschrieben.
-
Die Kontext-Extraktion aus der gleichzeitigen Lokalisierung und Zuordnung der extrahierten Merkmale wird ausgeführt 220, was das Bestimmen der Objektklasse beinhaltet, zu der jedes extrahierte Merkmal gehört, z.B. eine Straßenoberfläche, ein Gebäude, ein Baum, ein Verkehrsschild, eine Ampel, etc.
-
Die Navigationskarte 56 im Fahrzeug wird basierend auf der Kontext-Extraktion 222 aktualisiert.
-
Basierend auf der aktualisierten Navigationskarte 224 im Fahrzeug, die stabile Merkmale in der Umgebung sowie deren 3D-Positionen, Deskriptoren, semantische Bezeichnungen und Aussichtspunkte enthält, wird eine einfache Kartendarstellung erzeugt. Darüber hinaus beinhaltet das Erzeugen einer einfache Kartendarstellung basierend auf der aktualisierten Fahrzeug- Navigationskarte die Ausführung der Merkmalsauswahl und eine Funktion zur Priorisierung von Versorgungsleistungen.
-
Die einfache Kartendarstellung wird an die Off-Board-Steuerung 95 (226, 232) übermittelt, die das zweite Segment 230 ausführt.
-
Das erste Segment 210 kann gleichzeitig in den Steuerungen eines oder mehrerer anderer Fahrzeuge implementiert werden, wie es schematisch durch das Fahrzeug 10' mit einem analogen ersten Segment 210' einschließlich analoger Schritte von 212' bis 226' dargestellt wird. Somit können mehrere Fahrzeuge dem zweiten Segment 230 Informationen in Form von einfachen Kartendarstellungen 224 bereitstellen.
Das zweite Segment 230 kann von der Off-Board-Steuerung 95 ausgeführt werden, wobei die Eingabe von einem oder mehreren Fahrzeugen 10, 10' erfolgt, die einfache Kartendarstellung 224, 224' dazu übermitteln.
-
Das zweite Segment 230 beinhaltet die Basisnavigationskarte 96 (236) und update(s) (234) in Form der einfachen Kartendarstellungen 224.
-
Die Basisnavigationskarte 96 (236) und die Aktualisierung(en) (234) werden als Eingaben für ein Heftungs-Modul (238) bereitgestellt, das Heftungs-operationen unter Verwendung von spärlichen Kartenheftungs-Darstellungen durchführt, um relevante Segmente der Basisnavigationskarte 96 (240) zu aktualisieren, und die aktualisierte Basisnavigationskarte 96' wird anschließend an die mehreren Fahrzeuge 10, 10' (242) übermittelt. Das spärliche Kartenheftung Modul (238) kann eine einmalige Relokalisierungsroutine beinhalten, die unter Bezugnahme auf 4 ausführlich beschrieben wird. Alternativ oder zusätzlich kann das spärliche Kartenheftungs-Modul (238) eine progressive Relokalisierungsroutine beinhalten, die unter Bezugnahme auf 5 ausführlich beschrieben wird.
-
Eine streng generierte Karte, wie die einfache Kartendarstellung 224, beinhaltet Merkmale und entsprechende 3D-Positionen, an denen die jeweiligen Merkmale gesammelt wurden, auch als Key-Frames bezeichnet.
-
3 zeigt schematisch Details im Zusammenhang mit einer semantischen Segmentierungsroutine 300, die semantische Beschriftungen und Positionen von semidynamischen Objekten (360) basierend auf Stereoframeingängen 302 aus dem fahrzeuginternen Raumüberwachungssystem 65 und die semantische Segmentierung von extrahierten Merkmalen aus dem 3D-Bild 304 erzeugt, die aus Schritt (218) von 2 erhalten werden. Die semantische Segmentierungsroutine 300 führt eine erste Routine aus, um eine semantische Beschriftung für eine spärliche Strenge-Merkmalskarte (310) durchzuführen, die Eingaben für eine segmentationsgetriebene semidynamische Objekterkennungsroutine (340) erzeugt, die das Erzeugen der semantischen Beschriftungen und Positionen von semidynamischen Objekten (360) beinhaltet. Die semantische Segmentierung kennzeichnet jedes wahrgenommene Merkmal semantisch mit der Klasse des Objekts, zu dem es gehört, z.B. ein Fahrzeug, eine Fahrbahn, ein Gebäude oder eine andere Vorrichtung, ein Fußgänger, etc.
-
Dazu gehört das Ausführen eines simultanen Ortungs- und Zuordnungsprozesses (SLAM) (321) zum Bestimmen einer 3D-Weltposition und das Durchführen eines ORB-Schlüsselpunkterkennungsprozesses an den Stereo-Frame-Eingängen 302 (322), was zu einer ORB-Merkmals-Extraktion (323) führt, die einen ORB-Deskriptor erzeugt. ORB (Oriented FAST and Rotated Brief) ist ein Begriff, der eine Fusion aus FAST Keypoint Detektor und BRIEF Deskriptor beschreibt. FAST ist ein Begriff, der „Merkmale aus dem beschleunigten Segmenttest“ (FAST) repräsentiert und ist ein Verfahren zur Eckerkennung, das zum Extrahieren von Merkmalspunkten und später zum Verfolgen und Zuordnen von Objekten in der Bildverarbeitung verwendet werden kann. BRIEF (Binary Robust Independent Elementary Features) ist eine universell einsetzbare Merkmalspunktdeskriptor-Routine, die für die Objekterkennung und 3D-Rekonstruktion verwendet werden kann.
-
Die semantische Segmentierung der aus dem 3D-Bild 304 extrahierten Merkmale wird in eine semantische Bildsegmentierungsroutine, z.B. DeepLab (324), eingegeben, deren Ergebnis einem 2D-Keypoint zur 3D-Kartenpunkt-Korrespondenzroutine (325) zur Erzeugung eines semantischen Labels unterzogen wird.
-
Die 3D-Weltposition aus dem SLAM-Prozess (321), der ORB-Deskriptor aus der ORB-Merkmalsextraktion (323) und das semantische Label aus der 2D-Schlüsselpunkt-zu-3D-Kartenpunkt-Korrespondenzroutine (325) werden einem Kartenpunkt-Schritt (330) bereitgestellt, der einen semantischen Label-Konsens (335) erzeugt und den Eingängen einer segmentgetriebenen semidynamischen Objekterkennungsroutine (340) zum Erzeugen der semantischen Labels und Positionen von semdynamischen Objekten (360) zur Verfügung gestellt.
-
Die segmentationsgetriebene semidynamische Objekterkennungsroutine (340) führt die gleichzeitige Lokalisierung und Zuordnung (SLAM) (345) der extrahierten Merkmale aus dem 3D-Bild und der zugehörigen semantischen Segmentierung unter Verwendung der semantischen Segmentierung der extrahierten Merkmale aus dem 3D-Bild 304 und des semantischen Etikettenkonsenses (335) durch. Dazu gehören die Lokalisierung der Merkmale in der 3D-Karte und die Ausführung einer Differenzoperation (350), die die Schritte des Projektierens von Merkmalen von der Karte 96 in die aktuelle Szene, des Ausführens einer Merkmalsabgleichs zwischen den Merkmalen der Karte und der aktuellen Szene, des Identifizierens neuer Merkmale in der aktuellen Szene und des Identifizierens von Merkmalen, die nicht in der aktuellen Szene vorhanden sind, des Ausführens eines semantischen Etikettenfilters zum Identifizieren semidynamischer Objekte und statischer Objekte sowie des Erzeugens der semantischen Etiketten und Positionen semidynamischer Objekte (360) beinhaltet. Der Differenzbetrieb (350) verwendet die Basisnavigationskarte und die aktuelle 3D-Szene, um herauszufinden, welche Merkmale verschoben wurden, d.h. ob neue Merkmale hinzugefügt oder entfernt wurden. Mit Hilfe der semantischen Bezeichnungen, die an die Merkmale angehängt werden, kann so der Kontext auf diese Objekte geschlossen werden.
-
Unter erneuter Bezugnahme auf 4 wird unter fortgesetzter Bezugnahme auf Elemente von 2 die einmalige Relokalisierungsroutine 400 beschrieben, die die Lokalisierung eines einzelnen Keyframes aus der Fahrzeug-Navigationskarte 56 auf die Basisnavigationskarte 96 beinhaltet, einschließlich der Entwicklung einer Transformationsmatrix. Datenstrukturen, die jedem Keyframe zugeordnet sind, beinhalten einen Identifikator (kpID), eine Pose (kpPose) und eine Liste von Map-Points (kpMPs), wobei jeder Map-Point einen Identifikator, einen Merkmals-Deskriptor, ein semantisches Label, eine Objektklasse, ein Referenzkeyframe und eine Weltposition beinhaltet.
-
Die Transformationsmatrix kann dann verwendet werden, um die verbleibenden Keyframes aus der Fahrzeug-Navigationskarte 56 in die Basisnavigationskarte 96 zu transformieren. Die Basisnavigationskarte 96 wird auf eine Speichervorrichtung (402) übertragen und einer Kartenrekonstruktion (410) unterzogen. Gleichzeitig wird ein neues Kartensegment, wie es in Form der einfachen Kartendarstellungen224 vorliegen kann, in eine Speichervorrichtung (404) geladen.
-
Die Kartenrekonstruktion (410) beinhaltet das Ausführen einer Keyframe-Datenbank und eines Ko-Sichtbarkeitsgraphen in Verbindung mit einer kompletten Keyframe-Rekonstruktion, um eine Rekonstruktion der Basis-Navigationskarte 96 auf Kartenebene durchzuführen, die als rekonstruierte Basis-Navigationskarte 412 bezeichnet wird.
-
Zufälligerweise werden die einfachen Kartendarstellungen 224 einer partiellen Rekonstruktion (420) unterzogen, die das Bestimmen eines Keyframe BoVW-Vektors (Bag of Visual Words) und das Finden von zweidimensionalen (2D) Projektionen der den einfachen Kartendarstellungen 224 zugeordneten Kartenpunkte zum Bestimmen eines neuen Kartensegments 422 beinhaltet.
-
Die rekonstruierte Basisnavigationskarte 412, die aus dem Kartenrekonstruktionsschritt (410) ausgegeben wird, und das neue Kartensegment 422, das aus dem Teilrekonstruktionsschritt (420) ausgegeben wird, werden als Eingänge für ein One-Shot-Stitching-Modul 430 bereitgestellt. Das One-Shot-Stitching-Modul 430 beinhaltet einen Relokalisierungsschritt 440, einen Keyframe-Additionsschritt 450 und einen globalen Transformationsschritt 460, die sich zu einer robusten, streng generierten, gestickten Basis-Navigationskarte 96 verbinden.
Der Relokalisierungsschritt 440 beinhaltet die Ausführung einer BoVW-Schlüsselwortabgleichsroutine, einer Map-Point-Matchingroutine, einer PnP (perspective-n-point) Solverroutine, einer RANSAC-Routine und einer Posenoptimierungsroutine, aus der eine Transformationsmatrix 445 erzeugt wird.
-
Die BoVW-Schlüsselwortabgleichsroutine beinhaltet den Abgleich von Schlüsselwörtern zwischen der rekonstruierten Basisnavigationskarte 412 und dem neuen Kartensegment 422.
-
Die Map-Point Matching-Routine beinhaltet das Merkmals-Matching von Schlüsselpunkten basierend auf deren Deskriptoren sowie deren 3D-Positionen.
-
Die PnP-Solverroutine bezieht sich auf das Schätzen der Pose der Kamera, d.h. der Position und Perspektive des Sensors des fahrzeuginternen Raumüberwachungssystems 65, basierend auf den 3D-Punkten in einem Bild und den entsprechenden 2D-Projektionen in einem Bild.
-
Die RANSAC (Random Sample Consensus) Routine erkennt und entfernt Ausreißer im Datensatz durch einen iterativen Prozess, der Parameter in einem zugehörigen mathematischen Modell aus einem Satz von beobachteten Daten schätzt.
-
Die Posenoptimierungsroutine beinhaltet die Verwendung von vom Sensor beobachteten 2D-Schlüsselpunkten zusammen mit 3D-Koordinaten in der Karte, um die berechnete Pose der Kamera, des Radarsensors oder des Lidarsensors zu optimieren.
-
Der Keyframe-Additionsschritt 450 verwendet die durch den Relokalisierungsschritt 440 erzeugte Transformationsmatrix 445, um Kartenpunkte in die Basisnavigationskarte 96 zu transformieren, Kartenpunkte mit denen in der Basisnavigationskarte 96 abzugleichen und redundante Kartenpunkte zu entfernen.
-
Der globale Transformationsschritt 460 transformiert das nächste Keyframe in die Basis-Navigationskarte 96, um eine aktualisierte Version der Basis-Navigationskarte 96 zu generieren.
-
Unter erneuter Bezugnahme auf 5, mit weiterem Bezug auf Elemente von 3, beinhaltet die progressive Relokalisierungsroutine 500 die Lokalisierung der vom betreffenden Fahrzeug 10 gesammelten Keyframes unter Verwendung einer Fusion von BoVWs (Bag of Visual Words), Merkmals Mapping und PnP Solver Modulen. Dies beinhaltet die Basisnavigationskarte 96, die auf eine Speichervorrichtung (502) übertragen und einer Kartenrekonstruktion (510) unterzogen wird. Die Kartenrekonstruktion (510) beinhaltet das Ausführen einer Keyframe-Datenbank und eines Co-Visibility-Graphen in Verbindung mit einer kompletten Keyframe-Rekonstruktion, um eine Rekonstruktion der Basis-Navigationskarte 96 auf Kartenebene durchzuführen, die als rekonstruierte Basis-Navigationskarte 512 bezeichnet wird. Zufälligerweise werden die einfachen Kartendarstellungen 224 einer partiellen Rekonstruktion (520) unterzogen, die das Bestimmen eines Keyframe BoVW-Vektors (Bag of Visual Words) und das Finden von zweidimensionalen (2D) Projektionen der den einfachen Kartendarstellungen 224 zugeordneten Kartenpunkte zum Bestimmen eines neuen Kartensegments 522 beinhaltet.
-
Die rekonstruierte Basisnavigationskarte 512, die aus dem Kartenrekonstruktionsschritt (510) ausgegeben wird, und das neue Kartensegment 522, das aus dem Teilrekonstruktionsschritt (520) ausgegeben wird, werden als Eingänge für ein progressives Relokalisierungsstichmodul 530 bereitgestellt. Das One-Shot-Stitching-Modul 530 beinhaltet einen Relokalisierungsschritt 540, einen Keyframe-Additionsschritt 550, der sich zu einer robusten, streng generierten, gestickten Basis-Navigationskarte 96 kombiniert. Gleichzeitig wird ein neues Kartensegment, wie es in Form der einfachen Kartendarstellungen 224 vorliegen kann, in eine Speichervorrichtung (504) geladen.
-
Der Relokalisierungsschritt 540 beinhaltet die Ausführung einer BoVW-Schlüsselwortabgleichsroutine, einer Map-Point-Matchingroutine, einer PnP (perspective-n-point) Solverroutine, einer RANSAC-Routine und einer Posenoptimierungsroutine, aus der eine Transformationsmatrix 545 erzeugt wird.
-
Die BoVW-Schlüsselwortabgleichsroutine beinhaltet den Abgleich von Schlüsselwörtern zwischen der rekonstruierten Basisnavigationskarte 512 und dem neuen Kartensegment 522.
-
Die Kartenpunktabgleichsroutine beinhaltet das Abgleichen entsprechender Merkmale aus einem anderen Rahmen desselben Fahrzeugs oder das Abgleichen entsprechender Rahmen aus verschiedenen Fahrzeugen desselben geografischen Standortes.
-
Die PnP-Solverroutine bezieht sich auf das Schätzen der Pose der Kamera, d.h. der Position und Perspektive des Sensors des fahrzeuginternen Raumüberwachungssystems 65, basierend auf den 3D-Punkten in einem Bild und den entsprechenden 2D-Projektionen in einem Bild.
-
Die RANSAC (Random Sample Consensus) Routine erkennt und entfernt Ausreißer im Datensatz durch einen iterativen Prozess, der Parameter in einem zugehörigen mathematischen Modell aus einem Satz von beobachteten Daten schätzt.
-
Der Keyframe-Additionsschritt 550 verwendet die durch den Relokalisierungsschritt 540 erzeugte Transformationsmatrix 545, um Kartenpunkte in die Basisnavigationskarte 96 zu transformieren, Kartenpunkte mit denen in der Basisnavigationskarte 96 abzugleichen und redundante Kartenpunkte zu entfernen. Der Keyframe-Additionsschritt 550 konstruiert weiterhin einen BoVW-Vektor, den er zu einer Keyframe-Datenbank hinzufügt, und fügt den Keyframe dann der Basis-Navigationskarte 96 hinzu, um eine aktualisierte Version der Basis-Navigationskarte 96 zu erzeugen.
-
Auf diese Weise wird die aktualisierte Basis-Navigationskarte 96' anschließend den mehreren Fahrzeugen 10, 10' basierend auf der einfachen Kartendarstellung mitgeteilt, was die Aktualisierung der Fahrzeug-Navigationskarte 56 basierend auf der cloud-basierten Navigationskarte 96 beinhaltet.
-
Die hierin beschriebenen Konzepte verwenden Anwendungsprogrammierschnittstellen (APIs), um das Hoch- und Herunterladen von Daten zwischen dem betreffenden Fahrzeug 10 und der Off-Board-Steuerung 95 zu erleichtern. Eine API ist eine Vehikel-zu-Cloud-API, die das Hochladen von Daten vom betroffenen Fahrzeug 10 auf die Off-Board-Steuerung 95 beinhaltet. Dazu gehören: GetMapSegment, das die GPS-Position des betreffenden Fahrzeugs 10 beinhaltet; GetMapUpdates, das die GPS/SLAM-Position beinhaltet; und GetSemiDynamicObjects, das die GPS/SLAM-Position beinhaltet. Die Vehicle-to-Cloud-API beinhaltet auch das Hochladen von Daten von der Off-Board-Steuerung 95 auf das betreffende Fahrzeug 10. Dazu gehören: UploadMapSegment, das das entsprechende Kartensegment beinhaltet; und UpdateMapSegment, das das Kartenupdate beinhaltet, mit den zugehörigen Funktionen.
-
Eine zweite API ist eine Cloud-to-Vehicle-API, die das Herunterladen von Daten von der Off-Board-Steuerung 95 auf das betreffende Fahrzeug 10 beinhaltet. Dazu gehören: GetMapSegmentUpdates, die GPS-Position und Fahrzeug-ID des betreffenden Fahrzeugs 10 beinhalten; und GetSemiDynamicObjects, das auch GPS-Position und Fahrzeug-ID des betreffenden Fahrzeugs 10 beinhaltet. Die Cloud-to-Vehicle-API beinhaltet auch das Hochladen von Daten von der Off-Board-Steuerung 95 auf das betreffende Fahrzeug 10. Dazu gehören: UploadMapUpdates, das die GPS-Position des betreffenden Fahrzeugs 10 beinhaltet; und UpdateMapSegment, das das Kartensegment und das Update beinhaltet.
-
Die hierin beschriebenen Konzepte bieten einen robusten semantischen Segmentierungsansatz zur Unterscheidung zwischen dynamischen, halbdynamischen und statischen Objekten in der Umgebung. Es verwendet auch semantisch beschriftete Umgebungsmerkmale, die in die spärlichen Merkmalskarten eingebettet sind, um zeitliche Veränderungen in der Umgebung zu ermitteln. In einer Ausführungsform können die hierin beschriebenen Konzepte andere Abtastsysteme übertreffen, indem sie mittels Crowd-sourcing spärliche Daten über V2X aus einer Vielzahl von Fahrzeugen mit der Cloud austauschen und dann die Daten genau, robust und effizient aus mehreren Fahrzeugen in eine einzige spärliche HD-Kartendarstellung zusammenfügen. Auf diese Weise können Effizienzsteigerungen bei der Nutzung von drahtloser Bandbreite, Kartensammelzeit und Stichproben bei Vorhandensein von spärlichen Daten erreicht werden.
-
Die Konzepte verwenden visuelle simultane Lokalisierung und Zuordnung (SLAM) sowie semantische Segmentierungswerkzeuge unter Berücksichtigung der Genauigkeit von Vision SLAM, semantischer Segmentierung und der Kapazität/Latenz von V2X-Kommunikationstechnologien. Ein solcher Betrieb kann den Betrieb innerhalb der Grenzen der LTE/4G-Kommunikationstechnologie ermöglichen. Darüber hinaus entfernt die Sparmaßnahme nicht wesentliche Kartenkomponenten, ohne die die Integrität der Karte noch intakt ist.
-
Die Lehren können hierin in Bezug auf funktionale und/oder logische Blockkomponenten und/oder verschiedene Verarbeitungsschritte beschrieben werden. Es ist zu beachten, dass solche Blockkomponenten aus Hardware-, Software- und/oder Firmwarekomponenten bestehen können, die zur Ausführung der angegebenen Funktionen eingerichtet wurden. Ausführungsformen können auch in Cloud-Computing-Umgebungen implementiert werden. Das Flussdiagramm und die Blockdiagramme in den Flussdiagrammen veranschaulichen die Architektur, Funktionalität und Bedienung möglicher Implementierungen von Systemen, Methoden und Computerprogrammprodukten gemäß verschiedener Ausführungsformen der vorliegenden Offenbarung. In diesem Zusammenhang kann jeder Block im Flussdiagramm oder in den Blockdiagrammen ein Modul, Segment oder einen Teil des Codes darstellen, der eine oder mehrere ausführbare Anweisungen zur Implementierung der angegebenen logischen Funktionen enthält. Es wird auch darauf hingewiesen, dass jeder Block der Blockdiagramme und/oder Flussdiagrammdarstellungen und Kombinationen von Blöcken in den Blockdiagrammen und/oder Flussdiagrammdarstellungen durch spezielle hardwarebasierte Systeme implementiert werden kann, die die angegebenen Funktionen oder Handlungen ausführen, oder Kombinationen von spezieller Hardware und Computeranweisungen. Diese Computerprogrammanweisungen können auch in einem computerlesbaren Medium gespeichert werden, das eine Steuerung oder eine andere programmierbare Datenverarbeitungsvorrichtung anweisen kann, auf eine bestimmte Weise zu funktionieren, so dass die auf dem computerlesbaren Medium gespeicherten Anweisungen einen Herstellungsgegenstand erzeugen, einschließlich Anweisungen zur Umsetzung der im Flussdiagramm und/oder Blockdiagramm oder in Blocks angegebenen Funktion/Akt.
-
Die detaillierte Beschreibung und die Zeichnungen oder Figuren sind unterstützend und beschreibend für die vorliegende Lehre, aber der Umfang der vorliegenden Lehre wird ausschließlich durch die Ansprüche definiert. Während einige der bevorzugten Ausführungsformen und andere Ausführungsformen für die Durchführung der vorliegenden Lehren detailliert beschrieben wurden, gibt es verschiedene alternative Designs und Ausführungsformen für die Ausübung der in den beigefügten Ansprüchen definierten vorliegenden Lehren.