DE102019209473A1 - Verfahren und Vorrichtung zur schnellen Erfassung von sich wiederholenden Strukturen in dem Bild einer Straßenszene - Google Patents

Verfahren und Vorrichtung zur schnellen Erfassung von sich wiederholenden Strukturen in dem Bild einer Straßenszene Download PDF

Info

Publication number
DE102019209473A1
DE102019209473A1 DE102019209473.2A DE102019209473A DE102019209473A1 DE 102019209473 A1 DE102019209473 A1 DE 102019209473A1 DE 102019209473 A DE102019209473 A DE 102019209473A DE 102019209473 A1 DE102019209473 A1 DE 102019209473A1
Authority
DE
Germany
Prior art keywords
image
point
time
depth
space
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102019209473.2A
Other languages
English (en)
Inventor
Boris Lugez
Lucien Garcia
Arnaud Faure
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Continental Autonomous Mobility Germany GmbH
Original Assignee
Continental Automotive GmbH
Continental Automotive France SAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Continental Automotive GmbH, Continental Automotive France SAS filed Critical Continental Automotive GmbH
Publication of DE102019209473A1 publication Critical patent/DE102019209473A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/36Input/output arrangements for on-board computers
    • G01C21/3602Input other than that of destination using image analysis, e.g. detection of road signs, lanes, buildings, real preceding vehicles using a camera
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/97Determining parameters from multiple pictures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • G06V20/588Recognition of the road, e.g. of lane markings; Recognition of the vehicle driving pattern in relation to the road
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30248Vehicle exterior or interior
    • G06T2207/30252Vehicle exterior; Vicinity of vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Automation & Control Theory (AREA)
  • Image Analysis (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Traffic Control Systems (AREA)
  • Image Processing (AREA)

Abstract

Gegenstand der vorliegenden Erfindung ist ein Verfahren zur Verarbeitung von Bildern, das die Identifizierung mindestens eines gleichen Punktes, der auf jedem Bild einer Bildsequenz erscheint, ermöglicht, wobei die Bildsequenz ein erstes Bild, ein zweites Bild und ein drittes Bild umfasst, das zu einem ersten Zeitpunkt, zu einem zweiten Zeitpunkt, später als der erste Zeitpunkt und zu einem dritten Zeitpunkt, später als der zweite Zeitpunkt, von einer Kamera in einem Kraftfahrzeug erzeugt wird. Das Verfahren umfasst die Schritte zum Erfassen einer Vielzahl von identischen Punkten in jedem Bild der Bildsequenz, bezogen auf eine Vielzahl von sich wiederholenden Mustern in jedem Bild der Bildsequenz und zum Identifizieren (E19), in dem zweiten Bild und in dem dritten Bild, der identischen Punkte, die den Punkten im Raum entsprechen, für die die berechnete Tiefe identisch ist, wobei diese Punkte im Raum jeweils in dem zweiten Bild und in dem dritten Bild ein und denselben realen Punkt darstellen.

Description

  • Die Erfindung betrifft das Gebiet der Unterstützung des Fahrens eines Kraftfahrzeugs und betrifft insbesondere ein Verfahren und eine Vorrichtung zur Verarbeitung von Bildern, die von einer Kamera eines Kraftfahrzeugs aufgenommen werden, sowie ein Kraftfahrzeug mit einer solchen Vorrichtung.
  • Heutzutage ist es bekannt, dass ein Kraftfahrzeug mit einem Fahrassistenzsystem ausgestattet wird, das allgemein als ADAS (Advanced Driver Assistance System) bezeichnet wird. Ein solches System umfasst in bekannter Weise eine Videokamera, die beispielsweise an der Frontscheibe des Fahrzeugs angebracht ist und die es ermöglicht, einen Strom bzw. eine Folge von Bildern zu erzeugen, die die Umgebung des Fahrzeugs darstellen. Diese Bilder werden von einer Bildverarbeitungsvorrichtung mit dem Ziel verwendet, den Fahrer zu unterstützen, z.B. durch das Erfassen eines Hindernisses oder das Überschreiten einer weißen Linie. Die von den von der Kamera aufgenommenen Bildern gelieferten Informationen müssen daher hinreichend genau und relevant sein, damit das System den Fahrer zuverlässig unterstützen kann.
  • Insbesondere ist es für die Nutzung dieser Bilder notwendig, den optischen Verlauf einer bestimmten Anzahl von Punkten in der Bilderserie zu verfolgen. Genauer gesagt beinhaltet dies, die Trajektorie bzw. Bahn dieser Punkte in einer Folge von Bildern, d.h. in einer Vielzahl von aufeinanderfolgenden Bildern, zu verfolgen und deren Position im Raum zu bestimmen.
  • Um einen Punkt, der durch ein Pixel eines ersten Bildes dargestellt wird, in einem zweiten aufeinanderfolgenden Bild zu verfolgen, besteht eine bekannte Lösung darin, eine Zone von Pixeln um das Pixel herum in dem zweiten Bild zu analysieren, um so die Richtung zu bestimmen, in der sich der Punkt zwischen dem ersten Bild und dem zweiten Bild bewegt.
  • Dieses Verfahren der Bildverarbeitung weist jedoch einen großen Nachteil auf. Tatsächlich erfasst bzw. erkennt das Verfahren für einen bestimmten Punkt eines identischen Musters, das sich mehrmals auf jedem Bild einer Sequenz von Bildern wiederholt, eine Vielzahl ähnlicher Signaturen auf ein und demselben sogenannten „epipolaren“ Segment, gemäß dem die diesen Mustern entsprechenden Objekte angeordnet sind, beispielsweise eine Vielzahl von Pfosten einer entlang einer Straße installierten Sicherheitsbarriere. Anders ausgedrückt, schlägt dieses Verfahren der Bildverarbeitung mehrere mögliche Lösungen für den Ort bzw. die Position ein und desselben Punktes eines repetitiven bzw. sich wiederholenden Musters in jedem Bild der Bildsequenz vor. In diesem Zusammenhang können sich die dem Fahrer gegebenen Informationen über den Abstand zwischen Objekt und Fahrzeug als falsch erweisen, was ein Risiko für die Sicherheit der Insassen des Fahrzeugs darstellen kann.
  • Daher besteht die Notwendigkeit für eine Lösung, die es ermöglicht, diese Nachteile zumindest teilweise zu beheben, indem diese Art von Unklarheiten beseitigt werden.
  • Zu diesem Zweck ist der Gegenstand der Erfindung ein Verfahren zum Verarbeiten von Bildern, das die Identifizierung mindestens eines gleichen Punktes ermöglicht, der auf jedem Bild einer Bildsequenz erscheint, wobei die Bildsequenz ein erstes Bild, ein zweites Bild und ein drittes Bild umfasst, das jeweils zu einem ersten Zeitpunkt, zu einem zweiten Zeitpunkt, später als der erste Zeitpunkt und zu einem dritten Zeitpunkt, später als der zweite Zeitpunkt, durch eine in einem Kraftfahrzeug montierte Kamera erzeugt wird, wobei das Verfahren dahingehend erwähnenswert ist, dass es die folgenden Schritte umfasst:
    • • Erfassen einer Vielzahl von identischen Punkten in jedem Bild der Bildsequenz bezüglich einer Vielzahl von sich wiederholenden Mustern in jedem Bild der Bildsequenz,
    • • für jeden identischen Punkt, der in dem zweiten Bild der Bildsequenz erfasst wird, Berechnen der Tiefe zu dem ersten Zeitpunkt des Punktes im Raum entsprechend dem identischen Punkt des zweiten Bildes,
    • • für jeden identischen Punkt, der in dem dritten Bild der Bildsequenz erfasst wird, Berechnen der Tiefe zu dem ersten Zeitpunkt des Punktes im Raum entsprechend dem identischen Punkt des dritten Bildes,
    • • Identifizieren, in dem zweiten Bild und dem dritten Bild, der identischen Punkte entsprechend zu den Punkten im Raum, für die die berechnete Tiefe identisch ist, wobei diese Punkte im Raum jeweils in dem zweiten Bild und in dem dritten Bild einen und den gleichen realen Punkt darstellen.
  • Das erfindungsgemäße Verfahren ermöglicht es in vorteilhafter Weise, effektiv und schnell sich wiederholte Muster zu unterscheiden, die in jedem Bild einer Bildsequenz auftreten, um so insbesondere eine zuverlässige Unterstützung des Fahrers des Fahrzeugs zu ermöglichen.
  • Das erfindungsgemäße Verfahren ermöglicht es auch, Mehrdeutigkeitsprobleme im Zusammenhang mit dem Vorhandensein einer sich wiederholenden Struktur zu lösen und so korrekte Tiefeninformationen für diese sich wiederholenden d.h. repetitiven Strukturen zu erhalten.
  • Vorzugsweise wird die Tiefe des dem identischen Punkt des zweiten Bildes entsprechenden Punkts im Raum zu dem ersten Zeitpunkt auf der Grundlage der Rotationsmatrix und des Translationsvektors zwischen dem ersten Bild und dem zweiten Bild berechnet.
  • Wiederum vorzugsweise wird die Tiefe zu dem ersten Zeitpunkt des dem identischen Punkt des dritten Bildes entsprechenden Punkts im Raum auf der Grundlage der Rotationsmatrix und des Translationsvektors zwischen dem ersten Bild und dem dritten Bild berechnet.
  • In vorteilhafter Weise umfasst das Verfahren einen Schritt zum Speichern der Tiefe nach dem Berechnungsschritt für jeden identischen Punkt, der in dem zweiten Bild der Bildsequenz erfasst wird.
  • Wiederum vorteilhaft, umfasst das Verfahren einen Schritt zum Speichern der Tiefe nach dem Berechnungsschritt für jeden identischen Punkt, der in dem dritten Bild der Bildsequenz erkannt wird.
  • Solche Speicherungen ermöglichen es, die Ergebnisse der Tiefenberechnungen zu speichern.
  • Die Erfindung betrifft auch ein Bildverarbeitungsmodul, das die Identifizierung mindestens eines gleichen Punktes ermöglicht, der auf jedem Bild einer Bildsequenz erscheint, wobei die Bildsequenz ein erstes Bild, ein zweites Bild und ein drittes Bild umfasst, das jeweils zu einem ersten Zeitpunkt, zu einem zweiten Zeitpunkt, später als der erste Zeitpunkt, und zu einem dritten Zeitpunkt, später als der zweite Zeitpunkt, durch eine in einem Kraftfahrzeug montierte Kamera erzeugt wird, wobei das Bildverarbeitungsmodul dadurch gekennzeichnet ist, dass es konfiguriert ist um:
    • • Erfassen einer Vielzahl von identischen Punkten in jedem Bild der Bildsequenz bezüglich einer Vielzahl von sich wiederholenden Mustern in jedem Bild der Bildsequenz,
    • • Berechnen der Tiefe zu dem ersten Zeitpunkt des Punktes im Raum entsprechend dem identischen Punkt des zweiten Bildes, für jeden identischen Punkt, der in dem zweiten Bild der Bildsequenz erfasst wird,
    • • Berechnen der Tiefe zu dem ersten Zeitpunkt des Punktes im Raum entsprechend zu dem identischen Punkt des dritten Bildes, für jeden identischen Punkt, der in dem dritten Bild der Bildsequenz erfasst wird,
    • • Identifizieren, in dem zweiten Bild und in dem dritten Bild, von identischen Punkten, die den Punkten im Raum entsprechen, für die der berechnete Abstand identisch ist, wobei diese Punkte im Raum jeweils in dem zweiten Bild und in dem dritten Bild ein und denselben realen Punkt darstellen.
  • Vorzugsweise ist das Bildverarbeitungsmodul konfiguriert, um die Tiefe zu dem ersten Zeitpunkt des Punkts im Raum entsprechend zu dem identischen Punkt des zweiten Bildes auf der Grundlage der Rotationsmatrix und des Translationsvektors zwischen dem ersten Bild und dem zweiten Bild zu berechnen.
  • Wiederum vorzugsweise, ist das Bildverarbeitungsmodul konfiguriert, um die Tiefe zum ersten Zeitpunkt des Punkts im Raum entsprechend zu dem identischen Punkt des dritten Bildes auf der Grundlage der Rotationsmatrix und des Translationsvektors zwischen dem ersten Bild und dem dritten Bild zu berechnen.
  • In vorteilhafter Weise ist das Bildverarbeitungsmodul konfiguriert, um die Tiefe für jeden in dem zweiten Bild der Bildsequenz erfassten identischen Punkt und die Tiefe für jeden in dem dritten Bild der Bildsequenz erfassten identischen Punkt zu speichern.
  • Die Erfindung betrifft auch ein Kraftfahrzeug, das ein Bildverarbeitungsmodul umfasst, wie es oben dargestellt ist.
  • Weitere Merkmale und Vorteile der Erfindung ergeben sich aus der folgenden Beschreibung unter Bezugnahme auf die beiliegenden Figuren, die als nicht einschränkendes Beispiel angeführt werden und in denen gleiche Bezugszeichen ähnliche Objekte bezeichnen.
    • - 1 veranschaulicht schematisch ein Fahrzeug gemäß der Erfindung.
    • - 2 veranschaulicht schematisch ein erstes Bild und ein zweites Bild, das dem ersten Bild folgt, die von der Kamera aufgenommen werden.
    • - 3 veranschaulicht schematisch zwei Projektionen einer Pixelzone eines ersten Bildes in ein zweites Bild durch Homographie auf einer Projektionsebene, die sich jeweils in einem vorbestimmten minimalen Abstand und in einem vorbestimmten maximalen Abstand befindet.
    • - 4 veranschaulicht schematisch eine homographische Projektion einer Reihe von Punkten eines ersten Bildes in ein zweites Bild auf einer Projektionsebene in einem vorgegebenen Abstand, wobei die Korrespondenz zwischen den beiden Bildern über eine Rotationsmatrix und einen Translationsvektor der Kamera erfolgt.
    • - 5 veranschaulicht schematisch ein epipolares Segment, das in einem zweiten Bild durch die Projektion eines Satzes bzw. einer Reihe von Pixeln eines ersten Bildes auf eine Ebene erhalten wird, die nacheinander in einer Vielzahl von vorbestimmten Abständen liegt, die zwischen einem vorbestimmten minimalen Abstand und einem vorbestimmten maximalen Abstand liegen.
    • - 6 veranschaulicht schematisch die Verschiebung eines Fahrzeugs in Bezug auf eine Vielzahl von sich wiederholenden Strukturen.
    • - 7 stellt das Lochblendenmodell dar, das hier verwendet wird, um den Prozess zum Bilden der Bilder durch eine Kamera zu beschreiben.
    • -Figur 8 veranschaulicht eine Ausführungsform des Erfassungsschrittes des Verfahrens zur Verarbeitung von Bildern gemäß der Erfindung.
    • - 9 veranschaulicht eine Ausführungsform des Verfahrens zur Verarbeitung von Bildern gemäß der Erfindung.
  • Die Bildverarbeitungsvorrichtung gemäß der Erfindung wird nun unter Bezugnahme auf die 1 bis 8 beschrieben.
  • Unter Bezugnahme auf 1 ist die Vorrichtung 10 zur Bildverarbeitung in einem Kraftfahrzeug 1 montiert. Mit dem Begriff „Kraftfahrzeug“ ist standardmäßig ein Straßenfahrzeug, das von einem Hubkolbenmotor, einem Verbrennungsmotor, einem Elektromotor oder einem Gasturbinenmotor, oder einen Hybridmotor, angetrieben wird, wie zum Beispiel ein Pkw, ein Transporter, ein Lastwagen usw. gemeint.
  • Die Vorrichtung 10 umfasst eine Videokamera 100 und ein Bildverarbeitungsmodul 200, das beispielsweise durch einen in dem Fahrzeug 1 eingebetteten Computer (nicht dargestellt) implementiert ist. Vorzugsweise wird die Kamera 100 in Höhe des mittleren oberen Teils der Frontscheibe (nicht dargestellt) des Fahrzeugs 1 montiert. Es sei jedoch darauf hingewiesen, dass die Kamera 100 an jeder anderen geeigneten Stelle am Fahrzeug 1 (Seite, Heck, etc.) montiert werden kann. Die Kamera 100 ist konfiguriert, um eine Vielzahl von Bildern der Umgebung 2 des Fahrzeugs 1, zum Beispiel der Straße 2A und ihrer Ränder, zu erzeugen, so dass das Bildverarbeitungsmodul 200 sie verwendet.
  • Das Bildverarbeitungsmodul 200 verarbeitet die von der Kamera 100 erzeugten Bilder, um dem Fahrer des Fahrzeugs 1 eine Fahrunterstützung anzubieten. Eine solche Bildverarbeitung kann beispielsweise darin bestehen, Objekte in den Bildern zu erkennen, wie z.B. Wegweiser, Straßenbordsteine, Hindernisse (Fußgänger oder andere...), um den Fahrer so jeweils über eine Geschwindigkeitsbegrenzung, eine Gefahr des Verlassens der Straße oder eine Kollisionsgefahr zu informieren. Eine solche Bildverarbeitung kann es auch ermöglichen, die Höhe einer Brücke oder die Position eines Hindernisses zu messen, um den Fahrer darüber zu warnen oder eine Notbremsung durchzuführen.
  • Wenn sich wiederholende Muster auf den von der Kamera 100 erzeugten aufeinanderfolgenden Bildern erscheinen (d.h. identische Pixel, die an mehreren Stellen in den Bildern erscheinen), kann es sinnvoll sein, sie von einem Bild zum anderen zu unterscheiden, um Interpretationsfehler zu vermeiden, die ein Risiko für die Fahrt des Fahrzeugs 1 darstellen könnten. Diese sich wiederholenden Muster können beispielsweise den Pfosten einer Leitplanke entsprechen, die entlang der Trajektorie bzw. der Bahn des Fahrzeugs 1 verläuft, so dass mehrere von ihnen auf aufeinanderfolgenden Bildern erscheinen, die von der Kamera 100 erzeugt werden.
  • Bevor man Gruppen von Pixeln unterscheiden kann, die repetitive Muster darstellen (die also identisch sind, aber an mehreren Stellen in jedem Bild der Folge d.h. Sequenz aufeinanderfolgender Bilder erscheinen), ist es zunächst notwendig, die Punkte oder Gruppen von Pixeln zu erkennen, die diesen repetitiven Mustern in der Folge von Bildern entsprechen.
  • Eine bevorzugte Ausführungsform, die es ermöglicht, die Punkte oder Gruppen von Pixeln zu erkennen, die sich wiederholenden Mustern in der Reihenfolge der Bilder entsprechen, wird nun beschrieben. Es sei jedoch darauf hingewiesen, dass jedes andere geeignete Erfassungsschema verwendet werden könnte, ohne den Anwendungsbereich der vorliegenden Erfindung einzuschränken.
  • In der beispielhaft beschriebenen Ausführungsform ist das Bildverarbeitungsmodul 200 mit Bezug auf 2 für die Durchführung einer ersten Reihe von Aufgaben konfiguriert. Beispielhaft wird diese erste Reihe von Aufgaben nachstehend unter Bezugnahme auf drei aufeinanderfolgende Bilder einer Bildsequenz beschrieben: ein erstes Bild I1, ein zweites Bild I2, das später als das erste Bild I1 ist, und ein drittes Bild I3 (das nicht dargestellt ist), das später als das zweite Bild I2 ist, wobei diese Bilder von der Kamera 100 jeweils zu einem ersten Zeitpunkt t1, einem zweiten Zeitpunkt t2 und einem dritten Zeitpunkt t3, vorzugsweise aufeinanderfolgend, aufgenommen wurden.
  • Zunächst ist das Bildverarbeitungsmodul 200 konfiguriert, um für jedes Pixel des ersten Bildes I1, für jedes Pixel des zweiten Bildes I2 und für jedes Pixel des dritten Bildes I3 (das nicht dargestellt wird) eine charakteristische Signatur zu bestimmen, die das Pixel anzeigt.
  • Darüber hinaus ist das Bildverarbeitungsmodul 200 unter Bezugnahme auf 3 konfiguriert, um eine Rotationsmatrix R und einen Translationsvektor T in Bezug auf die Rotation und Translation der Kamera 100 zwischen zwei aufeinanderfolgenden Bildern zu bestimmen, hier zwischen dem ersten Bild I1 und dem zweiten Bild I2, sowie zwischen dem zweiten Bild I2 und dem dritten Bild I3 (das nicht dargestellt ist). Die Rotationsmatrix R und der Translationsvektor T entsprechen jeweils der Rotation und der Translation der Kamera 100 in einem an das Objekt gebundenen Benchmark.
  • Die Bestimmung der Rotationsmatrix R und des Translationsvektors T kann beispielsweise unter Verwendung eines statischen Objekts, das auf den drei Bildern dargestellt ist, wie beispielsweise der Straße oder einer Brücke, oder anderweitig eines dynamischen Objekts, das sich in Bezug auf die Kamera 100 bewegt, wie beispielsweise eines anderen Fahrzeugs, erfolgen.
  • Im letzteren Fall ist es notwendig zu wissen, wo sich das Objekt im Bild befindet (z.B. unter Verwendung eines an sich bekannten Klassifizierungsschemas) und dann die Rotationsmatrix R und den Translationsvektor T der Kamera 100 in dem an das Objekt gebundenen Benchmark zu bestimmen, wobei der Verschiebungsvektor T in diesem Fall mit einem Koeffizienten α gewichtet wird, der in bekannter Weise durch Bildverarbeitung bestimmt werden kann, wobei die Größe des Objekts bekannt ist.
  • Die Bestimmung der Rotationsmatrix R und des Translationsvektors T zwischen dem ersten Bild I1 und dem zweiten Bild I2 kann durch einen Algorithmus zur Bildverarbeitung oder durch den Einsatz eines oder mehrerer Trägheitssensoren und/oder geographischer Positionssensoren (z.B. GPS) in an sich bekannter Weise erfolgen.
  • Danach ist das Bildverarbeitungsmodul 200 unter Bezugnahme auf 2 konfiguriert, um ein Pixel PA(1) in dem ersten Bild I1 auszuwählen, für das man in dem zweiten Bild I2 ein entsprechendes Pixel sucht. Mit dem Begriff „entsprechendes Pixel“ ist ein Pixel gemeint, das ein und dieselbe räumliche Zone der Umgebung 2 des Fahrzeugs 1 darstellt.
  • Immer noch mit Bezug auf 2 ist das Bildverarbeitungsmodul 200 auch konfiguriert, um in dem ersten Bild I1 einen anfänglichen Satz von Pixeln zu bestimmen, der das ausgewählte Pixel PA(1) und eine Vielzahl von Pixeln PA(2), ...., PA(5) umfasst, die sich in der Nachbarschaft des ausgewählten Pixels PA(1) befinden.
  • Unter dem Begriff Nachbarschaft versteht man in bekannter Weise eine Vielzahl von Pixeln PA(2), ...., PA(5) angrenzend an das ausgewählte Pixel PA(1) in dem ersten Bild I1. Die Anzahl der Pixel der Nachbarschaft ist in diesem Beispiel aus Gründen der Übersichtlichkeit vier, aber es versteht sich von selbst, dass die Nachbarschaft des ausgewählten Pixels PA(1) mehr oder weniger als vier Pixel umfassen kann (allgemein „n“ Pixel, wobei „n“ eine natürliche ganze Zahl größer oder gleich 2 ist).
  • Ein solcher anfänglicher Satz von Pixeln PA(1), PA(2), ...., PA(5) kann ein Fenster oder ein Teil des ersten Bildes I1 sein, zum Beispiel ein Fenster von 10 × 10 Pixeln. Dabei ist zu beachten, dass die Anzahl n der Pixel und die Form des Fensters oder des Bildabschnitts je nach Design variieren kann. Es sei auch darauf hingewiesen, dass beispielhaft fünf Pixel in dem Satz dargestellt wurden, dass die Anzahl der Pixel des Satzes aber natürlich kleiner oder größer als fünf sein könnte.
  • Das Bildverarbeitungsmodul 200 ist auch konfiguriert, um in dem zweiten Bild I2 eine Vielzahl von Sätzen von Pixeln PB(1), ...., PB(5) durch Projektion auf der Grundlage der bestimmten Rotationsmatrix R und des bestimmten Translationsvektors T des bestimmten anfänglichen Satzes von Pixeln PA(1), ...., PA(5) zu bestimmen. Jeder Satz dieser Vielzahl von Sätzen von Pixeln PB(1), ...., PB(5) umfasst ein erstes Pixel PB(1), das dem im ersten Bild I1 ausgewählten Pixel PA(1) entspricht.
  • Unter Bezugnahme auf die 3 und 4 wird diese Projektion auf einer vorgegebenen Ebene W durchgeführt, die in verschiedenen vorgegebenen Abständen D vom optischen Zentrum C1 der Kamera 100 für das erste Bild I1 liegt.
  • Genauer gesagt, ist das Bildverarbeitungsmodul 200 unter Bezugnahme auf 3 zunächst konfiguriert, um in dem zweiten Bild I2 einen ersten Satz von Pixeln PBmin(1), ...., PBmin(5) durch Projektion des anfänglichen Satzes von Pixeln PA(1), ...., PA(5), der auf einer vorbestimmten Ebene W der Projektion bestimmt wurde, die in einem vorbestimmten minimalen Abstand Dmin liegt, auf der Grundlage der bestimmten Rotationsmatrix R und des bestimmten Translationsvektors T zu bestimmen. Dieser erste Satz PBmin(1), ...., PBmin(5) umfasst ein erstes Pixel PBmin(1), das dem in dem ersten Bild I1 ausgewählten Pixel PA(1) entspricht.
  • Ebenso ist das Bildverarbeitungsmodul 200 noch unter Bezugnahme auf 3 konfiguriert, um in dem zweiten Bild I2 einen zweiten Satz von Pixeln PBmax(1), ...., PBmax(5) durch Projektion auf der Grundlage der bestimmten Rotationsmatrix R und des bestimmten Translationsvektors T des bestimmten anfänglichen Satzes PA(1), ...., PA(5) auf der Ebene W in einem vorbestimmten maximalen Abstand Dmax zu bestimmen. Dieser zweite Satz PBmax(1), ...., PBmax(5) umfasst ein zweites Pixel PBmax(1), das dem im ersten Bild I1 ausgewählten Pixel PA(1) entspricht.
  • Unter Bezugnahme auf 4 entspricht die Bestimmung der Projektion eines Pixels des ersten Bildes I1 in dem zweiten Bild I2 über eine Projektionsebene W einer Homographie des Pixels in einem ersten Bild, dessen Ursprung das optische Zentrum C1 der Kamera 100 während der Aufnahme des ersten Bildes I1 ist, zu einem zweiten Bild, dessen Ursprung das optische Zentrum C2 der Kamera 100 während der Aufnahme des zweiten Bildes I2 ist, über die Projektionsebene W, die sich an einem der bestimmten Abstände befindet. Eine solche homographische Projektion erfolgt auf der Grundlage der Rotationsmatrix R und des Translationsvektors T, eines Vektors n2 senkrecht zur Projektionsebene W und des Abstands D der Ebene W in Bezug zu dem optischen Zentrum C1 wie folgt: H = R ( ( T × n 2 T D ) .
    Figure DE102019209473A1_0001
  • Eine solche Homographie ist an sich bekannt, und wird daher hier nicht näher erläutert.
  • In der Theorie ist der minimale Abstand Dmin Null und der maximale Abstand Dmax entspricht der Unendlichkeit. In der Praxis ist es möglich, einen minimalen Abstand Dmin von einigen Metern, z.B. 5 Metern, und einen maximalen Abstand Dmax von einigen Zehn Metern, z.B. 50 oder 100 Metern, zu wählen, insbesondere wenn das im ersten Bild I1 ausgewählte Pixel PA(1) ein identifiziertes Objekt darstellt, dessen Abstand zur Kamera 100 bekannt ist, z.B. die Straße, die entlang des unteren Teils der von der Kamera 100 aufgenommenen Bilder verläuft.
  • Die Ebene W der Projektion kann entsprechend der Art des ausgewählten Pixels PA(1) bestimmt werden. Wenn beispielsweise das ausgewählte Pixel PA(1) eine Zone der Straße 2A darstellt, auf der das Fahrzeug 1 fährt, kann eine Ebene W entsprechend der Ebene der Straße 2A verwendet werden, wie in 2 schematisch dargestellt. Diese Ebene W ist eine virtuelle Projektionsebene, die es ermöglicht, durch Homographie, d.h. geometrisch, die entsprechende Position eines Pixels des ersten Bildes I1 im zweiten Bild I2 abzuschätzen.
  • Nachdem das erste Pixel PBmin(1) und das zweite Pixel PBmax(1) ausgewählt wurden, ist das Bildverarbeitungsmodul 200 konfiguriert, um ein Segment U zu bestimmen, das das erste Pixel PBmin(1) und das zweite Pixel PBmax(1), ein epipolares Segment genannt, verbindet.
  • Unter Bezugnahme auf 5 ist das Bildverarbeitungsmodul 200 danach konfiguriert, um eine Vielzahl von Punkten PB2(1), ...., PB5(1) entlang des bestimmten Segments U auszuwählen. In einer vorteilhaften Weise können die Punkte PB2(1), ...., PB5(1) entlang des Segments U beginnend mit dem ersten Pixel PBmin(1) verteilt und um einen Schritt vorbestimmter Breite, beispielsweise alle 0,1 Pixel, beabstandet werden. Die Anzahl der auf dem Segment U ausgewählten Punkte PB2(1), ...., PB5(1) ist in diesem Beispiel vier, aber es versteht sich von selbst, dass sie größer oder kleiner als vier sein können.
  • Das Bildverarbeitungsmodul 200 ist konfiguriert, um jeden ausgewählten Punkt PB2(1), ...., PB5(1) mit einem Pixel des zweiten Bildes I2 zu verbinden d.h. zu assoziieren oder zuzuordnen. In der Praxis wird davon ausgegangen, dass ein Punkt zugeordnet wird d.h. assoziiert ist, wenn seine Koordinaten in dem Bild den Koordinaten eines Pixels entsprechen, d.h. dass sich der ausgewählte Punkt in der Zone des durch das Pixel abgedeckten (oder dargestellten) Bildes befindet.
  • Das Bildverarbeitungsmodul 200 ist konfiguriert, um die Signatur jedes Pixels, das einem ausgewählten Punkt PB2(1), ...., PB5(1) entspricht, mit der Signatur des in dem ersten Bild I1 ausgewählten Pixels zu vergleichen.
  • Das Bildverarbeitungsmodul 200 ist konfiguriert, um ein sich wiederholendes Muster zwischen dem ersten Bild I1 und dem zweiten Bild I2 zu erfassen, wenn eine Vielzahl von Signaturen von Pixeln, die den Punkten PB2(1), ...., PB5(1) zugeordnet sind, die auf dem Segment U ausgewählt sind, der Signatur des in dem ersten Bild I1 ausgewählten Pixels entsprechen.
  • Das Bildverarbeitungsmodul 200 ist auch konfiguriert, um die oben beschriebenen Aufgaben zwischen dem zweiten Bild I2 und dem dritten Bild I3 (das nicht dargestellt wird) und allgemeiner zwischen zwei aufeinanderfolgenden Bildern einer Bildsequenz auszuführen, um wiederholte Muster in jedem Bild der Bildsequenz I1, I2, I3 zu erkennen.
  • Um einen Punkt oder eine Pixelgruppe zu identifizieren, die ein und demselben Muster in zwei aufeinanderfolgenden Bildern entspricht, aus einer Vielzahl von aufeinanderfolgenden Mustern, ist danach das Bildverarbeitungsmodul 200 konfiguriert, um eine zweite Reihe von Aufgaben auszuführen.
  • Zunächst ist das Bildverarbeitungsmodul 200 konfiguriert, um eine Vielzahl von identischen Punkten in jedem Bild der Bildsequenz I1, I2, I3 zu erfassen, die sich auf eine Vielzahl von repetitiven Mustern in jedem Bild der Bildsequenz I1, I2, I3 bezieht.
  • Das Bildverarbeitungsmodul 200 ist konfiguriert, um für jeden in dem zweiten Bild I2 erfassten identischen Punkt der Bildsequenz I1, I2, I3 die Tiefe des dem identischen Punkt des zweiten Bildes I2 entsprechenden Punktes zu dem ersten Zeitpunkt t1 im Raum zu berechnen.
  • Das Bildverarbeitungsmodul 200 ist konfiguriert, um für jeden in dem dritten Bild I3 erfassten identischen Punkt der Bildsequenz I1, I2, I3 die Tiefe des dem identischen Punkt des dritten Bildes I3 (das nicht dargestellt ist) entsprechenden Raumpunkts zu dem ersten Zeitpunkt t1 zu berechnen.
  • Das Bildverarbeitungsmodul 200 ist konfiguriert, um in dem zweiten Bild I2 und in dem dritten Bild I3 (das nicht dargestellt ist) identische Punkte zu identifizieren, die den Punkten im Raum entsprechen, für die die berechnete Tiefe identisch ist, wobei diese Punkte im Raum jeweils in dem zweiten Bild I2 und in dem dritten Bild I3 (das nicht dargestellt wird) ein und denselben realen Punkt darstellen.
  • Die Erfindung wird nun in ihrer Umsetzung unter Bezugnahme auf die 8 und 9 beschrieben.
  • Zunächst erfasst die Kamera 100 in einem Schritt E0, insbesondere mit Bezug auf die 2 und 8, ein erstes Bild I1 und ein zweites Bild I2, vorzugsweise aufeinanderfolgend. Es wird darauf hingewiesen, dass das Verfahren implementiert werden kann, indem als erstes Bild I1 das Bild, dessen Aufnahme zeitlich das erste (frühere oder vorherige Bild im Fluss der von der Kamera aufgenommenen Bilder) und als zweites Bild I2 das nachfolgende Bild im Fluss der Bilder aufgenommen wird. Umgekehrt kann das Verfahren implementiert werden, indem als erstes Bild I1 das Bild aufgenommen wird, dessen Aufnahme zeitlich später ist (das folgende Bild im Fluss der von der Kamera aufgenommenen Bilder) als zweites Bild I2 und als zweites Bild I2 das vorherige Bild im Fluss bzw. in der Folge der Bilder. Im folgenden Beispiel wird das frühere Bild als erstes Bild I1 und das spätere Bild (d.h. nachfolgend im Bildfluss) als zweites Bild I2 gewählt.
  • In einem Schritt E1 bestimmt das Bildverarbeitungsmodul 200 für jedes Pixel des ersten Bildes I1 und für jedes Pixel des zweiten Bildes I2 eine charakteristische Signatur, die das Pixel anzeigt.
  • Eine solche Signatur kann auf der Grundlage der lokalen Analyse eines Bildes bestimmt werden und charakterisiert so den Inhalt dieses Bildes. Es gibt mehrere Möglichkeiten, eine Signatur auf Basis von Deskriptoren zu erstellen. Diese Deskriptoren können bestimmte Eigenschaften haben, wie z.B. Invarianz bei Drehung, Vergrößerung oder Helligkeitsänderung. Im Allgemeinen definiert der Anwendungsfall die für die Deskriptoren notwendigen Eigenschaften und ermöglicht es, das günstigste Schema zu bestimmen. Zum Beispiel gibt die Zählungs-Transformation (Census Transformation) eine Signatur basierend auf den relativen Intensitätsunterschieden (Zabih, R., Woodfill, J.I.: Non-parametric Local Transforms for Computing Visual Correspondence. In: Eklundh, J.-O. (Hrsg.) ECCV 1994. LNCS, Bd. 801, S. 151-158. Springer, Heidelberg (1994)). Ein weiteres Beispiel ist die maßstabsinvariable Transformation von visuellen Charakteristiken oder Eigenschaften (SIFT: Scale-Invariant Feature Transform).
  • In der Computer-Vision besteht die Extraktion visueller Merkmale (oder „Extraktion visueller Merkmale“) aus mathematischen Transformationen, die auf den Pixeln eines digitalen Bildes berechnet werden. Die visuellen Eigenschaften ermöglichen es im Allgemeinen, bestimmte visuelle Eigenschaften des Bildes besser zu berücksichtigen, die für Folgeverarbeitungen im Rahmen von Anwendungen wie der Erfassung von Objekten oder der Suche nach Bildern nach Inhalten verwendet werden.
  • Die Charakterisierung eines Bildes kann als eine begrenzte Anzahl von Pixeln berechnet werden. Dementsprechend ist es zunächst notwendig, die interessierenden Bereiche des Bildes zu erfassen und dann in jeder dieser Zonen einen charakteristischen Vektor zu berechnen. Diese Interessenszonen sind z.B. die Grate oder die markanten Punkte des Bildes (kontrastreiche Bereiche). Sie können auch zufällig oder regelmäßig im Bild aufgenommene Punkte beinhalten (sogenannte dichte Stichproben).
  • Der charakteristische Vektor enthält manchmal Daten, die aus der Erfassung stammen, wie z.B. die Ausrichtung des Grates oder die Größe des Gradienten in der interessierenden Zone. Im Allgemeinen wird der charakteristische Vektor an einem Pixel auf einer Nachbarschaft dieses Pixels berechnet, d.h. auf der Grundlage eines auf diesem Pixel zentrierten Bildchens. Er kann in verschiedenen Skalen bzw. Maßstäben berechnet werden, um den Zoomfaktor zu umgehen. Bisher global verwendete Muster wie Farbhistogramme oder Vektoren, die die Orientierung der Gradienten der Graustufen berücksichtigen, gehören zu den üblichlicherweise berechneten lokalen Merkmalen. Drei Beispiele für Nachbarschaften werden verwendet, um eine Textur zu definieren und ein lokales Binärmuster (LBP) zu berechnen. Bestimmte Schemata wie SIFT oder SURF beinhalten in ein und der gleichen interessierenden Zeitzone die Erfassung und Berechnung eines charakteristischen Vektors in jeder dieser Zonen. Bezüglich des charakteristischen Vektors sind die SIFTs grob ein Histogramm der Orientierungen des Gradienten und die SURFs bestehen aus der Näherungsrechnung für Haar-Wavelets. In ähnlicher Weise sind die lokalen binären Muster eine Berechnung des Zusammenauftretens der lokalen Graustufen eines Bildes und der HOGs der Histogramme der orientierten Gradienten, die den SIFTs relativ ähnlich sind, berechnet nach einer dichten Stichprobe bzw. Abtastung.
  • Unter Bezugnahme auf 3 bestimmt das Bildverarbeitungsmodul 200 danach in einem Schritt E2 die Rotationsmatrix R und den Translationsvektor T zwischen dem ersten Bild I1 und dem zweiten Bild I2.
  • Das Bildverarbeitungsmodul 200 wählt in einem Schritt E3 ein im ersten Bild I1 ausgewähltes PA(1) aus, für das ein entsprechendes Pixel im zweiten Bild I2 bestimmt werden muss.
  • Das Bildverarbeitungsmodul 200 kann zunächst ein Pixel, das im zweiten Bild I2 keinen optischen Fluss aufweist, in einer Zone von Interesse des ersten Bildes I1 auswählen, beispielsweise eine Seite des Bildes, die den Straßenrand darstellt, wenn man den Fahrer vor einem Risiko des Verlassens der Straße warnen möchte, die Oberseite des Bildes, die den Himmel darstellt, wenn man eine Brücke erkennen möchte, um deren Höhe zu bewerten usw.
  • Danach bestimmt das Bildverarbeitungsmodul 200 unter Bezugnahme auf 2 für das ausgewählte Pixel PA(1) im ersten Bild I1 in einem Schritt E4 einen anfänglichen Satz von Pixeln PA(1), ...., PA(5), der das ausgewählte Pixel PA(1) und eine Vielzahl von Pixeln PA(2), ...., PA(5) umfasst, die sich in der Nachbarschaft des ausgewählten Pixels PA(1) befinden. Im Beispiel von 2 wurden aus Gründen der Übersichtlichkeit nur vier Pixel PA(2), PA(3), PA(4) und PA(5) aus der Nachbarschaft des ausgewählten Pixel PA(1) ausgewählt.
  • Unter Bezugnahme auf 3 bestimmt oder wählt das Bildverarbeitungsmodul 200 (z.B. in einer Liste, die in einem Speicherbereich (nicht dargestellt) der Vorrichtung 10 gespeichert ist) in einem Schritt E5 einen minimalen Abstand Dmin und einen maximalen Abstand Dmax, zwischen denen sich der durch das ausgewählte Pixel PA(1) dargestellte Raumpunkt befindet. Diese Werte Dmin und Dmax können wie vorstehend beschrieben bestimmt werden oder aber unter Verwendung der Historie der früheren Bilder oder geometrischer Kenntnisse der Szene, wie z.B. einer ebenen Straße.
  • In einem Schritt E6 bestimmt das Bildverarbeitungsmodul 200 eine Projektionsebene W des ausgewählten Pixels PA(1) im zweiten Bild I2, beispielsweise eine vertikale Ebene, die auf die Vorderseite des Fahrzeugs 1 hin gerichtet ist. Es sei darauf hingewiesen, dass die Schritte E5 und E6 umgedreht werden können.
  • Unter Bezugnahme auf die 2 und 3 bestimmt das Bildverarbeitungsmodul 200 in einem Schritt E7 in dem zweiten Bild I2 einen ersten Satz von Pixeln PBmin(1), ...., PBmin(5) durch homographische Projektion des auf der Ebene W bestimmten anfänglichen Satzes von Pixeln PA(1), ...., PA(5), unter Berücksichtigung der Tatsache, dass letzterer auf den bestimmten minimalen Abstand Dmin gelegt wird. Dieser erste Satz PBmin(1), ...., PBmin(5) umfasst ein erstes Pixel PBmin(1), das durch homografische Projektion auf der Ebene W in dem minimalen Abstand Dmin dem in dem ersten Bild I1 ausgewählten Pixel PA(1) entspricht.
  • In ähnlicher Weise bestimmt das Bildverarbeitungsmodul 200 in einem Schritt E8 in dem zweiten Bild I2 einen zweiten Satz von Pixeln PBmax(1), ...., PBmax(5) durch homographische Projektion des anfänglichen Satzes PA(1), ...., PA(5), der auf der vorbestimmten Ebene W bestimmt wird, die in dem vorbestimmten maximalen Abstand Dmax liegt. Dieser zweite Satz PBmax(1), ...., PBmax(5) umfasst ein zweites Pixel PBmax(1), das durch homographische Projektion der Ebene W an dem maximalen Abstand Dmax dem in dem ersten Bild I1 gewählten Pixel PA(1) entspricht. Es versteht sich von selbst, dass die Schritte E7 und E8 umgedreht werden können.
  • Unter Bezugnahme auf die 3 bis 5 bestimmt das Bildverarbeitungsmodul 200 danach in einem Schritt E9 das Segment U, das das erste Pixel PBmin(1) und das zweite Pixel PBmax(1) im zweiten Bild I2 assoziiert verbindet, und wählt dann in einem Schritt E10 eine Vielzahl von Punkten PB2(1), ...., PB5(1) auf dem so bestimmten Segment U, beispielsweise alle 0,1 Pixel.
  • Anstelle eines einzelnen Segments wäre es auch möglich, einen Epipolarzylinder zu betrachten, der definiert ist als ein epipolares Segment mit einer Dicke größer als ein Pixel (vorzugsweise eine Dicke von einer ungeraden Anzahl von Pixeln, so dass die Erweiterung des Segments auf beiden Seiten des Segments der Dicke 1 erfolgt).
  • Das Bildverarbeitungsmodul 200 ordnet danach in einem Schritt E11 ein Pixel des zweiten Bildes I2 jedem Punkt PB2(1), ...., PB5(1) zu, das im Segment U ausgewählt wird.
  • Das Bildverarbeitungsmodul 200 vergleicht dann in einem Schritt E12 die Signatur des in dem ersten Bild I1 ausgewählten Pixels mit der Signatur jedes Pixels, das einem ausgewählten Punkt PB2(1),...., PB5(1) zugeordnet d.h. damit assoziiert ist.
  • Schließlich erfasst das Bildverarbeitungsmodul 200 in einem Schritt E13 einen Punkt eines sich wiederholenden Musters zwischen dem ersten Bild I1 und dem zweiten Bild I2, wenn eine Vielzahl von Signaturen von Pixeln, die der Vielzahl von Punkten PB2(1),..., PB5(1), die auf dem Segment U ausgewählt sind, zugeordnet sind, der Signatur des in dem ersten Bild I1 ausgewählten Pixels entspricht.
  • In dem oben beschriebenen nicht einschränkenden Beispiel wurde ein einzelnes epipolares Segment verwendet, aber es wird darauf hingewiesen, dass als Variante eine Vielzahl von beispielsweise parallelen epipolaren Segmenten verwendet werden kann, wobei jedes Segment durch eine Vielzahl von Punkten definiert ist, die Pixeln des zweiten Bildes I2 zugeordnet sind, so dass die Signatur jedes Punktes mit der Signatur des zugehörigen Pixels in dem ersten Bild I1 verglichen wird, um noch genauer sich wiederholende d.h. repetitive Muster in den Bildern zu erkennen. Ebenso wäre es möglich, anstelle eines Segments oder einer Vielzahl von Segmenten einen Epipolarzylinder zu definieren, der das Segment U und eine Vielzahl von Punkten umfasst, die Pixeln des zweiten Bildes I2 zugeordnet sind und deren Signaturen mit den entsprechenden Pixeln des ersten Bildes I1 verglichen werden können, um noch genauer repetitive Muster in den Bildern zu erfassen.
  • Es sei außerdem darauf hingewiesen, dass bei dynamischen Objekten die Rotation und Translation zwischen den Bildern vorzugsweise in Bezug auf einen Weltrahmen ausgedrückt wird, der sich auf das dynamische Objekt bezieht.
  • Danach identifiziert das Bildverarbeitungsmodul 200 die Punkte oder Gruppen von Pixeln, die repetitiven Mustern entsprechen, um sie auf ein und demselben Bild voneinander zu unterscheiden. Andernfalls ausgedrückt, das Bildverarbeitungsmodul 200 berechnet die Tiefe der Punkte im Raum, die in den repetitiven Mustern auf jedem Bild der Folge von aufeinanderfolgenden Bildern I1, I2 und I3 dargestellt werden.
  • Es sei zunächst darauf hingewiesen, dass an dieser Stelle die von der Kamera 100 zwischen dem ersten Zeitpunkt t1 und dem zweiten Zeitpunkt t2 aufgenommene Rotationsmatrix R und der Translationsvektor T im Schritt E1 mit dem vorstehend beschriebenen Schema bestimmt wurden und bekannt sind. Ebenso wurden die Rotationsmatrix R und der Translationsvektor T, die von der Kamera 100 zwischen dem zweiten Zeitpunkt t2 und dem dritten Zeitpunkt t3 aufgenommen wurden, während der oben beschriebenen Erfassung der repetitiven Muster bestimmt und sind bekannt.
  • In Anlehnung an 6 ist das Beispiel eines sich wiederholenden Musters dargestellt, das von zwei Punkten im Raum A und B erzeugt wird, die in jedem Bild der Folge aufeinanderfolgender Bilder I1, I2 und I3 die gleiche Signatur aufweisen, wobei dieses Beispiel auf so viele Punkte verallgemeinert werden kann, wie im sich wiederholenden Muster enthalten sind. Darüber hinaus ist auch die Bewegung der Kamera 100 in Abhängigkeit von diesen Punkten im Raum A und B dargestellt. Tatsächlich stellen die drei vertikalen Pfeile die Position der Kamera 100 und damit des Fahrzeugs sowie die Art und die Richtung der Verschiebung bzw. Versetzung des Fahrzeugs zu den drei aufeinanderfolgenden Zeitpunkten t1, t2, t3 dar.
  • Erstens, mit Bezug auf , wird das Pinhole(Lochblenden)-Modell dargestellt, das hier verwendet wird, um den Prozess zur Erzeugung der Bilder durch die Kamera 100 zu beschreiben. Anders ausgedrückt, ermöglicht das Lochblendenmodell die Beschreibung, wie man mindestens ein 3D-Objekt (dreidimensional) auf ein 2D-Bild (zweidimensional) projiziert.
  • Die Kamera 100 verfügt über die folgenden eigentümlichen Parameter:
    • • ein optisches Zentrum O,
    • • eine Brennweite f,
    • • einen Hauptpunkt F.
  • Das an sich bekannte so genannte „Pinhole“-Modell wird hier in einem orthonormalen Rahmen ( O ,   i ,   j ,   k )
    Figure DE102019209473A1_0002
    in drei Dimensionen, wobei das optische Zentrum O der Ursprung des Rahmens ist, dargestellt. In diesem orthonormalen Rahmen ( O ,   i ,   j ,   k ) ,
    Figure DE102019209473A1_0003
    besitzt der Hauptpunkt F die Koordinaten (0, 0, 0, f).
  • Jedes von der Kamera 100 erzeugte Bild befindet sich in einer Ebene, die als „Ebene des Bildes“ xOy mit dem Ursprung O bezeichnet wird. Der Punkt im Raum A ist ein 3D-Punkt mit kartesischen Koordinaten (XA(t2), YA(t2), ZA (t2)) in dem orthonormalen Rahmen ( O ) ,   i ,   j ,   k )
    Figure DE102019209473A1_0004
    zu dem zweiten Zeitpunkt t2. Der Punkt P2 in zwei Dimensionen gehört zu dem zweiten Bild I2 und stellt die Projektion des Punktes im Raum A des realen Objekts in der Ebene des Bildes xOy dar, in der sich das zweite Bild I2 befindet. Der Punkt P2 besitzt Koordinaten (xb2(t2), yb2 (t2), f) an dem zweiten Zeitpunkt t2 in dem orthonormalen Rahmen ( O ) ,   i ,   j ,   k )
    Figure DE102019209473A1_0005
    mit: x b2 ( t2 ) = f × X A ( t2 ) Z A ( t2 )
    Figure DE102019209473A1_0006
    y b2 ( t2 ) = f × Y A ( t2 ) Z A ( t2 )
    Figure DE102019209473A1_0007
  • Das Lochblendenmodell (Pinhole-Modell) ermöglicht es danach, die Tiefe der Punkte im Raum A und B zu bestimmen, da die Position der Projektion in jedem Bild der Bildsequenz I1, I2, I3 der Punkte im Raum A und B der repetitiven Muster bekannt ist.
  • Mit Bezug auf 9 berechnet das Bildverarbeitungsmodul 200 während einer ersten Berechnung, genannt „Berechnung 1“ (Schritt E14), die Tiefe des Punktes im Raum A in dem Kamerarahmen zu dem ersten Zeitpunkt t1 auf der Grundlage des zweiten Bildes I2.
  • Zunächst assoziiert d.h. verbindet oder verknüpft das Bildverarbeitungsmodul 200 die Projektion in dem ersten Bild I1 des Punktes im Raum A und die Projektion in dem zweiten Bild I2 des Punktes im Raum A.
  • Eine erste Berechnung zwischen einem ersten Zeitpunkt t1 und einem zweiten Zeitpunkt t2 ermöglicht es, die Tiefe ZA (t1) im Kamerarahmen des Punktes im Raum A (Punkt in drei Dimensionen) zum ersten Zeitpunkt t1 auf der Grundlage der 2D-Koordinaten des Punktes P1 (xb1 (t1); yb1 (t1); f), was der Projektion des Punktes im Raum A in dem Bild zu dem ersten Zeitpunkt t1 entspricht, der 2D-Koordinaten des Punktes P2 der Projektion des Punktes A zu dem zweiten Zeitpunkt t2 und der Kenntnis der Rotationsmatrix R und des Translationsvektors T der Kamera zwischen dem ersten Zeitpunkt t1 und dem zweiten Zeitpunkt t2 zu bestimmen.
  • Zuvor wurden die Rotationsmatrix R und der Translationsvektor T bestimmt und ermöglichen es so, für jeden Punkt im Raum A zu dem ersten Zeitpunkt t1, der mit (t1) bezeichnet wird, den Punkt im Raum A, der dem zweiten Zeitpunkt t2 entspricht, der mit (A(t2) bezeichnet wird, gemäß der folgenden Formel zu berechnen: A ( t2 ) = R × A ( t1 ) + T
    Figure DE102019209473A1_0008
  • Bei Kenntnis von: T = ( T x T y T z )  und R = [ R 11 R 12 R 13 R 21 R 22 R 23 R 31 R 32 R 33 ]
    Figure DE102019209473A1_0009
  • Schritt E13 hat das Erfassen einer Vielzahl identischer Punkte ermöglicht, die definiert sind als eine Vielzahl von Punkten, die den gleichen Punkt im Raum in jedem Bild der Bildsequenz I1, I2, I3 darstellen, bezogen auf eine Vielzahl von sich wiederholenden Mustern in jedem Bild der Bildsequenz I1, I2, I3. Danach wird zu dem zweiten Zeitpunkt t2 ein Punkt P2 ausgewählt, mit Koordinaten (xb2 (t2); yb2 (t2); f) in dem zweiten Bild I2. Der Punkt P2 entspricht einem der identischen Punkte, die in dem zweiten Bild I2 der Bildsequenz I1, I2, I3 erfasst wurden. Die Berechnung der Tiefe zwischen der Kamera 100 und dem Punkt im Raum, der dem identischen Punkt P2 des zweiten Bildes I2 zu dem ersten Zeitpunkt t1 entspricht, folgt daraus.
  • Mit Hilfe der Rotationsmatrix R und des Verschiebungsvektors T ist es möglich, die Position des Punktes im Raum A in dem ersten Bild I1 zu dem ersten Zeitpunkt t1, d.h. zu dem Zeitpunkt vor dem zweiten Zeitpunkt t2, zu bestimmen. Um also die Position des Punktes im Raum A zu bestimmen, ist es notwendig, ZA(t1), die Tiefe des Punktes im Raum A, zu berechnen, um daraus den Abstand zwischen dem optischen Zentrum O der Kamera 100 und dem Punkt im Raum A abzuleiten.
  • Dementsprechend wird die Gleichung [3] erweitert und die Terme XA (t2), YA (t2), ZA (t2), ZA(t2) isoliert, wodurch es möglich wird, die Ausdrücke für XA (t2), YA (t2) und ZA (t2) in Abhängigkeit von XA (t1), YA (t1), ZA (t1) zu erhalten: X A ( t2 ) = R 11 × X A ( t1 ) + R 12 × Y A ( t1 ) + R 13 × Z A ( t1 ) + T x
    Figure DE102019209473A1_0010
    Y A ( t2 ) = R 21 × X A ( t1 ) + R 21 × Y A ( t1 ) + R 23 × Z A ( t1 ) + T y
    Figure DE102019209473A1_0011
    Z A ( t2 ) = R 31 × X A ( t1 ) + R 32 × Y A ( t1 ) + R 33 × Z A ( t1 ) + T z
    Figure DE102019209473A1_0012
  • Auf der Grundlage des obigen Ergebnisses und der Gleichungen [1] und [2] und durch die Faktorisierung von ZA (t1) auf der rechten Seite erhält man: x b2 ( t2 ) × Z A ( t2 ) f = ( R 11 × x b1 ( t1 ) f + R 12 × y b1 ( t1 ) f + R 13 ) × Z A ( t1 ) + T x
    Figure DE102019209473A1_0013
    y b2 ( t2 ) × Z A ( t2 ) f = ( R 21 × x b1 ( t1 ) f + R 22 × y b1 ( t1 ) f + R 23 ) × Z A ( t1 ) + T y
    Figure DE102019209473A1_0014
    Z A ( t2 ) = ( R 31 × x b1 ( t1 ) f + R 32 × y b1 ( t1 ) f + R 33 ) × Z A ( t1 ) + T z
    Figure DE102019209473A1_0015
  • Wenn man die Gleichung [6] in die Gleichungen [4] und[5] einsetzt, erhält man: x b2 ( t2 ) × [ a 3 × Z A ( t1 ) + T z ] f = a 1 × Z A ( t1 ) + T x
    Figure DE102019209473A1_0016
    y b2 ( t2 ) × [ a 3 × Z A ( t1 ) + T z ] f = a 2 × Z A ( t1 ) + T y
    Figure DE102019209473A1_0017
    mit: a 1 = R 11 × x b1 ( t1 ) f + R 12 × y b1 ( t1 ) f + R 13
    Figure DE102019209473A1_0018
    a 2 = R 21 × x b1 ( t1 ) f + R 22 × y b1 ( t1 ) f + R 23
    Figure DE102019209473A1_0019
    a 3 = R 31 × x b1 ( t1 ) f + R 32 × y b1 ( t1 ) f + R 33
    Figure DE102019209473A1_0020
  • Für ZA (t1) werden zwei Lösungen erhalten: Z A1 ( t1 ) = T x T z × x b2 ( t2 ) f x b 2 ( t2 ) × a 3 f a 1
    Figure DE102019209473A1_0021
    Z A1 ( t1 ) = T y T z × y b2 ( t2 ) f y b 2 ( t2 ) × a 3 f a 2
    Figure DE102019209473A1_0022
  • Die Tiefe ZA1 (t1) entspricht einer ersten Möglichkeit der Tiefe für den Punkt im Raum A zu dem ersten Zeitpunkt t1. Es sei darauf hingewiesen, dass in der Theorie diese beiden verschiedenen Formeln für die Tiefe ZA1 (t1) ein identisches oder im Wesentlichen identisches Ergebnis ergeben. Dieses Ergebnis wird in einem Schritt E15 gespeichert.
  • Danach assoziiert das Bildverarbeitungsmodul 200 die Projektion in dem ersten Bild I1 des Punktes im Raum A und die Projektion in dem zweiten Bild I2 des Punktes im Raum B. Genauer gesagt, mit Bezug auf 6, um die Tiefe des Punktes im Raum A zu bestätigen, ist es notwendig, eine zweite Tiefenberechnung durchzuführen. Tatsächlich wird dann die Projektion des Punktes im Raum B zu dem zweiten Zeitpunkt t2 beobachtet. Durch diese Berechnung wird eine Tiefe ZA2 (t1) erhalten, die eine zweite Möglichkeit der Tiefe für den Punkt im Raum A zu dem ersten Zeitpunkt t1 ist.
  • Das Schema ist identisch mit dem für die Tiefe ZA1 (t1) des Punktes P1 und auch die Tiefenformeln ZA1 (t1) und ZA2 (t1) sind identisch. So werden die folgenden Ergebnisse erzielt: Z A2 ( t1 ) = T x T z × x b2 ( t2 ) f x b 2 ( t2 ) × a 3 f a 1
    Figure DE102019209473A1_0023
    Z A2 ( t1 ) = T y T z × y b2 ( t2 ) f y b 2 ( t2 ) × a 3 f a 2
    Figure DE102019209473A1_0024
  • Allerdings sind xb2 und yb2 in den Formeln für die Tiefen ZA1 (t1) und ZA2 (t1) unterschiedlich. Tatsächlich ist die Projektion von A2 in dem Bild I2 nicht die gleiche wie die von A1 in dem Bild I2. Darüber hinaus werden die beiden Werte der Tiefe ZA1 (t1) und ZA2 (t1) gespeichert. Hier gibt es also zwei Möglichkeiten der Tiefe, ZA1 (t1) und ZA2 (t1), was bedeutet, dass mehrere Lösungen in Bezug auf die Tiefe des Punktes im Raum A existieren.
  • Anders ausgedrückt, mit Bezug auf 6, unter Verwendung einer Bewegung der Kamera zwischen den Zeitpunkten t1 und t2 und zwei Positionen der repetitiven Struktur (die Punkte A und B), ermöglicht eine erste Triangulation, zwei Möglichkeiten der 3D-Position zu finden, nämlich die Punkte A1 und A2, und diese beiden Möglichkeiten werden gespeichert.
  • An dieser Stelle ist es noch nicht möglich, den Zusammenhang bzw. die Assoziierung zwischen dem Punkt im Raum A und seiner Projektion in jedem Bild herzustellen, d.h. es ist nicht bekannt, welche Projektion dem Punkt im Raum A oder dem Punkt im Raum B entspricht.
  • Eine zweite nachstehend beschriebene Berechnung, die die Implementierung eines dritten Bildes I3 vorsieht, ist daher erforderlich.
  • Während einer zweiten Berechnungsphase, genannt „Berechnung 2“ (Schritt E16), berechnet das Bildverarbeitungsmodul 200 die Tiefe des Punktes im Raum A in dem Kamerabild zu dem ersten Zeitpunkt t1 auf Basis des dritten Bildes I3 (das nicht dargestellt ist).
  • Ziel dieses Schrittes ist es, die im vorherigen Schritt vorhandene Mehrdeutigkeit aufzulösen, d.h. zu wissen, welche Projektion in jedem Bild der Bildsequenz I1, I2, I3 dem Punkt im Raum A entspricht und welche Projektion in jedem Bild der Bildsequenz I1, I2, I3 dem Punkt im Raum B entspricht.
  • Es werden die gleichen Berechnungen wie zuvor durchgeführt, jedoch zwischen dem ersten Zeitpunkt t1 und dem dritten Zeitpunkt t3. Ebenso gibt es also zwei Möglichkeiten der Tiefe, ZA3 (t1) und ZA4 (t1), was bedeutet, dass mehrere mögliche Abstände zwischen der Kamera 100 und dem realen Objekt existieren.
  • Da der erste Zeitpunkt t1 und der dritte Zeitpunkt t3 nicht direkt aufeinanderfolgende Zeitpunkte sind, ist es notwendig, einen Zwischenschritt durchzuführen. Tatsächlich sind die Rotationsmatrix R und die Translationsmatrix T zwischen zwei aufeinanderfolgenden Zeitpunkten, d.h. zwischen dem ersten Zeitpunkt t1 und dem zweiten Zeitpunkt t2 und zwischen dem zweiten Zeitpunkt t2 und dem dritten Zeitpunkt t3, bekannt. Um A(t3) zu kennen, ist es daher notwendig, die aufeinanderfolgenden Rotations- und Translationsvorgänge zu aggregieren, wobei R2/3 und T2/3 die jeweils die Rotationsmatrix zwischen dem zweiten Zeitpunkt t2 und dem dritten Zeitpunkt t3 und die Translationsmatrix zwischen dem zweiten Zeitpunkt t2 und dem dritten Zeitpunkt t3 ist.
  • Zunächst gilt: A ( t 2 ) = R × A ( t1 ) + T
    Figure DE102019209473A1_0025
    A ( t3 ) = R 2 / 3 × A ( t2 ) + T 2 / 3
    Figure DE102019209473A1_0026
  • Wenn man [7] in [8] einsetzt, erhält man: A ( t3 ) = R 2 / 3 × ( R × A ( t1 ) + T ) + T 2 / 3
    Figure DE102019209473A1_0027
    A ( t3 ) = R 2 / 3 × R × A ( t1 ) + R 2 / 3 T + T 2 / 3
    Figure DE102019209473A1_0028
  • Darüber hinaus werden die beiden Werte der Tiefe ZA3 (t1) und ZA4 (t1) in einem Schritt E17 gespeichert.
  • Auch hier ermöglicht eine zweite Triangulation, indem sie eine Bewegung der Kamera zwischen den Zeitpunkten t1 und t3 und zwei Positionen der repetitiven Struktur (die Punkte A und B) verwendet, zwei Möglichkeiten der 3D-Position zu finden, nämlich die Punkte A3 und A4, und diese beiden Möglichkeiten werden gespeichert.
  • Zusammenfassend lässt sich sagen, dass die beiden Triangulationen, die auf der Grundlage der Punkte A und B der repetitiven Struktur in den drei Bildern I1, I2 und I3 durchgeführt wurden, es ermöglicht haben, mehrere Entsprechungen zu finden, nämlich A1, A2, A3 und A4, die jeweils eine eigene Tiefenmessung haben. ZA1 (t1), ZA2 (t1), ZA3 (t1) und ZA4 (t1).
  • Das Bildverarbeitungsmodul 200 führt in einem Schritt E18 den Vergleich aller Ergebnisse der bei der „Berechnung 1“ und der „Berechnung 2“ erhaltenen potenziellen Tiefenwerte durch, wobei zwei Tiefenwerte von ZA1 (t1), ZA2 (t1), ZA3 (t1) und ZA4 (t1) identisch sind. Diese beiden Tiefen mit dem gleichen Wert entsprechen ein und demselben realen Punkt, der dem realen Punkt im Raum A entspricht. Somit identifiziert das Bildverarbeitungsmodul 200 den gesuchten realen Punkt (Schritt E19).
  • In dem mit Bezug auf 6 dargestellten Beispiel sind ZA1 (t1) und ZA4 (t1) identische Tiefenwerte und entsprechen somit der Tiefe des realen Punktes im Raum A. ZA2 (t1) und ZA3 (t1) entsprechen jeweils A2 und A3, fiktive Punkte (Mehrdeutigkeiten) im Raum, deren Tiefenwert sich vom Tiefenwert des realen Punktes im Raum A unterscheidet. Anders ausgedrückt: Die fiktiven Punkte im Raum A2 und A3 entsprechen keinem realen Punkt (Punkte im Raum A oder B).
  • So ermöglicht die vorliegende Erfindung die Identifizierung von Tiefenwerten, die im Laufe der Zeit anhalten und realen Objekten entsprechen, wobei dies nicht der Fall ist bei den Mehrdeutigkeiten (oder „Phantom“-Korrespondenzen), die hier beispielsweise die Punkte A2 und A3 sind, die daher nicht realen Objekten entsprechen und die, wenn sie fehlerhaft mit Objekten der Umgebung des Fahrzeugs assoziiert würden, zu einer schlechten Schätzung des Abstands des Fahrzeugs vom Objekt seiner Umgebung und damit zu einer schlechten Anwendung der Funktionen zur Unterstützung des Fahrers bei seiner Fahrt führen könnten.
  • Die Erfindung ermöglicht es daher in vorteilhafter Weise, identische Muster zu unterscheiden, die sich in den aufeinanderfolgenden Bildern einer Sequenz von Bildern I1, I2, I3 wiederholen, und die mit diesen repetitiven Mustern verbundene Mehrdeutigkeit/Unklarheit aufzulösen und so Informationen über die Tiefe dieser repetitiven Muster zu rekonstruieren, um so den Fahrer bei seiner Fahrt effektiv zu unterstützen.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Nicht-Patentliteratur
    • Zabih, R., Woodfill, J.I.: Non-parametric Local Transforms for Computing Visual Correspondence. In: Eklundh, J.-O. (Hrsg.) ECCV 1994. LNCS, Bd. 801, S. 151-158. Springer, Heidelberg (1994) [0060]

Claims (10)

  1. Verfahren zum Verarbeiten von Bildern, das die Identifizierung mindestens eines gleichen Punktes, der auf jedem Bild einer Bildsequenz (I1, I2) erscheint, ermöglicht, wobei die Bildsequenz (I1, I2, I3) ein erstes Bild (I1), ein zweites Bild (I2) und ein drittes Bild (I3) umfasst, die jeweils zu einem ersten Zeitpunkt (t1), zu einem zweiten Zeitpunkt (t2), später als der erste Zeitpunkt (t1), und zu einem dritten Zeitpunkt (t3), später als der zweite Zeitpunkt (t2), durch eine Kamera (100), die in einem Kraftfahrzeug (1) montiert ist, erzeugt werden, wobei das Verfahren dadurch gekennzeichnet ist, dass es die folgenden Schritte umfasst: • Erfassen (E1-E13) einer Vielzahl von identischen Punkten in jedem Bild der Bildsequenz (I1, I2, I3), die sich auf eine Vielzahl von repetitiven Mustern in jedem Bild der Bildsequenz (I1, I2, I3) beziehen, • für jeden identischen Punkt, der in dem zweiten Bild (I2) der Bildsequenz (I1, I2, I3) erfasst wird, Berechnung (E14) der Tiefe (ZA1(t1), ZA2(t1)) zu dem ersten Zeitpunkt (t1) des Punktes im Raum, der dem identischen Punkt des zweiten Bildes (I2) entspricht, • für jeden identischen Punkt, der in dem dritten Bild der Bildsequenz (I1, I2, I3) erfasst wird, Berechnung (E16) der Tiefe (ZA3(t1), ZA4(t1)) zu dem ersten Zeitpunkt (t1) des Punktes im Raum, der dem identischen Punkt des dritten Bildes (I3) entspricht, • Identifizieren (E19), in dem zweiten Bild (I2) und in dem dritten Bild (I3) der identischen Punkte, die den Punkten im Raum entsprechen, für die die berechnete Tiefe identisch ist, wobei diese Punkte im Raum jeweils in dem zweiten Bild (I2) und in dem dritten Bild (I3) ein und denselben realen Punkt darstellen.
  2. Verfahren nach Anspruch 1, bei dem die Tiefe (ZA1(t1), ZA2(t1)) zu dem ersten Zeitpunkt (t1) des dem identischen Punkt des zweiten Bildes (I2) entsprechenden Punkts im Raum auf der Grundlage der Rotationsmatrix (R) und des Translationsvektors (T) zwischen dem ersten Bild (I1) und dem zweiten Bild (I2) berechnet wird.
  3. Verfahren nach einem der vorstehenden Ansprüche, bei dem die Tiefe (ZA3(t1), ZA4(t1)) zu dem ersten Zeitpunkt (t1) des dem identischen Punkt des dritten Bildes (I3) entsprechenden Punkts im Raum auf der Grundlage der Rotationsmatrix und des Translationsvektors zwischen dem ersten Bild (I1) und dem dritten Bild (I2) berechnet wird.
  4. Verfahren nach einem der vorhergehenden Ansprüche, umfassend einen Schritt (E15) zum Speichern der Tiefe (ZA1(t1), ZA2(t1)) für jeden identischen Punkt, der in dem zweiten Bild (I2) der Bildsequenz (I1, I2, I3) erfasst wird.
  5. Verfahren nach einem der vorhergehenden Ansprüche, umfassend einen Schritt (E17) zum Speichern der Tiefe (ZA3(t1), ZA4(t1)) für jeden identischen Punkt, der in dem dritten Bild (I3) der Bildsequenz (I1, I2, I3) erfasst wird.
  6. Bildverarbeitungsmodul (200), das die Identifizierung mindestens eines gleichen Punktes, der auf jedem Bild einer Bildsequenz (I1, I2, I3) erscheint, ermöglicht, wobei die Bildsequenz (I1, I2, I3) ein erstes Bild (I1), ein zweites Bild (I2) und ein drittes Bild (I3) umfasst, die jeweils zu einem ersten Zeitpunkt (t1), zu einem zweiten Zeitpunkt (t2), später als der erste Zeitpunkt (t1), und zu einem dritten Zeitpunkt (t3), später als der zweite Zeitpunkt (t2), durch eine Kamera (100), die in einem Kraftfahrzeug (1) montiert ist, erzeugt werden, wobei das Bildverarbeitungsmodul (200) dadurch gekennzeichnet ist, dass es konfiguriert ist zum: • Erfassen einer Vielzahl von identischen Punkten in jedem Bild der Bildsequenz (I1, I2, I3), die sich auf eine Vielzahl von repetitiven Mustern in jedem Bild der Bildsequenz (I1, I2, I3) beziehen, • Berechnen der Tiefe (ZA1(t1), ZA2(t1)) zu dem ersten Zeitpunkt (t1) des Punktes im Raum, der dem identischen Punkt des zweiten Bildes (I2) entspricht, für jeden identischen Punkt, der in dem zweiten Bild (I2) der Bildsequenz (I1, I2, I3) erfasst wird, • Berechnen der Tiefe (ZA3(t1), ZA4(t1)) zu dem ersten Zeitpunkt (t1) des Punktes im Raum, der dem identischen Punkt des dritten Bildes (I3) entspricht, für jeden identischen Punkt, der in dem dritten Bild (I3) der Bildsequenz (I1, I2, I3) erfasst wird, • Identifizieren, in dem zweiten Bild (I2) und in dem dritten Bild (I3), von identischen Punkten, die den Punkten im Raum entsprechen, für die der berechnete Abstand identisch ist, wobei diese Punkte im Raum jeweils in dem zweiten Bild (I2) und in dem dritten Bild (I3) ein und denselben realen Punkt darstellen.
  7. Bildverarbeitungsmodul (200), wie im vorhergehenden Anspruch beansprucht, wobei das Bildverarbeitungsmodul (200) konfiguriert ist, um die Tiefe (ZA1(t1), ZA2(t1)) zu dem ersten Zeitpunkt (t1) des Punktes im Raum, der dem identischen Punkt des zweiten Bildes (I2) entspricht, auf der Grundlage der Rotationsmatrix und des Translationsvektors zwischen dem ersten Bild (I1) und dem zweiten Bild (I2) zu berechnen.
  8. Bildverarbeitungsmodul (200) nach Anspruch 6 oder 7, wobei das Bildverarbeitungsmodul (200) konfiguriert ist, um die Tiefe (ZA3(t1), ZA4(t1)) zu dem ersten Zeitpunkt (t1) des Punktes im Raum, der dem identischen Punkt des dritten Bildes (I3) entspricht, auf der Grundlage der Rotationsmatrix (R) und des Translationsvektors (T) zwischen dem ersten Bild (I1) und dem dritten Bild (I2) zu berechnen.
  9. Bildverarbeitungsmodul (200) nach einem der Ansprüche 6 bis 8, wobei das Bildverarbeitungsmodul (200) konfiguriert ist, um die Tiefe (ZA1(t1), ZA2(t1)) für jeden identischen Punkt, der in dem zweiten Bild (I2) der Bildsequenz (I1, I2, I3) erfasst wird, und die Tiefe (ZA3(t1), ZA4(t1)) für jeden identischen Punkt, der in dem dritten Bild (I3) der Bildsequenz (I1, I2, I3) erfasst wird, zu speichern.
  10. Kraftfahrzeug, umfassend ein Bildverarbeitungsmodul (200) nach einem der Ansprüche 6 bis 9.
DE102019209473.2A 2018-06-29 2019-06-28 Verfahren und Vorrichtung zur schnellen Erfassung von sich wiederholenden Strukturen in dem Bild einer Straßenszene Pending DE102019209473A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1855947A FR3083352B1 (fr) 2018-06-29 2018-06-29 Procede et dispositif de detection rapide de structures repetitives dans l'image d'une scene routiere
FR1855947 2018-06-29

Publications (1)

Publication Number Publication Date
DE102019209473A1 true DE102019209473A1 (de) 2020-01-02

Family

ID=63963150

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102019209473.2A Pending DE102019209473A1 (de) 2018-06-29 2019-06-28 Verfahren und Vorrichtung zur schnellen Erfassung von sich wiederholenden Strukturen in dem Bild einer Straßenszene

Country Status (3)

Country Link
US (1) US10982967B2 (de)
DE (1) DE102019209473A1 (de)
FR (1) FR3083352B1 (de)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3083352B1 (fr) * 2018-06-29 2020-06-05 Continental Automotive France Procede et dispositif de detection rapide de structures repetitives dans l'image d'une scene routiere
FR3125150B1 (fr) * 2021-07-08 2023-11-17 Continental Automotive Procédé d’étiquetage d’une image 3D

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6504569B1 (en) * 1998-04-22 2003-01-07 Grass Valley (U.S.), Inc. 2-D extended image generation from 3-D data extracted from a video sequence
US6614429B1 (en) * 1999-05-05 2003-09-02 Microsoft Corporation System and method for determining structure and motion from two-dimensional images for multi-resolution object modeling
US7286689B2 (en) * 2003-06-07 2007-10-23 Hewlett-Packard Development Company, L.P. Motion estimation for compression of calibrated multi-view image sequences
US8401276B1 (en) * 2008-05-20 2013-03-19 University Of Southern California 3-D reconstruction and registration
US8837811B2 (en) * 2010-06-17 2014-09-16 Microsoft Corporation Multi-stage linear structure from motion
US9280711B2 (en) * 2010-09-21 2016-03-08 Mobileye Vision Technologies Ltd. Barrier and guardrail detection using a single camera
US9646201B1 (en) * 2014-06-05 2017-05-09 Leap Motion, Inc. Three dimensional (3D) modeling of a complex control object
US10341633B2 (en) * 2015-11-20 2019-07-02 Qualcomm Incorporated Systems and methods for correcting erroneous depth information
US10430994B1 (en) * 2016-11-07 2019-10-01 Henry Harlyn Baker Techniques for determining a three-dimensional textured representation of a surface of an object from a set of images with varying formats
FR3083352B1 (fr) * 2018-06-29 2020-06-05 Continental Automotive France Procede et dispositif de detection rapide de structures repetitives dans l'image d'une scene routiere

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Zabih, R., Woodfill, J.I.: Non-parametric Local Transforms for Computing Visual Correspondence. In: Eklundh, J.-O. (Hrsg.) ECCV 1994. LNCS, Bd. 801, S. 151-158. Springer, Heidelberg (1994)

Also Published As

Publication number Publication date
US20200003574A1 (en) 2020-01-02
FR3083352B1 (fr) 2020-06-05
FR3083352A1 (fr) 2020-01-03
US10982967B2 (en) 2021-04-20

Similar Documents

Publication Publication Date Title
DE102006057552B4 (de) System und Verfahren zur Messung des Abstands eines vorausfahrenden Fahrzeugs
DE102013205950B4 (de) Verfahren zum Detektieren von Straßenrändern
DE19636028C1 (de) Verfahren zur Stereobild-Objektdetektion
DE102011106050B4 (de) Schattenentfernung in einem durch eine fahrzeugbasierte Kamera erfassten Bild zur Detektion eines freien Pfads
DE102014209137B4 (de) Verfahren und Vorrichtung zur Kalibrierung eines Kamerasystems eines Kraftfahrzeugs
DE102013205952B4 (de) Rekonfigurierbares System und Verfahren zur Detektion eines freien Pfads
DE102017203276B4 (de) Verfahren und Vorrichtung zur Ermittlung einer Trajektorie in Off-road-Szenarien
DE102014222617B4 (de) Fahrzeugerfassungsverfahren und Fahrzeugerfassungssytem
EP1995692A2 (de) Verfahren zur Erkennung und Verfolgung von Objekten
DE102013205854B4 (de) Verfahren zum Detektieren eines freien Pfads mittels temporärer Koherenz
DE112011103690T5 (de) Erkennung und Verfolgung sich bewegender Objekte
DE102014207802B3 (de) Verfahren und System zum proaktiven Erkennen einer Aktion eines Verkehrsteilnehmers
DE102011111440A1 (de) Verfahren zur Umgebungsrepräsentation
DE102012000459A1 (de) Verfahren zur Objektdetektion
DE102016014783A1 (de) Verfahren zur Detektion von Objekten
DE102018100909A1 (de) Verfahren zum Rekonstruieren von Bildern einer Szene, die durch ein multifokales Kamerasystem aufgenommen werden
DE102013012930A1 (de) Verfahren zum Bestimmen eines aktuellen Abstands und/oder einer aktuellen Geschwindigkeit eines Zielobjekts anhand eines Referenzpunkts in einem Kamerabild, Kamerasystem und Kraftfahrzeug
DE102019209473A1 (de) Verfahren und Vorrichtung zur schnellen Erfassung von sich wiederholenden Strukturen in dem Bild einer Straßenszene
DE102015211871A1 (de) Objekterkennungsvorrichtung
DE102008036219A1 (de) Verfahren zur Erkennung von Objekten im Umfeld eines Fahrzeugs
DE102021111977A1 (de) Dreidimensionale verkehrszeichenerkennung
DE102008050456B4 (de) Verfahren und Vorrichtung zur Fahrspurerkennung
DE102019218479A1 (de) Verfahren und Vorrichtung zur Klassifikation von Objekten auf einer Fahrbahn in einem Umfeld eines Fahrzeugs
EP3704631A2 (de) Verfahren zur ermittlung einer entfernung zwischen einem kraftfahrzeug und einem objekt
DE102018112171A1 (de) Verfahren zum Beurteilen von Objekten in einer Umgebung eines Kraftfahrzeugs anhand einer dreidimensionalen Fusionskarte, Steuereinrichtung; Fahrerassistenzsystem, Computerprogrammprodukt

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R081 Change of applicant/patentee

Owner name: CONTINENTAL AUTONOMOUS MOBILITY GERMANY GMBH, DE

Free format text: FORMER OWNERS: CONTINENTAL AUTOMOTIVE FRANCE, TOULOUSE, FR; CONTINENTAL AUTOMOTIVE GMBH, 30165 HANNOVER, DE