-
Die Erfindung betrifft ein Verfahren zur Hauptobjektauswahl für eine Assistenzfunktion oder automatisierte Fahrfunktion eines Fahrerassistenz- oder Fahrsystems eines Kraftfahrzeugs, wobei das System wenigstens einen Sensor zur Erfassung des Verkehrsumfeldes des Kraftfahrzeugs umfasst. Weiter betrifft die Erfindung ein Fahrerassistenz- oder Fahrsystem für ein Kraftfahrzeug.
-
Es sind teilautomatisierte Fahrerassistenzsysteme bekannt, die eine Fahrzeuggeschwindigkeit so anpassen, dass einem vorausfahrenden Fahrzeug in sicherem Abstand gefolgt werden kann. Derartige Fahrgeschwindigkeitsregler werden auch als ACC (Adaptive Cruise Control)-System bezeichnet. Aus mehreren von einem Radarsensor detektierten Radarobjekten wird ein Hauptobjekt bestimmt, das sogenannte Zielobjekt, welchem gefolgt werden soll. Das Zielobjekt befindet sich in der Regel auf dem eigenen Fahrstreifen und fährt dem eigenen Fahrzeug voraus.
-
Die Bestimmung des Zielobjektes erfolgt regelbasiert durch einen geeignet erstellten und im Fahrerassistenzsystem implementierten Algorithmus.
-
Aufgabe der Erfindung ist es, ein Verfahren sowie ein entsprechendes Fahrerassistenz- oder Fahrsystem anzugeben, das es erlaubt, effizienter und dabei zugleich zuverlässig ein Zielobjekt für eine Assistenz- oder automatisierte Fahrfunktion auszuwählen.
-
Diese Aufgabe wird erfindungsgemäß mit den in den unabhängigen Ansprüchen angegebenen Merkmalen gelöst. Vorteilhafte Weiterbildungen und Ausgestaltungen der Erfindung sind in den Unteransprüchen angegeben.
-
Die automatisierte Fahrfunktion kann beispielsweise eine Funktion zur Fahrerassistenz oder eine Funktion zum teilautomatisierten, bedingungsautomatisierten (bedingt automatisierten), hochautomatisierten oder vollautomatisierten Fahren umfassen. Die automatisierte Fahrfunktion kann insbesondere eine Funktion zum autonomen oder teilautonomen Fahren umfassen.
-
Beispielsweise kann das Fahrerassistenz- oder Fahrsystem dementsprechend ein System zur Fahrerassistenz oder zum automatisierten Fahren umfassen, insbesondere zum teilautomatisierten, bedingungsautomatisierten (bedingt automatisierten), hochautomatisierten oder vollautomatisierten Fahren. Das Fahrsystem kann insbesondere ein automatisiertes Fahrsystem oder autonomes Fahrsystem sein.
-
Das Verfahren ermöglicht es, im Normalfall den zweiten Objektauswahlzweig zu verwenden, und das Hauptobjekt für die Funktion durch das künstliche neuronale Netz auszuwählen. Dies ermöglich den Einsatz eines maschinellen Lernverfahrens (ML, Machine Learning). Die Nutzung eines neuronalen Netzes kann gegenüber einem herkömmlichen, regelbasierten Ansatz die Leistung einer Objektauswahl deutlich steigern. Vorteilhaft ist außerdem, dass durch das Aggregieren von Sensordaten die Größe des neuronalen Netzes relativ klein gehalten werden kann. Dadurch ist bei Anwendung des neuronalen Netzes eine effiziente Berechnung möglich, und es ergibt sich ein geringer Speicherbedarf für die Gewichte des neuronalen Netzes. Besonders vorteilhaft ist, dass durch das Bewerten der Neuartigkeit der durch die aggregierten Objektdatensätze gekennzeichneten Verkehrssituation in Bezug auf die Trainingsdaten des neuronalen Netzes die Zuverlässigkeit des Verfahrens erheblich gesteigert werden kann. Es wurde festgestellt, dass die Leistung maschineller Lernverfahren im Anwendungsfall stark davon abhängt, ob ein zu verarbeitender oder zu klassifizierender Datensatz hinreichend vergleichbar zu einem während des Trainings des Lernverfahrens genutzten Datensatz ist. Im Extremfall kann bei ausschließlicher Verwendung eines neuronalen Netzes eine systematisch falsche Bewertung der Eingangsdatensätze erfolgen. Indem gemäß Anspruch 1 die Neuartigkeit der Verkehrssituation bewertet wird, kann bei einer den Schwellwert übersteigenden Neuartigkeit umgeschaltet werden auf die Verwendung des regelbasierten Objektauswahlzweiges zur Auswahl des Hauptobjektes für die Assistenz- oder Fahrfunktion. Dadurch können die Vorteile einer regelbasierten Objektauswahl mit den Vorteilen einer Objektauswahl mittels eines künstlichen neuronalen Netzes kombiniert werden, so dass ein besonders zuverlässiges und zugleich möglichst effizientes Verfahren erreicht werden kann. Insbesondere wird ermöglicht, die Leistung eines neuronalen Netzes mit der beweisbaren Robustheit eines klassischen, regelbasierten Ansatzes zur Objektauswahl zu kombinieren.
-
Vorzugsweise ist in dem zweiten Objektauswahlzweig das künstliche neuronale Netz dazu eingerichtet, mehrere Objektdatensätze gleichzeitig als Eingangsgrößen zur Auswahl des Hauptobjekts für die Assistenz- oder Fahrfunktion zu verwenden. Gegenüber einer Bewertung jeweiliger einzelner Objektdatensätze durch ein neuronales Netz und einer Auswahl anhand der Ergebnisse der Bewertungen ermöglicht die gleichzeitige Verwendung mehrerer Objektdatensätze als Eingangsgrößen des neuronalen Netzes es, Beziehungen zwischen den durch die Objektdatensätze gekennzeichneten Objekte als zusätzliche Informationsquelle mit zu nutzen. So kann beispielsweise auch bei fehlenden oder schlechten Spurmarkierungen auf der Fahrbahn aus relativen Positionen zwischen den Objekten darauf geschlossen werden, welches der Objekte auf dem eigenen Fahrstreifen (auch als Ego-Fahrstreifen bezeichnet) fährt und damit beispielsweise als Hauptobjekt für eine Fahrerassistenzfunktion in Frage kommt.
-
Der wenigstens eine Sensor kann beispielsweise eine Kamera und/oder einen Radarsensor und/oder einen Lidarsensor umfassen.
-
Die Objektdatensätze, zu denen die Sensordaten aggregiert werden, können bewegten Objekten und/oder stationären Objekten entsprechen. Stationäre Objekte können beispielsweise eine Leitplanke umfassen. Objektdatensätze stationärer Objekte können beispielsweise Informationen über eine Straßenbegrenzung enthalten. So kann etwa ein Objekt in Form einer Leitplanke genutzt werden, um eine Straßenbegrenzung zu schätzen. Der regelbasierte Objektauswahlzweig kann beispielsweise dazu eingerichtet sein, unter Nutzung der eigenen Position des Ego-Fahrzeugs relativ zur geschätzten Straßenbegrenzung und relativ zu detektierten dynamischen Objekten, und ggf. basierend auf deren relativer Position zur geschätzten Straßenbegrenzung zu ermitteln, welches Objekt dem Ego-Fahrzeug auf demselben Fahrstreifen vorausfährt. Umfasst der Sensor eine Kamera, so können im Videobild detektierbare Fahrbahnmarkierungen (mit) genutzt werden, um das Hauptobjekt auszuwählen.
-
Die aggregierten Sensordaten in Form eines Objektdatensatzes können beispielsweise einem Objekt, wie z.B. einem Fahrzeug oder einem Fußgänger entsprechen. Mehrere Objektdatensätze können somit einer Liste von Objekten entsprechen. Jedes Objekt kann im Objektdatensatz durch einen Punkt in einem Zustandsraum beschrieben werden, wobei der Punkt beispielsweise eines oder mehrere der folgenden Elemente aufweisen kann, umfassend: eine laterale Position, eine longitudinale Position, eine Geschwindigkeit, eine Beschleunigung, eine Objektorientierung, eine Ausdehnung wie Länge oder Breite des Objekts in kartesischen Koordinaten, oder Varianzen der genannten Größen. Das Aggregieren der Sensordaten kann insbesondere den Umfang einer Information gegenüber den Rohdaten (Sensordaten) deutlich verringern, insbesondere im Vergleich mit einem Videobild oder im Vergleich mit einer Vielzahl von Radardetektionen, die von einem selben Objekt stammen.
-
Vorzugsweise weist in dem zweiten Objektauswahlzweig das künstliche neuronale Netz wenigstens eine an eine Eingabeschicht des künstlichen neuronalen Netzes anschließende faltende Schicht auf. Eine faltende Schicht, auch als Convolutional Layer bezeichnet, ist eine Schicht, bei der die Aktivität jedes Neurons über eine diskrete Faltung entsprechend einer Faltungsmatrix oder einem Filterkernel berechnet wird. Die Faltung der Eingangsdaten (Objektdatensätze) erlaubt es, Zusammenhänge zwischen Objekten im Verkehrsumfeld in besonders effizienter Weise zu bewerten. Das künstliche neuronale Netz ist somit vorzugsweise ein faltendes künstliches neuronales Netz. Die faltende Schicht entspricht dabei einer Anzahl M eindimensionaler Filter, die einzelne Objekteigenschaften hervorheben können und kombinieren können. Eine solche Objekteigenschaft kann beispielsweise die Eigenschaft eines Objekts sein, dass es sich links der Ego-Fahrspur befindet und eine Beschleunigung (der Beschleunigung) in Richtung der Ego-Spur aufbaut. Die Filter, d.h. die Struktur der faltenden Schicht, werden beim Trainieren des neuronalen Netzes mit geeigneten Trainingsdatensätzen automatisiert erzeugt.
-
Vorzugsweise umfasst das Bewerten der Neuartigkeit einer durch aggregierte Objektdatensätze gekennzeichneten Verkehrssituation in Bezug auf Trainingsdaten des künstlichen neuronalen Netzes eine Bewertung eines Abstands eines die Objektdatensätze umfassenden Datentupels zu einer aus den Trainingsdaten berechneten mehrdimensionalen Wahrscheinlichkeitsverteilung derartiger Datentupel.
-
Bei der Modellierung der mehrdimensionalen Wahrscheinlichkeitsverteilung können beispielsweise für alle Trainingsdaten je Trainingsdatensatz, der einer Verkehrssituation entspricht, ein der Verkehrssituation entsprechendes Eingangsdatentupel entsprechend einem oder mehreren aggregierten Objektdatensätzen als ein Eingangswert (Eingangsdatendupel) für die aus den Eingangswerten zu berechnende Wahrscheinlichkeitsverteilung verwendet werden. Die Wahrscheinlichkeitsverteilung stellt somit eine Repräsentation der Trainingsdaten dar.
-
Dabei kann für jedes Eingangsdatendupel, entsprechend jeder Verkehrssituation der Trainingsdaten, eine Wahrscheinlichkeitsverteilung bestimmt werden, wobei die einzelnen Wahrscheinlichkeitsverteilungen zu einem Bewerten der Neuartigkeit zu verwendenden Wahrscheinlichkeitsverteilung summiert werden. Die Modellierung der Trainingsdaten mittels der mehrdimensionalen Wahrscheinlichkeitsverteilung hat den Vorteil, dass die Neuartigkeit einer Verkehrsszene umfänglich bewertet werden kann, insbesondere beispielsweise in Bezug auf alle Attribute eines Objektes, wie sie einem Objektdatensatz entsprechen, und/oder in Bezug auf die Konstellation mehrerer Objekte in der Verkehrssituation.
-
In einem Ausführungsbeispiel umfasst das Bewerten einer Neuartigkeit einer durch die aggregieren Objektdatensätze gekennzeichneten Verkehrssituation in Bezug auf Trainingsdaten des künstlichen neuronalen Netzes ein Bewerten einer Neuartigkeit der durch die aggregierten Objektdatensätze gekennzeichneten Verkehrssituation in Verbindung mit zusätzlichen, ein Umfeldszenario kennzeichnenden Daten. Die zusätzlichen, ein Umfeldszenario kennzeichnenden Daten können beispielswiese Informationen über das Wetter (z.B. Sonne/Regen/Schnee/Nebel), Informationen über das Vorhandensein eines Tunnels (z. B. Ja/Nein), und/oder Informationen über das Vorhandensein einer Baustelle (Ja/Nein) umfassen. Solche Daten können beispielsweise aus Straßenverkehrsnetzinformationen entnommen werden (z. B. Tunnel) oder durch Informationsdienste (Baustellen) oder zusätzliche Sensorik (Wetter) bezogen werden. Die Berücksichtigung zusätzlicher, das Umfeldszenario kennzeichnender Daten ermöglicht es, dass in Situationen, bei denen sich aufgrund der das Umfeldszenario kennzeichnenden Daten eine relevante Abweichung zu den Trainingsdaten ergibt, eine Umschaltung auf einen regelbasierten Objektauswahlzweig erfolgen kann, selbst wenn die vom neuronalen Netz zur Auswahl des Hauptobjektes zu verwendenden Objektdatensätze gut zu den Trainingsdaten passen. Damit kann die durch die zusätzlichen Daten gekennzeichnete, potentielle Andersartigkeit der Verkehrssituation berücksichtigt werden.
-
Gegenstand der Erfindung ist außerdem ein Fahrerassistenz- oder Fahrsystem für ein Kraftfahrzeug, mit wenigstens einem Sensor zur Erfassung des Verkehrsumfeldes des Kraftfahrzeugs, und mit einer Objektauswahleinheit zum Auswählen eines Hauptobjektes für eine Assistenzfunktion oder automatisierte Fahrfunktion des Fahrerassistenzsystems, wobei in dem System eines der oben beschriebenen Verfahren implementiert ist.
-
Im Folgenden wird ein Ausführungsbeispiel anhand der Zeichnung näher erläutert.
-
Es zeigen:
- 1 eine schematische Prinzipskizze eines Sensorsystems mit zwei Objektauswahlzweigen;
- 2 eine schematische Darstellung eines faltenden neuronalen Netzes eines Objektauswahlzweiges; und
- 3. eine schematische Darstellung zur Erläuterung der Berechnung einer Wahrscheinlichkeitsverteilung aus Trainingsdaten des neuronalen Netzes.
-
Das in 1 gezeigte Sensorsystem umfasst einen oder mehrere Sensoren zur Erfassung des Verkehrsumfeldes des Ego-Fahrzeuges. Ein Sensor 10 ist exemplarisch dargestellt. Von den Sensoren gelieferte Sensordaten 12 werden durch eine Vorverarbeitungseinheit 14 vorverarbeitet. Die Vorverarbeitung umfasst ein Aggregieren von Sensordaten 12 zu einem oder mehreren Objektdatensätzen 16, wobei ein Objektdatensatz 16 einem detektierten Objekt entsprechen kann. Ein Objektdatensatz X kann beispielsweise ein Vektor oder eine Liste sein, welcher umfasst: eine longitudinale Position x, eine laterale Position y, eine Orientierung φz, eine longitudinale Geschwindigkeit vx, eine laterale Geschwindigkeit vy, eine longitudinale Beschleunigung ax, eine laterale Beschleunigung ay.:
X = (x, y, φz vx vy, ax, ay).
-
Der Objektdatensatz X ist ein Element eines entsprechenden Zustandsraumes.
-
Die aggregierten Objektdatensätze 16 werden an einen Neuartigkeitsbewerter 18 gegeben, der weiter unten beschrieben wird. Je nachdem, ob die Neuartigkeit einen Schwellenwert übersteigt, erfolgt eine Verzweigung der Verarbeitung in einen ersten, regelbasierten Verarbeitungszweig 20 oder einen zweiten Verarbeitungszweig, der ein faltendes neuronales Netz (CNN, Convolutional Neural Network) 22 umfasst.
-
Das Bewerten der Neuartigkeit der Verkehrssituation erfolgt in Bezug auf Trainingsdaten des künstlichen neuronalen Netzes 22.
-
Bei Verwendung des ersten Objektauswahlzweiges 20 wählt dieser ein Hauptobjekt 24 als Zielobjekt für eine Fahrassistenzfunktion in Form eines ACC-Geschwindigkeitsreglers durch. Die Fahrassistenzfunktion kann auch Teil einer automatisierten Fahrfunktion eines automatisierten Fahrsystems eines Kraftfahrzeugs sein.
-
Wenn der zweite Objektauswahlzweig mit dem neuronalen Netz 22 verwendet wird, wählt das neuronale Netz 22 ein Hauptobjekt 26 als Zielobjekt für die Fahrassistenzfunktion aus.
-
Das jeweils ausgewählte Hauptobjekt 24, 26 wird an die Fahrassistenzfunktion übergeben, welche eine Situationsanalyseeinheit 28, eine Traktorienplanungseinheit 30 und die eigentliche Regelung 32 der Längsgeschwindigkeit umfasst.
-
Wenn der Neuartigkeitsbewerter 18 erkennt, dass die vom Ausgang der Vorverarbeitung 14 anliegenden Daten sich stark von im Rahmen des Trainings des neuronalen Netzes 22 genutzten Daten unterscheiden, wird zu dem ersten, regelbasiertem Objektauswahlzweig 20 verzweigt. Ist andererseits eine ausreichende Ähnlichkeit zwischen den am Neuartigkeitsbewerter 18 anliegenden Daten und den Trainingsdaten vorhanden, wird der zweite Objektauswahlzweig mit dem neuronalen Netz 22 verwendet. Der jeweils nicht verwendete Objektauswahlzweig wird beispielsweise temporär abgeschaltet.
-
Dem Neuartigkeitsbewerter 18 können außerdem zusätzliche, das Umfeldszenario kennzeichnende Daten 34 zugeführt werden, wie beispielsweise Information über das Wetter, das Vorhandensein eines Tunnels, oder das Vorhandensein einer Baustelle. Diese zusätzlichen Informationen können bei der Bewertung der Neuartigkeit mitberücksichtigt werden.
-
2 zeigt schematisch ein Beispiel für den Aufbau des faltenden künstlichen neuronalen Netzes 22. Das neuronale Netz 22 umfasst eine Eingabeschicht 40, eine daran anschließende erste, faltende Verarbeitungsschicht 42, eine zweite faltende Verarbeitungsschicht 44, sowie weitere Verarbeitungsschichten 46, 48 und eine Ausgabeschicht 50. Die beschriebene Anzahl der Schichten dient lediglich zur Erläuterung des prinzipiellen Aufbaus und kann in der Praxis variieren.
-
Die Eingabeschicht 40 enthält an jeder Eingangsstelle, gekennzeichnet durch einen Kreis, einen Objektdatensatz 16. Die erste und zweite Schicht 42, 44, die auch als Convolutional Filter bezeichnet werden können, bewirken, dass Beziehungen zwischen Objekten berücksichtigt werden können. Die an der Eingabeschicht 40 durch ein gestricheltes Viereck gekennzeichneten Datensätze gehen beispielsweise in das in der Schicht 42 gestrichelt dargestellte Segment der Schicht 42 ein.
-
Die Ausgangsstellen der Ausgabeschicht 50, die durch Kreise gekennzeichnet sind, entsprechen jeweils einer Klassifizierung, dass das Objekt an einer zugeordneten Eingangsstelle das Zielobjekt darstellt, bzw. der Klassifizierung, dass kein Zielobjekt erkannt wird.
-
Das neuronale Netz 22 ist permutationsvariant gegen eine Vertauschung der an den Eingangsstellen anliegenden Objektdatensätze.
-
3 zeigt schematisch und stark vereinfacht die Berechnung einer Wahrscheinlichkeitsverteilung anhand der Trainingsdaten des neuronalen Netzes 22. Jeder durch einen Kreis gekennzeichnete Eingangswert x entspricht einer Verkehrssituation der Trainingsdaten und kann insbesondere ein Datentupel sein, welches mehrere, in der Verkehrssituation vorhandenen Objekte kennzeichnet.
-
Für jeden der Eingangswerte wird beispielsweise eine Gaußverteilung 60 angenommen. Die Gaußverteilungen 60 werden zu einer summierten und normierten Wahrscheinlichkeitsdichte 62 zusammengefasst.
-
Wird nun im Anwendungsfall des Systems ein Datentupel aus dem in einer Verkehrssituation aggregierten Objektdatensätzen zusammengefasst, so kann der Neuartigkeitsbewerter 18 einen Abstand d des Datentupels zu der Wahrscheinlichkeitsdichte 62 berechnen, der ein Maß für die Neuartigkeit der Verkehrssituation gegenüber den Trainingsdaten darstellt. Übersteigt die so berechnete Neuartigkeit einen Schwellwert s, erfolgt, wir oben erwähnt, eine Verzweigung in den ersten Objektauswahlzweig 20. Ansonsten wird das neuronale Netz 22 zur Objektauswahl verwendet.
-
Als Abstandsmaß für den Abstand d kann beispielsweise verwendet werden: die Mahalanobisdistanz, die der Berechnung eines Abstandes zwischen einem Messwert und einer Gaußverteilung entspricht; oder es kann die Kullback-Leibler-Divergenz verwendet werden, die der Berechnung eines Abstandes zwischen zwei Verteilungen entspricht. Um aus dem Datentupel eine Verteilung zu gewinnen, kann das Datentupel als Gauß-verteilter Messwert angenommen werden. Es kann auch ein gleitendes Zeitfenster von beispielsweise wenigen Sekunden mitgeführt werden, um eine echte Verteilung der für die einzelnen Messzyklen gewonnenen Datentupel zu ermitteln.
-
Aus den Trainingsdaten können geeignete Wahrscheinlichkeitsverteilungen für die Berechnung der Wahrscheinlichkeitsdichte 62 beispielsweise unter der Annahme, dass jeweilige Datentupel Gauß-mischverteilt sind, mittels der sogenannten Kernel Density Estimation (KDE), mittels eines Dirichlet Process Gaußian Mixture Model (DGPMM) oder mittels Exception Maximization (EM) ermittelt werden. Unter Nutzung aller, den Trainingsdaten entsprechenden Datentupel, wird somit eine mehrdimensionale Verteilung erzeugt.
-
Das beschriebene Verfahren hat insbesondere den Vorteil, dass der Gefahr begegnet werden kann, dass bei einer zunehmenden Abweichung der real vorkommenden Daten von den Trainingsdaten durch rechtzeitiges Erkennen der Neuartigkeit der Verkehrssituation ein Überschreiten der Generalisierungsfähigkeit des neuronalen Netzes vermieden werden kann, bei welcher ein nicht vorhersehbares Fehlverhalten des neuronalen Netzes auftreten könnte.
-
Die Verwendung eines Convolutional Network Layer als erste Schicht des neuronalen Netzes
22 kann zu einer starken Verbesserung der Leistung des Netzes führen, die sich beispielsweise an einer Verbesserung der Korrektklassifikationsrate zeigt. Die Korrektklassifikationsrate kann im allgemeinen berechnet werden als
wobei TP (True Positive) die Anzahl der korrekt positiven Klassifizierungen, TN (True Negative) die Anzahl der korrekt negativen Klassifizierungen, FP (False Positiv) die Anzahl der falsch positiven Klassifizierungen und FN (False Negative) die Anzahl der falsch negativen Klassifizierungen darstellt.
-
Die Nutzung eines neuronalen Netzwerkes kann ferner den Vorteil haben, dass durch geeignete Trainingsdaten auch Sonderfälle von Verkehrssituationen gelernt werden können. Sonderfälle können beispielsweise umfassen: (1) das ACC muss sehr früh auf ein Einscheren eines Fahrzeugs vor dem Ego-Fahrzeug reagieren, noch bevor das einscherende Fahrzeug vollständig im Fahrstreifen des Ego-Fahrzeugs angekommen ist; (2) das ACC muss bei einem Spurwechsel des Ego-Fahrzeugs ein ausgewähltes Zielobjekt auf dem alten Fahrstreifen des Ego-Fahrzeugs frühzeitig verwerfen (d.h. loslassen), um eine Beschleunigung des Ego-Fahrzeugs ohne spürbare Latenz zuzulassen, noch bevor das Ego-Fahrzeug vollständig in der neuen Spur angekommen ist; sowie (3): beginnt ein Zielobjekt vor dem Ego-Fahrzeug, die Spur zu verlassen, muss frühzeitig auf ein neues Zielobjekt vor dem alten Zielobjekt im Ego-Fahrstreifen umgeschaltet werden.