-
HINTERGRUND DER ERFINDUNG
-
Eine Ausführungsform betrifft Fahrzeugbilderfassungssysteme.
-
Sichtbasierte Bilderfassungssysteme verwenden Bildaufnahmevorrichtungen, um außerhalb des Fahrzeugs liegende Objekte für verschiedene Fahrzeuganwendungen zu detektieren, welche Kollisionsvermeidungssysteme, eine automatisierte Geschwindigkeitsregelung und einen Einparkassistenten umfassen. Wenn gerade mehr als eine Kamera verwendet wird, dann muss zwischen jedem der Bildaufnahmesysteme die Kamerakalibrierung angewendet werden. Es müssen nicht nur die Bilderfassungsvorrichtungen untereinander kalibriert werden, sondern es muss auch die Kamera bezüglich des Fahrzeugprofils oder der Fahrzeugpose kalibriert werden. Im Ergebnis müssen eine Fehlausrichtung bei sich überschneidenden Zonen zwischen Bildaufnahmevorrichtungen, das Überlagern von Bildern [engl.: image stitching] sowie Distanzschätzfunktionen kompensiert werden.
-
Die Druckschrift
US 2012 / 0 287 232 A1 offenbart ein Verfahren zum Kalibrieren mehrerer Bildaufnahmevorrichtungen eines Fahrzeugs. Dabei werden mehrere Bildaufnahmevorrichtungen bereitgestellt, die verschiedene Posen aufweisen und mindestens eine der mehreren Bildaufnahmevorrichtungen wird als Referenzvorrichtung ermittelt. Von den mehreren Bildaufnahmevorrichtungen wird ein Bild einer mit einem Muster versehenen Darstellung außerhalb des Fahrzeugs aufgenommen. Die mit einem Muster versehene Darstellung umfasst mehrere Orientierungspunkte mit bekannten Positionen. Jede Bildaufnahmevorrichtung nimmt mindestens einen Teil der mit einem Muster versehenen Darstellung auf. Ein Prozessor ermittelt gemeinsame Orientierungspunkte der mit einem Muster versehenen Darstellung zwischen jedem der Bilder, die von den mehreren Bildaufnahmevorrichtungen und der Referenzvorrichtung aufgenommen wurden. Unter Verwendung der ermittelten gemeinsamen Orientierungspunkte werden Bilder der mit einem Muster versehenen Darstellung, die von jeder der mehreren Bildaufnahmevorrichtungen aufgenommen wurden, überlagert. Extrinsische Parameter von jeder Bildaufnahmevorrichtung werden relativ zu der Referenzvorrichtung beruhend auf den überlagerten Bildern justiert, um die mehreren Bildaufnahmevorrichtungen zu kalibrieren.
-
ZUSAMMENFASSUNG DER ERFINDUNG
-
Ein Vorteil einer Ausführungsform ist eine Kalibrierung von mehreren Kameras eines Rundumsichtsystems, die in einer Werkstatt, einer Wartungsstation oder an einer Montagelinie verwendet werden kann. Die hier beschriebene Technik stellt eine kostengünstige Herangehensweise zum autonomen Aktualisieren und Korrigieren von Kamerakalibrierungsparametern bereit, indem sie Bilder einer mit einem Muster versehenen Darstellung aufnimmt, gemeinsame Orientierungspunkte ermittelt und die gemeinsamen Orientierungspunkte mit einem Referenzbild korreliert, das von der Referenzkamera aufgenommen wird. Die hier beschriebene Technik verringert die Komplikation, die damit verbunden ist, dass spezialisiertes oder kompliziertes Werkzeug hergestellt oder gekauft werden muss, das benötigt wird, um jede der Kameras zu kalibrieren.
-
Eine Ausführungsform betrachtet ein Verfahren zum Kalibrieren mehrerer Bildaufnahmevorrichtungen eines Fahrzeugs. Es werden mehrere Bildaufnahmevorrichtungen bereitgestellt, die verschiedene Posen aufweisen. Mindestens eine der mehreren Bildaufnahmevorrichtungen wird als Referenzvorrichtung ermittelt. Von den mehreren Bildaufnahmevorrichtungen wird ein Bild einer mit einem Muster versehenen Darstellung außerhalb des Fahrzeugs aufgenommen. Die mit einem Muster versehene Darstellung umfasst mehrere Orientierungspunkte mit bekannten Positionen. Jede Bildaufnahmevorrichtung nimmt mindestens einen Teil der mit einem Muster versehenen Darstellung auf. Das Fahrzeug wird über die mit einem Muster versehene Darstellung hinweg bewegt, um Bilder zu verschiedenen Zeitpunkten durch die mehreren Bildaufnahmevorrichtungen aufzunehmen. Ein Prozessor ermittelt gemeinsame Orientierungspunkte der mit einem Muster versehenen Darstellung zwischen jedem der Bilder, die von den mehreren Bildaufnahmevorrichtungen und der Referenzvorrichtung aufgenommen wurden. Unter Verwendung der ermittelten gemeinsamen Orientierungspunkte werden Bilder der mit einem Muster versehenen Darstellung, die von jeder der mehreren Bildaufnahmevorrichtungen aufgenommen wurden, überlagert. Extrinsische Parameter von jeder Bildaufnahmevorrichtung werden relativ zu der Referenzvorrichtung beruhend auf den überlagerten Bildern justiert, um die mehreren Bildaufnahmevorrichtungen zu kalibrieren.
-
Figurenliste
-
- 1 veranschaulicht ein Blockdiagramm eines Objektdetektionssystems, das für Kollisionsvermeidungs- oder Objektdetektionssysteme verwendet wird.
- 2 ist eine beispielhafte Darstellung eines Fahrzeugs, das über eine mit einem Muster versehene Darstellung fährt.
- 3a-d repräsentieren jeweils Bilder von mit Mustern versehenen Darstellungen, die von Bildaufnahmevorrichtungen aufgenommen wurden.
- 4 ist eine Ausrichtung von Bildern, die von den jeweiligen Bildaufnahmevorrichtungen aufgenommen wurden.
- 5 ist ein Flussdiagramm eines Verfahrens, das eine temporäre Integration jeder Kamerapose über die Zeit veranschaulicht.
- 6 ist eine überlagerte Gitterabbildung von zwei Bildern, die von einer jeweiligen Kamera [engl.: time] zu unterschiedlichen Zeitpunkten aufgenommen wurden.
-
GENAUE BESCHREIBUNG
-
1 veranschaulicht ein Blockdiagramm eines Objektdetektionssystems, das für Kollisionsvermeidungs- oder Objektdetektionssysteme verwendet wird. Das Fahrzeug 10 umfasst eine nach vorne gerichtete Bildaufnahmevorrichtung 12, eine nach links gerichtete Bildaufnahmevorrichtung 14, eine nach rechts gerichtete Bildaufnahmevorrichtung 16 und eine nach hinten gerichtete Bildaufnahmevorrichtung 18. Jede der Bildaufnahmevorrichtungen wird hier nachstehend als Kamera bezeichnet werden, jedoch versteht es sich, dass die Bildaufnahmevorrichtung nicht auf eine Kamera begrenzt ist. Jede der Kameras nimmt eine Region außerhalb des Fahrzeugs auf, welche an einen Fahrzeugprozessor 20 geliefert wird. Der Prozessor 20 verwendet die Aufnahmebilder zur Detektion von Objekten außerhalb des Fahrzeugs, um deren Abstand zu dem Fahrzeug 10 zu bestimmen. Die Detektion von Objekten kann von verschiedenen Fahrzeuganwendungen verwendet werden, welche umfassen, aber nicht beschränkt sind auf eine Kollisionswarnung, eine automatisierte Geschwindigkeitsregelung und eine Verbesserung der Fahrersicht. Ein Speicher 22 kann verwendet werden, um Daten zu speichern, die zur Analyse der Bilder verwendet werden.
-
Fahrzeuge, die mit mehr als einer Kamera ausgestattet sind, müssen eine zwischen diesen korrespondierende Ausrichtung aufweisen, so dass die Daten zusammenwirkend verwendet werden können, wenn sie verarbeitet werden. Wenn die Kameras nicht aufeinander ausgerichtet sind, werden die Daten verfälscht, wenn sie analysiert werden, und die Genauigkeit hinsichtlich des Aufenthaltsorts der detektierten Objekte wird ungenau sein, was zu ungenauen oder verfälschten Ausgaben der Fahrzeuganwendungen führt, welche die Eingabedaten verwenden. Die hier beschriebene Prozedur stellt eine weniger komplexe Herangehensweise zur Ausrichtung und Synchronisation von Kameras bereit.
-
2 veranschaulicht, wie das Fahrzeug 10 gerade über eine mit einem Muster versehene Darstellung 24 auf dem Boden fährt. Die mit einem Muster versehene Darstellung ist vorzugsweise ein Muster, das identifizierbare Kanten 26 aufweist, welche die jeweiligen Muster deutlich unterscheiden, etwa ein Schachbrettmuster auf dem Boden. Das Muster repräsentiert ein Gittersystem, bei dem die Kanten 26 die abwechselnden Muster voneinander unterscheiden und die sich schneidenden Linien der Kanten bezeichnen identifizierbare Aufenthaltspunkte 28 in dem Gitter.
-
Es werden gemeinsame Orientierungspunkte, welche Orientierungspunkte 30, 32, 34 und 36 der mit einem Muster versehenen Darstellung 24 umfassen, aber nicht darauf beschränkt sind, ermittelt. Die gemeinsamen Orientierungspunkte 30, 32, 34, 36 identifizieren Ecken der mit einem Muster versehenen Darstellung, welche ermöglichen, dass die Orientierung der mit einem Muster versehenen Darstellung in einem aufgenommenen Bild leicht ermittelt werden kann. Die gemeinsamen Orientierungspunkte werden verwendet, um Gemeinsamkeiten zu ermitteln, wenn die Bilder, die von den mehreren Bildaufnahmevorrichtungen aufgenommen wurden, verglichen werden. Wenn das Fahrzeug über die mit einem Muster versehene Darstellung 24 fährt, wird jede der Kameras zumindest einen Teil der mit einem Muster versehenen Darstellung aufnehmen. Beispielsweise nimmt die nach vorne gerichtete Kamera vor dem Zeitpunkt, an dem das Fahrzeug die mit einem Muster versehene Darstellung 24 erreicht, die gesamte mit einem Muster versehene Darstellung 24 auf. Wenn sich das Fahrzeug auf und über die mit einem Muster versehene Darstellung bewegt, werden die nach rechts gerichtete Kamera und die nach links gerichtete Kamera nur einen Teil der mit einem Muster versehenen Darstellung 24 aufnehmen. Wenn sich das Fahrzeug von der mit einem Muster versehenen Darstellung 24 wegbewegt, nimmt die nach hinten gerichtete Kamera 26 die gesamte mit einem Muster versehene Darstellung 24 auf. Das Bild von der nach vorne gerichteten Kamera wird als das Referenzbild ermittelt.
-
Bei jedem Bild, das von jeder Kamera aufgenommen wird, wird die Orientierung jedes aufgenommenen Bilds mit Bezug auf das Referenzbild verschieden sein. 3a-d veranschaulichen alle mit einem Muster versehenen Darstellungen, die von jeder der Bildaufnahmevorrichtungen aufgenommen wurden. Bei jeder der 3a-d werden die jeweiligen gemeinsamen Orientierungspunkte (z.B. Ecken) ermittelt. Unter Verwendung der gemeinsamen Orientierungspunkte zwischen Bildern sowie der Kanten (d.h. Hauptlinien) und der Schnittpunkte (d.h. Merkmalspunkte) in der mit einem Muster versehenen Darstellung können die verschiedenen Bilder orientiert und ausgerichtet werden, indem eine Entsprechung zwischen den Orientierungspunkten und Merkmalspunkten des Referenzbilds und der anderen Bilder ermittelt wird. Die ermittelten gemeinsamen Orientierungspunkte ermöglichen, dass alle Bilder mit Bezug auf ein Referenzbild ausgerichtet werden. Sobald alle Gitterabbildungen ausgerichtet sind, wird nach allen Kameratrajektorien aufgelöst.
-
Nach dem Lösen aller Kameratrajektorien kann nach der Pose jeder Kamera relativ zu der nach vorne gerichteten Kamera unter Verwendung einer Rotationsmatrix und einer Translationsmatrix aufgelöst werden. Die Rotationsmatrix umfasst eine Drehbewegung der Kamera und sie beruht auf einem festgelegten Kamerazentrierungspunkt in einem dreidimensionalen Koordinatensystem. Die Kamera könnte im freien Raum gedreht werden, wobei sie ihren Kamerazentrierungspunkt beibehält.
-
Die Translationsmatrix umfasst eine Translationsbewegung, welche im Gegensatz zur Rotation die Position des Objekts verändert. Eine Rotationsmatrix und eine Translationsmatrix einer jeweiligen Kamera werden für das Ausrichten der Bildgitter auf das Gitterbild der nach vorne gerichteten Kamera bestimmt. Die nach vorne gerichtete Kamera wird die jeweilige Pose [I, 0] sein, die nach links gerichtete Kamera wird eine jeweilige Pose [RI, tI] aufweisen; die nach rechts gerichtete Kamera wird eine jeweilige Pose [Rg, tg] aufweisen; und die nach hinten gerichtete Kamera wird eine jeweilige Pose [Rr, tr] aufweisen. Die relativen extrinsischen Parameter der nicht nach vorne gerichteten Kameras werden relativ zu der nach vorne gerichteten Kamera geschätzt. Die extrinsischen Parameter der Kameras werden modifiziert, um die nicht nach vorne gerichteten Kameras mit Bezug auf die nach vorne gerichteten Kameras auszurichten, wie in 4 gezeigt ist.
-
5 ist ein Flussdiagramm eines Verfahrens, das die temporäre Integration jeder Kamerapose über die Zeit veranschaulicht. In Block 50 wird eine mit einem Muster versehene Darstellung, wie etwa ein Schachbrettmuster auf einem Boden, bereitgestellt. Das Schachbrett weist mehrere Orientierungspunkte mit bekannten Positionen auf, welche Eckenbegrenzungen und farbige Quadrate aufweisen, aber nicht darauf beschränkt sind.
-
In Block 51 wird ein Fahrzeug über die mit einem Muster versehene Darstellung gefahren, wobei jede jeweilige Kamera Bilder der mit einem Muster versehenen Darstellung zu verschiedenen Zeitpunkten aufnimmt. Vorzugsweise werden Fischaugenkameras verwendet. Darüber hinaus kann das Fahrzeug über die mit einem Muster versehene Darstellung gefahren werden oder ein Fahrzeug kann sich auf einer Vorrichtung befinden, welche das Fahrzeug über die mit einem Muster versehene Darstellung hinwegbewegt.
-
In Block 52 werden mehrere Einzelbilder der mit einem Muster versehenen Darstellung, die von einer jeweiligen Kamera aufgenommen wurden, überlagert. Dies wird für jede jeweilige Kamera durchgeführt. Zum Schätzen einer Anfangspose für jede jeweilige Kamera wird die folgende Unterroutine verwendet. Zu einem Zeitpunkt t=0 repräsentiert M das von der jeweiligen Kamera beobachtete Gitter. Zu einem Zeitpunkt t=1 repräsentiert S das von der gleichen jeweiligen Kamera beobachtete Gitter. Die Aufgabe besteht darin, die Pose der jeweiligen Kamera bei t=0 zu finden und dann die Gitter S und M zu überlagern, um ein verbessertes Gitter M' zu erzeugen.
-
Bei t=0 wird die Kamerapose (R0, t0), wobei M gegeben ist, unter Verwendung der Technik bestimmt, die in den Publikationen „Flexible Camera Calibration by Viewing a Plane from Unknown Orientations“ von Zhengyou Zhang, ICCV, Sept. 20-27, Kerkyra, Griechenland, 1999 und „A Four-step Camera Calibration Procedure with Implicit Image Correction“ von Janne Heikkila und Olli Silven, CVPR97, Juni 17-19, 1997, San Juan, Puerto Rico, 1997 beschrieben sind.
-
Es wird eine Deltapose (ΔR
1, Δt
1) bestimmt, indem die Lesewerte der Fahrzeuggeschwindigkeit v
H und der Gierrate ω
H verwendet werden, wenn sie von Fahrzeugsensoren zur Verfügung stehen, wie durch die folgende Matrix dargestellt ist:
-
Dies wird als Bewegungsmodell aufgefasst.
-
Zwischen der aktuellen Pose bei t=0 und der Pose bei t=1 wird bei gegebenem Abgleich zwischen S und M die Kamerapose (R1, t1) für das beobachtete Gitter S zum Zeitpunkt t=1 geschätzt. Dies wird als Messmodell aufgefasst.
-
Es wird ein erweitertes Kalman-Filter verwendet, u m die Kamerapose (R'1, t'1) zum Zeitpunkt t=1 zu verfeinern.
-
Das Gitter S wird zurück auf das Gitter M überlagert, was zu dem verbesserten Gitter M' führt, wenn die beiden Posen bekannt sind. Das verbesserte Gitter M' wird mit Bezug auf einen Bodenkoordinatenrahmen O-XYZ aktualisiert. Dies stellt eine Anfangskamerapose für diese jeweilige Kamera bereit. Als Folge wird eine überlagerte Gitterabbildung für die jeweilige Kamera und die Kameratrajektorie mit Bezug auf die Gitterabbildung bestimmt, wie in 6 gezeigt ist.
-
Eine ähnliche Prozedur wie bei t=1 wird für t=2, ..., T ausgeführt.
-
Als alternative Herangehensweise wird, wenn die Fahrzeuggeschwindigkeit vH und die Gierrate ωH nicht verfügbar sind, die Kamerapose (Rt, tt) für t=1, ..., T bestimmt, indem das gegebene Gitter M und das beobachtete aktuelle Gitter St aufeinander abgestimmt werden.
-
Das beobachtete Gitter St für t=1, ..., T wird auf das Gitter M zurückprojiziert und damit überlagert, für ein verbessertes Gitter M'.
-
In Block 53 werden die relativen extrinsischen Eigenschaften von jeder jeweiligen Kamera relativ zu der Referenzkamera (z.B. der nach vorne gerichteten Kamera) geschätzt.
-
In Block 54 wird eine Entsprechung zwischen Merkmalspunkten von jeder jeweiligen Kamera unter Verwendung von Orientierungspunkte wie etwa den Hauptlinien (die beispielsweise identifizierbare Kanten unterscheiden) und Farbquadraten gefunden. Das heißt, es werden einander entsprechende Ecken zwischen jeweiligen Bildern von verschiedenen Kameras ermittelt, zusätzlich zu schraffierten Quadraten, Hauptlinien und Merkmalspunkten (z.B. sich schneidenden Linien).
-
In Block 55 werden mit den Entsprechungen der Ecken, Kanten, Quadrate und Merkmalspunkte die Gitterabbildungen der Bilder, die von den jeweiligen Kameras aufgenommen wurden, ausgerichtet. Die Trajektorie jeder Kamera wird bestimmt.
-
In Block 56 wird auf der Grundlage der Ausrichtung jede Kamerapose mit Bezug auf die Referenzkamera (z.B. die nach vorne gerichtete Kamera) bestimmt. Die Kamerapose wird durch ihre Rotations- und Translationsmatrix definiert.
-
Für die Zeitpunkte t=1, ..., T sei
die Trajektorie der Frontkamera,
die Trajektorie der linken Kamera,
die Trajektorie der rechten Kamera und
die Trajektorie der Heckkamera. Die geschätzte Pose mit Bezug auf die nach vorne gerichtete Kamera wird berechnet zu:
-
Für die relative Pose [R
I, t
I] der nach links gerichteten Kamera:
-
Für die relative Pose ([R
g, t
g] der nach rechts gerichteten Kamera:
-
Für die relative Pose [R
r, t
r] der nach hinten gerichteten Kamera:
-
Die hergeleiteten Matrizen R̅
I,,R̅
g, und R̅
r sind keine Rotationsmatrizen. Der folgende Normierungsprozess wird benötigt, um die nächste Rotationsmatrix zu finden. Wenn eine Nicht-Rotationsmatrix R̅ gegeben ist, ist es wünschenswert, die Rotationsmatrix R so zu finden, dass die Frobenius-Matrixnorm minimiert wird:
-
Die Lösung der vorstehenden Optimierung ist R = UVT, wobei U und V linke und rechte singuläre Vektoren von R̅ sind, d.h. R̅ = UΣVT und Σ eine Diagonalmatrix aus singulären Werten ist.
-
In Block 57 werden in Ansprechen auf ein Bestimmen der Pose von jeder der Kameras diese so kalibriert, dass mit Bezug auf die Frontkamera eine Entsprechung angewendet wird.
-
Obwohl bestimmte Ausführungsformen der vorliegenden Erfindung im Detail beschrieben worden sind, wird der Fachmann auf dem Gebiet, das diese Erfindung betrifft, verschiedene alternative Konstruktionen und Ausführungsformen erkennen, um die Erfindung, die durch die folgenden Ansprüche definiert ist, in die Praxis umzusetzen.