-
Stand der Technik
-
Die Erfindung geht von einer Vorrichtung oder einem Verfahren nach Gattung der unabhängigen Ansprüche aus. Gegenstand der vorliegenden Erfindung ist auch ein Computerprogramm.
-
Um autonomes Fahren möglich zu machen werden aktuell Unmengen an kostspieligen Annotationsdaten erzeugt (wie es beispielsweise in der dritten Generation der Videosignalverarbeiten erfolgt), die zudem noch aufgrund von „label noise“ fehlerhaft sind, da menschliche Annotatoren ein Annotationsproblem lösen müssen, welches Schätzungen ohne direkte Qualitätskontrolle notwendig macht (z. B. Schätzung der richtigen Verkehrsteilnehmerklasse). Diese Schätzungen machen eine nachträgliche Qualitätskontrolle der Annotationsdaten notwendig, in welcher Annotationsfehler übersehen werden können.
-
Ein Ansatz zur Lösung eines solchen Problems könnte darin bestehen, nur diejenigen Bereiche zum Annotationen zu versehen, die auch von einem Fahrzeug tatsächlich befahren werden, was den Aufwand für das Vorsehen dieser Annotationen zumindest auf relevante Bereiche einschränken würde.
-
Offenbarung der Erfindung
-
Vor diesem Hintergrund werden mit dem hier vorgestellten Ansatz Verfahren, weiterhin Vorrichtungen, die diese Verfahren verwenden, sowie schließlich ein entsprechendes Computerprogramm gemäß den Hauptansprüchen vorgestellt. Durch die in den abhängigen Ansprüchen aufgeführten Maßnahmen sind vorteilhafte Weiterbildungen und Verbesserungen der im unabhängigen Anspruch angegebenen Vorrichtung möglich.
-
Mit dem hier vorgestellten Ansatz wird ein Verfahren zum Bereitstellen von annotierten Verkehrsraumdaten, wobei das Verfahren die folgenden Schritte aufweist:
- - Einlesen von Verkehrsraumdaten, die je einen Abschnitt eines von einem Verkehrsteilnehmer benutzten Verkehrsraums repräsentiert und Einlesen von automatisch erfassten Positionsdaten des Verkehrsteilnehmers in dem Verkehrsraum; und
- - Zuordnen je zumindest eines Annotationsdatensatzes zu den Verkehrsraumdaten, an denen sich der Verkehrsteilnehmer entsprechend den erfassten Positionsdaten aktuell befindet, um die annotierten Verkehrsraumdaten zu erhalten, die eine Benutzungs- und/oder Bewegungsmöglichkeit des durch die Verkehrsraumdaten repräsentierten Verkehrsraums durch einen anderen Verkehrsteilnehmer zu signalisieren, insbesondere wobei die Annotationsdatensatz unter Verwendung eines Verfahrens des maschinellen Lernens und/oder eines auf einem maschinellen Lernalgorithmus basierenden Klassifikators generiert wurden.
-
Unter Verkehrsraumdaten können Daten verstanden werden, die eine Umgebung im Bereich des Verkehrsteilnehmers beispielsweise als Karte repräsentieren. Unter einem Abschnitt eines Verkehrsraums kann beispielsweise eine Parzelle verstanden werden, die ein Teil des Verkehrsraums darstellt; beispielsweise kann dieser Abschnitt zweidimensional sein und eine Fahrbahnoberfläche oder einen Teil eines Fußweges abbilden. Unter einem Verkehrsraum kann beispielsweise ein Bereich verstanden werden, der öffentlich zugänglich ist und der zur Fortbewegung von Verkehrsteilnehmern dient. Unter Verkehrsteilnehmer kann vorliegend eine Person, wie beispielsweise Fußgänger, oder ein Objekt, wie beispielsweise ein Fahrzeug, verstanden werden. Unter einem Annotationsdatensatz können vorliegend beispielsweise Metadaten verstanden werden, die den einzelnen, einen Abschnitt des Verkehrsraums beschreibenden Verkehrsraumdaten zugeordnet werden und die weitere Informationen über eine Eigenschaft oder einen Parameter enthalten, die für einen anderen Verkehrsteilnehmer relevant sind oder sein können, wenn er sich in dem Abschnitt des Verkehrsraums bewegen möchte, der durch die betreffenden Verkehrsraumdaten abgebildet wird. Unter einer Annotation für die Verkehrsraumdaten kann beispielsweise der Annotationsdatensatz verstanden werden, der den Verkehrsraumdaten für den Abschnitt zugeordnet ist, an dem sich der Verkehrsteilnehmer befindet. Unter Positionsdaten können eine aktuelle Position des Verkehrsteilnehmers abbildende Daten verstanden werden, die beispielsweise als Koordinaten eines globalen Satellitennavigationssystems zur Verfügung gestellt werden. Unter einer Verkehrsteilnehmerklasse eines Verkehrsteilnehmers kann beispielsweise eine Gruppe von möglichst gleichartigen Ausprägungen oder Typen des Verkehrsteilnehmers verstanden werden, wie beispielsweise die Verkehrsteilnehmerklasse von Personenkraftwagen, Motorrädern, Lastkraftwagen, Omnibussen, Fahrrädern oder Fußgängern als Verkehrsteilnehmer. Unter einem Verfahren des maschinellen Lernens oder eines auf einem maschinellen Lernalgorithmus basierenden Klassifikators kann ein Algorithmus verstanden werden, der durch eine vorab ausgeführte Trainingsphase einen Zustand erreicht hat, in dem er bei Zuführung von Daten eine Abschätzung oder Auswertung vornehmen kann, ob betreffende Abschnitte des Verkehrsraums, der aktuell vom Verkehrsteilnehmer befahren oder allgemein benutzt wird, auch von anderen Verkehrsteilnehmern benutzt werden kann.
-
Der hier vorgestellte Ansatz basiert auf der Erkenntnis, dass die annotierten Verkehrsraumdaten sehr schnell, umfangreich und zuverlässig bereitgestellt werden können, wenn die Verkehrsraumdaten, die oftmals aus einer automatischen Abbildung der Umgebung des Verkehrsteilnehmers resultieren mit automatisch erfassten Positionsdaten des Verkehrsteilnehmers verknüpft werden, sodass über den den Verkehrsraumdaten zugeordneten Annotationsdatensatz aus den annotierten Verkehrsraumdaten erkennbar wird, dass der Verkehrsteilnehmer tatsächlich den betreffenden Abschnitt des Verkehrsraums benutzt oder befahren hat. Auf diese Weise kann automatisiert erfasst werden, welche Bereiche oder Abschnitte eines Verkehrsraums von einem Verkehrsteilnehmer (speziell einem Verkehrsteilnehmer einer bestimmten Verkehrsteilnehmerklasse) benutzt wurden, sodass darauf zurückgeschlossen werden kann, dass auch zukünftig Verkehrsteilnehmer, speziell dieser bestimmten Verkehrsteilnehmerklasse, den betreffenden Abschnitt des Verkehrsraums werden nutzen können. Es ist daher vorteilhafter Weise nicht notwendig, manuell oder durch menschliche Eingriffe die die Abschnitte eines Verkehrsraums repräsentierenden Verkehrsraumdaten nochmals zu korrigieren oder redigieren oder ganz mit den Annotationsdaten zu versehen.
-
Gemäß einer besonders günstigen Ausführungsform des hier vorgeschlagenen Ansatzes kann im Schritt des Zuordnens zum Erhalt der annotierten Verkehrsraumdaten ferner zumindest ein Nachbarannotationsdatensatz Nachbarverkehrsraumdaten zugeordnet werden, die je einen zu den Verkehrsraumdaten benachbarten Abschnitt des Verkehrsraums repräsentieren, insbesondere wobei die Nachbarannotationsdatensätze unter Verwendung eines Verfahrens des maschinellen Lernens und/oder eines auf einem maschinellen Lernalgorithmus basierenden Klassifikators generiert wurden. Unter einem Nachbarannotationsdatensatz kann vorliegend ein Annotationsdatensatz verstanden werden, der Nachbarverkehrsraumdaten zugeordnet ist. Hierbei kann dieser Nachbarannotationsdatensatz ebenfalls wieder Metadaten enthalten, wie dies bereits in Bezug zum Annotationsdatensatz näher beschrieben wurde. Die Nachbarverkehrsraumdaten können hierbei als Verkehrsraumdaten verstanden werden, die Abschnitte repräsentieren, die sich unmittelbar an Abschnitte anschließen, welche durch den Verkehrsteilnehmer im Verkehrsraum benutzt werden. Eine derartige Ausführungsform des hier vorgestellten Ansatzes bietet den Vorteil, dass auf diese Weise eine Information abgeschätzt oder ermittelt werden, ob beispielsweise ein Seitenbereich einer Fahrbahn oder ein Fußgängerweg von dem Verkehrsteilnehmer oder einem anderen Verkehrsteilnehmer, speziell einer bestimmten Verkehrsteilnehmerklasse, ebenfalls benutzt werden kann, wenn dieser Verkehrsteilnehmer einen benachbarten Abschnitt des Verkehrsraums benutzt. Auch können durch die Verwendung eines Verfahrens des maschinellen Lernens oder auf einem maschinellen Lernalgorithmus basierenden Klassifikator, wie beispielsweise eines neuronalen Netzes, Zusammenhänge ermitteln zu können, ob, und gegebenenfalls in welchem Umfang von dem Verkehrsteilnehmer oder einem anderen Verkehrsteilnehmer auch die Abschnitte des Verkehrsraums genutzt werden können, die sich (beispielsweise unmittelbar) an die Abschnitte anschließen, die tatsächlich vom Verkehrsteilnehmer im Verkehrsraum benutzt werden.
-
Günstig ist ferner eine Ausführungsform des hier vorgeschlagenen Ansatzes, bei der im Schritt des Einlesens die Nachbardatensätze für Nachbarverkehrsraumdaten eingelesen werden, die einen von dem Verkehrsteilnehmer aktuell nicht benutzten oder zu benutzenden Verkehrsraum repräsentieren. Auf diese Weise lässt sich nicht nur eine Abschätzung über die Benutzbarkeit des tatsächlich vom Verkehrsteilnehmer benutzten Abschnitts des Verkehrsraums erreichen, sondern auch Aussagen über die Nutzbarkeit von weiteren, an den aktuellen benutzten Abschnitt angrenzende Bereiche durch bestimmte Verkehrsteilnehmer treffen.
-
Gemäß einer weiteren Ausführungsform kann im Schritt des Einlesens eine einen Typ des Verkehrsteilnehmers repräsentierende Verkehrsteilnehmerklasse eingelesen werden, wobei im Schritt des Zuordnens der den Verkehrsraumdaten zuordnende Annotationsdatensatz unter Verwendung der Verkehrsteilnehmerklasse ermittelt wird. Eine Verkehrsteilnehmer Klassen kann beispielsweise eine Klasse sein, die den Verkehrsteilnehmer als Fußgänger, Radfahrer, Personenkraftwagen, Lastkraftwagen, Omnibus oder Motorradfahrer klassiert. Eine solche Ausführungsform des hier vorgestellten Ansatzes bietet den Vorteil, eine Abschätzung über die Aussagekraft der annotierten Verkehrsraumdaten, speziell bei anderen Verkehrsteilnehmern, vornehmen zu können, sodass sehr einfach die Informationen aus den annotierten Verkehrsraumdaten bei der Beurteilung der Nutzungsmöglichkeit des Verkehrsraums durch den anderen Verkehrsteilnehmer verwendet werden kann. Beispielsweise lässt sich hierdurch abschätzen, dass ein Verkehrsraum, der durch einen Lastkraftwagen als Verkehrsteilnehmer, der die annotierten Verkehrsraumdaten bereitstellt, ist wahrscheinlich auch durch einen Personenkraftwagen als Verkehrsteilnehmer genutzt werden kann.
-
Denkbar ist ferner eine Ausführungsform des hier vorgeschlagenen Ansatzes, bei der im Schritt des Einlesens ein eine Kontur des Verkehrsteilnehmens repräsentierendes Höhenprofil des Verkehrsteilnehmers über dem von dem Verkehrsteilnehmer benutzten Verkehrsraum und/oder eine die Kontur des Verkehrsteilnehmens über dem von dem Verkehrsteilnehmer benutzten Verkehrsraum repräsentierende Silhouette eingelesen wird, wobei im Schritt des Zuordnens der den Verkehrsraumdaten je zugeordnete Annotationsdatensatz unter Verwendung des Höhenprofils und/oder der Silhouette ermittelt wird. Ein solches Höhenprofil oder eine Silhouette bzw. Kontur kann als ein räumlicher oder dreidimensionaler Bereich verstanden werden, der durch den Verkehrsteilnehmer bei der Benutzung des Abschnitts des Verkehrsraums benötigt oder belegt wird. Auf diese Weise wird vorteilhaften möglich, dass bestimmte Verkehrsteilnehmer zuverlässig lassen von Verkehrsteilnehmern gewisse räumliche Anforderungen über den jeweils benutzten Abschnitten des Verkehrsraums haben, sodass beispielsweise für später nachfolgende Verkehrsteilnehmer auf diesen jeweils benutzten Abschnitten ein Hinweis gegeben werden kann, dass diese Abschnitte bereits einmal durch einen entsprechenden Verkehrsteilnehmer benutzt wurden. Beispielsweise kann auf diese Weise sehr einfach in den Verkehrsraumdaten hinterlegt werden, dass eine Straße durch seitlichen Bewuchs sehr schmal ist, sodass beispielsweise ein PKW diese Straße benutzen kann, ein Lkw, der ein anderes Höhenprofil bzw. eine andere Silhouette oder Kontur aufweist, diese Straße jedoch nicht mehr benutzen kann.
-
Besonders einfach ausführbar ist eine Ausführungsform des hier vorgestellten Ansatzes, bei der im Schritt des Einlesens Verkehrsraumdaten eingelesen werden, die Abschnitte des von einem Verkehrsteilnehmer benutzten Verkehrsraums des Verkehrsteilnehmers repräsentieren, die unter Verwendung von mittels einer Kamera aufgezeichneten Bildern ermittelt wurden und/oder im Schritt des Einlesens Positionsdaten eingelesen werden, die unter Verwendung einer Odometrie-Einheit und/oder eines Satellitennavigationssystems ermittelt wurden. Eine solche Kamera oder Odometrie-Einheit ist mittlerweile oftmals serienmäßig in Fahrzeugen verbaut, sodass durch die Verwendung dieser von der Kamera aufgezeichneten Bildern als Verkehrsraumdaten oder der Odometrie-Einheit bereitgestellten Positionsdaten sehr schnell und effizient die Verkehrsraumdaten generiert und entsprechende Abschnitte unterteilt werden können.
-
Besonders relevant für den Einsatz der mit zumindest einer Annotation versehenen Verkehrsraumdaten ist eine Ausführungsform des hier vorgestellten Ansatzes, bei der im Schritt des Einlesens Verkehrsraumdaten eingelesen werden, die Abschnitte des von einem Verkehrsteilnehmer benutzten Verkehrsraums des Verkehrsteilnehmers repräsentieren, die als Fahrbahn für zumindest ein Fahrzeug oder als Fußgängerweg ausgestaltet und/oder identifizierbar sein. Speziell für den Bereich der Klassifizierung oder Beurteulung einer Nutzungsmöglichkeit von Fahrbahnen, beispielsweise für motorbetriebene Fahrzeuge oder auch Fahrräder, oder Fußwegen lässt sich somit das hier vorgeschlagene Verfahren sehr günstig einsetzen.
-
Gemäß einer weiteren Ausführungsform des hier vorgeschlagenen Ansatzes kann zumindest der Schritt des Einlesens und/oder des Zuordnens in einer mobilen Einheit des Verkehrsteilnehmers und/oder in einer zentralen, stationären Rechnereinheit ausgeführt wird und/oder wobei nach dem Schritt des Zuordnens ein Schritt des Übertragens der annotierten Verkehrsraumdaten an eine einer zentralen, stationären Rechnereinheit vorgesehen ist. Unter einer zentralen, stationären Rechnereinheit kann beispielsweise ein Cloud-Server verstanden werden. Eine solche Ausführungsform bietet den Vorteil, je nach verfügbarer Rechenleistung oder Daten Übertragungskapazität numerisch oder schaltungstechnisch aufwendigere Algorithmen an jeweils günstigen Orten ausführen zu können, wobei dennoch eine gute Verfügbarkeit der bereitgestellten mit zumindest einer Annotation versehenen Verkehrsraumdaten sichergestellt werden kann.
-
Ferner kann gemäß einer weiteren Ausführungsform des hier vorgeschlagenen Verfahrens zur Bewertung einer Nutzung von Abschnitten des von einem Verkehrsteilnehmer zu nutzenden Verkehrsraums vorgesehen sein, wobei das Verfahren die folgenden Schritte aufweist:
- - Einlesen von annotierten Verkehrsraumdaten, die mit einer Variante eines hier vorgestellten Verfahrens erstellt wurden und von Positionsdaten, die eine eine aktuelle oder zukünftige Position des Verkehrsteilnehmers repräsentieren; und
- - Prüfen einer Nutzungsmöglichkeit von zumindest einem Abschnitt des Verkehrsraums durch den Verkehrsteilnehmer unter Verwendung des Annotationsdatensatzes und der Positionsdaten.
-
Eine solche Ausführungsform des hier vorgeschlagenen Ansatzes bietet den Vorteil, die bereitgestellten und annotierten Verkehrsraumdaten vorteilhaft nutzen zu können, um beispielsweise vorab abschätzen zu können, ob bestimmte Abschnitte des Verkehrsraums durch den Verkehrsteilnehmer (beispielsweise einer bestimmten Verkehrsteilnehmerklasse) genutzt werden können oder ob dies aufgrund von Erfahrungen/Informationen von Verkehrsteilnehmern, die diesen Abschnitt des Verkehrsraums zuvor benutzt haben, nicht möglich oder nur mit erheblichen Problemen möglich ist.
-
Auch kann gemäß einer weiteren Ausführungsform des hier vorgeschlagenen Ansatzes ein Verfahren zum Anlernen eines auf einem maschinellen Lernalgorithmus basierenden Klassifikators vorgesehen sein, wobei das Verfahren die folgenden Schritte aufweist:
- - Einlesen von ersten Verkehrsraumdaten, die je einen Abschnitt eines von einem ersten Verkehrsteilnehmer benutzten oder zu benutzenden Verkehrsraums repräsentiert sowie von automatisch erfassten ersten Positionsdaten des ersten Verkehrsteilnehmers und Einlesen von zweiten Verkehrsraumdaten, die je einen Abschnitt eines von einem zweiten Verkehrsteilnehmer benutzten oder zu benutzenden Verkehrsraums repräsentiert sowie von automatisch erfassten zweiten Positionsdaten des zweiten Verkehrsteilnehmers; und
- - Trainieren von Elementen des Klassifikators unter Verwendung der ersten und zweiten Verkehrsraumdaten und der ersten und zweiten Positionsdaten.
-
Eine solche Ausführungsform des hier vorgeschlagenen Ansatzes bietet den Vorteil, durch die Verwendung des auf einem maschinellen Lernalgorithmus basierenden Klassifikator, wie beispielsweise eines neuronalen Netzes, und den von mehreren Verkehrsteilnehmern bereitgestellten Verkehrsraumdaten für einen bestimmten Abschnitt oder mehrere bestimmte Abschnitte des Verkehrsraums diesen Klassifikator derart trainieren zu können, dass auch eine Aussage beim Zuordnen der Annotationsdatensätze zu den Verkehrsraumdaten möglich wird, ob die Abschnitte des Verkehrsraums, die von einem aktuellen Verkehrsteilnehmer aktuell nicht benutzt werden, die jedoch an Abschnitte des Verkehrsraum angrenzen, die von dem Verkehrsteilnehmer benutzt werden, ebenfalls von einem Verkehrsteilnehmer (beispielsweise der gleichen Verkehrsteilnehmerklasse) benutzt werden können.
-
Die hier vorgestellten Varianten dieser Verfahren können beispielsweise in Software oder Hardware oder in einer Mischform aus Software und Hardware beispielsweise in einem Steuergerät oder er Vorrichtung einimplementiert sein.
-
Der hier vorgestellte Ansatz schafft ferner eine Vorrichtung, die ausgebildet ist, um die Schritte einer Variante eines hier vorgestellten Verfahrens in entsprechenden Einrichtungen durchzuführen, anzusteuern bzw. umzusetzen. Auch durch diese Ausführungsvariante der Erfindung in Form einer Vorrichtung kann die der Erfindung zugrunde liegende Aufgabe schnell und effizient gelöst werden.
-
Hierzu kann die Vorrichtung zumindest eine Recheneinheit zum Verarbeiten von Signalen oder Daten, zumindest eine Speichereinheit zum Speichern von Signalen oder Daten, zumindest eine Schnittstelle zu einem Sensor oder einem Aktor zum Einlesen von Sensorsignalen von dem Sensor oder zum Ausgeben von Daten- oder Steuersignalen an den Aktor und/oder zumindest eine Kommunikationsschnittstelle zum Einlesen oder Ausgeben von Daten aufweisen, die in ein Kommunikationsprotokoll eingebettet sind. Die Recheneinheit kann beispielsweise ein Signalprozessor, ein Mikrocontroller oder dergleichen sein, wobei die Speichereinheit ein Flash-Speicher, ein EEPROM oder eine magnetische Speichereinheit sein kann. Die Kommunikationsschnittstelle kann ausgebildet sein, um Daten drahtlos und/oder leitungsgebunden einzulesen oder auszugeben, wobei eine Kommunikationsschnittstelle, die leitungsgebundene Daten einlesen oder ausgeben kann, diese Daten beispielsweise elektrisch oder optisch aus einer entsprechenden Datenübertragungsleitung einlesen oder in eine entsprechende Datenübertragungsleitung ausgeben kann.
-
Unter einer Vorrichtung kann vorliegend ein elektrisches Gerät verstanden werden, das Sensorsignale verarbeitet und in Abhängigkeit davon Steuer- und/oder Datensignale ausgibt. Die Vorrichtung kann eine Schnittstelle aufweisen, die hard- und/oder softwaremäßig ausgebildet sein kann. Bei einer hardwaremäßigen Ausbildung können die Schnittstellen beispielsweise Teil eines sogenannten System-ASICs sein, der verschiedenste Funktionen der Vorrichtung beinhaltet. Es ist jedoch auch möglich, dass die Schnittstellen eigene, integrierte Schaltkreise sind oder zumindest teilweise aus diskreten Bauelementen bestehen. Bei einer softwaremäßigen Ausbildung können die Schnittstellen Softwaremodule sein, die beispielsweise auf einem Mikrocontroller neben anderen Softwaremodulen vorhanden sind.
-
Von Vorteil ist auch ein Computerprogrammprodukt oder Computerprogramm mit Programmcode, der auf einem maschinenlesbaren Träger oder Speichermedium wie einem Halbleiterspeicher, einem Festplattenspeicher oder einem optischen Speicher gespeichert sein kann und zur Durchführung, Umsetzung und/oder Ansteuerung der Schritte des Verfahrens nach einer der vorstehend beschriebenen Ausführungsformen verwendet wird, insbesondere wenn das Programmprodukt oder Programm auf einem Computer oder einer Vorrichtung ausgeführt wird.
-
Ausführungsbeispiele des hier vorgestellten Ansatzes sind in den Zeichnungen dargestellt und in der nachfolgenden Beschreibung näher erläutert. Es zeigt:
- 1 eine Darstellung eines Szenarios, in welchem durch einen Verkehrsteilnehmer, beispielsweise ein Fahrzeug, annotierte Verkehrsraumdaten bereitgestellt werden;
- 2 eine schematische Arbeitsweise der Zuordnungseinheit 160 mit dem Klassifikator 178 gemäß einem weiteren Ausführungsbeispiel;
- 3 ein Ablaufdiagramm eines Ausführungsbeispiels eines Verfahrens zum Bereitstellen von mit zumindest einer Annotation versehenen Verkehrsraumdaten;
- 4 ein Ablaufdiagramm eines Ausführungsbeispiels eines Verfahrens zur Bewertung einer Nutzung von Abschnitten des von einem Verkehrsteilnehmer zu nutzenden Verkehrsraums; und
- 5 ein Ablaufdiagramm eines Ausführungsbeispiels eines Verfahrens zum Anlernen eines auf einem maschinellen Lernalgorithmus basierenden Klassifikators.
-
In der nachfolgenden Beschreibung günstiger Ausführungsbeispiele der vorliegenden Erfindung werden für die in den verschiedenen Figuren dargestellten und ähnlich wirkenden Elemente gleiche oder ähnliche Bezugszeichen verwendet, wobei auf eine wiederholte Beschreibung dieser Elemente verzichtet wird.
-
1 zeigt eine Darstellung eines Szenarios, in welchem durch einen Verkehrsteilnehmer 100, beispielsweise ein Fahrzeug, annotierte Verkehrsraumdaten 105 bereitgestellt werden. Hierbei werden zunächst Verkehrsraumdaten 110 über eine Schnittstelle 115 eingelesen, wobei diese Verkehrsraumdaten 110 nun beispielsweise als Bilddaten einer optischen Kamera 120 entspringen können, die eine Umgebung 125 um den Verkehrsteilnehmer 100 herum aufzeichnet. Der Verkehrsteilnehmer 100 fährt in dem in der 1 dargestellten Ausführungsbeispiel auf einer Straße als Verkehrsraum 130, sodass durch die Kamera 120 Abschnitte 135 abgebildet werden, welche von dem Fahrzeug als Verkehrsteilnehmer 100 benutzt, d.h. befahren werden oder unmittelbar nachfolgend benutzt werden.
-
Alternativ oder zusätzlich können die Verkehrsraumdaten 110 auch aus einer abgespeicherten digitalen Karte 140 ausgelesen werden, in welcher die von dem Verkehrsteilnehmer 100 als Fahrzeug zu benutzenden Abschnitte 135 der Straße als Verkehrsraum 130 hinterlegt sind.
-
Ferner werden beispielsweise auch durch die Kamera 120 und/oder aus der digitalen Karte 140 Nachbarverkehrsraumdaten 145 bereitgestellt, die jeweils Nachbarabschnitte 150 repräsentieren, die an die Abschnitte 135 angrenzen, die von dem Fahrzeug als Verkehrsteilnehmer 100 benutzt, hier befahren, oder unmittelbar nachfolgend benutzt werden.
-
Zusätzlich werden noch Positionsdaten 155 über die Schnittstelle 115, die eine aktuelle Position des Verkehrsteilnehmers 100, hier des Fahrzeugs, repräsentieren und die automatisch erfasst wurden. Die Positionsdaten 155 können beispielsweise aus einer Odometrie-Einheit 157 durch Auswertung der Bewegungstrajektorie des Verkehrsteilnehmers 100, gegebenenfalls unter Zuhilfenahme von Daten aus der digitalen Karte 140 gewonnen werden. Alternativ oder zusätzlich können die Positionsdaten 155 auch unter Verwendung eines Empfängers eines Satellitennavigationssystems 158 wie beispielsweise des GPS-Systems gewonnen werden.
-
In einer Zuordnungseinheit 160 wird dann beispielsweise den Verkehrsraumdaten 110 ein jeweils betreffender Annotationsdatensatz 162 zugeordnet, der in einer Annotationsdatensatzerzeugungseinheit 165 unter Verwendung der aktuellen Position des Verkehrsteilnehmers 100 generiert wurde. Hierzu kann beispielsweise eine weitere Information wie ein Höhenprofil 167 oder eine Silhouette verwendet werden, welches/welche angibt, welche räumliche Ausdehnung der Verkehrsteilnehmer 100 hat. Denkbar ist auch, dass die weitere Information eine Verkehrsteilnehmerklasse 168 des Verkehrsteilnehmers 100, in diesem Fall beispielsweise die Verkehrsteilnehmerklasse der Personenkraftwagen als Verkehrsteilnehmer, in dem Annotationsdatensatz 162 eingefügt wird. Durch eine solche Vorgehensweise ist es nun möglich, den einzelnen Abschnitten 135, die der Verkehrsteilnehmer 100 tatsächlich benutzt, und die durch die aktuelle Position entsprechend dem Positionssignal 155 identifizierbar sind, Metadaten, die auch als Annotation bezeichnet werden können, als Annotationsdatensatz 162 zuzuordnen, um in annotierten Verkehrsraumdaten 105 eine Information über die Nutzbarkeit der betreffenden Abschnitte 135 durch den Verkehrsteilnehmer 100 zu packen. Werden nun beispielsweise die annotierten Verkehrsraumdaten 105 an eine zentrale Rechnereinheit 170, beispielsweise einen Cloud-Server, übertragen und hiervon an nun einen anderen Verkehrsteilnehmer 172 übertragen, kann dieser andere Verkehrsteilnehmer 172 die annotierten Verkehrsraumdaten 105 unter Verwendung der eigenen aktuellen Position auswerten und erkennen, ob die Abschnitte 135 einen Fahrschlauch darstellen, der auch von ihm als anderem Verkehrsteilnehmer 172 genutzt werden kann. Hierbei kann auch berücksichtigt werden, ob der andere Verkehrsteilnehmer 172 die gleiche Verkehrsteilnehmerklasse 168 hat, wie der Verkehrsteilnehmer 100. Auf diese Weise kann beispielsweise auch erkannt werden, dass für den Fall, dass der Verkehrsteilnehmer 100 ein Lastkraftwagen ist und der andere Verkehrsteilnehmer 120 ein Personenkraftwagen ist, aufgrund der kleineren äußeren Abmessungen des anderen Verkehrsteilnehmers 172 die Abschnitte 135 höchstwahrscheinlich auch durch den anderen Verkehrsteilnehmer 172 genutzt bzw. befahren werden können. Dagegen kann für den Fall, dass der Verkehrsteilnehmer 100 ein Personenkraftwagen ist und der andere Verkehrsteilnehmer 172 ein Lastkraftwagen ist, nicht eindeutig erkannt werden, dass die Abschnitte 135 auch durch den anderen Verkehrsteilnehmer 172 genutzt werden können, oder zumindest eine Warnung ausgegeben werden.
-
Um nun nicht nur eine Nutzungsmöglichkeit der meist sehr engen an die räumlichen Abmessungen des aktuellen Verkehrsteilnehmers 100 ausgewählten Abschnitte 135 durch die anderen Verkehrsteilnehmer 172 abschätzen zu können, sondern auch bei der automatischen Erfassung und Bewertung der Nutzungsmöglichkeit des Verkehrsraums 130 die Nutzungsmöglichkeit der an die Abschnitte 135 angrenzenden Nachbarabschnitte 150 mit berücksichtigen zu können, kann durch die Zuordnungseinheit 160 den je einen Nachbarabschnitt 150 repräsentierenden Nachbarverkehrsraumdaten 145 ein Nachbarannotationsdatensatz 175 zugeordnet werden, der beispielsweise durch einen Klassifikator 178 bereitgestellt wurde, der beispielsweise in der Annotationsdatensatzerzeugungseinheit 165 angeordnet ist und auf einem Algorithmus des maschinellen Lernens basiert. Diese mit dem Nachbarannotationsdatensatz 175 versehenen Nachbarverkehrsraumdaten 145 wurden dann in der 1 mit dem Bezugszeichen 180 versehen und können ebenfalls den annotierten Verkehrsraumdaten 105 zugeordnet werden.
-
Der Klassifikator 178 kann beispielsweise unter Verwendung eines trainierten neuronalen Netzes oder eines anderen Algorithmus auf der Basis des maschinellen Lernens, beispielsweise unter Berücksichtigung der aus den Positionsdaten 155 entnehmbaren aktuellen Position des Verkehrsteilnehmers 100 und/oder dem aktuell vom Verkehrsteilnehmer 100 benutzten Abschnitt 135 diesen Nachbarannotationsdatensatz 175 generieren, der den Nachbarverkehrsraumdaten 145 zugeordnet wird. Auf diese Weise lässt sich auch eine recht zuverlässige Aussage über die Nutzungsmöglichkeit der an die Abschnitte 135 angrenzenden Nachbarabschnitte 150 durch andere Verkehrsteilnehmer 172 treffen und diese Information auch an die anderen Verkehrsteilnehmer 172 weitergeben, beispielsweise ebenfalls wieder unter Vermittlung der zentralen Rechnereinheit 170.
-
Alternativ oder zusätzlich kann auch der Klassifikator 178 beispielsweise unter Berücksichtigung der aus den Positionsdaten 155 entnehmbaren aktuellen Position des Verkehrsteilnehmers 100 und/oder dem aktuell vom Verkehrsteilnehmer 100 benutzten Abschnitt 135 den Annotationsdatensatz 162 generieren, der den Verkehrsraumdaten 110 zugeordnet wird. Auf diese Weise lässt sich auch eine recht zuverlässige Aussage über die Nutzungsmöglichkeit der Abschnitte 135 durch andere Verkehrsteilnehmer 172 treffen und diese Information auch an die anderen Verkehrsteilnehmer 172 weitergeben, beispielsweise ebenfalls wieder unter Vermittlung der zentralen Rechnereinheit 170.
-
Dieser Klassifikator 178 sollte hierbei in einem vorangegangenen Trainingsverfahren derart trainiert werden, dass der durch den Klassifikator 178 bereitgestellte Annotationsdatensatz 162 und/oder Nachbarannotationsdatensatz 175 bereits eine recht gute Vorhersage der Nutzungsmöglichkeit der Abschnitte 135 und/oder Nachbarabschnitte 150 durch die anderen Verkehrsteilnehmer 172 zulässt. Dieses Training oder Anlernen kann durch die Verwendung von mehreren Sätzen von annotierten Verkehrsraumdaten 105 erfolgen, also mit zumindest ersten annotierten Verkehrsraumdaten 105, die von einem ersten Verkehrsteilnehmer wie dem Verkehrsteilnehmer 100 entspringen und zweiten annotierten Verkehrsraumdaten 105', die von einem einem zweiten Verkehrsteilnehmer 100 entspringen, der den Verkehrsraum 130 beispielsweise zu einem späteren Zeitpunkt und hierbei mit geringfügig abweichenden Abschnitten 135 nutzt. Wird nun beispielsweise noch das Höhenprofil 167, die Silhouette und/oder die Verkehrsteilnehmerklasse 168 des jeweiligen Verkehrsteilnehmers 100 bzw. 100' mitberücksichtigt, kann der Klassifikator 178 mit den nunmehr verfügbaren Algorithmen sehr präzise trainiert werden, sodass auch bei der Bewertung der Abschnitte 135 des Verkehrsraums 130 bei der Fahrt des Verkehrsteilnehmers 100 die Nutzbarkeit der jeweiligen Abschnitte 135 und/oder Nachbarabschnitte 150 durch andere Verkehrsteilnehmer 172 sehr gut vorhergesagt werden kann.
-
Denkbar ist auch, dass die Zuordnungseinheit 160 nicht einer Einheit des Verkehrsteilnehmers 100, hier also beispielsweise des Fahrzeugs, untergebracht ist, sondern beispielsweise auch in der zentralen Rechnereinheit 170 angeordnet sein kann. Alternativ oder zusätzlich kann auch die Schnittstelle 115 in der zentralen Rechnereinheit 170 angeordnet sein. Des Fall wären somit die Verkehrsraumdaten 110 und/oder die Positionsdaten 155 und gegebenenfalls auch die mit dem Nachbarannotationsdatensatz 175 versehenen Nachbarverkehrsraumdaten 145, zusammen mit weiteren Informationen wie beispielsweise dem Höhenprofil 167, der Silhouette und/oder der Verkehrsteilnehmerklasse 168 des Verkehrsteilnehmers 100 an die zentrale Rechnereinheit 170 zu übertragen, soweit diese Daten in der zentralen Rechnereinheit 170 nicht schon für den Verkehrsteilnehmer 100, speziell in dessen aktuellen Position, vorliegenden.
-
2 zeigt eine schematische Arbeitsweise der Zuordnungseinheit 160 mit dem Klassifikator 178 gemäß einem weiteren Ausführungsbeispiel. Der Klassifikator 178 ist hierbei beispielsweise als Modul mit der Funktion einer künstlichen Intelligenz ausgebildet. Dieser Zuordnungseinheit 160 mit dem Klassifikator 178 wird dann ein Parametersatz zugeführt, der beispielsweise Informationen über die Fahrzeugform des Verkehrsteilnehmers 100 aus 1 enthält, gegebenenfalls in der Form des Höhenprofils 167 oder der Silhouette des Verkehrsteilnehmers 100. Zusätzlich nun können auch weitere Daten wie beispielsweise die Verkehrsraumdaten 110 oder die Positionsdaten 155 entsprechend der Darstellung aus 1 der Zuordnungseinheit 160 mit dem dem Klassifikator 178 als Sensordaten zugeführt werden. Der Klassifikator 178 oder die Zuordnungseinheit 160 kann dann annotierten Verkehrsraumdaten 105 ausgeben, die einer 3D-Darstellung des durch den Verkehrsteilnehmer 100 tatsächlich belegten Raums entspricht oder eine solche Darstellung repräsentieren. Zusätzlich können auch durch die Zuordnungseinheit 160, speziell hier den Klassifikator 178, die mit den Nachbarannotationsdatensätzen 175 versehenen Nachbarverkehrsraumdaten 145, die dann in der 1 mit dem Bezugszeichen 180 versehen wurden, ausgegeben werden, die bei einer 3D-Darstellung einem Freiraumvolumen des Verkehrsraums 130 entspricht, das von dem Verkehrsteilnehmer 100 und einem anderen Verkehrsteilnehmer 172 genutzt werden kann.
-
Zusammenfassend ist anzumerken, dass ein wichtiges Ziel des hier vorgestellten Ansatzes darin gesehen werden kann, den temporal traversierbaren/befahrbaren/begehbaren Freiraum (als von einem Verkehrsteilnehmer benutzbaren Verkehrsraum) beispielsweise mit Hilfe von einem Klassifikator wir einem neuronalen Netzen zu approximieren, ohne dafür manuell annotierte Daten zu benötigen. Ein wichtiger Aspekt des hier vorgestellten Ansatzes ist es, den Bereich, in dem sich ein dynamisches Objekt als Verkehrsteilnehmer (z.B. Fahrzeug oder Fußgänger) bewegen kann ohne manuelle Annotationsdaten zu berechnen. Dazu werden beispielsweise automatisch aufgezeichnete Daten wie die Verkehrsraumdaten, die Positionsdaten, wie Odometriedaten und Fahrzeugparameter, wie die Fahrzeugform genutzt. Ein weiterer wichtiger Aspekt kann insbesondere darin gesehen werden, wie man ein solches Netz oder einen solchen Klassifikator trainiert. Es kann mit dem hier vorgestellten Ansatz somit gemäß einem Ausführungsbeispiel eine optimale automatische Annotation des temporal traversierbaren Freiraumes von dynamischen Objekten beispielsweise mit tiefen neuronalen Netzen als künstlicher Intelligenz realisiert werden.
-
Die Vorteile der Verwendung eines Ausführungsbeispiels des hier vorgestellten Ansatzes können wie folgt zusammengefasst werden:
- - Es ist kein „label noise“ durch menschliche Annotationsfehler mehr zu erwarten.
- - Es kann eine maximal mögliche Annotationsdatenqualität erreicht werden.
- - Es ist eine Beschränkung der Annotationskosten auf das Aufnehmen von Sequenzen (Beliebiger Sensor) möglich.
- - Es ist keine Generierung von Annotationen erforderlich, die keinen Nutzen haben, wie Freiräume, in welche z. B. ein Verkehrsteilnehmer wie beispielsweise ein Fahrzeug nicht passt.
- - Es ist keine Generierung von Annotationen erforderlich, die eine Gefährdungssituation herstellen, wie z. B. ein zu nahes Fahren an einem Fußgänger, der sich noch in Bewegung befindet. Der Fahrer des Fahrzeuges wird während der Sequenzaufnahme einen entsprechenden Sicherheitsabstand einplanen.
- - Es besteht keine Notwendigkeit der Auswertung eines optischen Flusses, da die Bewegung anderer dynamischer Objekte schon in der Freiraums-Berechnung berücksichtigt sind.
-
Ohne Beschränkung der Allgemeinheit kann ein Ausführungsbeispiel des hier vorgestellten Ansatzes anhand des Falls von Fahrzeugen als Verkehrsteilnehmers näher beschrieben werden. Dabei soll nicht auf die Darstellung der 3D-Annotationen eingegangen werden, die auf vielfältigen bekannten Strategien basieren kann (z. B. Voxel). Das Vorgehen kann mit beliebigen dynamischen Objekten praktiziert werden.
- 1. Zunächst erfolgt eine Aufnahme von Sequenz und Fahrzeugdaten/Odometriedaten, hier beispielsweise der Verkehrsraumdaten und der Positionsdaten. Desweiteren kann für jedes Fahrzeug, das zum Einfahren von Annotationsdaten genutzt wird wie in der Darstellung aus der 1 der Verkehrsteilnehmer 100 ein Fahrzeugmodell (hier das Höhenprofil 167 oder die Silhouette, evtl. in Verbindung mit der Verkehrsteilnehmerklasse 168), da das Freiraumvolumen davon abhängig ist.
- 2. Berechne für jedes Bild (hier beispielsweise aus den Verkehrsraumdaten 110 aus der Kamera 125) das Volumen, welches das Fahrzeug als Verkehrsteilnehmer 100 im weiteren Verlauf einnehmen wird, also welchen Abschnitt 135 des Verkehrsraums 130 es benutzen wird (die entspricht der Volumentrajektorie der Bewegung des Verkehrsteilnehmers 100). Dies ist möglich durch die Nutzung der Odometriedaten. Alternativ kann die gesuchte Trajektorie auch mit Bildverarbeitungsmitteln ermittelt werden, also durch eine Auswertung der von der Kamera 120 gelieferten bilddatenn (Stichwort: „visual odometry“). Damit lässt sich für jede Sequenz und dem entsprechenden Fahrzeug, für jedes Bild, einen Bereich/Abschnitt 135, in dem sich das Fahrzeug sicher bewegen kann, weil es sich dort bewegt hat. Was aber ermittelt werden soll, ist der Bereich, in welchem sich das Fahrzeug als Verkehrsteilnehmer sicher bewegen kann, welchen man mit diesen Daten approximieren kann. Dies entspricht in der 1 den mit Annotationen versehenen Verkehrsraumdaten 105 gemeinsam mit den mit dem Nachbarannotationsdatensatz 175 versehenen Nachbarverkehrsraumdaten 145.
- 3. In einer sehr einfachen Variante wird nur der aktuelle Fahrschlauch als befahrbare Fläche dargestellt und es werden Bereiche ausgeschlossen, die ein anderer Fahrer eventuell befahren hätte. Dieses Problem lässt sich lösen, indem bei jeder Annotation nun zur Trainingszeit nur den Fehler des Trajektorien-Volumens zurückpropagiert wird und für den Rest des 3D-Raumes kein Fehler zurückpropagiert wird. Es sollte dann nur dafür gesorgt werden, dass kein relevantes Wissen aus den Gewichten des Netzwerkes bzw. Klassifikators 178 bzw. neuronalen Netzes gelöscht werden. Das kann passieren, da die Gewichte nur bezüglich des Trajektorien-Volumens geändert werden. Um dieses Problem zu lösen kann beispielsweise die Lernrate des (neuronalen) Netzwerkes als Klassifikator 178 massiv reduziert werden, was der einfachste Ansatz wäre, oder es werden Methoden zum Verhindern von „catastrophic forgetting“ genutzt.
-
Das trainierte Netz liefert nun für jedes Bild bzw. jeden Abschnitt 135 des Verkehrsraums 130 den befahrbaren Raum.
-
3 zeigt ein Ablaufdiagramm eines Ausführungsbeispiels eines Verfahrens 300 zum Bereitstellen von mit zumindest einer Annotation versehenen Verkehrsraumdaten. Das Verfahren 300 umfasst einen Schritt 310 des Einlesens von Verkehrsraumdaten, die je einen Abschnitt eines von einem Verkehrsteilnehmer benutzten Verkehrsraums repräsentiert und Einlesen von automatisch erfassten Positionsdaten des Verkehrsteilnehmers in dem Verkehrsraum. Ferner umfasst das Verfahren 300 einen Schritt 320 des Zuordnens je zumindest eines Annotationsdatensatzes zu den Verkehrsraumdaten, an denen sich der Verkehrsteilnehmer entsprechend den erfassten Positionsdaten aktuell befindet, um die annotierten Verkehrsraumdaten zu erhalten, die eine Benutzungs- und/oder Bewegungsmöglichkeit des durch die Verkehrsraumdaten repräsentierten Verkehrsraums durch einen anderen Verkehrsteilnehmer zu signalisieren, insbesondere wobei die Annotationsdatensatz unter Verwendung eines Verfahrens des maschinellen Lernens und/oder eines auf einem maschinellen Lernalgorithmus basierenden Klassifikators generiert wurden.
-
4 zeigt ein Ablaufdiagramm eines Ausführungsbeispiels eines Verfahrens 400 zur Bewertung einer Nutzung von Abschnitten des von einem Verkehrsteilnehmer zu nutzenden Verkehrsraums. Das Verfahren 400 umfasst einen Schritt 410 des Einlesens von zumindest mit einer Annotation versehenen Verkehrsraumdaten, die mit einem Verfahren gemäß einem der vorangegangenen Ansprüche erstellt wurden und von Positionsdaten, die eine aktuelle oder zukünftige Position des Verkehrsteilnehmers repräsentieren. Ferner umfasst das Verfahren 400 einen Schritt 420 des Prüfens einer Nutzungsmöglichkeit von zumindest einem Abschnitt des Verkehrsraums durch den Verkehrsteilnehmer unter Verwendung eines Annotationsdatensatzes und der Positionsdaten.
-
5 zeigt ein Ablaufdiagramm eines Ausführungsbeispiels eines Verfahrens 500 zum Anlernen eines auf einem maschinellen Lernalgorithmus basierenden Klassifikators. Das Verfahren 500 umfasst einen Schritt 510 des Einlesens von ersten Verkehrsraumdaten, die je einen Abschnitt eines von einem ersten Verkehrsteilnehmer benutzten oder zu benutzenden Verkehrsraums repräsentiert sowie von automatisch erfassten ersten Positionsdaten des ersten Verkehrsteilnehmers und Einlesen von zweiten Verkehrsraumdaten, die je einen Abschnitt eines von einem zweiten Verkehrsteilnehmer benutzten oder zu benutzenden Verkehrsraums repräsentiert sowie von automatisch erfassten zweiten Positionsdaten des zweiten Verkehrsteilnehmers. Ferner umfasst das Verfahren 500 einen Schritt 520 des Trainierens von Elementen des Klassifikators unter Verwendung der ersten und zweiten Verkehrsraumdaten und der ersten und zweiten Positionsdaten. Unter einem Element des Klassifikators kann vorliegend beispielsweise ein Knoten, speziell eines neuronalen Netzes verstanden werden.
-
Auch durch derartige Ausführungsformen des hier vorgestellten Ansatzes können die hier beschriebenen Vorteile schnell und effizient realisiert werden.
-
Umfasst ein Ausführungsbeispiel eine „und/oder“-Verknüpfung zwischen einem ersten Merkmal und einem zweiten Merkmal, so ist dies so zu lesen, dass das Ausführungsbeispiel gemäß einer Ausführungsform sowohl das erste Merkmal als auch das zweite Merkmal und gemäß einer weiteren Ausführungsform entweder nur das erste Merkmal oder nur das zweite Merkmal aufweist.