-
EINLEITUNG
-
Die vorliegende Erfindung betrifft im Allgemeinen ein Fahrzeug und insbesondere Fahrzeugsensoren.
-
Fahrzeuge können mit einer Vielzahl von Sensoren ausgestattet sein. Die Sensoren können für mehrere Zwecke verwendet werden, einschließlich, jedoch nicht beschränkt auf, Objektverfolgung, Kollisionserkennung, Navigation, Temperaturerfassung, Straßenzustandserfassung, Wettererfassung und dergleichen. Allerdings können Sensoren teuer sein und die Sensordaten von den Fahrzeugsensoren können auf das beschränkt sein, was der Sensor aus seiner Sichtlinie des Fahrzeugs erkennen kann.
-
Dementsprechend ist es wünschenswert, die Sensorkosten für das Fahrzeug zu reduzieren und dabei die Erfassungskapazitäten zu verbessern. Außerdem werden andere wünschenswerte Merkmale und Eigenschaften der vorliegenden Erfindung aus der nachfolgenden ausführlichen Beschreibung der Erfindung und den hinzugefügten Ansprüchen in Verbindung mit den zugehörigen Zeichnungen und dem Hintergrund der Erfindung sichtbar.
-
KURZDARSTELLUNG
-
Gemäß einer Ausführungsform wird ein virtueller Crowdsourcing-Sensorgenerator bereitgestellt. Der virtuelle Crowdsourcing-Sensorgenerator kann umfassen, ist aber nicht beschränkt auf, einen Server, wobei der Server ein Kommunikationssystem beinhaltet, das dafür konfiguriert ist, Fahrzeugsensordaten von einem oder mehreren beitragenden Fahrzeugen zu empfangen, einen Standort eines oder mehrerer beitragenden Fahrzeuge und ein Zielfahrzeug, und einem kommunikativ mit dem Kommunikationssystem gekoppelten Prozessor, der dafür konfiguriert ist, die empfangenen Sensordaten von einem oder mehreren beitragenden Fahrzeugen basierend auf dem Standort der einen oder mehreren beitragenden Fahrzeuge und dem Standort des Zielfahrzeugs zu filtern, die gefilterten Fahrzeugsensordaten dann in mindestens einen der datenspezifischen Datensätze und einen anwendungsspezifischen Datensatz zu aggregieren, einen virtuellen Sensor für das Zielfahrzeug zu generieren, wobei der virtuelle Sensor die gefilterten und aggregierten Sensordaten des beitragenden Fahrzeugs verarbeitet, um Ausgangsdaten bzgl. des Standorts des Zielfahrzeugs zu generieren, und die Ausgangsdaten über das Kommunikationssystem vom virtuellen Sensor zum Zielfahrzeug zu übertragen.
-
Gemäß einer weiteren Ausführungsform wird ein Fahrzeug bereitgestellt. Das Fahrzeug kann umfassen, ist aber nicht beschränkt auf, ein Kommunikationssystem, das dafür konfiguriert ist, Sensordaten von einem oder mehreren Sensoren von einem oder mehreren beitragenden Fahrzeugen zu empfangen, einen Standort eines oder mehrerer beitragenden Fahrzeuge und ein Zielfahrzeug, und einem kommunikativ mit dem Kommunikationssystem gekoppelten Prozessor, der dafür konfiguriert ist, die empfangenen beitragenden Fahrzeugsensordaten basierend auf dem Standort der einen oder mehreren beitragenden Fahrzeuge und dem Standort des Fahrzeugs zu filtern, die gefilterten Fahrzeugsensordaten dann in mindestens einen der datenspezifischen Datensätze und einen anwendungsspezifischen Datensatz zu aggregieren und einen virtuellen Sensor für das Fahrzeug zu generieren, wobei der virtuelle Sensor die gefilterten und aggregierten Sensordaten des beitragenden Fahrzeugs verarbeitet, um Ausgangsdaten bzgl. des Standorts des Fahrzeugs zu generieren.
-
Figurenliste
-
Die vorliegende Offenbarung wird nachfolgend in Verbindung mit den folgenden Zeichnungsfiguren beschrieben, worin gleiche Bezugszeichen gleiche Elemente bezeichnen und
- 1 ist ein Blockdiagramm eines Fahrzeugs gemäß einer exemplarischen Ausführungsform;
- 2 ist ein Blockschaltbild zur Darstellung eines Crowdsourcing-basierten Sensorsystems gemäß einer Ausführungsform;
- 3 ist ein Flussdiagramm, das ein exemplarisches Verfahren zum Betreiben des Crowdsourcing-basierten Sensorsystems gemäß einer Ausführungsform veranschaulicht;
- 4 und 5 stellen Gegenstandsaggregation gemäß einer Ausführungsform dar.
-
AUSFÜHRLICHE BESCHREIBUNG
-
Die folgende ausführliche Beschreibung ist lediglich exemplarischer Natur und soll die Erfindung oder die Anwendung und die Verwendungen der Erfindung nicht einschränken. Darüber hinaus besteht keinerlei Verpflichtung zur Einschränkung auf eine der im vorstehenden Hintergrund oder in der folgenden ausführlichen Beschreibung dargestellten Theorien.
-
1 ist ein Blockdiagramm eines Fahrzeugs 100 gemäß einer exemplarischen Ausführungsform. Das Fahrzeug 100 kann von beliebigem Typ sein, einschließlich, jedoch nicht beschränkt auf, ein Kraftfahrzeug, Motorrad, Flugzeug (z. B. Flugzeug, Hubschrauber, Drohne usw.), ein Wasserfahrzeug oder dergleichen. Das Fahrzeug 100 beinhaltet ein Sensorsystem 110, das Daten von Sensoren am Fahrzeug 100 sowie Daten von Sensoren von einem oder mehreren anderen Fahrzeugen verwendet, wie nachstehend noch näher beschrieben.
-
Das Sensorsystem 110 beinhaltet mindestens einen Prozessor 120. Der/die Prozessor(en) 120 können eine zentrale Verarbeitungseinheit (CPU), eine Grafikverarbeitungseinheit (GPU), eine Physikverarbeitungseinheit (PPU), eine anwendungsspezifische integrierte Schaltung (ASIC), ein feldprogrammierbares Gate-Array (FPGA), einen Mikrocontroller oder eine beliebige andere Logikvorrichtung oder eine beliebige Kombination davon sein. Der/die Prozessor(en) 120 (nachstehend zur Vereinfachung nur noch im Singular als Prozessor 120 bezeichnet) kann dem Sensorsystem 110 zugeordnet sein oder kann mit einem oder mehreren anderen Systemen im Fahrzeug 100 gemeinsam genutzt werden.
-
Das Sensorsystem 110 umfasst auch den Speicher 130. Der Speicher 130 kann eine beliebige Kombination aus flüchtigem und nichtflüchtigem Speicher sein. Der Speicher 130 kann dem Sensorsystem 110 zugeordnet sein oder kann mit einem oder mehreren anderen Systemen im Fahrzeug 100 gemeinsam genutzt werden. Weiterhin kann sich der Speicher 130 im Fahrzeug 100 befinden, kann ein ferner Cloud-basierter Speicher oder eine Kombination derselben sein. Der Speicher kann die nichtflüchtigen computerlesbaren Anweisungen speichern, die, wenn sie durch den Prozessor 120 ausgeführt werden, das Sensorsystem 110, wie nachstehend näher beschrieben, implementieren.
-
Das Sensorsystem 110 beinhaltet des Weiteren ein oder mehrere Kommunikationssysteme 140. Das Kommunikationssystem 140 kann dem Sensorsystem 110 zugeordnet sein oder kann mit einem oder mehreren anderen Systemen im Fahrzeug 100 gemeinsam genutzt werden. Das Kommunikationssystem 140 kann beispielsweise ein zellulares Kommunikationssystem, ein Wi-Fi Kommunikationssystem, ein dediziertes Nahbereichskommunikationssystem (DSRC), ein Bluetooth-Kommunikationssystem, ein ZigBee-Kommunikationssystem, eine Satellitenkommunikationsanlage oder ein anderes Kommunikationssystem oder eine Kombination derselben sein.
-
Das Sensorsystem 110 und insbesondere der Prozessor 120 des Sensorsystems 110, können Befehle für einen oder mehrere Steuersysteme 150 im Fahrzeug 100 generieren. Das/die Steuersystem(e) 150 können beispielsweise eine Bremsanlage, ein Beschleunigungssystem, ein Lenksystem, ein Fahrerwarnsystem (z. B. ein optisches Warnsystem, ein Warntongenerator oder eine Kombination davon), ein Schaltsteuerungssystem, dergleichen oder jede Kombination davon sein.
-
Das Sensorsystem 110 beinhaltet einen oder mehrere Fahrzeugsensoren 160. Der/die Fahrzeugsensor(en) 160 können einen oder mehrere Radarsensoren, eine oder mehrere optische Kameras, eine oder mehrere Infrarotkameras, ein oder mehrere Lichterkennungs- und Reichweitensensoren (LIGHT) Sensoren, einen globalen Positionsbestimmungssystem-Empfänger (GPS), Empfänger, einen Temperatursensor, Regensensoren, Straßenzustands-Sensoren, Ultraschallsensoren oder eine beliebige Kombination davon beinhalten. Der/die Fahrzeugsensor(en) 160 geben Daten an den Prozessor 120 aus und werden zur Sicherheitsüberwachung, für Navigationszwecke, zur Überwachung von Straßenzuständen, zur Generierung von Befehlen für ein oder mehrere Steuersysteme 150 oder eine Kombination davon verwendet.
-
Das Sensorsystem 110 beinhaltet des Weiteren mindestens einen virtuellen Sensor 170. Jeder virtuelle Sensor 170, wie der/die Fahrzeugsensor(en) 160, stellt dem Prozessor 120 am Fahrzeug 100 Daten zur Verfügung. Allerdings stammt die Datenquelle für einen virtuellen Sensor 170 von Sensoren an anderen Fahrzeugen oder anderen dynamischen oder statischen Quellen (z. B. Sensoren an Verkehrsampeln oder dergleichen). Jeder virtuelle Sensor 170 kann eine bestimmte Art von Sensor sein, wie z. B. ein Radarsensor, eine optische Kamera, eine Infrarotkamera, ein LIDAR-Sensor, ein GPS-Empfängersensor, ein Temperatursensor, ein Regensensor, ein Straßenzustandssensor oder jede andere Art von Fahrzeugsensor. Ein virtueller Sensor 170 könnte jedoch auch ein virtueller Anwendungssensor sein. Ein virtueller Anwendungssensor kann Daten von mehreren Arten von Fahrzeugsensoren von einem oder mehreren Fahrzeugen kombinieren und Daten für eine spezifische Anwendung ausgeben. So kann ein virtueller Sensor 170 ein automatischer Fahrgeschwindigkeits-Regelungssensor sein, dessen Ausgang eine Folgegeschwindigkeit für ein automatisches Fahrgeschwindigkeits-Regelungsmodul ist. Ein automatischer Fahrgeschwindigkeits-Regelungssensor würde beispielsweise ein GPS-System, eine optische Kamera und dergleichen, einen LIDAR-Sensor und dergleichen von einem oder mehreren Fahrzeugen außer dem Fahrzeug 100 verwenden, um eine geeignete Folgegeschwindigkeit für das Fahrzeug 100 zu bestimmen und um die Folgegeschwindigkeit an den Prozessor 120 auszugeben. Ein Spurwechsel-Unterstützungssensor könnte beispielsweise statische und dynamische Informationen über benachbarte Fahrspuren sammeln, wie beispielsweise, die Verfügbarkeit einer Fahrspur, Zustands-, Kurvenbelegungsdaten oder dergleichen.
-
Einer oder mehrere der virtuellen Sensoren 170 kann auf Anforderung generiert werden, je nach den Bedürfnissen des Fahrzeugs 100. Am Beispiel des oben erwähnten automatischen Fahrgeschwindigkeits-Regelungssystems kann der virtuelle Sensor zur Bereitstellung der Folgegeschwindigkeit nur generiert werden, wenn ein Benutzer die automatische Fahrgeschwindigkeitsregelung im Fahrzeug aktiviert. Andere virtuelle Sensoren können immer dann generiert werden, wenn das Fahrzeug in Betrieb ist, wie z. B. ein virtueller Sensor zur Objektverfolgung oder Temperaturerfassung.
-
Der virtuelle Sensor 170 kann durch den Prozessor 120 ausgebildet sein. Der virtuelle Sensor 170 kann jedoch in einer anderen Ausführungsform von einem Server ausgebildet sein, wie nachstehend näher erläutert wird. In dieser Ausführungsform würde der virtuelle Sensor 170 Daten von anderen fernen Fahrzeugen erhalten und den Ausgang des virtuellen Sensors 170 an das Fahrzeug 100 senden.
-
2 ist ein Blockschaltbild zur Darstellung eines Crowdsourcing-basierten Sensorsystems 200 gemäß einer Ausführungsform. Das Crowdsourcing-basierte Sensorsystem 200 beinhaltet ein Fahrzeug 100, wie oben erörtert, sowie ein oder mehrere beitragende Fahrzeuge 210. Die beitragenden Fahrzeuge 210 können einen virtuellen Sensor 170 in ähnlicher Weise wie das Fahrzeug 100 verwenden, sowie Daten von anderen physikalischen Sensoren an den beitragenden Fahrzeugen 210, die im Folgenden als Sensor(en) von beitragenden Fahrzeugen 220 bezeichnet werden. Allerdings könnten die beitragenden Fahrzeuge 210 als Alternative Daten zum Crowdsourcing-basierten Sensorsystem 200 von dem/den Sensor(en) 220 der beitragenden Fahrzeuge beitragen, ohne einen virtuellen Sensor 170 zu verwenden.
-
In einer Ausführungsform können die beitragenden Fahrzeuge 210 beispielsweise Daten direkt von dem/den Sensor(en) der beitragenden Fahrzeuge 220 an das Fahrzeug 100 übertragen und der Prozessor 120 des Fahrzeugs 100 kann den virtuellen Sensor 170 ausbilden. Die beitragenden Fahrzeuge 210 können jedoch in einer anderen Ausführungsform beispielsweise Daten von dem/den Sensor(en) der beitragenden Fahrzeuge 220 an einen Server 230 übertragen. In dieser Ausführungsform kann der Server 230 den virtuellen Sensor 170 generieren und den Ausgang des virtuellen Sensors 170 an das Fahrzeug 100 übertragen. In noch weiteren Ausführungsformen kann eine Kombination der Systeme implementiert werden. Mit anderen Worten kann der Prozessor 120 des Fahrzeugs 100 einen oder mehrere virtuelle Sensoren ausbilden, und der Server 230 kann ebenfalls einen oder mehrere virtuelle Sensoren 170 für das Fahrzeug 100 ausbilden.
-
Der Server 230 beinhaltet einen Prozessor 240, einen Speicher 250 und einen oder mehrere Kommunikationssysteme 260. Der Prozessor 240 kann eine zentrale Verarbeitungseinheit (CPU), eine Grafikverarbeitungseinheit (GPU), eine Physikverarbeitungseinheit (PPU), eine anwendungsspezifische integrierte Schaltung (ASIC), ein feldprogrammierbares Gate-Array (FPGA), ein Mikrocontroller oder eine beliebige andere Logikvorrichtung oder eine beliebige Kombination davon sein. Der Speicher 250 kann eine beliebige Kombination aus flüchtigem und nichtflüchtigem Speicher sein. Der Speicher 250 kann der wie oben erörterte, vom Fahrzeug 100 verwendete Cloud-basierte Speicher sein. Der Speicher kann die nichtflüchtigen computerlesbaren Anweisungen speichern, die, wenn sie durch den Prozessor 240 ausgeführt werden, das Crowdsourcing-basierte Sensorsystem 200, wie nachstehend näher beschrieben, implementieren. Das/die Kommunikationssystem(e) 260 können jede Kombination von verdrahteten oder drahtlosen Kommunikationssystemen sein.
-
In einer Ausführungsform kann der Server 230 zum Beispiel einen bezugsbasierten virtuellen Sensor 170 für das Fahrzeug bereitstellen. Mit anderen Worten kann ein Benutzer des Fahrzeugs 100 einen Dienst abonnieren, um dem Fahrzeug 100 unter Verwendung von Crowdsourcing-Daten von anderen beitragenden Fahrzeugen 210 zusätzliche Sensorkapazitäten bereitzustellen. Der Server 230 könnte ein vollständige virtuelles Sensorsystem für das Fahrzeug 100 bereitstellen, ja nach den verfügbaren Datenressourcen (d. h. je nach der Anzahl der beitragenden Fahrzeuge 210, die relevante Daten sammeln), oder ein Benutzer könnte einen oder mehrere spezifische virtuelle Sensoren 170 abonnieren.
-
3 ist ein Flussdiagramm, das ein exemplarisches Verfahren 300 zum Betreiben des Crowdsourcing-basierten Sensorsystems 200 gemäß einer Ausführungsform veranschaulicht. Ein Prozessor empfängt zunächst Crowdsourcing-Sensordaten von einem oder mehreren beitragenden Fahrzeugen und einen Standort des Zielfahrzeugs (d. h. Fahrzeug 100). (Schritt 310). Der Prozessor kann der Prozessor 120 im Fahrzeug 100 oder der Prozessor 240 des Servers 230 sein. Wie oben erörtert, kann das Fahrzeug 100 den virtuelle Sensor 170 basierend auf den empfangenen Daten von anderen beitragenden Fahrzeugen 210 in der Nähe ausbilden, oder der virtuelle Sensor 170 kann vom Server 230 ausgebildet werden. In der Ausführungsform, bei der ein Server 230 den virtuellen Sensor 170 ausbildet, überträgt das Fahrzeug 100 den Standort des Fahrzeugs 100 über das Kommunikationssystem 140 an den Server 230. Der Prozessor 120 des Fahrzeugs kann auch Daten seiner Sensoren 160 zur Nutzung durch den Server 230 zur Ausbildung eines virtuellen Sensors für ein anderes Fahrzeug übertragen. Der Prozessor 120 des Fahrzeugs 100 kann die Position des Fahrzeugs 100 unter Verwendung von beispielsweise einem GPS-System (nicht dargestellt) oder dergleichen bestimmen.
-
Die empfangenen Sensordaten können Sensor-Metadaten beinhalten, wie z. B. eine Art von Sensor, wie eine optischen Kamera, eine Infrarotkamera, einen Radarsensor, einen LIDAR-Sensor oder dergleichen und die Fähigkeiten des Sensors, wie eine Auflösung des Sensors, der Bereich des Sensors oder dergleichen. Die beitragenden Fahrzeuge 210 senden die Sensordaten an das Fahrzeug 100 und/oder den Server 230 gemäß einem vordefinierten Format zur Vereinfachung der Verarbeitung der Sensordaten. Das Format kann die Sensor-Metadaten sowie Zeitstempel und Ortsinformationen des entsprechenden beitragenden Fahrzeugs 210 beinhalten.
-
Der Prozessor (d. h., Prozessor 120 im Fahrzeug 100 oder der Prozessor 240 des Servers 230) filtern dann die empfangenen Sensordaten. (Schritt 320). Die Sensordaten werden basierend auf einer oder mehreren Relevanzen der Sensordaten, den Sensorkapazitäten des Fahrzeugs 100, den Wetterbedingungen um das Fahrzeug 100, der Qualität und Zuverlässigkeit des Sensors basierend auf der Teilehistorie, Authentizität und Zulassungsfähigkeit des Fahrzeugs 100 gefiltert. Die Filterung kann eine Beseitigung von Sensordaten basierend auf einer oder mehreren Kriterien und der Priorisierung von Sensordaten oder einer Kombination derselben beinhalten. Sensordaten mit verschiedenen Prioritätsebenen können verschiedene Gewichte zugeordnet werden, wenn die Daten berücksichtigt werden, wie nachstehend näher erläutert.
-
Die Relevanz der Sensordaten kann beispielsweise auf dem Standort des beitragenden Fahrzeugs 210 basieren, das die Sensordaten relativ zum Standort des Fahrzeugs 100 übertragen hat, dem Standort des beitragenden Fahrzeugs 210, das die Sensordaten relativ zu einer projizierten Fahrzeugstrecke des Fahrzeugs 100 übertragen hat, und einem Zeitstempel, der mit den Sensordaten assoziiert ist. Sensordaten, die nicht relevanten für das Fahrzeug 100 sind, werden vom Prozessor herausgefiltert. Irrelevante Sensordaten können beispielsweise ein beitragendes Fahrzeug 210 beinhalten, dass sich im Kommunikationsbereich des Fahrzeugs 100 befindet, damit das Fahrzeug 100 die Sensordaten erhält, was vom der Art des Kommunikationssystem 140 abhängen würde, das während des Austauschs verwendet wird, oder in einer vorbestimmten Entfernung vom Fahrzeug 100, das aber in die entgegengesetzte Richtung des Fahrzeugs 100 fährt (d. h,, es befindet sich bereits hinter dem Fahrzeug 100 oder es fährt nach einer Kreuzung in eine andere Richtung) oder es fährt auf einer ganz anderen Straße, die sich nicht entlang einer möglichen projizierten Strecke des Fahrzeugs 100 befindet. Die mögliche projizierte Strecke des Fahrzeugs 100 kann auf beispielsweise einer Adresse basieren, die in ein Navigationssystem eingegeben wurde, das mit dem Fahrzeug 100 assoziiert ist, dem Blinker eines Fahrzeugs, einer Fahrspur eines Fahrzeugs, der Fahrthistorie (z. B. Pendeln zur Arbeit oder dergleichen) oder ähnliches.
-
Ebenso kann der mit den Sensordaten assoziierte Zeitstempel zum Filtern der Sensordaten verwendet werden. Die Zeitstempel kann beispielsweise bei Gegenstand-Positionsvoraussagen verwendet werden. Wenn zum Beispiel ein Objekt (wie ein anderes Fahrzeug) von einem beitragenden Fahrzeug 210 erfasst wird und es mit einer bestimmten Geschwindigkeit in Richtung des Fahrzeugs 100 fährt, kann der Zeitstempel verwendet werden, um eine mögliche zukünftige Position des Gegenstands vorauszusagen, basierend auf seiner letzten bekannten Position, der zuletzt gemessenen Geschwindigkeit und dem Zeitstempel. Ist die vorausgesagte zukünftige Position des Gegenstands irrelevant, können die mit dem Gegenstand zusammenhängenden Daten vom Prozessor 120 ausgefiltert werden. Die Zeitstempel können ebenfalls verwendet werden, um Daten auszufiltern, die zu alt sind, um für bestimmte Anwendungen relevant zu sein. So können beispielsweise Gegenstand-Standortdaten, wie z. B. ein 10 bis 15 Sekunden alter Zeitstempel, ausgefiltert werden oder eine bedeutend niedrigere Prioritätsstufe zugewiesen bekommen, da sie zu alt sind um für den Zweck der Gegenstands-Standortsvoraussage nützlich zu sein. Allerdings könnten genau die gleichen Daten dennoch nützlich für einen virtuellen Sensor sein, der als Verkehrssensor für den Zweck der Umleitung des Fahrzeugs 100 fungiert und durch einen Filter passieren oder eine hohe Bewertung erhalten könnte.
-
Wie oben erörtert könnte der Prozessor die Sensordaten auch basierend auf den Fähigkeiten des/der Fahrzeugsensors(en) 160 des Fahrzeugs 100 filtern. In einer Ausführungsform könnte der Prozessor zum Beispiel Sensordaten von beitragenden Fahrzeugen 210 basierend auf einem Sensortyp ausfiltern, den das Fahrzeug 100 bereits beinhaltet. Mit anderen Worten könnte der virtuelle Sensor 170 verwendet werden, um die Fähigkeiten eines oder mehrerer Sensoren hinzuzufügen, die das Fahrzeug 100 nicht umfasst. Wenn zum Beispiel das Fahrzeug 100 einen optischen Kamerasensor beinhaltet, jedoch keinen Infrarotkamerasensor, kann der Prozessor sämtliche empfangenen optischen Kamerasensordaten ausfiltern, die andernfalls relevant für das Fahrzeug 100 sind, und er könnte den virtuellen Sensor 170 nur unter Verwendung der Infrarotkameradaten generieren. Es können jedoch in anderen Ausführungsformen Sensordaten von Sensoren des gleichen Typs wie ein Fahrzeugsensor nicht ausgefiltert werden. Bei diesen Ausführungsformen kann der virtuelle Sensor 170 den Fahrzeugsensor 160 durch die Bereitstellung von weiteren Daten für Bereiche ergänzen, auf die der Fahrzeugsensor 160 u. U. keine direkte Blicklinie hat, was die Fähigkeiten des Fahrzeugsensors 160 verbessert.
-
Wetterereignisse und Tageszeit können auch darauf wirken, wie die Sensordaten gefiltert werden. Unterschiedliche Sensortypen können in bestimmten Umgebungen gut funktionieren (z. B. ein optischer Sensor bei klarem Wetter und hellem Tageslicht), und dafür schlecht in anderen Umgebungen (z. B. ein optischer Sensor bei Nebel bei Nacht). Dementsprechend können Sensordaten von unterschiedlichen Arten von Sensoren je nach Wetter und der Tageszeit am Standort des Fahrzeugs 100 entfernt und/oder gewichtet werden. Die Wetterdaten können auf zentralisierten Wetterdaten (z. B. von einem Wetterdienst) oder auf Daten von Sensoren des Fahrzeugs 100 basieren, wie Regensensoren, Straßenzustands-Sensoren oder Ähnliches.
-
Der Prozessor aggregiert anschließen die gefilterten Sensordaten. (Schritt 330). Die Sensordaten können in datenspezifische oder anwendungsspezifische oder in eine Kombination dieser beiden aggregiert werden. Mit anderen Worten werden die gefilterten Sensordaten in eine oder mehrere datenspezifische oder in eine oder mehrere anwendungsspezifische Gruppen oder eine Kombination hieraus zusammengefasst. Die aggregierten Daten können im Speicher 130 des Fahrzeugs oder im Speicher 250 des Servers 230 zur späteren Verarbeitung gespeichert werden, wie nachstehend näher erläutert wird.
-
Eine datenspezifische Aggregation kann Sensordaten einer bestimmten Art von Sensor sammeln. So können beispielsweise Temperaturdaten von Temperatursensoren aus mehreren Fahrzeugen gesammelt werden. Ebenso können beispielsweise Sensordaten von mehreren Radarsensoren in beitragenden Fahrzeugen 210 in eine einzelne Radarsensor-Datenquelle aggregiert werden. In diesem Beispiel würden die Radarsensoren wahrscheinlich Gegenstände aus der Perspektive des beitragenden Fahrzeugs 210 verfolgen, das den Gegenstand erkennt. Die Objekte können beispielsweise andere Fahrzeuge sein (beitragend oder nicht beitragend), Fußgänger, Fahrräder, Verkehrs-/Baustellenschilder oder Geräte, Tiere oder ähnliches sein. Bei der Gegenstandsverfolgung kann ein Gegenstand der von mehreren Sensoren in mehreren beitragenden Fahrzeugen 210 erkannt wird, zu einem einzelnen Gegenstand aggregiert werden. 4 und 5 stellen Gegenstandsaggregation gemäß einer Ausführungsform dar. Der Gegenstand 400 stellt einen Gegenstand dar, der von einem ersten beitragenden Sensor 220 in einem ersten beitragenden Fahrzeug 210 verfolgt wird. Der Gegenstand 410 stellt einen Gegenstand dar, der von einem zweiten beitragenden Sensor 220 in einem zweiten beitragenden Fahrzeug 210 verfolgt wird. Der Prozessor kann die Gegenstände 410 und 420 basierend auf dem Standort der Objekte in den Sensordaten miteinander assoziieren. Wenn zum Beispiel die Sensordaten von den jeweiligen beitragenden Sensoren 220 Daten zu einem Gegenstand beinhalten, die sich überlappen, kann der Prozessor die Gegenstandsdaten in einen einzigen Gegenstand 500 zusammenführen, wie in 5 dargestellt. Wenn die Gegenstände 400 und 410 aus der Perspektive des jeweiligen beitragenden Fahrzeugs 210 erfasst werden, sind die tatsächlichen Abmessungen des Gegenstands unbekannt, da der beitragende Sensor Gegenstände nur aus einer einzigen Perspektive erfassen kann. Dementsprechend nimmt ein einziges Fahrzeug im Allgemeinen an, dass der Gegenstand eine Gaußsche Verteilung mit Mittelwert und Kovarianzmatrix hat, daher die repräsentative Form der Gegenstände 400 und 410, wie in 4 dargestellt. Die Gegenstände 400 und 410 können in den einzelnen Gegenstand 500 zusammengeführt werden, beispielsweise, lest-Quadrate-Schätzung, Kalman-Filterung oder eine andere Bayesianische Art von Filtertechnik oder ähnliches. Dementsprechend repräsentieren die aggregierten Daten den tatsächlichen Gegenstand akkurater, wenn die Daten von mehreren beitragenden Sensoren 220 in mehreren beitragenden Fahrzeugen 210 aggregiert werden.
-
Als veranschaulichendes Beispiel nehmen wir an, dass der Zustandsvektors für den Gegenstand (z. B. Position und Geschwindigkeit des Fahrzeugs) x ist und durch eine Gauß'sche Verteilung modelliert wird. Die Gauß'sche Verteilung wird durch N(µ, Σ) bezeichnet, wobei µ der Mittelwert und Σ die Kovarianzmatrix ist. Ein Gauß'sche Verteilung kann durch eine Ellipse repräsentiert werden, wobei µ die Mitte und Σ die elliptische Form bestimmt. Zur rechnerischen Einfachheit, werden µ und Σ üblicherweise in die reihenverkettete Matrix [R, z] übertragen, wobei R die obere Dreiecksmatrix und Σ = R
-1R
-T z = Rµ ist. Die Verteilung für den Gegenstand
400 kann durch [R
1, z
1] bezeichnet werden und der Gegenstand
410 durch [R
2,z
2]. Der fusionierte Gegenstand
500 kann berechnet werden, indem die Mindest-Quadratmethode angewandt wird, um die folgenden Quadratiken zu minimieren:
-
Vertikal verkettete Reihen in eine Matrix
und Anwenden der QR-Zersetzung auf diese:
wobei Q eine orthogonale Matrix (Q
TQ = I) ist
-
Abgeleitet aus der Dreiecksmatrix
kann die Verteilung des fusionierten Gegenstands
500 als [R, z] geschrieben werden. Der Mittelwert ist
und die Kovarianzmatrix als
-
Ein anwendungsspezifische Aggregation kann Daten für eine bestimmte Anwendung sammeln. Die anwendungsspezifische Aggregation kann die Daten von unterschiedlichen Arten von beitragenden Sensoren 220 für eine bestimmte Anwendung verwenden. Die Anwendung kann beispielsweise, eine adaptive automatische Fahrgeschwindigkeitsregelung, ein vorausschauendes und Kollisions-Verhinderungssystem, eine Fahrspurzentrierung, eine Spurwechselsteuerung oder ähnliches sein. In einer Anwendung mit einer adaptiven automatischen Fahrgeschwindigkeitsregelung können, beispielsweise Gegenstands-Verfolgungsdaten von einem oder mehreren Radarsensoren, LIDAR-Sensoren und Visionskameras (Infrarot oder optisch) auf ähnliche Weise aggregiert werden, wie oben beschrieben, um einen oder mehrere Gegenstände vor dem Fahrzeug zu verfolgen. Die aggregierten Gegenstandsdaten können mit GPS-Koordinaten und beispielsweise Geschwindigkeits-Begrenzungsdaten kombiniert werden, um das Erstellen eines virtuellen Sensors für die adaptive automatische Fahrgeschwindigkeitsregelung zu erlauben, wie nachstehend näher erläutert wird.
-
Sobald die Sensordaten gefiltert und aggregiert sind, erstellt der Prozessor einen oder mehrere virtuelle Sensoren 170. (Schritt 340). Der/die erzeugte(n) virtuelle(n) Sensor(en) 170 verarbeitet/n die gefilterten und aggregierten Daten basierend auf ihren spezifischen Zweck. Unter Verwendung der oben beschriebenen Beispiele kann ein virtueller Temperatursensor vom Prozessor erstellt werden, indem die Temperaturdaten von den beitragenden Sensoren 220 verarbeitet werden. Der virtuelle Temperatursensor kann beispielsweise die empfangenen Temperaturen mitteln oder eine mittlere Temperatur der empfangenen Temperaturen bestimmen und die ermittelte Temperatur ausgeben. Ein virtueller Radarsensor würde beispielsweise Standortdaten entsprechend der vereinten Gegenstände ausgeben, die von den Radarsensoren in mehreren beitragenden Fahrzeugen 210 mit Bezug zum Standort des Fahrzeugs 100 erfasst wurden. Ein virtueller adaptiven automatischer Fahrgeschwindigkeits-Regelungssensor kann beispielsweise eine Referenzgeschwindigkeit zur Aufrechterhaltung einer sicheren Entfernung zu einem anderen Fahrzeug vor dem Fahrzeug 100 ausgeben, indem die gefilterten und aggegrierten Gegenstandsdaten, Geschwindigkeits-Begrenzungsdaten und GPS-Koordinaten verarbeitet. Bei einer unzureichenden Datenmenge zum Erzeugen des virtuellen Sensors 170, wenn sich zum Beispiel nicht genügend beitragende Fahrzeuge im Bereich des Fahrzeugs 100 befinden, kann der Prozessor (entweder am Fahrzeug 100 oder im Server 230) das Gewicht des Datenausgangs vom virtuellen Sensor 170 basierend auf der zur Verfügung stehenden Datenmenge für den virtuellen Sensor 170 reduzieren.
-
In einer Ausführungsform kann der virtuelle Sensor 170 beispielsweise die jeweiligen Ausgangsdaten mit einer vorbestimmten Rate ausgeben. Sensordaten von beitragenden Fahrzeugen 210 können vom Fahrzeug 100 oder dem Server 230 auf eine asynchrone Weise empfangen werden. Mit anderen Worten können die ankommenden Daten mit einer unberechenbaren Rate empfangen werden. Dementsprechend kann der Prozessor Daten für eine vorgegebene Zeit für einen gegebenen Ausgabezyklus filtern und aggregieren und die Filter- und Aggregatdaten einmal pro Zykluszeitraum verarbeiten, um die virtuellen Sensordaten mit der vorbestimmten Rate auszugeben. Dies ermöglicht dem virtuellen Sensor 170, Daten mit einer absehbaren Rate auszugeben, selbst wenn die Rate der ankommenden Daten von den beitragenden Sensoren 220 an den beitragenden Fahrzeugen 210 unvorhersehbar ist.
-
Der Prozessor 120 empfängt Sensordaten vom/von den Fahrzeugsensor(en) 160 und den Ausgängen des/der virtuellen Sensors(en) (Schritt 350). Wenn der Server 230 den virtuellen Sensor 170 generiert, überträgt der Server 230 den Ausgang des virtuellen Sensor 170 unter Verwendung der jeweiligen Kommunikationssysteme 140 und 260 an das Fahrzeug.
-
Der Prozessor 120 des Fahrzeugs 100 verarbeitet dann die empfangenen Daten, um einen Befehl für ein Steuersystem 150 zu generieren. (Schritt 360). Die Verarbeitung und generierten Steuerbefehle können abhängig vom/von den virtuellen Sensor(en) 170, die erzeugt wurden, dem Ausgang des/der virtuellen Sensor(en) 170 sowie der Art der Fahrzeugsensoren 160 am Fahrzeug 100 unterschiedlich sein. So würde beispielsweise ein virtueller adaptiver automatischer Fahrgeschwindigkeits-Regelungssensor eine Referenzgeschwindigkeit ausgeben. Dementsprechend kann der Befehl ein Beschleunigungsbefehl oder ein Bremsbefehl sein, um die Referenzgeschwindigkeit zu erreichen oder beizubehalten.
-
Wenn das Fahrzeug 100 einen oder mehrere Fahrzeugsensoren 160 beinhaltet, die einem ähnlichen Zweck dienen wie der virtuelle Sensor 170, können die Daten vom/von den Fahrzeugsensor(en) 160 auf die gleiche Weise aggregiert werden, wie oben beschrieben, um die Qualität der für das Fahrzeug 100 verfügbaren Daten noch weiter zu verbessern. Die Sensordaten vom/von den Fahrzeugsensor(en) 160 sind mit deren Kovarianzmatrix (z. B. Σ) assoziiert. Die Kovarianzmatrix wird von einer Sensorleistungs-Spezifikation abgeleitet. Das Gewicht (d. h., R) ist der Cholesky-Faktor der Invertierung der Kovarianzmatrix, wenn Daten aus unterschiedlichen Quellen aggregiert werden. Dementsprechend kann der Prozessor 120 die Sensordaten vom/von den virtuellen Sensor(en) 170 und dem/den Fahrzeugsensor(en) 160 basierend auf der Qualität der verfügbaren Daten gewichten, wenn die Daten aggregiert werden, um die Zuverlässigkeit der aggregierten Daten zu verbessern.
-
Während mindestens ein exemplarischer Aspekt in der vorstehenden ausführlichen Beschreibung der Erfindung dargestellt worden ist, sollte darauf hingewiesen werden, dass eine große Anzahl an Variationen existiert. Es versteht sich weiterhin, dass der exemplarische Aspekt bzw. die exemplarischen Aspekte lediglich Beispiele sind und den Umfang, die Anwendbarkeit oder die Konfiguration der Erfindung in keiner Weise einschränken sollen. Vielmehr wird die vorstehende ausführliche Beschreibung den Fachleuten einen bequemen Leitplan zur Implementierung eines exemplarischen Aspektes der Erfindung zur Verfügung stellen. Es versteht sich, dass verschiedene Änderungen an der Funktion und der Anordnung von Elementen vorgenommen werden können, die in einem exemplarischen Aspekt beschrieben sind, ohne vom Umfang der Erfindung abzuweichen, wie in den beigefügten Ansprüchen dargelegt.