-
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.
-
Stereokamerasysteme aus zwei identischen Kameras mit Ausrichtung auf gleiche Zielobjekte werden verstärkt zur Umfeldbeobachtung insbesondere für Fahrassistenzsysteme eingesetzt, da hiermit der Abstand zu Objekten über die perspektivische Darstellung der beiden Kamerabilder ermittelt werden kann.
-
Offenbarung der Erfindung
-
Vor diesem Hintergrund werden mit dem hier vorgestellten Ansatz ein Verfahren zur Ansteuerung eines Fahrerassistenzsystems unter Verwendung eines Stereokamerasystems mit einer ersten und einer zweiten Kamera, weiterhin eine Vorrichtung, die dieses Verfahren verwendet, 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.
-
Es wird ein Verfahren zur Ansteuerung eines Fahrerassistenzsystems unter Verwendung eines Stereokamerasystems mit einer ersten und einer zweiten Kamera vorgestellt, wobei das Verfahren die folgenden Schritte umfasst:
- Einlesen eines ersten Bildes von der ersten Kamera und eines zweiten Bildes von der zweiten Kamera;
- Bilden einer Kostenfunktion unter Verwendung des ersten und zweiten Bildes;
- Bestimmen eines die Frontoparallelität eines Objektes zu dem Stereokamerasystem repräsentierenden Frontoparallelitätsparameters unter Verwendung eines globalen Minimums der Kostenfunktion; und
- Verwenden des Frontoparallelitätsparameters zur Ansteuerung des Fahrerassistenzsystems.
-
Bei dem Fahrerassistenzsystem kann es sich um eine elektronische Zusatzeinrichtung in einem Fahrzeug zur Unterstützung des Fahrers in bestimmten Fahrsituationen handeln. Hierbei können Eingriffe und/oder Hinweise in Bezug auf Fahrzeugsicherheit, aber auch die Steigerung des Fahrkomforts für den Fahrer und weitere Fahrzeuginsassen im Vordergrund vorgenommen oder ausgegeben werden. Bei dem Stereokamerasystem kann es sich um ein Kamerasystem handeln, das mindestens zwei nebeneinander angebrachte Objektive besitzt und daher stereoskopische Bilder aufnehmen kann. Unter einer Kostenfunktion kann ein unter Verwendung eines Funktionszusammenhangs berechneter Wert verstanden werden, der Disparitäten entlang der zugehörigen Epipolarlinie sowie einer Tiefenentfernung repräsentiert. Eine Kostenfunktion kann somit einen Zusammenhang zwischen den virtuellen Kosten beispielsweise aller, für ein Pixel eines Basisbildes möglichen, Disparitäten entlang der zugehörigen Epipolarlinie sowie einer Tiefenentfernung dargestellt werden. Eine Frontoparallelität kann einen Zustand beschreiben, in dem sowohl eine Kamera als auch das von der Kamera abzubildende Objekt, auf einer Frontalebene parallel zueinander ausgerichtet sind. Ein Frontoparallelitätsparameter kann ein Maß oder eine Größe der Frontoparallelität repräsentieren. Ein globales Minimum der Kostenfunktion kann eine Disparität mit einem minimalen Extremwert der Kostenfunktion beschreiben. Beispielsweise kann der Funktionswert der Kostenfunktion im globalen Minimum zumindest für einen kleinen Bereich um diesen Punkt für kleinere und größere Werte einer auf einer x-Achse dargestellten Disparität der kleinste Funktionswert sein.
-
Der hier vorgestellte Ansatz basiert auf der Erkenntnis, dass durch die Verwendung der Kostenfunktion technisch einfach ein globales Minimum ermittelt werden kann, welches dann einen fundierten Hinweis auf die reziproke Entfernung eines Objekts von dem Stereokamerasystem gibt. Auf diese Weise lässt sich vorteilhaft ein fehlerarmes Verfahren umsetzen bzw. realisieren, die tatsächliche Entfernung und/oder die Ausrichtung eines Objekts vor dem Stereokamerasystem zu ermitteln, um hierdurch eine Bewertung der Umgebung vor dem Fahrzeug vornehmen zu können und ein Fahrerassistenzssystem vorteilhaft ansteuern zu können.
-
Gemäß einer Ausführungsform kann im Schritt des Bildens ein Teilausschnitt des ersten Kamerabildes mit zumindest einem weiteren Teilausschnitt des zweiten Kamerabildes verglichen werden, insbesondere wobei eine Zeile des ersten Kamerabildes mit einer Zeile des zweiten Kamerabilds und/oder eine Spalte des ersten Kamerabildes mit einer Spalte des zweiten Kamerabildes verglichen wird. Vorteilhaft kann die zeilenweise und/oder spaltenweise Verarbeitung von Teilausschnitten erfolgen, die technisch schnell und einfach implementiert werden kann.
-
Gemäß einer Ausführungsform kann im Schritt des Bestimmens die Kostenfunktion in Abhängigkeit von einem die Entfernung des Objekts zu dem Stereokamerasystem repräsentierenden Disparitätsparameter bestimmt werden. Bei Anwendung einer solchen Ausführungsform des Verfahrens auf ein Stereokamerasystem für Straßenszenarien werden die Verletzungen der Frontoparallelität bei den Fahrbahnmarkierungen und auch Leitplanken gut detektiert. Eine solche Ausführungsform des Verfahrens eignet sich daher auch zur Identifizierung der Lage von Fahrbahnmarkierungen und Leitplanken. Auch eignet sich eine solche Ausführungsform des Verfahrens generell zur Detektion der Frontoparallelität von Objekten bei Stereosystemen und ist nicht beschränkt auf Kameras für Fahrassistenzsysteme.
-
Gemäß einer Ausführungsform kann im Schritt des Bestimmens der Disparitätsparameter verwendet werden, der ein reziprokes Maß zur Entfernung des Objekts zu dem Stereokamerasystem repräsentiert. Da gemäß einer solchen Ausführungsform eine umgekehrte proportionale Abhängigkeit zwischen der Tiefenentfernung und der Disparität besteht, resultiert daraus, dass eine hohe Tiefenauflösung eines Objektes nur in einem nahen Umfeld der Kamera erreicht werden kann.
-
Gemäß einer Ausführungsform können im Schritt des Bestimmens zumindest zwei Maxima der Kostenfunktion bestimmt werden, wobei ein dem globalen Minimum zugeordneter Disparitätsparameter zwischen Disparitätsparametern liegt, die den zwei Maxima zugeordnet sind. Da die Disparitätsberechnung rechenintensiv ist, werden vorzugweise einfache und schnelle Algorithmen eingesetzt, um den Rechenaufwand durch die Überprüfung der Frontoparallelität nicht unnötig zu erhöhen. Vorteilhafterweise kann das globale Minimum in der Regel einfach beim Durchlaufen der Disparitätskurve von links nach rechts, d. h., beim Ermitteln der Kostenfunktionswerte ohne rechenintensive Sprünge an unterschiedliche Kostenfunktionswerte ermittelt werden.
-
Gemäß einer Ausführungsform kann im Schritt des Bestimmens eine Differenz der Disparitätsparameter, die den beiden Maxima zugeordnet sind, größer sein als ein Disparitätsparameterschwellwert. Eine solche Ausführungsform bietet den Vorteil, durch die Verwendung des Disparitätsparameterschwellwerts eine hohe Störfestigkeit gegenüber einem Rauschen zu erreichen.
-
Gemäß einer Ausführungsform kann im Schritt des Bestimmens ein Kostenfunktionsvergleichswert, der durch Kombination der Kostenfunktion am globalen Minimum und zumindest einem der Maxima gebildet wird, größer sein, als ein Kostenfunktionsschwellwert. Eine solche Ausführungsform bietet den Vorteil einer zuverlässigen Erkennung des Vorliegens einer Frontoparallelität, da bei einer solchen Erkennung Störeinflüsse effizient kompensiert oder zumindest minimiert werden können. Es können beispielsweise zwei Größen als Maß für die Frontoparallelität bestimmt werden. Für diese zwei Größen der Frontoparallelität kann ein Vergleich unter Verwendung von lediglich zwei Schwellwerten erfolgen.
-
Gemäß einer Ausführungsform kann im Schritt des Bestimmens der Kostenfunktionsvergleichswert durch eine Summe aus einem Kostenfunktionswert jedes der Maxima, minus dem Wert der Kostenfunktion oder einem um einen Faktor, insbesondere dem Faktor 2, multiplizierten Wert der Kostenfunktion am globalen Minimum gebildet werden. Eine solche Ausführungsform des hier vorgestellten Ansatzes bietet den Vorteil einer einfach auszuführenden Bestimmung des Kostenfunktionsvergleichswertes ermöglicht wird, der zugleich eine hohe Aussagekraft bezüglich des Vorliegens einer Frontoparallelität bei geringen Störeinflüssen ermöglicht.
-
Gemäß einer Ausführungsform kann im Schritt des Bestimmens der Frontoparallelitätsparameter als ein Bit-Wert gebildet werden. Ein Bit-Wert ermöglicht das binäre Abspeichern des Frontoparallelitätsparameters, beispielsweise durch den Wert 1, wenn ein Vorliegen von Frontoparallelität des Objekts in Bezug zum Stereokamerasystem festgestellt wurde oder durch den Wert 0, wenn kein Vorliegen von Frontoparallelität des Objekts in Bezug zum Stereokamerasystem festgestellt wurde. Durch das Abbilden des Frontoparallelitätsparameters als ein Bit-Wert benötigt dieser nur wenig Speicherplatz, lässt sich schnell übertragen und auch in weiteren Funktionen gut auswerten.
-
Dieses Verfahren kann beispielsweise in Software oder Hardware oder in einer Mischform aus Software und Hardware beispielsweise in einem Steuergerät implementiert 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 schematische Darstellung einer Stereokamera zur Verwendung mit einer Vorrichtung gemäß einem Ausführungsbeispiel;
- 2 eine Darstellung zur Erläuterung der Bestimmung der Disparität der Tiefenentfernung zwischen Kamera und Objekt gemäß einem Ausführungsbeispiel;
- 3 eine Detailansicht von Bildausschnitten von Bildern der unterschiedlichen Kameras bei Einhaltung der Frontoparallelität und eine Verletzung der Frontoparallelität;
- 4 eine Darstellung einer Überlagerung eines linken und eines rechten Kamerabildes eines Stereokamerasystems zur Anwendung eines Verfahrens gemäß einem Ausführungsbeispiel;
- 5A und 5B Diagramme einer ersten Kostenfunktion bei Fahrbahnlinien mit verletzten der Frontoparallelität (5A) und einer zweiten Kostenfunktion bei frontoparallelen Objekten (5B) gemäß einem Ausführungsbeispiel;
- 6 ein Diagramm zur Beschreibung eines Algorithmus zur Erkennung der Frontoparallelität gemäß einem Ausführungsbeispiel; und
- 7 ein Ablaufdiagramm eines Ausführungsbeispiels eines Verfahrens zur Ansteuerung eines Fahrerassistenzsystems unter Verwendung eines Stereokamerasystems mit einer ersten und einer zweiten Kamera.
-
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 schematische Darstellung einer Stereokamera 100 zur Verwendung mit einer Vorrichtung 101 gemäß einem Ausführungsbeispiel.
-
In der Zeichnung ist Beispiel eines Stereokamerasystems 100 aus zwei identischen Kameras 102, 104 dargestellt, wobei beide Kameras 102, 104 auf das gleiche Zielobjekt 106, hier ein Haus 106, ausgerichtet sind, zu welchem ein Weg 108 hinführt. Die beiden Kameras 102, 104 nehmen hierbei dieselbe Szene, also das Haus 106, von unterschiedlichen räumlichen Standpunkten auf. Hierbei soll der Abstand des Hauses 106 zu dem Stereokamerasystem 100 über eine perspektivische Darstellung der beiden Kamerabilder ermittelt werden. Die Epipolargeometrie beschreibt hierbei die Beziehung zwischen den zwei verschiedenen Kamerabildern des gleichen Zielobjekts 106. Dadurch lässt sich die Abhängigkeit zwischen den korrespondierenden Bildpunkten, also den Punkten, die ein einzelner Objektpunkt in den beiden Kamerabildern erzeugt, beschreiben. Ferner kann neben dem Abstand des Objektes wie hier des Hauses 106 durch die Auswertung der Bilder der beiden Kameras 102 und 104 auch die Frontoparallelität des Objekts, hier beispielsweise des Hauses 106 ermittelt werden, wie es nachfolgend noch näher beschrieben wird. Beispielsweise kann in einem Ausschnitt der Bilder der beiden Kameras 102 bzw. 104, die einen Abschnitt des Hauses 106 abbilden, ermittelt werden, welche Ausrichtung erkannten Kanten in den jeweiligen Bildern haben, so dass hieraus eine Ausrichtung des Objektes wie des Hauses 106 in Bezug zu den Kameras 102 bzw. 104 des Stereokamerasystems 100 haben. Demgegenüber kann beispielsweise auch aus einem Neigungsgrad des Kantenverlaufs von erkannten Kanten im Bereich des Weges 108 erkannt werden, dass dieser Weg 108 kein Objekt darstellt, welches frontoparallel in Bezug auf die Bildaufnahmeebene des Stereokamerasystems 100 ausgerichtet ist.
-
Um eine solche Frontoparallelität eines Objekts wie des Hauses 106 erkennen zu können, wird die vorstehend kurz genannte Vorrichtung 101 Ansteuerung eines Fahrerassistenzsystems 110 unter Verwendung des Stereokamerasystems 100 mit der ersten 102 und der zweiten 104 Kamera. Hierzu umfasst die Vorrichtung 101 eine Schnittstelle 120 zum Einlesen eines ersten Bildes von der ersten Kamera 102 und eines zweiten Bildes von der zweiten Kamera 104. Ferner umfasst die Vorrichtung 101 eine Einrichtung 125 zum Bilden einer Kostenfunktion unter Verwendung des ersten Bildes und des zweiten Bildes und eine Einrichtung 130 zum Bestimmen eines die Frontoparallelität eines Objektes zu dem Stereokamerasystem repräsentierenden Frontoparallelitätsparameters unter Verwendung eines globalen Minimums der Kostenfunktion. Schließlich umfasst die Vorrichtung 101 eine Einrichtung 135 zum Ausgeben oder Verwenden des Frontoparallelitätsparameters zur Ansteuerung des Fahrerassistenzsystems 110.
-
2 zeigt eine Darstellung zur Erläuterung der Bestimmung der Disparität der Tiefenentfernung zwischen Kamera und Objekt gemäß einem Ausführungsbeispiel.
-
Die Darstellung umfasst ein erstes linkes Bild 202 (beispielsweise der links angeordneten ersten Kamera 102 aus 1) und ein zweites rechtes Bild 204 (beispielsweise der rechts angeordneten zweiten Kamera 104 aus 1). In beiden Bildern ist ein auf einer Straße fahrendes Fahrzeug dargestellt. Das zweite Bild 204 ist rektifiziert dargestellt. In dem ersten linken Bild 202 ist ein Teilausschnitt 206 dargestellt, der in dem zweiten Bild 204 anhand einer Epipolarlinie 210 (beispielsweise einer gleichen Spalte im rechten Bild 204) gesucht. Aus diese beiden Teilausschnitte der Bilder wird eine Kostenfunktion 212 gebildet, die im unteren Teildiagramm aus der 2 in einem Koordinatensystem dargestellt ist. Dabei stellt die x-Achse 220 des Koordinatensystems einen steigenden Disparitätswert 222 dar, der mit steigenden Werten einen fallenden Entfernungswert 224 angibt, sich also reziprok zum Entfernungswert 224 verhält, der in Pfeilrichtung ansteigt. Die y-Achse 226 gibt einen Kostenwert an der Kostenfunktion 212 an dem jeweils zugeordneten Disparitätswert an. Die Kosten ergeben sich hierbei üblicherweise aus Einzelkosten pro Bildelement (Pixel), die in einer geeigneten Weise über eine Region im Bild aggregiert (z. B. durch Summenbildung) werden. Diese Kosten sind ein Maß für die Ähnlichkeit einer Bildregion im Referenzbild und im Suchbild. Die Kosten pro Pixel ergeben sich typischerweise aus einem Ähnlichkeitsmaß der Bildintensitäten direkt (absolute Differenzen, Differenzenquadrat), den Intensitätsgradienten oder weiteren parametrischen (Produkt-Moment-Korrelation) und nicht parametrischen Massen (z. B. Rang-Korrelation) oder Kombinationen daraus. Bei einem lokalen Verfahren erfolgt die Aggregation dieser Pixelkosten beispielsweise durch Summation der Einzelkosten in einem Bereich des Bildes. Dieser Bereich kann konstant über alle Berechnungen sein oder auch dynamisch an den jeweiligen Bildinhalt angepasst werden.
-
Allgemein kann angeführt werden, dass es irrelevant ist, in welche Richtung die Kostenfunktion durchlaufen wird. Von besonderem Interesse ist jedoch beispielsweise, dass sie zur Berechnung der Extremwerte möglichst nur einmal durchlaufen wird.
-
Für die Bestimmung des Abstandes aus einem Bildpaar können unterschiedliche Verfahren eingesetzt werden. Häufig kommen lokale Verfahren zum Einsatz, die im Prinzip einen kleinen Teilausschnitt 206 des ersten Bildes 202 in einem zweiten rektifizierten Bild 204 entlang der Epipolarlinie 210 suchen. Die Ähnlichkeit des ersten Ausschnitts 206 mit dem Teilausschnitt 208 des zweiten Bildes 204 entlang der Epipolarlinie 210 wird als Kostenfunktion 212 dargestellt. Der Extremwert 214, hier das Minimum 214, der Kostenfunktion 212 stellt die Disparität, also beispielsweise den Versatz des identischen Bildinhalts, zwischen dem ersten Bild 202 und dem zweiten Bild 204 dar. Diese Disparität ist ein reziprokes Maß für die Entfernung des Objekts zur Kamera. Die Form der Kostenfunktion 212, beispielsweise der Wert des Minimums 214, der Abstand der beiden Maxima zueinander, die Breite der Kurve um das Minimum 214, kann zur Auswertung der Qualität der Disparität verwendet werden.
-
Wenn die Disparitäten aller Teilausschnitte 206 des ersten Bildes 202 mit dem Inhalt des zweiten Bildes 204 bestimmt werden, kann eine Disparitätskarte und damit eine Tiefenkarte für das gesamte Bild erstellt werden. Auf diese Tiefenkarte können weitere Verfahren angesetzt werden, um zum Beispiel die Oberfläche oder die Lage von Objekten, beispielsweise Straßenoberfläche, Fußgänger oder Fahrzeuge, zu detektieren. In Fahrassistenzsystemen, wie dem Fahrerassistenzsystem 110, könnten durch die fehlerhafte Detektion von Objekten falsche und gefährliche Fahrmanöver resultieren, beispielsweise eine Notbremsung oder ein Ausweichmanöver.
-
Die Kostenfunktion 212 weist im Idealfall ein klar erkennbares globales Minimum 214 mit einem steilen Anstieg auf. Weitere mögliche lokale Minima liegen von ihren Kosten über den Kosten des globalen Minimums 214. Die Position des globalen Minimums 214 ist der gesuchte Disparitätswert. Dieser Idealfall tritt aber nur bei idealen Umgebungsbedingungen auf. In einer realen Umgebung treten verschiedenste Effekte auf, die sich negativ auf den Verlauf der Kostenfunktion 214 auswirken. Der Effekt einer „Verletzung de Frontoparallelität“ wird hier näher untersucht.
-
3 zeigt eine Detailansicht von Bildausschnitten von Bildern der unterschiedlichen Kameras bei Einhaltung der Frontoparallelität und eine Verletzung der Frontoparallelität.
-
Die Darstellung zeigt vier Rechtecke 302, 304, 306, 308, wobei die beiden oberen umrandeten Rechtecke 302, 304 zwei Teilausschnitte eines Hauses 106 aus 1 darstellen und die beiden unteren umrandeten Rechtecke 306, 308 zwei Teilausschnitte einer Straße bzw. des Weges 108 aus 1 zeigen. Bei den beiden Teilausschnitten des Hauses 302, 304 wird die Frontoparallelität eingehalten (also das Objekt ist im Wesentlichen frontoparallel zur Bildaufnahmeebene der Kameras des Stereokamerasystems 100, wohingegen bei den beiden Teilausschnitten 306, 308 der Straße bzw. des Wegs 106 die Frontoparallelität verletzt ist.
-
Bei der Disparitätsberechnung wird ein Teilausschnitt 302 des ersten Bildes mit Teilausschnitten 304 entlang einer Linie des zweiten Bildes verglichen. Im Bereich der höchsten Übereinstimmung wird bei Erfüllung der Frontoparallelität erkannt, dass der Inhalt der Teilausschnitte 302, 304 identisch ist. Wenn die Frontoparallelität verletzt ist, dann ist auch der Bildinhalt der Teilausschnitte 306, 308 zueinander geschert bzw. die Neigung von in dem Teilausschnitt erkannten Kanten unterschiedlich. Die Qualität der Korrelation der Teilausschnitte 306, 308 ist daher deutlich geringer. Dieser Umstand macht sich dann im Verlauf der Kostenfunktion bemerkbar.
-
Insbesondere im Bereich der Fahrbahnmarkierung können deutliche Änderungen im Kostenverlauf auftreten. Vor allem die Position des globalen Minimums verschiebt sich leicht zu größeren Werten der Disparität, das heißt, die Fahrbahnmarkierungen erscheinen zu nah. Dies ist insofern bei Fahrerassistenzsystemen problematisch, da durch die falsche Disparität der Fahrbahnmarkierung ein virtuell lang ausgestrecktes Hindernis entstehen kann. Das Assistenzsystem darf aber unter keinen Umständen auf dieses virtuelle Hindernis reagieren.
-
Ein Aspekt des hier vorgestellten Ansatzes kann nun in der Schaffung eines Verfahrens zur Auswertung der Kostenfunktion zur Berechnung eines zusätzlichen Gütemaßes gesehen werden, welches ein Maß für die Frontoparallelität in der Disparitätskurve aufzeigt oder repräsentiert. Mittels dieses Gütemaßes kann die Plausibilität des globalen Minimums, also der Disparitätswert, bestimmt werden.
-
4 zeigt eine Darstellung einer Überlagerung eines linken und eines rechten Kamerabildes eines Stereokamerasystems 100 zur Anwendung eines Verfahrens gemäß einem Ausführungsbeispiel.
-
Die Disparitätsberechnung von Stereokameras basiert typischerweise auf der Annahme der Frontoparallelität. Objekte sollten dabei senkrecht zur Blickrichtung der Kameras 102 bzw. 104 stehen, wie die Rückfront des linken Lasters 402 und des rechten Lasters 404. Hierbei können durch eine geeignete Überlagerung der betreffenden Teilausschnitte des ersten linken und des zweiten rechten Bildes die frontoparallelen Objekte vollständig zur Deckung gebracht werden, was hierbei für die Rückfront des linken Lasters 402 gilt. Für die Rückfront des rechten Lasters 404 ist dies aber ebenso möglich. Bei nicht frontoparallelen Objekten können die Objekte durch Überlagerung der betreffenden Teilausschnitte des ersten linken und des zweiten rechten Bildes nicht zur Deckung gebracht werden. Dieser Umstand wird besonders bei einem Blick auf die Seitenwand des linken Lasters 402, die Leitplanken 406 und vor allem die Straße 408 bzw. deren Mittelmarkierung deutlich. Vielmehr ist hier eine Scherung der der betreffenden Teilausschnitte der Bilder zu erkennen.
-
5A und 5B zeigen Diagramme bzw. Koordinatensysteme einer ersten Kostenfunktion 212 bei Fahrbahnlinien (5A) und einer zweiten Kostenfunktion 212 bei frontoparallelen Objekten (5B) gemäß einem Ausführungsbeispiel.
-
Die Darstellung aus 5A zeigt ein Koordinatensystem 502 einer Kostenfunktion 212 im Bereich von Teilausschnitten bei Leitplanken oder Fahrbahnmarkierungen bei Objekten mit Verletzung der Frontoparallelität, wobei hier eine langgezogene Linienstruktur der Kostenfunktion 212 sichtbar ist. Die Darstellung aus 5B zeigt ein Koordinatensystem 504 mit einer Kostenfunktion 212 im Bereich von Teilausschnitten von Objekten mit einer guten Disparität, d.h. bei denen das Kriterium der Frontoparallelität nahezu erfüllt ist. Bei beiden Koordinatensystemen 502, 504 repräsentiert die x-Achse 220 einen steigenden Disparitätswert 222 und die y-Achse 226 einen Wert der Kostenfunktion.
-
Empirische Untersuchungen einer Kostenfunktion bei Erfüllung und einer Kostenfunktion bei Verletzung der Frontoparallelität zeigen deutliche Unterschiede. So wird die Frontoparallelität bei der Kostenfunktion 504 im Diagramm aus 5B nahezu erfüllt. Die Position des globalen Minimums 214 und somit der Disparitätswert ist an der korrekten, d. h., der der Realität entsprechenden Stelle und stellt damit ein gutes Maß für die reziproke Entfernung dar. Ferner zeigt sich ein schmaler und steiler Verlauf der Kostenfunktion 212 am Minimum. Die Rauschwerte (die beispielsweise durch die Welligkeit links und rechts des globalen Minimums der Kostenfunktion erkennbar sind) sind näherungsweise konstant und deutlich größer als das globale Minimum 214.
-
Die Frontoparallelität bei der Kostenfunktion 502 im Diagramm aus 5A ist verletzt. Die Position des globalen Minimums 214 und somit der Disparitätswert ist meist zu leicht größeren Werten verschoben, als dies der Realität entsprechend würde. Die Entfernung wird daher zu nah geschätzt. Die Kostenfunktion 502 weist am globalen Minimum 214 einen sowohl flachen als auch breiten Verlauf auf. Die Rauschwerte verschwinden schon fast in der abfallenden Kurve des globalen Minimums 214. Die linken und rechten lokalen Maxima 506, 508 sind weit voneinander entfernt vom globalen Minimum 214. Die Kostendifferenz zwischen dem Minimum 214 und den beiden Maxima 506, 508 ist demnach größer.
-
6 zeigt ein Diagramm zur Beschreibung eines Algorithmus zur Erkennung der Frontoparallelität gemäß einem Ausführungsbeispiel. Die Darstellung des Ansatzes aus der 6 stellt eine Ergänzung dar, bei der nicht unbedingt das nächste lokale Maximum verwendet wird. „Kleine“ lokale Maxima, an denen nur wenige Pixel zwischen lokalem Minimum und lokalem Maximum liegen, können zur Stabilisierung des Verfahrens ignoriert werden. Vielmehr sollte das lokale Maximum 508 rechts gewählt werden.
-
Die Darstellung zeigt ein Koordinatensystem bzw. ein Diagramm einer Kostenfunktion 212, wobei hier eine langgezogene Linienstruktur der Kostenfunktion 212 sichtbar ist. Die x-Achse 220 zeigt einen steigenden Disparitätswert 222 an und die die y-Achse 226 gibt einen Kostenwert wieder. Daher kann davon ausgegangen werden, dass bei dieser Kostenfunktion 212 die Frontoparallelität verletzt ist.
-
Aus dem Effekt, dass bei einer Verletzung der Frontoparallelität die linken und rechten lokalen Maxima 506, 508 weiter entfernt vom globalen Minimum 214 liegen, lässt sich ableiten, dass sich das lokale Minimum links und rechts des globalen Minimums 214 präzise und robust ermitteln lässt. Aus dem Effekt, dass die Kostendifferenz zwischen dem Minimum und beiden Maxima bei einer Verletzung der Frontoparallelität größer ist, lässt sich ableiten, dass die dazugehörende Kostendifferenz sich robust und eindeutig interpretierbar ermitteln lässt.
-
Zunächst soll das globale Minimum 214 gesucht werden. Ferner soll das nächste Maximum 506 vor dem globalen Minimum 214 gesucht werden. Schließlich soll das nächste Maximum 508 nach dem absoluten Minimum 214 gesucht werden. Besonders vorteilhaft bei dem Verfahren ist, dass in einem Durchlauf beispielsweise von links nach rechts alle Größen bzw. Maxima und Minima bestimmt werden können und man die Kurve nicht mehrmals durchlaufen braucht.
-
Die Schritte des Verfahrens zur Ansteuerung eines Fahrerassistenzsystems unter Verwendung eines Stereokamerasystems mit einer ersten und einer zweiten Kamera können vorteilhaft algorithmisch miteinander kombiniert werden, sodass bei einem einmaligen Durchlauf der Kostenfunktion 212 von links nach rechts alle gesuchten Größen bestimmt werden können. Zusätzlich können zur Verminderung des Rauschens benachbarte lokale Minima oder Maxima, die beispielsweis nur wenige Pixel voneinander entfern liegen (wie dies in der 6 dargestellt ist), algorithmisch ignoriert werden.
-
Zusammenfassend ist anzumerken, dass empirische Untersuchungen der Kostenfunktion bei Erfüllung und Verletzung der Frontoparallelität deutliche Unterschiede zeigen.
-
Bei der Erfüllung der Frontoparallelität, wie sie beispielsweise in der 5 in dem rechten Teildiagramm dargestellt ist, gilt Folgendes:
- - Die Position des globalen Minimums und somit der Disparitätswert ist an der korrekten Stelle und stellt damit ein gutes Maß für die reziproke Entfernung dar.
- - Schmaler und steiler Verlauf der Kostenfunktion am Minimum.
- - Die Rauschwerte sind näherungsweise konstant und deutlich größer als das globale Minimum.
-
Bei der Erfüllung der Frontoparallelität, wie sie beispielsweise in der 5 in dem linken Teildiagramm dargestellt ist, gilt Folgendes:
- - Die Position des globalen Minimums und somit der Disparitätswert ist meist leicht zu größeren Werten verschoben. Die Entfernung wird daher zu nah geschätzt.
- - Die Kostenfunktion weist am globalen Minimum hat einen flachen Verlauf auf (Theorem 1).
- - Die Kostenfunktion weist am globalen Minimum einen breiten Verlauf auf.
- - Die Rauschwerte verschwinden schon fast in der abfallenden Kurve des globalen Minimums.
- - Die linken und rechten lokalen Maxima sind weit entfernt vom globalen Minimum (Theorem 2).
- - Die Kostendifferenz zwischen dem Minimum und den beiden Maxima ist größer (Theorem 3).
-
Aus den empirischen Betrachtungen können Maße für die Frontoparallelität abgeleitet werden:
- - Aus Theorem 2 folgt: Das lokale Minimum links und rechts des globalen Minimums lässt sich robust und präzise ermitteln.
- - Aus Theorem 3 folgt: Die dazugehörende Kostendifferenz lässt sich eindeutig interpretierbar ermitteln.
-
Aus Theorem 2 und Theorem 3 lässt sich die Umsetzung realisieren, wie sie mit Bezug zur 5 dargestellt und beschrieben wurde.
-
Ferner kann gemäß einem weiteren Ausführungsbeispiel auch eine erweiterte Minima-/Maximasuche erfolgen, wobei die folgenden beispielhaften Schritte vorzunehmen wären:
- - Suche nach dem globalen Minimum (mit Bezugszeichen 214 bezeichnet oder als Min benannt).
- - Suche des nächsten Maximums vor dem globalen Minimum (auch mit dem Bezugszeichen 506 bezeichnet oder als MaxFrontLoc benannt)
- - Suche des nächsten Maximums nach dem globalen Minimum (auch mit dem Bezugszeichen 508 bezeichnet oder als MaxBackLoc benannt).
-
Diese Schritte können vorteilhaft algorithmisch miteinander kombiniert werden, so dass bei einem einmaligen Durchlauf der Kostenfunktion von links nach rechts alle gesuchten Größen bestimmt werden können.
-
Zusätzlich zur Verminderung des Rauschens können nahbenachbarte lokale Minima/Maxima (z. B.: die nur wenige Pixel voneinander entfernt liegen) algorithmisch ignoriert werden.
-
Für das Vorliegen der Verletzung der Frontoparallelität genügen beispielsweise zwei einfache Schwellwerte:
- - Die beiden Maxima in Disparitätsrichtung sind weit entfernt:
- - Und die Kostendifferenz zwischen dem (globalen) Minimum und den beiden Maxima ist groß:
Der Faktor k kann vorliegend beispielsweise einen Wert von 2 aufweisen.
-
Speziell wenn beide Bedingungen (*) erfüllt sind, dann liegt eine Verletzung der Frontoparallelität vor.
-
Der hier vorgestellte Ansatz weist einige Vorteile auf, zu denen beispielhaft Folgendes genannt werden kann.
- - Da die Disparitätsberechnung rechenintensiv ist, werden vorzugsweise einfache und schnelle Algorithmen benötigt, um den Rechenaufwand durch den Check der Frontoparallelität nicht weiter aufzublähen. Das globale Minimum wird in der Regel einfach beim Durchlaufen der Disparitätskurve von links nach rechts ohne rechenintensive Sprünge ermittelt.
- ◯ Der Check der Frontoparallelität kann beim Durchlaufen der Disparitätskurve von links nach rechts ohne Rücksprung ermittelt werden.
- ◯ Der Check der Frontoparallelität kann gleichzeitig mit der Ermittlung der beiden globalen Minima bestimmt werden.
- ◯ Erweiterung: Der Check der Frontoparallelität kann gleichzeitig mit der Ermittlung des globalen Minimums und dem Periodizitätscheck bestimmt werden.
- - Der Check der Frontoparallelität benötigt nur wenige Berechnungen und Variablen.
- - Der Check der Frontoparallelität benötigt nur wenig zusätzliche Rechenzeit.
- - Der Check der Frontoparallelität ist für FPGA-Implementierungen geeignet.
- - Die gute Erkennung von der Verletzung der Frontoparallelität in Bildern konnte anhand Untersuchungen und bereits bestehender Bosch-Produkte erfolgreich nachgewiesen werden.
- - Es werden nur zwei Größen als Maß für die Frontoparallelität bestimmt.
- - Für diese zwei Größen der Frontoparallelität genügen daher auch nur zwei Schwellwert. Die Schwellwerte sind in den bisher untersuchten Szenarien relativ gutmütig.
- - Die Berechnung der Frontoparallelität lässt sich mit Integer-Zahlen durchführen.
- - Das Ergebnis der Frontoparallelitätsermittlung lässt sich durch ein Bit repräsentieren. Damit benötigt er nur wenig Speicherplatz, lässt sich schnell übertragen und in weiteren Funktionen auch gut auswerten.
- - Die Erfindung ist auf verschiedene lokale Verfahren zur Disparitätsschätzung einsetzbar, d. h., Verfahren, die einen Teilausschnitt des linken und des rechten Bildes miteinander vergleichen und dabei eine Kostenfunktion aufstellen.
- - Das Verfahren ist auch analog anwendbar, wenn der Wert der Kostenfunktion nicht die Unähnlichkeit, sondern die Ähnlichkeit der Teilausschnitte darstellt und somit nicht das globale Minimum, sondern das globale Maximum der gesuchte Disparitätswert ist.
- - Bei Anwendung des Verfahrens auf ein Stereokamerasystem für Straßenszenarien werden die Verletzungen der Frontoparallelität bei den Fahrbahnmarkierungen und auch Leitplanken gut detektiert. Das Verfahren eignet sich daher auch zur Identifizierung der Lage von Fahrbahnmarkierungen und Leitplanken.
- - Das Verfahren eignet sich generell zur Detektion der Frontoparallelität von Objekten bei Stereosystemen und ist nicht beschränkt auf Kameras für Fahrerassistenzsysteme.
-
7 ein Ablaufdiagramm eines Ausführungsbeispiels eines Verfahrens 700 zur Ansteuerung eines Fahrerassistenzsystems unter Verwendung eines Stereokamerasystems mit einer ersten und einer zweiten Kamera.
-
In einem Schritt 701 des Einlesens werden ein erstes Bild von der ersten Kamera und ein zweites Bild von der zweiten Kamera eingelesen. In einem Schritt 703 des Bildens wird unter Verwendung des ersten und des zweiten Bildes eine Kostenfunktion gebildet. In einem Schritt 705 des Bestimmens wird ein die Frontoparallelität eines Objektes zu dem Stereokamerasystem repräsentierender Frontoparallelitätsparameter unter Verwendung eines globalen Minimums der Kostenfunktion bestimmt. Schließlich wird in einem Schritt 707 des Verwendens der Frontoparallelitätsparameter zur Ansteuerung des Fahrerassistenzsystems verwendet.
-
Für das Vorliegen einer Verletzung der Frontoparallelität genügen zur Erkennung dieser Verletzung gemäß einem Ausführungsbeispiel zwei einfache Schwellwerte. Der erste Schwellwert wird errechnet aus der Differenz der Disparitätsparameter, die den Maxima zugeordnet sind, wobei diese Differenz größer ist als ein Disparitätsparameterschwellwert. Der zweite Schwellwert wird aus dem Kostenfunktionsvergleichswert gebildet, der durch die Summe aus dem Kostenfunktionswert jedes der Maxima minus einem k-Fachen des Wertes, insbesondere dem Doppelten, der Kostenfunktion am globalen Minimum errechnet wird.
-
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.