-
HINTERGRUND
-
Beispielsweise wurden für selbstfahrende oder autonome Fahrzeuge für den Betrieb auf der Straße ohne Einwirkung eines Fahrers oder einer anderen externen Steuerung voll automatisierte Antriebssysteme entworfen. Der Betrieb autonomer Fahrzeuge erfordert Gewissheit hinsichtlich der Position und Geschwindigkeit sowohl des autonomen Fahrzeugs als auch von Objekten nahe dem autonomen Fahrzeug, wie anderer Fahrzeuge im Umgebungsbereich. Bestehende Verfahren der Objekterkennung und Bahnverfolgung zur Berechnung der Position und Geschwindigkeit anderer Fahrzeuge in Bezug auf das autonome Fahrzeug, beispielsweise basierend auf der Verarbeitung von Kamerabildern, Lidar- oder Radarrückmeldungen, oder anderen sensorbasierten Daten, weisen nicht die Reichweite, Verarbeitungsgeschwindigkeit oder die hochgradige Genauigkeit auf, die für den Betrieb eines autonomen Fahrzeugs an einer Kreuzung erforderlich sind.
-
KURZFASSUNG DER ERFINDUNG
-
Ein System, eine Vorrichtung und Verfahren zur Objekterfassung werden offenbart. Das Objekterfassungssystem kann robuste Erfassungsalgorithmen, langlebige Bahnverfolgungsalgorithmen und Kartendaten einschließlich Fahrspurinformation kombinieren, um exakt die Position eines Objekts, beispielsweise eines sich bewegenden Fahrzeugs, zu erfassen. Das Objekterfassungssystem kann einen Pfad oder Strahl zwischen dem autonomen Fahrzeug und dem erfaßten Objekt unter Benutzung von Bilddaten berechnen und diesen Pfad auf die Kartendaten vorausberechnen bzw. projizieren, um zu erwartende Positionen für das erfaßte Objekt festzustellen. Die aktuelle Position des erfaßten Objekts kann dann durch Vorausberechnung bzw. Projizierung der zu erwartenden Position längs des Pfades zurück auf das Bild zum Vergleich und zur Feststellung des geringsten Fehlers berechnet werden.
-
Bei einer Ausführungsform wird ein Objekterfassungssystem offenbart. Das System schließt einen oder mehrere auf einem Fahrzeug angeordnete Sensoren ein, sowie eine Berechnungsvorrichtung, die mit dem einen oder den mehreren Sensoren verbunden ist. Die Berechnungsvorrichtung schließt einen oder mehrere Prozessoren zur Steuerung der Aktionen der Berechnungsvorrichtung ein, und einen Speicher zur Speicherung von Daten und Programmbefehlen, die von dem einen oder den mehreren Prozessoren benutzt werden. Der eine oder die mehreren Prozessoren sind so gestaltet, daß sie im Speicher gespeicherte Befehle ausführen, um: von dem einen oder den mehreren Sensoren Bilddaten zu empfangen, die für ein Bild repräsentativ sind; ein Objekt auf dem Bild zu erfassen; einen Pfad zu identifizieren, der sich auf dem Bild vom Fahrzeug zum erfaßten Objekt erstreckt; Abrufen von Kartendaten einschließlich einer Fahrspurinformation; Vergleichen des Pfads mit einer Darstellung der Fahrspurinformationen; und Feststellen der Position des erfaßten Objekts auf der Basis eines Vergleichs von Pfad und Bild.
-
Bei einer anderen Ausführungsform wird ein computergestütztes Verfahren für autonome Navigation offenbart. Das Verfahren schließt den Empfang von für ein Bild repräsentativen Bilddaten von einem oder mehreren auf einem Fahrzeug angeordneten Sensoren; die Erfassung eines Objektes auf dem Bild; die Identifizierung eines Pfades, der sich auf dem Bild vom Fahrzeug zu dem erfaßten Objekt erstreckt; das Abrufen von Kartendaten einschließlich einer Fahrspurinformation; das Vergleichen des Pfads mit einer Darstellung der Fahrspurinformationen; und Feststellen der Position des erfaßten Objekts auf der Basis eines Vergleichs von Pfad und Bild ein.
-
Bei einer anderen Ausführungsform wird eine Berechnungsvorrichtung offenbart. Die Berechnungsvorrichtung schließt einen oder mehrere Prozessoren zur Steuerung der Aktionen der Berechnungsvorrichtung ein, und einen Speicher zur Speicherung von Daten und Programmbefehlen, die von dem einen oder den mehreren Prozessoren benutzt werden. Der eine oder die mehreren Prozessoren sind so gestaltet, daß sie im Speicher gespeicherte Befehle ausführen, um: von dem einen oder den mehreren an einem Fahrzeug angeordneten Sensoren Bilddaten zu empfangen, die für ein Bild repräsentativ sind; ein Objekt auf dem Bild zu erfassen; einen Pfad zu identifizieren, der sich auf dem Bild vom Fahrzeug zum erfaßten Objekt erstreckt; Abrufen von Kartendaten einschließlich einer Fahrspurinformation; Vergleichen des Pfads mit einer Darstellung der Fahrspurinformation; und Feststellen der Position des erfaßten Objekts auf der Basis eines Vergleichs von Pfad und Bild.
-
KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
Die Beschreibung bezieht sich auf die beigefügten Zeichnungen, in denen gleiche Bezugszahlen in den verschiedenen Ansichten sich auf gleiche Teile beziehen, und in welchen
-
1 ein Blockdiagramm einer Berechnungsvorrichtung ist;
-
2 eine Draufsicht auf ein autonomes Fahrzeug an einer beispielhaften Kreuzung bzw. einem beispielsweisen Knotenpunkt einschließlich der Berechnungsvorrichtung der 1 zeigt;
-
3 eine beispielsweise Kartendarstellung des autonomen Fahrzeugs und den Knotenpunkts der 2 zeigt;
-
4 eine Projektion der Kartendarstellung der 3 auf ein beispielsweises Bild einer Seite des Knotenpunkts der 2 zeigt;
-
5 ein anderes beispielweises Bild des Knotenpunkts der 2 und 3 zeigt;
-
6 eine Projektion eines Pfads 600, der sich vom autonomen Fahrzeug 200 bis zu einem erfaßten Objekt erstreckt, auf eine andere beispielsweise Kartenrepräsentation der Kreuzung der 2 und 3 zeigt;
-
7 eine Projektion zu erwartender Positionen eines erfaßten Objekts von der Kartenrepräsentation der 6 auf das Bild der 5 zeigt; und
-
8 ein logisches Ablaufdiagramm eines von der Berechnungsvorrichtung der 1 durchgeführten Verfahrens zeigt.
-
DETAILLIERTE BESCHREIBUNG
-
Ein Objekterfassungssystem und Verfahren und Vorrichtungen zur Anwendung des Systems werden unten beschrieben. Bei einem das System benutzenden Verfahren können ein Sensor oder mehrere Sensoren, die auf einem autonomen Fahrzeug angeordnet sind, für ein Bild, beispielsweise einer Seite einer Kreuzung von zwei oder mehr Straßen, repräsentative Bilddaten empfangen. Eine das System umsetzende Berechnungsvorrichtung kann auf dem Bild ein Objekt erfassen, beispielsweise ein sich dem autonomen Fahrzeug näherndes oder sich von diesem entfernendes, bewegliches Fahrzeug. Die Berechnungsvorrichtung kann einen Pfad identifizieren, der sich auf dem Bildschirm vom autonomen Fahrzeug bis zum erfaßten Objekt erstreckt und kann Kartendaten abrufen, die eine Fahrspurinformation einschließen, um beispielsweise die Kreuzung darzustellen, auf der das autonome Fahrzeug positioniert ist. Die Berechnungsvorrichtung kann beispielsweise den Pfad mit einer Darstellung der Fahrspurinformation vergleichen, um erwartete Positionen des erfaßten Objekts zu ermitteln und kann die aktuelle Position des erfaßten Objekts auf der Basis eines Vergleichs von Pfad und Bild ermitteln.
-
Die 1 ist ein Blockdiagramm einer Berechnungsvorrichtung 100. Die Berechnungsvorrichtung 100 kann jede Art einer im Fahrzeug eingefügten, tragbaren, ortsfesten, oder anderen Form einer einzelnen Berechnungsvorrichtung sein, oder kann aus mehreren Berechnungsvorrichtungen zusammengesetzt sein. Die CPU 102 in der Berechnungsvorrichtung 100 kann eine konventionelle Zentraleinheit oder jede andere Art von Vorrichtung, oder mehreren Vorrichtungen sein, die geeignet sind, Informationen zu beeinflussen oder zu verarbeiten. Der Speicher 104 in der Berechnungseinheit 100 kann ein Direktzugriffspeicher (RAM) oder jede andere geeignete Art von Speichervorrichtung sein. Der Speicher 104 kann Daten 106 enthalten, auf die Zugriff durch die einen Bus 108 benutzende CPU 102 erfolgt. Der Speicher 104 kann auch ein Betriebssystem 110 enthalten und installierte Anwendungen 112, die installierten Anwendungen 112 schließen Programme ein, die der CPU 102 gestatten, das oben beschriebene, auf Bild und Karte basierende Erfassungsverfahren durchzuführen.
-
Die Berechnungseinheit 100 kann auch sekundäre, zusätzliche oder externe Speicher 114, beispielsweise eine Speicherkarte, einen Speicherstick, oder jede andere Form eines computerlesbaren Mediums einschließen. Die installierte Anwendung 112 kann im Ganzen oder teilweise im sekundären Speicher 114 gespeichert und als für die Verarbeitung erforderlich in den Speicher 104 geladen sein. Die Berechnungsvorrichtung 100 kann auch mit einem oder mehreren Sensoren 116 verbunden sein. Die Sensoren 116 können Daten und/oder Signale zur Verarbeitung durch ein Trägheitsnavigationssystem (IMU), ein Koppelnavigationssystem, ein globales Satellitennavigationssystem (GNSS), ein optisches Erkennungs- und Entfernungsmeßsystem (LIDAR), eine Radarsystem, ein Sonarsystem, ein Bildsensorsystem, oder irgendeine andere Art von System zur Erfassung oder Ermittlung von Objekten, wie das autonome Fahrzeug, andere Fahrzeuge, Fußgänger, oder andere lokalisierte Positionsdaten und/oder Signale empfangen, erfassen oder zur Verfügung stellen und entsprechende Daten und/oder Signale an die CPU 102 ausgeben.
-
Die Sensoren 16 können auch Daten erfassen, die repräsentativ für Veränderungen in der x-, y- und z-Achsenposition, der Geschwindigkeit, der Beschleunigung des-Drehwinkels und der Drehwinkelgeschwindigkeit des Fahrzeugs sind. Falls die Sensoren 116 Daten für ein Koppelnavigationssystem erfassen, können Daten bezogen auf die Raddrehzahl, die Fahrtentfernung, den Lenkwinkel, und die Lenkwinkeländerungsgeschwindigkeit erfaßt werden. Falls die Sensoren 116 Daten für ein GNSS erfassen, kann ein Empfänger die Fahrzeugposition und -geschwindigkeit geschätzt in globalen Koordinaten berechnen. Eine Mehrzahl von Satelliten kann benutzt werden, um die Position und Geschwindigkeit des autonomen Fahrzeugs unter Nutzung der dreidimensionalen Triangulation und der Zeitabschätzung abzuschätzen. Falls die Sensoren 116 Daten für ein LIDAR-System erfassen, können Ortungsdaten, die die Intensität und das Reflexionsvermögen von Echos aus dem das Fahrzeug umgebenden Bereich betreffen, erfaßt werden. Falls die Sensoren 116 Bilder erfassen, beispielsweise durch monokulare Kameras, kann eine Zeitfolge von Bildern erfaßt und angewendet werden, um die Position und Geschwindigkeit des Objekts nahe dem autonomen Fahrzeug abzuschätzen.
-
Bei den unten beschriebenen Beispielen können die Sensoren 116 zumindest Bilder der Umgebung des autonomen Fahrzeugs, Daten für ein Koppelnavigationssystem, oder andere Systeme erfassen, die die Fahrzeuggeschwindigkeit, -beschleunigung, -verzögerung, -position und -ausrichtung, Signale für ein GNSS- oder anderes System, das die Position und Geschwindigkeit des autonomen Fahrzeugs feststellt und Daten für ein LIDAR-System, Radar-System, oder ein anderes System, das den Fahrzeugabstand von Straßenlinien (z. B. Fahrbahnmarkierungen oder Straßenbegrenzungen), Hindernissen, anderen Fahrzeugen, oder anderen Umgebungsmerkmalen, einschließlich Verkehrsampeln oder Verkehrsschildern misst, erfassen.
-
Die 2 zeigt eine Draufsicht auf ein autonomes Fahrzeug 200 einschließlich der Berechnungsvorrichtung 100 der 1 an einer beispielhaften Kreuzung bzw. einem beispielhaften Knotenpunkt. Das autonome Fahrzeug 200 wird von oben so gesehen, daß es an einem von zwei Straßen 202, 204 gebildeten Knotenpunkt mit drei Abzweigungen gestoppt ist. Die Straße 202, die aktuell vom autonomen Fahrzeug 200 befahren wird, schließt zwei Fahrspuren 206, 208 ein. Die kreuzende bzw. querende Straße 204 schließt auch zwei Fahrspuren 210, 212 ein. Bei diesem Beispiel ist jede der Fahrspuren 206, 208, 210, 212 durch eine gestrichelte Mittellinie und einen Rand einer der Straßen 202, 204 identifiziert. Obwohl bei diesem Beispiel eine Gesamtheit von 4 Fahrspuren 206, 208, 210, 212 am Knotenpunkt der Straßen 202, 204 gezeigt ist, kann das autonome Fahrzeug 200 Knotenpunkte mit jeder möglichen Anzahl an Fahrspuren mit jeder möglichen Art von Fahrbahnteilern bewältigen.
-
Die Berechnungsvorrichtung 100 der 1 kann, wie in 2 gezeigt, im autonomen Fahrzeug 200 angeordnet sein, oder entfernt vom autonomen Fahrzeug 200 an einem anderen (nicht gezeigten) Ort. Falls die Berechnungsvorrichtung 100 entfernt angeordnet ist, kann das autonome Fahrzeug 200 die Fähigkeit der Kommunikation mit der Berechnungsvorrichtung 100 besitzen. Das autonome Fahrzeug 200 kann auch eine Mehrzahl von Sensoren besitzen, wie die unter Bezugnahme auf 1 beschriebenen Sensoren 116. Einer oder mehrere der Sensoren 116 können so gestaltet sein, daß sie Änderungen der Geschwindigkeit und Beschleunigung, der Raddrehzahl und der Entfernung für den Gebrauch durch einen Kalmanfilter erfassen, um die Position und Ausrichtung des autonomen Fahrzeugs 200, den Lenkwinkel für ein Koppelnavigationssystem, Bilder zur Verarbeitung durch einen Bildsensor, die Fahrzeugposition in globalen Koordinaten basierend auf Signalen von einer Mehrzahl von Satelliten, oder irgendwelche anderen Daten und/oder Signale, die zur Bestimmung der Geschwindigkeit und Position sowohl des autonomen Fahrzeugs 200 in Bezug auf die Umgebung, als auch anderer Fahrzeuge in der Umgebung in Bezug auf das autonome Fahrzeug 200 berechnen.
-
Die 3 zeigt eine beispielsweise Kartendarstellung des autonomen Fahrzeugs 200 und des Knotenpunkts der 2. Die Kartendarstellung kann auf Kartendaten basieren, auf die durch die Rechenvorrichtung 100 zugegriffen wurde, wobei die Kartendaten Fahrspurinformationen, wie die Anzahl der Fahrspuren, deren Positionierung und Richtung, die Breite der Fahrspuren, etc. einschließen. Eine beispielsweise Quelle der Kartendaten ist die öffentlich zugängliche Datei der Straßennetzdefinition (Route Network Definition File RNDF), es können zur Erstellung der Kartendarstellung aber auch andere Quellen von Kartendaten benutzt werden, beispielsweise ein Diagramm eines Fahrspurnetzes oder Offene Straßenkarte (OpenSreetMapTM). Der Teil der Kartendaten, der für die Kartendarstellung genutzt wird, kann beispielsweise auf der Basis der Position des autonomen Fahrzeugs 200 gewählt werden, die unter Verwendung des GNSS oder anderer Sensoren 116 bestimmt wird. Die Position des autonomen Fahrzeugs 200, wie sie durch das GNSS oder anderer Sensoren 116 berechnet wird, wird auch in der Kartendarstellung gezeigt.
-
Diese beispielsweise Kartendarstellung zeigt das autonome Fahrzeug 200 als gegenwärtig in der Fahrspur 206 des Knotenpunkts der in 2 beschriebenen Straßen 202, 204. Die Fahrspuren 206, 208, 210, 212 sind zweidimensionale Darstellungen der aktuellen, physischen Fahrspuren der Straßen in der Nähe der Position des autonomen Fahrzeugs 200. Außerdem schließt die Kartendarstellung Hinweise auf Wechselpfade ein, denen Fahrzeuge zwischen den Fahrspuren 206, 208, 210, 212 folgen können, wenn sie beispielsweise von der Fahrspur 206 zur Fahrspur 212, von der Fahrspur 212 zur Fahrspur 208, von der Fahrspur 210 zur Fahrspur 208, etc. fahren. Die Kartendarstellung der 3 kann in Verbindung mit einem von einem oder mehreren der Sensoren 116 erfaßten Bild 300 benutzt werden, um die Anzahl der Verarbeitungsschritte zu begrenzen, die bei der Durchführung der verschiedenen, in dieser Offenbarung mit Bezug auf die 4 beschriebenen Verfahren benötigt werden.
-
Die 4 zeigt eine Projektion der Kartendarstellung der 3 auf das Bild 300 einer Seite des Knotenpunkts der 2. Das Bild 300 stellt bei diesem Beispiel die linke Seite des Knotenpunkts 206, 208, 210, 212 dar und kann von einer Kamera, einem der auf dem autonomen Fahrzeug 200 angebrachten Sensoren 116 erfaßt werden. Die Position, an der das Bild 300 aufgenommen wurde, ist in den Kartendaten der 3 repräsentiert, während das Bild 300 in 4 gezeigt ist. Unter Verwendung der Kartendaten werden die Darstellungen der Fahrspuren 210, 212 in Bezug auf das autonome Fahrzeug 200 auf das Bild 300 projiziert, dargestellt durch gepunktete Linien 400, 402. Das heißt, die Fahrspur 210 wird durch die gepunktete Linie 400 und die Fahrspur 212 durch die gepunktete Linie 402 repräsentiert.
-
Wenn einmal die Fahrspuren 210, 212 in Form der gepunkteten Linien 400, 402 auf das Bild 300 projiziert sind, können Zeichenboxen, wie die Zeichenbox 406, längs der Fahrspuren 210, 212 errichtet werden. Die Zeichenboxen repräsentieren den Bereich, in dem wahrscheinlich ein Objekt längs der Fahrspuren 210, 212 vorhanden ist. Die Zeichenboxen können so errichtet sein, daß sie einen vorgegebenen Sicherheitsfaktor einschließen, der so gestaltet ist, daß er zur Erfassung von Objekten verschiedener Größe beiträgt. Wie in 4 gezeigt, sind die Zeichenboxen die dem autonome Fahrzeug 200 rechts unten im Bild 300 am nächsten sind, am größten und stellen die dem autonomen Fahrzeug 200 am engsten benachbarten Objekte dar. Die am weitesten vom autonomen Fahrzeug 200 entfernten Zeichenboxen unten links im Bild 300 sind am kleinsten und stellen die Objekte dar, die am weitesten vom autonomen Fahrzeug 200 entfernt sind, während sie noch im Bild 300 gegenwärtig sind. Einmal auf das Bild 300 projiziert, können die Zeichenboxen benutzt werden, um einen interessierenden Bereich des Bildes 300 zu definieren, das heißt einen Bereich des Bildes 300, der analysiert werden kann, um Objekte zu entdecken, beispielsweise bewegliche Objekte, die Fahrzeuge, die sich dem Knotenpunkt nähern oder sich von diesem entfernen. Die Objekterfassung wird weiter unter Bezugnahme auf 5 beschrieben.
-
Die 5 zeigt ein weiteres beispielhaftes Bild 500 der linken Seite des Knotenpunkts der 2 und 3. Auf dem Bild 500 können zwei für den Betrieb des autonomen Fahrzeugs 200 relevante Objekte visuell erfaßt werden, das sich bewegende Fahrzeug 502 und das sich bewegende Fahrzeug 504. Das sich bewegende Fahrzeug 502 nähert sich, wahrscheinlich in der Fahrspur 210, dem Knotenpunkt der 2 und 3 und das sich bewegende Fahrzeug 504 entfernt sich vom Knotenpunkt der 2 und 3 wahrscheinlich in der Fahrspur 212. Um dieses Bild 500 für die autonome Navigation zu nutzen, müssen die sich bewegenden Fahrzeuge 502, 504 und irgendwelche anderen, relevanten Objekte von der Berechnungsvorrichtung 100 festgestellt werden.
-
Verschiedene Typen von Objekterfassung können bei der Bearbeitung des Bildes 500 benutzt werden. Die Anzahl der Bearbeitungen, die zur Erfassung von Objekten erforderlich sind, kann reduziert werden, indem nur ein interessierender Bereich des Bildes 500 bearbeitet wird. Der interessierende Bereich im Bild 500 kann auf die gleiche Weise bestimmt werden, wie unter Bezugnahme auf 4 und das Bild 300 diskutiert wurde. Wenn einmal der interessierende Bereich festgestellt ist, kann ein Erfassungsalgorithmus, beispielsweise ein kaskadierender Detektor mit einer einbezogenen Gleitfenstertechnik, der eine Graphikbearbeitungseinheit (GPU) einschließt, benutzt werden, um schnell Objekte im Bild 500 zu erfassen. Bei einem beispielsweisen kaskadierten Detektor werden mögliche Objekte auf der Basis von Histogrammen gerichteter Gradienten (HOG) in vorbereitenden Phasen und Interaktionen möglicher Kombinationen von HOG-basierten Merkmalen in späteren Phasen erfaßt. Die Anwendung eines interessierenden Bereichs in Kombination mit dem Erfassungsalgorithmus zur Objekterfassung beim Bild 500 kann die Berechnungszeit auf bis zu zwei Drittel reduzieren. Außerdem kann der Erfassungsalgorithmus beispielsweise bei jeweils zwei oder drei Bildfeldern statt an jedem Bildfeld angewandt werden, um die Berechnungszeit weiter zu reduzieren. Eine schnelle Berechnungszeit ist während des Betriebs des autonomen Fahrzeugs 200 erwünscht.
-
Wenigstens ein Ergebnis des von der Berechnungsvorrichtung 100 ausgeführten Objekterfassungsalgorithmus, die Position des erfaßten Objekts, kann im Bild 500 in Form einer Zeichenbox 506 dargestellt werden. Beim Beispiel in 5 umgibt die Zeichenbox 506 das sich bewegende Fahrzeug 502 und zeigt die Position des sich bewegenden Fahrzeugs 502 auf dem Bildschirm 500 an. Zudem kann die Bewegungsrichtung des sich bewegenden Fahrzeugs 502 auf der Basis der visuellen Attribute des sich bewegenden Fahrzeugs 502 auf dem Bildschirm 500 festgestellt werden. Beispielsweise kann die Gegenwart von Frontscheinwerfern, eines Kühlergrills, die Position von Seitenspiegeln, oder anderer, am sich bewegenden Fahrzeug 502 vorhandener Merkmale anzeigen, daß die Bewegungsrichtung des sich bewegenden Fahrzeugs 502 derart ist, daß es sich dem autonomen Fahrzeug 200 nähert, das das Bild 500 aufgenommen hat.
-
Die Bewegungsrichtung eines erfaßten Objekts kann auch durch Vergleich des erfaßten Objekts mit beispielsweise der Position der das sich bewegende Fahrzeug 502 umgebenden Zeichenbox 506 in zwei oder mehr zeitlich aufeinanderfolgenden Bildern bestimmt werden. Die Richtung, in der sich die Zeichenbox 506 zwischen den zeitlich aufeinanderfolgenden Bildern bewegt, kann die Bewegungsrichtung des sich bewegenden Fahrzeugs 502 anzeigen. In ähnlicher Weise kann die Geschwindigkeit des erfaßten Objekts auf der Basis eines Vergleichs der Position des erfaßten Objekts in zwei oder mehr zeitlich aufeinanderfolgenden Bildern bestimmt werden. Die Wahrnehmung der Bewegungsrichtung und der Geschwindigkeit des erfaßten Objekts, wie eines sich bewegenden Fahrzeugs 502 ist bei der Bahnverfolgung des erfaßten Objekts nützlich, wenn es sich in Bezug auf das autonome Fahrzeug 200 bewegt.
-
Die Feststellung der Position, Richtung und Geschwindigkeit eines sich bewegenden Objekts kann alles Teil eines persistenten Bahnverfolgungsschemas sein. Das persistente Bahnverfolgungsschema kann auch ein adaptives Umschalten zwischen mehreren Bahnverfolgungsalgorithmen, beispielsweise einem Algorithmus wie dem „flock of trackers”-Algorithmus und dem „learn and re-direct”-Algorithmus einschließen. Das Umschalten zwischen Bahnverfolgungsalgorithmen kann die Qualität der Bahnverfolgung verbessern und die Gesamtberechnungskosten der persistenten Bahnverfolgung reduzieren. Weitere Verbesserungen der Objekterfassung und der Bahnverfolgungsgenauigkeit werden unter Bezugnahme auf die 6 und 7 beschrieben.
-
Die 6 zeigt eine Projektion des sich vom autonomen Fahrzeug 200 zu einem erfaßten Objekt erstreckenden Pfads 600 auf eine andere beispielhafte Kartendarstellung des Knotenpunkts der 2 und 3. Die Kartendarstellung in 6 ist eine teilweise Draufsicht auf den Knotenpunkt der 2 und 3, die auf den Kartendaten basiert sein kann, die durch die Berechnungsvorrichtung 100 erhalten werden, die zumindest Fahrspurinformationen einschließen, die sich speziell auf den dem autonomen Fahrzeug 200 benachbarten Bereich des Knotenpunkts beziehen. In dieser beispielhaften Kartendarstellung werden die Fahrspuren 210, 212 jeweils durch zwei Abschnitte oder Hälften dargestellt, um die zahlrechen, möglichen Positionen eines erfaßten Objekts innerhalb der Fahrspuren 210, 212 zu berücksichtigen. Die Anzahl der Fahrspurabschnitte kann variieren und die Kartendarstellung kann auch Abschnitte zwischen den oder außerhalb der Fahrspuren 210, 212 einschließen, um verschiedene mögliche erfaßte Objektpositionen zu berücksichtigen.
-
Der Pfad 600 wird auf der Basis der Position eines erfaßten Objekts in Bezug auf das autonome Fahrzeug 200 auf einem repräsentativen Bild erzeugt. Bei diesem Beispiel basiert der Pfad 600 auf der Position einer Zeichenbox 506 in Bezug auf den das Bild aufnehmenden Sensor 116 des autonomen Fahrzeugs 200. Der Pfad 600 wird auf die Kartendarstellung projiziert, und sobald es einmal projiziert ist, kann es mit der in der Kartendarstellung vorhandenen Fahrspurinformation verglichen werden, um beispielsweise eine oder mehrere mögliche Positionen des erfaßten Objekts auf dem Bild 500 festzustellen. Jede der möglichen Positionen des erfaßten Objekts kann als zweidimensionaler Vektor im Weltkoordinatensystem berechnet werden.
-
Beim Beispiel der 6 sind vier mögliche Positionen 602a–d basierend auf der Projektion des Pfads 600 auf die Fahrspuren 210, 212 gezeigt. Jede der möglichen Positionen 602a–d ist in einem der dargestellten Abschnitte der Fahrspuren 210, 212 gezeigt. Die möglichen Positionen 602a–d können zwischen sich überschneidenden Bereichen der Fahrspurinformation und des Pfades positioniert sein. Die Überschneidungsbereiche können sich beispielsweise dort befinden, wo die Grenzen der Fahrspurabschnitte und die Grenzen des Pfads 600 sich überschneiden. Die Grenzen des Pfads sind durch Pfeile mit unterbrochenen Linien dargestellt, die vom Bild 500 ausgehen, und die Grenzen der Fahrspurabschnitte sind durch durchgezogene Linie dargestellt, die die Fahrspuren 210, 212 kennzeichnen.
-
Die möglichen Positionen 602a–d können auch eine Darstellung von Bewegungsrichtungen, beispielsweise eine Information der Ausrichtung, einschließen. Bei der beispielhaften Kartendarstellung der 6 schließen die möglichen Positionen 602a, b in den Abschnitten der Fahrspur 210 Richtungshinweise 604a, b ein. Die Richtungshinweise 604a, b zeigen eine dem autonomen Fahrzeug 200 zugewandte Kante, die anzeigt, daß das durch diese möglichen Positionen 602a, b dargestellte, erfaßte Objekt sich auf das autonome Fahrzeug 200 zubewegt. In ähnlicher Weise schließen die möglichen Positionen 602c, d in den Abschnitten der Fahrspur 212 Richtungshinweise 604c, d ein, die anzeigen, daß sich das erfaßte Objekt sich vom autonomen Fahrzeug 200 wegbewegt. Die Richtungshinweise 604a–d können auf der Fahrspurinformation basiert sein, die den Fahrspuren 210, 212 zugeordnet sind, den visuellen Attributen des erfaßten Objekts im Bild 500, oder anderen Informationen, die unter Verwendung der oben beschriebenen Erfassungs- und Bahnverfolgungsalgorithmen erzeugt werden. Bei diesem Beispiel sind die Richtungshinweise 604a–d auf die Fahrbahninformation zur Erstellung der Kartendarstellung basiert.
-
Sowohl die Richtungshinweise 604a–d, als auch die möglichen Positionen längs des Pfads 600 sind nützlich zur Bestimmung der Position des erfaßten Objekts in Bezug auf das autonome Fahrzeug 200. Bei diesem Beispiel ist das erfaßte Objekt das sich bewegende Fahrzeug 502, wie es durch die Zeichenbox 506 auf dem Bild 500 in 5 dargestellt ist. Obwohl die Größe der Zeichenbox 506 auf dem Bild 500 die Berechnung des ungefähren Abstands vom autonomen Fahrzeug 200 zum sich bewegenden Fahrzeug 502 ermöglicht, ist diese Entfernung nicht von ausreichender Genauigkeit für die Berechnung der exakten Position des erfaßten Objekts.
-
Die 7 zeigt eine Projektion der möglichen Positionen 602a–d eines erfaßten Objekts, bei diesem Beispiel des sich bewegenden Fahrzeugs 502, von der Kartendarstellung auf das Bild 500 in 5. Um die passende Größe für jede Projektion festzustellen, wird die Entfernung vom autonomen Fahrzeug 200 zu jeder möglichen Position 602a–d durch die Berechnungsvorrichtung 100 auf der Basis des Orts jeder möglichen Position 602a–d auf der Kartendarstellung der Fahrspuren 210, 212 in 6 berechnet. Die Projektion der möglichen Positionen 602a–d auf das Bild 500 berücksichtigt diese Entfernung unter Verwendung der Größe jeder möglichen Position 602a–d. Beispielsweise erscheint die Größe der möglichen Position 602a auf dem Bild 500 am größten und die Projektion der möglichen Position 602d auf dem Bild 500 am kleinsten.
-
Durch Vergleich der Projektionen der möglichen Positionen 602a–d auf das Bild 500 kann die Berechnungsvorrichtung feststellen, daß die mögliche Position 602b die genaueste Position des sich bewegenden Fahrzeugs 502 darstellt. Jede der anderen Projektionen der möglichen Positionen 602a, 602c, 602d ist kleiner als das sich bewegende Fahrzeug 502 oder viel größer als das sich bewegende Fahrzeug 502, das heißt, die die Projektionen der möglichen Positionen 602a, 602c, 602d darstellenden Zeichenboxen passen nicht zum erfaßten, sich bewegenden Fahrzeug 502. Die Bestimmung der Position des erfaßten Objekts kann auch auf der Bewegungsrichtung des erfaßten Objekts basieren. Durch Verwendung entweder der visuellen Attribute des sich bewegenden Fahrzeugs 502 auf dem Bild 500, oder der Richtungshinweise 604a–d längs des projizierten Pfads 600 auf der Kartendarstellung in 6, oder beider, kann die Berechnungsvorrichtung 100 feststellen, daß das erfaßte Objekt sich auf das autonome Fahrzeug 200 zubewegt. Somit können die möglichen Positionen 602c, d, die anzeigen, daß sich das erfaßte Objekt vom autonomen Fahrzeug 200 wegbewegt, als mögliche, aktuelle Positionen für das erfaßte Objekt ausgeschlossen werden, bevor der abschließende Vergleich zwischen dem Pfad 600 und dem Bild 500 erfolgt.
-
Durch Feststellung auf der Basis des Vergleichs des Pfads 600 und des Bildes 500, welche der möglichen Positionen 602a–d des ermittelten Objekts die aktuelle Position ist, kann die Berechnungsvorrichtung 100 so gestaltet werden, daß sie das Minimum der Fehlerfunktion für jede der verschiedenen, möglichen Positionen 602a–d findet. Die Fehlerfunktion kann beispielsweise wie folgt definiert werden: E(p) = αEStraße(p) + βEStrahlH(p) + γEStrahlV(p) α,β,γ = Fehlergewichtungen EStra0e(p) = minrcStraße(|p – r|) EStrahlH(p) = |p – c + (p·v)v| EStrahlV(p) = |p·v) – d|
- p
- = Zentrum der möglichen Position 602a–d
- r
- = Position des Wegpunkts
- c
- = Hauptpunkt des Sensors 116 (Kamera)
- v
- = normalisierte Richtung des Pfades 600
- d
- = Abstand zwischen der Kamera und der möglichen Position 602a–d
-
Bei der obigen Fehlerfunktion kann ein großer Wert von α eine starke Einschränkung der Form der Straße 204 bedingen. Außerdem kann die Fehlerfunktion viele örtliche Minima aufweisen, abhängig von der Gestalt der Straße 204 und der Richtung des Pfads 600. Bei der Bestimmung der aktuellen Position des erfaßten Objekts auf der Basis der möglichen Positionen 602a–d erweist sich die Richtung des Pfads 600 genauer als beispielsweise die einfache Berechnung der Entfernung zur Zeichenbox 506 im aufgenommenen Bild 500.
-
Der bei den obigen Ausführungsformen beschriebene Objekterfassungs- und Spurverfolgungsalgorithmus kombiniert die Objekterfassung, die beständige Spurverfolgung und die Kartendaten einschließlich der Fahrspurinformation, um die aktuelle Position eines erfaßten Objekts für den Gebrauch bei der autonomen Navigation zu bestimmen, beispielsweise des sich bewegenden Fahrzeugs 502 im in den 5 und 7 beschriebenen Bild 500. Der Gebrauch der Möglichkeiten der Berechnungsvorrichtung 100 kann durch Begrenzung der Verarbeitung des Bilds 500 auf einen interessierenden Bereich optimiert werden, wenn der Erfassungs- und Spurverfolgungsalgorithmus ausgeführt wird. Der Erfassungs- und Spurverfolgungsalgorithmus kombiniert robuste Erfassung und andauernde Spurverfolgung zur Verbesserung der Erfassungsqualität und zur Senkung der Berechnungskosten.
-
Die 8 zeigt ein logisches Ablaufdiagramm eines von der Berechnungsvorrichtung nach 1 ausgeführten Verfahrens 800, wobei die Berechnungsvorrichtung 100 Bilddaten zur Darstellung eines Bildes von einem oder mehreren Sensoren empfangen kann. Beispielsweise können Bilder 300, 500 der 4, 5 und 7 von einer monokularen Kamera aufgenommen werden, die als einer der Sensoren 116 dient, die am autonomen Fahrzeug 200 der 2, 3 und 6 angebracht sind. Die Bilddaten, die durch den einen oder die mehreren Sensoren aufgenommen werden, können durch die Berechnungsvorrichtung 100 analysiert werden, um beim Schritt 804 des Verfahrens 800 ein Objekt auf dem Bild zu erfassen. Der Algorithmus zur Erfassung des Objekts kann die Bearbeitung der Bilddaten durch einen kaskadierten Detektor einschließen, wie dies vorher in Bezug auf die 5 beschrieben wurde. Beispielsweise kann das sich bewegende Fahrzeug 502 im Bild 500 erfaßt werden und die Zeichenbox 506 kann dem sich bewegenden Fahrzeug 502 als repräsentativ für die Position des sich bewegenden Fahrzeugs 502 im Bild 500 zugeordnet werden. Der Algorithmus zur Erfassung des Objekts kann auch auf einen interessierenden Bereich innerhalb des Bilds beschränkt werden, um das erforderliche Berechnungsverfahren zu beschränken, wie in Bezug auf die 4 beschrieben.
-
Beim Schritt 806 des Verfahrens 800 kann die Berechnungsvorrichtung 100 einen Pfad identifizieren, der sich auf dem Bild vom autonomen Fahrzeug 200 zum erfaßten Objekt erstreckt. Beispielsweise kann der Pfad 600 so berechnet werden, daß er sich von der Position des autonomen Fahrzeugs 200 zur Position des sich bewegenden Fahrzeugs 502 in dem zweidimensionalen Koordinatenraum erstreckt, der, wie in 5 gezeigt, dem Bild 500 zugeordnet ist. Beim Schritt 808 des Verfahrens 800 kann die Berechnungsvorrichtung 100 Kartendaten einschließlich Fahrspurinformation, wie die Anzahl der Fahrspuren und die Richtung jeder Fahrspur, abrufen. Die Kartendaten können beispielsweise vom Speicher 104 oder vom Speicher 114 der Berechnungsvorrichtung 100, einer externen Quelle von Kartendaten, wie der RNDF, einem anderen Diagramm des Fahrspurnetzes, oder der OpenSreetMapTM abgerufen werden,
-
Beim Schritt 810 des Verfahrens 800 kann die Berechnungsvorrichtung 100 den Pfad, z. B. den Pfad 600, mit einer Repräsentation der Fahrspurinformation, z. B. die Draufsicht auf die Fahrspuren 210, 212 der 6, vergleichen. Der Vergleich des Pfads mit der Repräsentation der Fahrspurinformation kann die Feststellung einer oder mehrerer möglicher Positionen des erfaßten Objekts auf dem Bild einschließen. Beispielsweise sind die Orte der möglichen Positionen 602a–d in der Repräsentation der Fahrspurinformation der 6 jeweils so gestaltet, daß sie zwischen sich überschneidenden Bereichen der Fahrspurinformation und des Pfads 600 liegen, wenn der Pfad 600 auf die Fahrspurinformation projiziert wurde. Bei diesem Beispiel schließen die Fahrspuren 210, 212 jeweils zwei Fahrspurabschnitte ein. Die in ausgezogenen Linien dargestellten Begrenzungen der Fahrspurabschnitte können die in durchbrochenen Linien dargestellten Begrenzungen des Pfads 600 schneiden, um die sich überschneidenden Bereiche zu bilden. Die möglichen Positionen 602a–d liegen, jeweils eine in jedem Fahrspurabschnitt, zwischen den sich überschneidenden Bereichen.
-
Beim Schritt 812 des Verfahrens 800 kann die Berechnungsvorrichtung 100 die Position der erfaßten Objekts auf der Basis eines Vergleichs des Pfads und des Bildes feststellen. Beispielsweise kann jede der längs des Pfads 600 liegenden möglichen Positionen 602a–d auf das Bild 500 rückprojiziert werden. Die Größe einer jeden möglichen Position 602a–d kann den Abstand vom autonomen Fahrzeug 200 zu jeder projizierten, möglichen Position 602a–d anzeigen. Die Feststellung, welche der möglichen Positionen 602a–d die aktuelle Position des erfaßten Objekts ist, schließt bei diesem Beispiel den Vergleich der Größe der möglichen Positionen 602a–d mit dem sich bewegenden Fahrzeug 502 im Bild 500 ein, um die niedrigste Fehlerübereinstimmung zu finden.
-
Die aktuelle Position des erfaßten Objekts kann auch auf die Bewegungsrichtung des erfaßten Objekts basiert werden, festgestellt auf der Basis wenigstens eines der visuellen Attribute des erfaßten Objekts auf dem Bild, z. B. Bild 500, und einem Vergleich der Position des erfaßten Objekts in zwei oder mehr zeitlich aufeinanderfolgenden Bildern. Zusätzlich zur Feststellung der aktuellen Position der erfaßten Objekte unter Anwendung eines Vergleichs eines Pfads mit einer Fahrspurinformation zu einem Bild, kann die Berechnungsvorrichtung 100 auch eine Geschwindigkeit für das festgestellt Objekt auf der Basis eines Vergleichs der erfaßten Objekts in zwei oder mehr zeitlich aufeinanderfolgenden Bildern feststellen. Nach der Feststellung der aktuellen Position des erfaßten Objekts endet das Verfahren 800.
-
Die vorstehende Beschreibung betrifft das, was derzeit für die praktischsten Ausführungsformen gehalten wird. Es sollte jedoch verstanden werden, daß die Offenbarung nicht auf diese Ausführungsformen beschränkt ist, sondern im Gegenteil ist beabsichtigt, verschiedene Modifikationen und äquivalente Anordnungen abzudecken, die innerhalb von Geist und Umfang der beigefügten Ansprüche liegen, wobei dieser Umfang der breitesten Auslegung entspricht, die alle solchen Modifikationen und äquivalenten Strukturen erfaßt, wie es das Gesetz gestattet.