DE102009028743A1 - Verfahren und Steuergerät zur Entzerrung eines Kamerabildes - Google Patents

Verfahren und Steuergerät zur Entzerrung eines Kamerabildes Download PDF

Info

Publication number
DE102009028743A1
DE102009028743A1 DE102009028743A DE102009028743A DE102009028743A1 DE 102009028743 A1 DE102009028743 A1 DE 102009028743A1 DE 102009028743 A DE102009028743 A DE 102009028743A DE 102009028743 A DE102009028743 A DE 102009028743A DE 102009028743 A1 DE102009028743 A1 DE 102009028743A1
Authority
DE
Germany
Prior art keywords
equalization
equalized
camera image
pixels
distorted
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.)
Granted
Application number
DE102009028743A
Other languages
English (en)
Other versions
DE102009028743B4 (de
Inventor
Steffen Abraham
Axel Wendt
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.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
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 Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE102009028743A priority Critical patent/DE102009028743B4/de
Priority to US12/806,017 priority patent/US8644641B2/en
Priority to JP2010183109A priority patent/JP2011045059A/ja
Priority to CN2010102604582A priority patent/CN101996388A/zh
Publication of DE102009028743A1 publication Critical patent/DE102009028743A1/de
Application granted granted Critical
Publication of DE102009028743B4 publication Critical patent/DE102009028743B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/80Geometric correction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/204Image signal generators using stereoscopic image cameras
    • H04N13/239Image signal generators using stereoscopic image cameras using two 2D image sensors having a relative position equal to or related to the interocular distance
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/204Image signal generators using stereoscopic image cameras
    • H04N13/246Calibration of cameras
    • 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/10004Still image; Photographic image
    • G06T2207/10012Stereo images
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Stereoscopic And Panoramic Photography (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
  • Studio Devices (AREA)

Abstract

Es wird ein Verfahren zur Entzerrung eines Kamerabildes vorgeschlagen, das einen Schritt des Empfangens einer Mehrzahl von verzerrten Bildpunkten eines verzerrten Kamerabildes (215, 216) und einen Schritt des Empfangens einer komprimierten Entzerrungsvorschrift (617, 618) über eine Schnittstelle umfasst. Gemäß dem Verfahren erfolgt ein Dekomprimieren (621, 622) der komprimierten Entzerrungsvorschrift, um eine dekomprimierte Entzerrungsvorschrift zum Entzerren des verzerrten Kamerabildes zu erhalten. Eine Mehrzahl von entzerrten Bildpunkten eines Entzerrten Kamerabildes (223, 224) wird aus der Mehrzahl von verzerrten Bildpunkten unter Verwendung der dekomprimierten Entzerrungsvorschrift bestimmt.

Description

  • Stand der Technik
  • Die vorliegende Erfindung bezieht sich auf ein Verfahren zur Entzerrung eines Kamerabildes gemäß Anspruch 1, ein Verfahren zur Entzerrung eines Stereo-Kamerabildes gemäß Anspruch 8, ein Verfahren zur Komprimierung einer Nachschlagetabelle gemäß Anspruch 9 sowie auf ein Steuergerät gemäß Anspruch 10.
  • Die Stereo-Videobildverarbeitung hat für die Umfelderfassung in Fahrassistenzsystemen, für die Robotik und weitere Anwendungen aus der Automatisierungstechnik einen bedeutenden Stellenwert. Mit einem Stereo-Videosystem kann die räumliche Lage von Objekten im Kameravorfeld bestimmt werden. Beispielsweise lassen sich damit in Fahrassistenzsystemen eines Fahrzeugs Fußgänger im Fahrzeugvorfeld detektieren. Die Anforderungen an die Aufgabenstellungen der Bildverarbeitung nehmen dabei stetig zu. Dies betrifft insbesondere auch die Erhöhung der geometrischen Genauigkeit gekoppelt mit einer höheren Prozessierungsgeschwindigkeit.
  • Die DE 102 29 336 A1 beschreibt ein Verfahren zur Kalibrierung von Bildsensorsystemen mittels eines Kalibrierobjekts.
  • Die US 2008/0002879 beschreibt ein Verfahren bei dem die Vektoren für die Entzerrung im Pixeltakt jeweils mathematisch neu berechnet werden. Dies spart Speicher, erhöht aber die notwendige Rechenleistung zur fortlaufenden Berechnung der Entzerrungsvorschrift.
  • Offenbarung der Erfindung
  • Vor diesem Hintergrund wird mit der vorliegenden Erfindung ein Verfahren zur Entzerrung eines Kamerabildes, ein Verfahren zur Entzerrung eines Stereo-Kamerabildes, ein Verfahren zur Komprimierung einer Nachschlagetabelle und weiterhin ein Steuergerät, das diese Verfahren verwendet, gemäß den unabhängigen Patentansprüchen vorgestellt. Vorteilhafte Ausgestaltungen ergeben sich aus den jeweiligen Unteransprüchen und der nachfolgenden Beschreibung.
  • Kern der vorliegenden Erfindung ist ein Verfahren zur speichersparenden Kompression einer Nachschlagetabelle (Look-Up-Tabelle, LUT) und zur echtzeitfähigen Dekompression der Nachschlagetabelle, die für eine Rektifizierung eines Bildes, beispielsweise in einem Stereo-Video System, geeignet ist. Dadurch wird ein Verfahren zur Rektifizierung bzw. zur echtzeitfähigen Bildentzerrung ermöglicht, das als Teilschritt einer 3D-Stereomessung eingesetzt werden kann. Das Verfahren ist besonders für den Einsatz mit einer FPGA- oder ASIC-basierten Rechenhardware geeignet.
  • Im Vergleich zu bekannten Verfahren, kann erfindungsgemäß durch eine Kodierung der Nachschlagetabelle die zu speichernde und die zu transferierende Datenmenge so reduziert werden, wie sie bei der Echtzeitprozessierung benötigt wird. Dies spart für eine FPGA oder ASIC-basierte Hardware teuren Speicherplatz zur internen Speicherung der Nachschlagetabelle. Die erforderliche Bandbreite für Speicherzugriffe kann daher stark reduziert werden. Demgegenüber steht zwar eine zusätzlich durchzuführende Dekodierung, diese ist erfindungsgemäß jedoch mit sehr geringem Rechenaufwand realisierbar. Dies erlaubt die Stereo-Echtzeitverarbeitung mit einer kostengünstigen Hardware.
  • Die vorliegende Erfindung schafft ein Verfahren zur Entzerrung eines Kamerabildes, das die folgenden Schritte aufweist: Empfangen einer Mehrzahl von verzerrten Bildpunkten eines verzerrten Kamerabildes, über eine Schnittstelle; Empfangen einer komprimierten Entzerrungsvorschrift, über eine Schnittstelle; Dekomprimieren der komprimierten Entzerrungsvorschrift, um eine dekomprimierte Entzerrungsvorschrift zum Entzerren des verzerrten Kamerabildes zu erhalten; und Bestimmen einer Mehrzahl von entzerrten Bildpunkten eines entzerrten Kamerabildes aus der Mehrzahl von verzerrten Bildpunkten unter Verwendung der dekomprimierten Entzerrungsvorschrift.
  • Das Kamerabild kann eine Aufnahme einer optischen Bilderfassungsvorrichtung, beispielsweise einer Videokamera, repräsentieren. Somit kann es sich bei dem Kamerabild um ein Videobild handeln. Das Kamerabild kann aus der Mehrzahl einzelner Bildpunkte aufgebaut sein. Dabei können die Bildpunkte in einer vorbestimmten Weise, z. B. matrixförmig angeordnet sein, um das Kamerabild zu bilden. Das Kamerabild kann aufgrund intrinsischer und extrinsischer Parameter verzerrt sein. Diese Parameter können beispielsweise bei einer Kalibrierung der Bilderfassungsvorrichtung bestimmt und gespeichert werden. Um die entzerrten Bildpunkte aus den verzerrten Bildpunkten zu bestimmen, kann die Entzerrungsvorschrift eine Zuordnung zwischen den entzerrten und den verzerrten Bildpunkten aufweisen. Die Zuordnung kann auf den intrinsischen und extrinsischen Parametern basieren. Somit kann das verzerrte Kamerabild mittels der Entzerrungsvorschrift rektifiziert werden. Beispielsweise kann die Entzerrungsvorschrift dazu Verschiebungsvektoren aufweisen, die den verzerrten Bildpunkten eine neue Position zuweisen, um das entzerrten Bild zu erhalten. Die komprimierte Entzerrungsvorschrift kann die in der Entzerrungsvorschrift enthaltene Zuordnung in einer kodierten und insbesondere komprimierten Form aufweisen. Die komprimierte Entzerrungsvorschrift kann eine Nachschlagetabelle darstellen, die in einer komprimierten Form vorliegt. Bei der Verzerrung kann es sich z. B. um eine tonnenförmige oder um eine kissenförmige Verzerrung handeln. Das erfindungsgemäße Verfahren kann von einer geeigneten Vorrichtung, beispielsweise einem Steuergerät ausgeführt werden. Somit können das verzerrte Kamerabild und die komprimierte Entzerrungsvorschrift über eine oder mehrere Schnittstellen des Steuergerätes empfangen werden. Das verzerrte Kamerabild und die komprimierte Entzerrungsvorschrift können gleichzeitig oder zeitlich aufeinander folgend empfangen werden. Dabei kann für jeden Schritt des Empfangens eines verzerrten Kamerabildes ein Schritt des Empfangens einer komprimierten Entzerrungsvorschrift durchgeführt werden. Dies bedeutet, dass keine Speicherung der komprimierten Entzerrungsvorschrift in dem Steuergerät erforderlich ist. Insbesondere kann das Verfahren in Echtzeit ausgeführt werden. Somit können die Schritte des Empfangens der komprimierten Entzerrungsvorschrift, des Dekomprimierens und des Bestimmens einer Mehrzahl von entzerrten Bildpunkten innerhalb einer Zeitspanne ausgeführt werden, die gleich oder kleiner ist, als eine Zeitspanne, die zwischen dem Empfangen zweier aufeinander folgender verzerrter Kamerabilder liegt.
  • Erfindungsgemäß kann die dekomprimierte Entzerrungsvorschrift eine Mehrzahl von Verschiebungsvektoren aufweisen. Die Verschiebungsvektoren können Zuordnungen zwischen der Mehrzahl der verzerrten Bildpunkte und der Mehrzahl der entzerrten Bildpunkte definieren. Ein Verschiebungsvektor kann definieren, auf welche Art und Weise ein verzerrter Bildpunkt zu verschieben ist, um einen entzerrten Bildpunkt auszubilden. Ein Verschiebungsvektor kann somit korrespondierende Bildpunkte aus der Menge der verzerrten Bildpunkte und der Menge der entzerrten Bildpunkte einander zuordnen. Somit kann jedem entzerrten Bildpunkt oder alternativ für jeden verzerrten Bildpunkt mindestens ein Verschiebungsvektor zugeordnet sein. Die Verschiebungsvektoren können in einer Nach schlagetabelle angeordnet sein, die eine Struktur aufweisen kann, die einer Struktur der Bildpunkte des entzerrten Kamerabildes oder des verzerrten Kamerabildes entspricht.
  • Die komprimierte Entzerrungsvorschrift kann eine Mehrzahl von Verschiebungsvektoreinträgen aufweisen. Beim Dekomprimieren der komprimierten Entzerrungsvorschrift kann für jeden der Mehrzahl von entzerrten Bildpunkten ein Verschiebungsvektor aus der Mehrzahl von Verschiebungsvektoreinträgen bestimmt werden. Die Verschiebungsvektoreinträge können eine komprimierte Form der Verschiebungsvektoren darstellen. Zur Komprimierung und Dekomprimierung können bekannte Komprimierungsverfahren eingesetzt werden.
  • Gemäß einer Ausführungsform kann ein nachfolgender Verschiebungsvektor aus einem, einem nachfolgenden entzerrten Bildpunkt zugeordneten nachfolgenden Verschiebungsvektoreintrag und aus einem, einem vorangegangenen entzerrten Bildpunkt zugeordneten vorangegangenen Verschiebungsvektor bestimmt werden. Somit kann eine Information zum Bilden eines Verschiebungsvektors auf mehrere Verschiebungsvektoreinträge aufgeteilt sein. Der nachfolgende Bildpunkt, dem der nachfolgende Verschiebungsvektoreintrag und der nachfolgende Verschiebungsvektor zugeordnet sind, und der vorangegangene Bildpunkt, dem der vorangegangene Verschiebungsvektoreintrag und der vorangegangene Verschiebungsvektor zugeordnet sind, können in einer vorbestimmten Reihenfolge angeordnet sein. Beispielsweise können der nachfolgende Bildpunkt und der vorangegangene Bildpunkt benachbart angeordnet sein.
  • Hierbei kann der nachfolgende Verschiebungsvektoreintrag einen Differenzbetrag zu dem vorangegangenen Verschiebungsvektor definieren. Somit ist es ausreichend, wenn die komprimierte Entzerrungsvorschrift im Wesentlichen Veränderungen zwischen einzelnen Verschiebungsvektoren umfasst.
  • Gemäß einer weiteren Ausführungsform können die komprimierte Entzerrungsvorschrift eine Mehrzahl von Lauflängeneinträgen und eine Mehrzahl von Differenzänderungseinträgen aufweisen. Ein nachfolgender Verschiebungsvektor eines nachfolgenden entzerrten Bildpunkts kann einem vorangegangenen Verschiebungsvektor eines vorangegangenen entzerrten Bildpunkts entsprechen, wenn ein, dem nachfolgenden entzerrten Bildpunkt zugeordneter Lauflängeneintrag einen ersten Wert aufweist. Ferner kann der nachfolgende Verschiebungsvektor aus dem vorangegangenen Verschiebungsvektor und einem, dem nachfolgenden entzerrten Bildpunkt zugeordneten Differenzänderungseintrag bestimmt werden, wenn der, dem nachfolgenden entzerrten Bildpunkt zugeordnete Lauflängeneintrag einen zweiten Wert aufweist. Beispielsweise kann der erste Wert des zugeordneten Lauflängeneintrags eine logische Null und der zweite Wert eine logische Eins, oder umgekehrt darstellen. Somit können die Lauflängeneinträge abhängig von einer Anzahl aufeinander folgender, unveränderter Verschiebungsvektoren sein. Dabei kann eine Reihenfolge der einzelnen Verschiebungsvektoren vorgegeben sein, und beispielsweise einer Anordnung der entzerrten Bildpunkte des entzerrten Kamerabildes entsprechen. Ändert sich in einer der gegebenen Reihenfolge ein Wert eines Verschiebungsvektors, so kann eine entsprechende Änderung betragsmäßig und vorzeichenmäßig durch den entsprechenden Differenzänderungseintrag definiert werden. Auf diese Weise lässt sich die Größe der komprimierten Entzerrungsvorschrift weiter verringern. Alternativ können andere bekannte Kodierverfahren zur Datenkompression eingesetzt werden. Beispielsweise können Huffmann-Codes, die in D. A. HUFFMAN: A Method for the Construction of Minimum Redundancy Codes, Proceedings of the IRE, 40, 1098–1101 (1952) beschrieben sind, oder LZW-Verfahren gemäß US 4.558.302 eingesetzt werden.
  • Vorteilhafterweise können die Verfahrensschritte so ausgeführt werden, dass es sich um ein echtzeitfähiges Verfahren handelt. Ein solches Verfahren eignet sich beispielsweise zur Umfelderfassung in einem Fahrassistenzsystem eines Fahrzeugs.
  • Die vorliegende Erfindung schafft ferner ein Verfahren zur Entzerrung eines Stereo-Kamerabildes, das die folgenden Schritte aufweist: Empfangen einer Mehrzahl von ersten verzerrten Bildpunkten eines ersten verzerrten Kamerabildes und einer Mehrzahl von zweiten verzerrten Bildpunkten eines zweiten verzerrten Kamerabildes, über eine Schnittstelle; Empfangen einer ersten komprimierten Entzerrungsvorschrift und einer zweiten komprimierten Entzerrungsvorschrift, über eine Schnittstelle; Dekomprimieren der ersten komprimierten Entzerrungsvorschrift und der zweiten komprimierten Entzerrungsvorschrift, um eine erste dekomprimierte Entzerrungsvorschrift zum Entzerren des ersten verzerrten Kamerabildes und eine zweite dekomprimierte Entzerrungsvorschrift zum Entzerren des zweiten verzerrten Kamerabildes zu erhalten; und Bestimmen einer Mehrzahl von ersten entzerrten Bildpunkten eines ersten entzerrten Kamerabildes aus der Mehrzahl von ersten verzerrten Bildpunkten unter Verwendung der ersten dekomprimierten Entzerrungsvorschrift und einer Mehrzahl von zweiten entzerrten Bildpunkten eines zweiten entzerrten Kamerabildes aus der Mehrzahl von zweiten verzerrten Bildpunkten unter Verwendung der zweiten dekomprimierten Entzerrungsvorschrift. Dabei können die, dem ersten und dem zweiten Kamerabild zugeordneten Verfahrensschritte jeweils parallel ausgeführt werden. Die beiden entzerrten Kamerabilder können für eine Entfernungsbestimmung eingesetzt werden. Somit ist eine Echtzeit Stereo-Videoentzerrung im Falle von sehr hochauflösenden Videokameras möglich. Das erfindungsgemäße Verfahren kann auf Verfahren zur Stereo-Rektifizierung aufbauen, wie sie in der WO 02/078346 A1 oder der WO 02/095681 A1 beschrieben sind.
  • Die vorliegende Erfindung schafft ferner ein Verfahren zur Komprimierung einer Nachschlagetabelle zur Entzerrung eines Kamerabildes, das die folgenden Schritte aufweist: Empfangen einer Mehrzahl Verschiebungsvektoren über eine Schnittstelle, wobei die Mehrzahl von Verschiebungsvektoren Zuordnungen zwischen verzerrten Bildpunkten eines verzerrten Kamerabildes und entzerrten Bildpunkten eines entzerrten Kamerabildes definieren; Bestimmen einer Mehrzahl von Verschiebungsvektoreinträgen, wobei ein Verschiebungsvektoreintrag jeweils eine Veränderung zwischen mindestens zwei der Mehrzahl von Verschiebungsvektoren definiert; und Bereitstellen einer komprimierten Nachschlagetabelle, die die Mehrzahl von Verschiebungsvektoreinträgen aufweist. Die Verschiebungsvektoren können beispielsweise bei einer Kamerakalibrierung ermittelt werden. Zur weiteren Komprimierung können die Verschiebungsvektoreinträge weiter kodiert werden, beispielsweise mittels einer Lauflängenkodierung.
  • Die vorliegende Erfindung schafft ferner ein Verfahren zur Dekomprimierung einer komprimierten Nachschlagetabelle zur Entzerrung eines Kamerabildes, das die folgenden Schritte aufweist: Empfangen der komprimierten Nachschlagetabelle über eine Schnittstelle, wobei die Nachschlagetabelle eine Mehrzahl von Verschiebungsvektoreinträgen aufweist, die jeweils eine Veränderung zwischen mindestens zwei einer Mehrzahl von Verschiebungsvektoren definieren; Bestimmen der Mehrzahl von Verschiebungsvektoren aus der Mehrzahl von Verschiebungsvektoreinträgen, wobei die Mehrzahl von Verschiebungsvektoren Zuordnungen zwischen verzerrten Bildpunkten eines verzerrten Kamerabildes und entzerrten Bildpunkten eines entzerrten Kamerabildes definieren; und Bereitstellen der Mehrzahl von Verschiebungsvektoreinträgen.
  • Die vorliegende Erfindung schafft ferner ein Steuergerät oder eine Rechenhardware, die ausgebildet sind, um die Schritte des erfindungsgemäßen Verfahrens durchzuführen bzw. umzusetzen. Auch durch diese Ausführungsvariante der Erfindung in Form eines Steuergeräts kann die der Erfindung zugrunde liegende Aufgabe schnell und effizient gelöst werden.
  • Unter einem Steuergerät kann vorliegend ein elektrisches Gerät verstanden werden, das Sensorsignale verarbeitet und in Abhängigkeit davon Steuersignale ausgibt. Das Steuergerät 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 des Steuergeräts 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 mit Programmcode, der auf einem maschinenlesbaren Träger wie einem Halbleiterspeicher, einem Festplattenspeicher oder einem optischen Speicher gespeichert ist und zur Durchführung des Verfahrens nach einem der vorstehend beschriebenen Ausführungsformen verwendet wird, wenn das Programm auf einem Steuergerät ausgeführt wird.
  • Zur Umsetzung einer Entzerrung in der Realität können die erfindungsgemäßen Ausführungsformen variiert werden. So kann eine Verarbeitung der Videobilddaten in einer Rektifizierungs-Hardware (z. B. FPGA + RAM) sequentiell erfolgen. Dabei ist ein Eingang vorgesehen, in den die Kamerabilddaten (Helligkeitswerte) im Pixeltaxt eingehen und es ist ein Ausgang vorgesehen, aus dem entzerrte Bilddaten im Pixeltaxt bereitgestellt werden. Ferner kann es einen Eingangspuffer geben, in dem eine begrenzte Anzahl Zeilen Eingangsbild abgelegt werden können. Somit wird nicht das gesamte Bild im Speicher abgelegt.
  • Ferner kann das entzerrte Ausgangsbild fortlaufend berechnet und daraus ein Ausgangssignal generiert werden. Das Ausgangsbild muss also in der Entzerrungshardware nicht gespeichert werden.
  • Für die Umsetzung in einem FPGA kann die LUT zur Entzerrung im FPGA selbst oder in einem externen RAM Baustein abgelegt werden. Bei der Ablage im kostengünstigeren externen RAM wird eine hohe Datentransferrate zwischen RAM und FPGA erzeugt, was sich ungünstig auswirkt. Bei der Ablage der kompletten LUT im FPGA wird viel, relativ teuerer Speicher, im FPGA benötigt.
  • Diese beiden Nachteile werden durch die Komprimierung der LUT vermieden. Die Komprimierung der LUT erfolgt gezielt so, dass diese im Pixeltakt mit begrenztem Rechenaufwand sequentiell zu dekodieren ist. Es liegt damit im Speicher des FPGA nur der aktuell dekodierte Vektor vor, der zur Berechnung des aktuellen Ausgangspixels benötigt wird. Die gesamte dekodierte LUT wird nicht in der Hardware komplett gespeichert.
  • Die Speicherung der komprimierten LUT kann sowohl im FPGA selbst oder extern im RAM erfolgen.
  • Somit kann eine sequentielle Bearbeitung erfolgen. Diese betrifft die Dekodierung der LUT und der Entzerrung des Bildes. Somit liegen die Bilder und die LUT nicht jeweils vollständig im Speicher der Hardware (FPGA) vor.
  • Ferner ist eine Speicherung der LUT im (FPGA/ASIC) selbst möglich. Dadurch ist ein mehrmaliges Übertragen der LUT nicht erforderlich.
  • Die Erfindung wird nachstehend anhand der beigefügten Zeichnungen beispielhaft näher erläutert. Es zeigen:
  • 1 ein Prinzip einer Stereomessung und 3D-Triangulation;
  • 2 einen Datenfluss zur Stereo-Videobildverarbeitung;
  • 3 ein Prinzip der Bildentzerrung mit Hilfe einer Nachschlagetabelle
  • 4 ein Prinzip der Vektordifferenzen innerhalb der Nachschlagetabelle.
  • 5 ein Prinzip der Lauflängenkodierung einer differenziellen Nachschlagetabelle; und
  • 6 einen Datenfluss einer Stereo-Videobildverarbeitung gemäß einem Ausführungsbeispiel der vorliegenden Erfindung.
  • In der nachfolgenden Beschreibung bevorzugter 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 ein Prinzip einer Stereomessung und einer 3D-Triangulation gemäß einem Ausführungsbeispiel. Gezeigt sind ein linkes Bild 101 und ein rechtes Bild 102. Die Bilder 101, 102 können jeweils von einer Kamera bzw. eines Stereo-Videosystems aufgenommen worden sein und eine Mehrzahl von Bildpunkten aufweisen. Beispielhaft sind im Bild 101 ein Bildpunkt pL und im Bild 102 ein Bildpunkt pR gezeigt. Die Bildpunkte pL und pR sind auf einer gemeinsamen Bildzeile 105 angeordnet. Eine Position des Bildpunktes pR in dem Bild 101 kann mittels eines x'-y'-Koordinatensystem angegeben werden. Eine Position des Bildpunktes pL in dem Bild 102 kann mittels eines x''-y''-Koordinatensystem angegeben werden. Die Bildpunkte pL und pR bilden einen realen Punkt p ab. Eine Entfernungsbestimmung des Punktes p kann aus den Positionen der Punkte pL und pR mittels Triangulation bestimmt werden.
  • Zur hochgenauen 3D-Bestimmung von geometrischen Merkmalen aus Stereo-Videobilddaten müssen die durch einen Kamerakalibrierungsprozess bestimmten intrinsischen und extrinsischen Parameter berücksichtigt werden. Die intrinsischen Parameter beschreiben, basierend auf einem Abbildungsmodell, den funktionalen Zusammenhang, den ein Bildstrahl ausgehend von einer physikalischen Oberfläche in der Objektszene durch das Objektiv der Kamera bis zu seiner Abbildung auf der Sensoroberfläche erfährt. Die intrinsischen Parameter beschreiben u. a. die optische Brennweite und die optische Verzeichnung. Die extrinsischen Parameter beschreiben dagegen die gegenseitige geometrische Anordnung der Kameras des Stereo-Videosystems zueinander. Dies ist die relative Position und Winkellage der Kameras zueinander. Bei einem Stereo-Videosystem wird im Allgemeinen das Projektionszentrum der einen Kamera relativ zum Projektionszentrum der anderen Kamera beschrieben, was auch mit relativer Orientierung bezeichnet wird.
  • Mit einem kalibrierten Stereo-Videosystem kann nun die aufgenommene Objektszene vermessen werden, indem korrespondierende Bildpunkte zuerst detektiert und dann durch einen Vorwärtsschnitt räumlich trianguliert werden. 1 zeigt schematisch den Vorgang der Stereomessung aus zwei Bildern 101, 102.
  • 2 zeigt einen Datenfluss zur Stereo-Videobildverarbeitung gemäß einem Ausführungsbeispiel. Von einer ersten Kamera kann ein linker Bildstrom 211 und von einer zweiten Kamera ein rechter Bildstrom 212 empfangen werden. Der linke Bildstrom 211 kann ein erstes verzerrtes Stereobild A1 215 und der rechte Bildstrom 212 kann ein zweites verzerrtes Stereobild A2 216 bereitstellen. Ferner kann eine erste Nachschlagetabelle LUT1 217 und eine zweite Nachschlagetabelle LUT2 218 bereitgestellt werden. Die erste Nachschlagetabelle 217 kann dem linken Bildstrom 211 und die zweite Nachschlagetabelle 218 kann dem rechten Bildstrom 212 zugeordnet sein. Die Nachschlagetabellen 217, 218 können Informationen zur Entzerrung der jeweiligen Stereobilder 215, 216 umfassen. Aus dem ersten verzerrten Stereobild 215 und der ersten Nachschlagetabelle 217 kann mittels einer ersten Rektifizierung 221 ein erstes rektifiziertes Bild B1 223 ermittelt werden. Aus dem zweiten verzerrten Stereobild 216 und der zweiten Nachschlagetabelle 218 kann mittels einer zweiten Rektifizierung 222 ein zweites rektifiziertes Bild B2 224 ermittelt werden. Basierend auf den rektifizierten Bildern 223, 224 kann eine Stereomessung 227 durchgeführt werden. Basierend auf der Stereomessung können beispielsweise Entfernungsinformationen 229 bereitgestellt werden.
  • 2 beschreibt allgemein ein Verfahren zur Echtzeit-Stereo-Bildverarbeitung. Der Datenstrom 211, 212 aus linker und rechter Kamera wird zunächst mit einer Recheneinheit rektifiziert 221, 222. Anschließend erfolgt eine Disparitätsmessung 227 zwischen dem linken und rechten Stereobildpaar 223, 224. Die Disparitätsmessung 227 erlaubt dann die 3D-Berechnung von Merkmalen im Kameravorfeld. Vorliegend wird ein Verfahren zur Rektifizierung beschrieben. Zur Echtzeit-Disparitätsmessung können bekannte Verfahren eingesetzt werden.
  • Gemäß diesem Ausführungsbeispiel zeigt 2 den möglichen Ablauf einer Stereomessung in einer Rechenhardware. Damit in den einzelnen Verarbeitungsschritten die durch Kalibrierung bestimmten intrinsischen und extrinsischen Parameter vereinfacht berücksichtigt bleiben können, werden zur optimierten Prozessierung die Bilddaten 215, 216 zunächst entzerrt bzw. rektifiziert 221, 222. Die geometrischen Zusammenhänge können dann mit einem einfachen Lochkameramodell beschrieben werden. Entzerrte Stereo-Bilddaten 223, 224 entsprechen dem sog. Stereonormalfall. Anschließend erfolgt eine Disparitätsmessung 227 zur Entfernungsbestimmung der 3D-Merkmale. Durch die Rektifizierung 221, 222 kann eine Disparitätsmessung 227 in einer Zeile des digitalen Bildes 223, 224 erfolgen, wodurch eine rechentechnische Umsetzung stark erleichtert wird.
  • Für die Echtzeit Stereo-Videobildentzerrung kommt erschwerend hinzu, dass im Takt der Bildaufnahme 215, 216 ebenfalls die Entzerrung 221, 222 zu prozessieren ist, da sie die Grundlage für Echtzeit-Algorithmen darstellt. Für die schnelle sequentielle Verarbeitung in einer Rechenhardware können für jeden Bildpunkt die Verschiebungsvektoren zwischen seiner Ist- (verzerrten) und Solllage (entzerrten) in Form der Nachschlagetabellen (LUT) 217, 218 vorab berechnet und in einem Speicher abgelegt werden. Für den Fall von Stereokameras sind zwei LUT's 217, 218 vorab zu berechnen. Eine LUT 217, 218 stellt die generische Rechenvorschrift zur Entzerrung eines Kamerabildes 215, 216 dar und beinhaltet Verschiebungsvektoren mit einem differentiellen dx und dy Anteil.
  • 3 beschreibt ein Prinzip der Bildrektifizierung, auf der beispielsweise der in 2 gezeigte Verfahrensschritt der Rektifizierung 221 basieren kann. Dabei kann mit Hilfe einer empfangenen Nachschlagetabelle LUT 217 ein empfangenes Originalbild 215 in ein entzerrtes Bild 223 umgewandelt werden. Gemäß diesem Ausführungsbeispiel weist die Nachschlagetabelle 217 eine Mehrzahl von Einträgen 331, 332 auf. Die Einträge 331, 332 können Positionen 341, 342 des entzerrten Bildes 223 zugeordnet sein. Gemäß diesem Ausführungsbeispiel weist der Eintrag 331 einen Verschiebungsvektor 351 auf, der auf eine Position des Originalbildes 215 zeigt, an dem sich ein Bildpunkt befindet, der zur Bildentzerrung an der Position 341 des entzerrten Bildes angeordnet wird. Entsprechend dazu weist der Eintrag 332 einen Verschiebungsvektor 352 auf, der auf eine Position des Originalbildes 215 zeigt, an dem sich ein Bildpunkt befindet, der zur Bildentzerrung an der Position 342 des entzerrten Bildes angeordnet wird.
  • Bei der Echtzeit Stereo-Videobildentzerrung müssen für die Verarbeitung simultan die Datenströme von zwei Eingangsbildern, zwei Nachschlagetabellen und zwei Ausgangsbilder in der Recheneinheit verarbeitet werden. Das derzeit limitierende bei der Echtzeitprozessierung der genannten Aufgabe ist das Transferieren der Datenmengen, die sich durch die Eingangsbilder, Nachschlagetabellen und Ausgangsbilder ergeben. Die Verarbeitung von VGA Stereo-Videobildern mit einer Auflösung von 640 × 480 pel, 8 bit pro Pixel und 25 Hz erzeugt einen Bilddatenstrom von 128 Mbit/s. Das parallele Lesen der Nachschlagetabelle zur Rektifizierung aus einem Speicher in, z. B. eine FPGA basierte Recheneinheit erfordert die gleiche Datenrate. Dies macht eine echtzeitfähige Stereo-Hardware relativ teuer.
  • Die Alternative, nämlich eine Speicherung der Nachschlagetabellen z. B. in der FPGA-Recheneinheit verursacht wegen der Größe der Nachschlagetabellen einen hohen Speicherverbrauch im FPGA und erfordert den Einsatz teurerer FPGAs.
  • Die vorliegende Erfindung befasst sich insbesondere auf die Datenströme der beiden Nachschlagetabellen. Im Gegensatz zu den Bilddaten bleibt der zu transferierende Inhalt dieser Nachschlagetabellen gleich und stellt einen erheblich Anteil der Datenmenge dar. Anstatt diese vollständig zu übertragen wird eine Codierungs-/Decodierungsvorschrift angewendet, die die Datenmenge der Nachschlagetabellen erheblich reduziert. Die Codierung der Nachschlagetabellen wird vorab einmalig außerhalb der Echtzeitprozessierung durchgeführt. Die Dekodierung ist zu Gunsten der reduzierten Datenmenge dagegen in Echtzeit durchzuführen.
  • Eine Stereo-Rektifizierung ist vom Prinzip eine Verzerrung des Eingangsbildes und die Generierung eines Ausgangsbildes. Die Nachschlagetabelle enthält die Vorschrift für die Verzerrung. Eine Nachschlagetabelle für die Stereo-Rektifizierung enthält für jedes Pixel (xr, yr) des rektifizierten Bildes einen Verschiebungsvektor (dx, dy). Der Verschiebungsvektor bestimmt, aus welchem Pixel (x0, y0) des Eingangsbildes der Grauwert für die Position (xr, yr) zu entnehmen ist.
  • Der funktionale Zusammenhang lautet: x0 = xr + dx y0 = yr + dy
  • 4 zeigt eine komprimierte Nachschlagetabelle ddx-LUT 417 gemäß einem Ausführungsbeispiel der vorliegenden Erfindung. Die komprimierte Nachschlagetabelle 417 weist eine Mehrzahl von Einträgen 431, 432 auf. Gemäß diesem Ausführungsbeispiel weist der Eintrag 431, der in der linken oberen Ecke angeordnet ist, den originalen Vektor auf, entsprechend der in 3 gezeigten Nachschlagetabelle. Der Eintrag 432 weist jedoch nicht den originalen Vektor auf, sondern eine Differenz. Ein aktueller Vektor zu dem Eintrag 432 ergibt sich aus dem zuvor berechneten Vektor 431 an der Nachbarposition plus dem aktuellen Eintrag 432 in der ddx-LUT Nachschlagetabelle 417. Somit kann die komprimierte Nachschlagetabelle 417 dekomprimiert werden, indem aktuelle Vektoren aus der Mehrzahl von Einträgen 431, 432 bestimmt werden. Die aktuellen Vektoren können in eine dekomprimierte Nachschlagetabelle eingetragen werden und für die Rektifizierung bereitgestellt werden. Abgesehen von dem Eintrag 432 kann die Nachschlagetabelle 417 somit lediglich Differenzbeträge aufweisen, die jeweils eine Differenz eines aktuellen Verschiebungsvektors zu einem zugeordneten benachbarten Verschiebungsvektor definieren, der vorzugsweise bereits bestimmt wurde.
  • Die Nachschlagetabelle stellt mathematisch ein Verschiebungsvektorfeld dar. Das ist in der Regel relativ glatt. Daher können erfindungsgemäß die Einträge der Nachschlagetabelle als Differenzen relativ zu den Nachbareinträgen beschrieben werden. Es entsteht eine „Differenzen LUT” 417, die im Folgenden als dd-LUT 417 bezeichnet wird. Wie in 4 dargestellt, ist berechnet sich der aktuelle Verschiebungsvektor durch die Dekodierung aus dem zuvor berechneten Verschiebungsvektor der Nachbarposition addiert mit dem aktuellen Eintrag der dd-LUT 417. Es gilt dx(x, y) = dx(x – 1, y) + ddx(x, y) dy(x, y) = dy(x – 1, y) + ddy(x, y)
  • Die Bildung der dd-LUT 417 ist ein erster Schritt des Kodierverfahrens.
  • Für eine digitale Verarbeitung müssen die Differenzen, d. h. die Einträge in der dd-LUT 417 diskretisiert werden. Damit lassen sich diese weiter kodieren. Aufgrund des schon erwähnten glatten Verlaufs des Verschiebungsvektorfeldes treten häufig Null-Einträge in den dd-LUT 417 auf. Daher bietet sich eine Lauflängenkodierung zur weiteren Komprimierung an.
  • 5. zeigt ein Prinzip der Lauflängenkodierung einer differenziellen LUT 417, wie sie beispielsweise in 4 gezeigt ist. Gemäß diesem Ausführungsbeispiel weist die Nachschlagetabelle 417 im ersten Eintrag einen Wert des originalen Vektors auf. Die folgenden Einträge, weisen Differenzen zu dem jeweils vorangegangenen Eintrag auf. So weist ein dem ersten Eintrag 431 nachfolgender Eintrag 432 den Wert „+1” auf. Dies bedeutet, dass ein aktueller Vektor für diese Position gegenüber dem aktuellen Vektor der vorangegangenen Position, hier links benachbart, um Eins erhöht ist. Die zwei nachfolgenden Einträge weisen den Wert „0” auf. Dies bedeutet, dass sich die aktuellen Vektoren an diesen Positionen nicht von dem Vektor der vorangegangenen Position unterscheiden. Der nachfolgende Eintrag weist den Wert „–1” auf. Das bedeutet, dass sich der aktuelle Vektor für diese Position gegenüber dem vorangegangenen aktuellen Vektor um 1 erniedrigt. Die drei nachfolgenden Einträge weisen wieder den Wert „0” auf und ein weiterer nachfolgender Eintrag den Wert „+1”. Zur Lauflängenkodierung können Lauflängeneinträge und Differenzänderungseinträge eingesetzt werden.
  • So kann ein erster Lauflängeneintrag aufgrund der ersten zwei „0”-Einträge den Wert „2” und ein zweiter Lauflängeneintrag aufgrund der zweiten drei „0”-Einträge den Wert „3” aufweisen. Daraus ergibt die Kodierung eine Vektor mit dem Abstand zwischen Einträgen ungleich „0” zu a = [2, 3, ..., ...]. Die Differenzänderungseinträge, die eine Betragsänderung des aktuellen Vektors gegenüber einem vorangegangenen aktuellen Vektor anzeigen, können ebenfalls in einem Vektor zusammengefasst werden. Somit ergibt die Kodierung einen Vektor b mit [+1, –1] zu b = [1, 0, 1, ...]. Eine entsprechende kodierte Entzerrungsvorschrift kann gemäß diesem Ausführungsbeispiel den Verschiebungsvektor des ersten Eintrags 431 und den Vektor a sowie den Vektor b aufweisen. Aus diesen Informationen lassen sich die Verschiebungsvektoren für alle Einträge einer entsprechenden Nachschlagetabelle zum Entzerren des Bildes bestimmen.
  • Somit wird bei der gemäß dem in 5 gezeigten Ausführungsbeispiel in dem Vektor a der Abstand von den dd-LUT Einträgen ungleich Null gespeichert und in Vektor b der Zustand, ob es sich um eine positive oder negative Differenzenänderung handelt.
  • Die Lauflängenkodierung ist ein zweiter Schritt des Kodierverfahrens.
  • Die Rechenvorschrift der Dekodierung erfolgt aus dem invers angewandten Kodierverfahren.
  • 6 zeigt einen veränderten Datenfluss der Stereo-Videobildverarbeitung gemäß einem Ausführungsbeispiel der vorliegenden Erfindung. In einem initialen Arbeitsschritt können die Nachschlagetabellen vorab kodiert werden. Die kodierten und damit von der Datenmenge reduzierten Nachschlagetabellen können dann an die Rechenhardware übertragen werden. Erfindungsgemäß wird der mögliche Ablauf einer Stereomessung in einer Rechenhardware um die Schritte des erfindungsgemäßen Verfahrens erweitert.
  • Basierend auf einer Kalibrierung einer ersten Kamera kann die erste Nachschlagetabelle LUT1 217 und basierend auf einer Kalibrierung einer zweiten Kamera kann die zweite Nachschlagetabelle LUT2 218 bestimmt werden. Die Kameras können Teil eines Stereo-Videosystems sein. Die Nachschlagetabellen 217, 218 können kodiert 610 werden. Beim Kodieren 610 der Nachschlagetabellen 217, 218 kann aus der ersten Nachschlagetabelle 217 eine erste komprimierte Nachschlagetabelle 617, in Form einer kodierten LUT1 bestimmt werden und aus der zweiten Nachschlagetabelle 218 eine zweite komprimierte Nachschlagetabelle 618, in Form einer kodierten LUT2 bestimmt werden.
  • Die komprimierten Nachschlagetabellen können gemäß dem erfindungsgemäßen Verfahren zur Rektifizierung, zum Entzerren des ersten Kamerabildes A1 215 und des zweiten Kamerabildes A2 216 eingesetzt werden. Das erste Kamerabild 215 kann über den linken Bildstrom 211 und das zweite Kamerabild 216 über den rechten Bildstrom 212 empfangen werden. Im Schritt 621 kann eine Dekodierung der ersten komprimierten Nachschlagetabelle 617 erfolgen, um eine dekodierte erste Nachschlagetabelle zu erhalten, die der ersten Nachschlagetabelle 217 entsprechen kann. Somit kann die dekodierte Nachschlagetabelle eine dekomprimierte Entzerrungsvorschrift mit einer Mehrzahl von Verschiebungsvektoren umfassen, die Zuordnungen zwischen der Mehrzahl der verzerrten Bildpunkte des Bildes 215 und der Mehrzahl der entzerrten Bildpunkte des entzerrten Bildes 223 definieren können. Anschließend kann eine Rektifizierung des ersten Kamerabilds 215 unter Verwendung der dekodierten ersten Nachschlagetabelle erfolgen, um das entzerrte erste Bild B1 223 zu erhalten. Entsprechend dazu kann im Schritt 622 kann eine Dekodierung der zweiten komprimierten Nachschlagetabelle 618 erfolgen, um eine dekodierte zweite Nachschlagetabelle zu erhalten, die der zweiten Nachschlagetabelle 218 entsprechen kann. Anschließend kann eine Rektifizierung des zweiten Kamerabilds 216 unter Verwendung der dekodierten zweiten Nachschlagetabelle erfolgen, um das entzerrte zweite Bild B2 224 zu erhalten. Basierend auf den Bildern 223, 224 kann die Stereomessung 227 durchgeführt werden, und die Entfernungsinformationen 229 bereitgestellt werden.
  • Für zeitlich nachfolgend empfangene Bilder, die entsprechend den Bildern 215, 216 empfangen werden, können die Schritte des Empfangens der Nachschlagetabellen 617, 618, sowie die Schritte 621, 622 der Dekodierung und Rektifizierung wiederholt ausgeführt werden, um nachfolgende entzerrte Bilder zu erhalten. Somit kann fortlaufend für jedes empfangene Bild eine zugeordnete Nachschlagetabelle empfangen werden.
  • Gemäß dem in 6 gezeigten Ausführungsbeispiel kann nach der Kalibrierung der Kameras und Berechnung der Nachschlagetabellen 217, 218 zunächst eine Kodierung 610 der Nachschlagetabellen 217, 218 zur effizienten Speicherung der Nachschlagetabellen in der Rechenhardware erfolgen. Dieser Schritt erfolgt vor der Stereo-Echtzeitverarbeitung.
  • Zur Echtzeit-Bildrektifizierung kann während der Echtzeit-Stereo-Videoverarbeitung eine Bildrektifizierung 621, 622 erfolgen, wobei eine fortlaufende Dekodierung der komprimierten Nachschlagetabellen-Daten 617, 618 erfolgen kann.
  • Gemäß diesem Ausführungsbeispiel kann die Dekodierung folgendermaßen ablaufen. Die Dekodierung kann, wie die Kodierung der Nachschlagetabelle, in zwei Schritten erfolgen.
  • Zunächst ist die Lauflängenkodierung zu dekodieren. Dies kann in Hardware sehr einfach über eine Logik realisiert werden. Die dekodierte Lauflänge wird aus dem Vektor in einen Zähler gespeichert.
  • Im zweiten Schritt wird der aktuelle Verschiebungsvektor zur Pixelkorrektur berechnet. Dabei wird im Videotakt der Zähler zur Speicherung der Lauflänge dekrementiert. Bei Erreichen der Null-Position des Zählers wird der aktuelle Verschiebungsvektor entsprechend des Bit-Eintrages im Vektor b inkrementiert oder dekrementiert. Es wird der nächste Lauflängeneintrag aus dem Vektor a in den Zähler gelesen.
  • Die Umsetzung des Dekodierverfahrens mit einer Logik, einem Zähler und einem Speicher für den aktuellen Wert des Nachschlagetabellen-Vektors macht das beschriebene Verfahren besonders geeignet für eine Umsetzung in einer FPGA oder ASIC-Hardware.
  • Gemäß einem alternativen Ausführungsbeispiel kann statt der Kodierung der Differenzen der Nachschlagetabellen auch Differenzen höherer Ordnung zur Kodierung verwendet werden. Die Berechnungsvorschrift für die Kodierung und Dekodierung mit Differenzen zweiter Ordnung zeigt nachfolgende Formel: ddx2(x, y) = 2·dx(x, y) – dx(x – 1, y) – dx(x + 1, y) ddy2(x, y) = 2·dy(x, y) – dy(x – 1, y) – dy(x + 1, y)
  • Gemäß einem weiteren Ausführungsbeispiel kann die Lauflängenkodierung der dd-LUT entfallen oder durch andere aus der Datenkompression bekannte Kodierverfahren, wie Huffmann-Codes oder LZW-Verfahren ersetzt werden.
  • Das erfindungsgemäße Verfahren ist einsetzbar für die Echtzeit-Korrektur von geometrischen Verzeichnungen der Optik auch in Mono-Videosystemen, z. B. in Überwachungskameras.
  • Die beschriebenen und in den Figuren gezeigten Ausführungsbeispiele sind nur beispielhaft gewählt. Unterschiedliche Ausführungsbeispiele können vollständig oder in Bezug auf einzelne Merkmale miteinander kombiniert werden. Auch kann ein Ausführungsbeispiel durch Merkmale eines weiteren Ausführungsbeispiels ergänzt werden. Ferner können erfindungsgemäße Verfahrensschritte wiederholt sowie in einer anderen als in der beschriebenen Reihenfolge ausgeführt werden.
  • 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 Patentliteratur
    • DE 10229336 A1 [0003]
    • US 2008/0002879 [0004]
    • US 4558302 [0014]
    • WO 02/078346 A1 [0016]
    • WO 02/095681 A1 [0016]
  • Zitierte Nicht-Patentliteratur
    • D. A. HUFFMAN: A Method for the Construction of Minimum Redundancy Codes, Proceedings of the IRE, 40, 1098–1101 (1952) [0014]

Claims (10)

  1. Verfahren zur Entzerrung eines Kamerabildes, das die folgenden Schritte aufweist: Empfangen von verzerrten Bildpunkten eines verzerrten Kamerabildes (215, 216), über eine Schnittstelle; Bereitstellen einer komprimierten Entzerrungsvorschrift (617, 618); Dekomprimieren der komprimierten Entzerrungsvorschrift, um eine dekomprimierte Entzerrungsvorschrift zum Entzerren des verzerrten Kamerabildes zu erhalten; und Bestimmen von entzerrten Bildpunkten eines entzerrten Kamerabildes (223, 224) aus den verzerrten Bildpunkten unter Verwendung der dekomprimierten Entzerrungsvorschrift.
  2. Verfahren gemäß Anspruch 1, bei dem die dekomprimierte Entzerrungsvorschrift eine Mehrzahl von Verschiebungsvektoren (351, 352) aufweist, die Zuordnungen zwischen den verzerrten Bildpunkte und den entzerrten Bildpunkte (341, 342) definieren.
  3. Verfahren gemäß Anspruch 2, bei dem die komprimierte Entzerrungsvorschrift (617, 618) eine Mehrzahl von Verschiebungsvektoreinträgen (431, 432) aufweist, und bei dem beim Dekomprimieren für jeden der entzerrten Bildpunkte (341, 342) ein Verschiebungsvektor (351, 352) aus der Mehrzahl von Verschiebungsvektoreinträgen bestimmt wird.
  4. Verfahren gemäß Anspruch 3, bei dem ein nachfolgender Verschiebungsvektor (352) aus einem, einem nachfolgenden entzerrten Bildpunkt (342) zugeordneten nachfolgenden Verschiebungsvektoreintrag (332) und aus einem, einem vorangegangenen entzerrten Bildpunkt (341) zugeordneten vorangegangenen Verschiebungsvektor (351) bestimmt wird.
  5. Verfahren gemäß Anspruch 4, bei dem der nachfolgende Verschiebungsvektoreintrag (332) einen Differenzbetrag zu dem vorangegangenen Verschiebungsvektor (351) definiert.
  6. Verfahren gemäß Anspruch 3, bei dem die komprimierten Entzerrungsvorschrift eine Mehrzahl von Lauflängeneinträgen (a) und eine Mehrzahl von Differenzänderungseinträgen (b) aufweisen, und bei dem ein nachfolgender Verschiebungsvektor eines nachfolgenden entzerrten Bildpunktes einem vorangegangenen Verschiebungsvektor eines vorangegangenen entzerrten Bildpunkts entspricht, wenn ein, dem nachfolgenden entzerrten Bildpunkt zugeordneter Lauflängeneintrag einen ersten Wert aufweist und bei dem der nachfolgende Verschiebungsvektor aus dem vorangegangenen Verschiebungsvektor und einem, dem nachfolgenden entzerrten Bildpunkt zugeordneten Differenzänderungseintrag bestimmt wird, wenn der, dem nachfolgenden entzerrten Bildpunkt zugeordnete Lauflängeneintrag einen zweiten Wert aufweist.
  7. Verfahren gemäß einem der vorangegangenen Ansprüche, bei dem die Verfahrensschritte so ausgeführt werden, dass es sich um ein echtzeitfähiges Verfahren handelt.
  8. Verfahren zur Entzerrung eines Stereo-Kamerabildes, das die folgenden Schritte aufweist: Empfangen von ersten verzerrten Bildpunkten eines ersten verzerrten Kamerabildes (215) und von zweiten verzerrten Bildpunkten eines zweiten verzerrten Kamerabildes (216), über eine Schnittstelle; Bereitstellen einer ersten komprimierten Entzerrungsvorschrift (617) und einer zweiten komprimierten Entzerrungsvorschrift (618); Dekomprimieren (621, 622) der ersten komprimierten Entzerrungsvorschrift und der zweiten komprimierten Entzerrungsvorschrift, um eine erste dekomprimierte Entzerrungsvorschrift zum Entzerren des ersten verzerrten Kamerabildes und eine zweite dekomprimierte Entzerrungsvorschrift zum Entzerren des zweiten verzerrten Kamerabildes zu erhalten; Bestimmen von ersten entzerrten Bildpunkten eines ersten entzerrten Kamerabildes (223) aus den ersten verzerrten Bildpunkten unter Verwendung der ersten dekomprimierten Entzerrungsvorschrift und von zweiten entzerrten Bildpunkten eines zweiten entzerrten Kamerabildes (224) aus den zweiten verzerrten Bildpunkten unter Verwendung der zweiten dekomprimierten Entzerrungsvorschrift.
  9. Verfahren zur Komprimierung einer Nachschlagetabelle (217, 218) zur Entzerrung eines Kamerabildes, das die folgenden Schritte aufweist: Empfangen einer Mehrzahl Verschiebungsvektoren (351, 352) über eine Schnittstelle, wobei die Mehrzahl von Verschiebungsvektoren Zuordnungen zwischen verzerrten Bildpunkten eines verzerrten Kamerabildes (215) und entzerrten Bildpunkten eines entzerrten Kamerabildes (223) definieren; Bestimmen einer Mehrzahl von Verschiebungsvektoreinträgen (431, 432), wobei ein Verschiebungsvektoreintrag jeweils eine Veränderung zwischen mindestens zwei der Mehrzahl von Verschiebungsvektoren definiert; und Bereitstellen einer komprimierten Nachschlagetabelle (617, 618), die die Mehrzahl von Verschiebungsvektoreinträge aufweist.
  10. Steuergerät, das ausgebildet ist, um die Schritte eines Verfahrens gemäß einem der Ansprüche 1 bis 9 durchzuführen.
DE102009028743A 2009-08-20 2009-08-20 Verfahren und Steuergerät zur Entzerrung eines Kamerabildes Active DE102009028743B4 (de)

Priority Applications (4)

Application Number Priority Date Filing Date Title
DE102009028743A DE102009028743B4 (de) 2009-08-20 2009-08-20 Verfahren und Steuergerät zur Entzerrung eines Kamerabildes
US12/806,017 US8644641B2 (en) 2009-08-20 2010-08-03 Method and control unit for rectifying a camera image
JP2010183109A JP2011045059A (ja) 2009-08-20 2010-08-18 カメラ画像のひずみ補正方法、ならびにカメラ画像のひずみ補正制御装置
CN2010102604582A CN101996388A (zh) 2009-08-20 2010-08-20 用于修正摄像机图像的方法和控制装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102009028743A DE102009028743B4 (de) 2009-08-20 2009-08-20 Verfahren und Steuergerät zur Entzerrung eines Kamerabildes

Publications (2)

Publication Number Publication Date
DE102009028743A1 true DE102009028743A1 (de) 2011-03-17
DE102009028743B4 DE102009028743B4 (de) 2011-06-09

Family

ID=43571003

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102009028743A Active DE102009028743B4 (de) 2009-08-20 2009-08-20 Verfahren und Steuergerät zur Entzerrung eines Kamerabildes

Country Status (4)

Country Link
US (1) US8644641B2 (de)
JP (1) JP2011045059A (de)
CN (1) CN101996388A (de)
DE (1) DE102009028743B4 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2843616A1 (de) * 2013-08-29 2015-03-04 Sick Ag Optoelektronische Vorrichtung und Verfahren zur Aufnahme entzerrter Bilder

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102011007644A1 (de) * 2011-04-19 2012-10-25 Robert Bosch Gmbh Verfahren und Vorrichtung zur Bestimmung von zur Entzerrung eines Bildes geeigneten Werten und zur Entzerrung eines Bildes
CA2835799A1 (en) * 2011-05-12 2012-11-15 Peter Braun Device and method for comminuting particles in liquid material
US9129378B2 (en) 2011-09-07 2015-09-08 Thomson Licensing Method and apparatus for recovering a component of a distortion field and for determining a disparity field
WO2013139814A2 (fr) 2012-03-19 2013-09-26 Fittingbox Modèle et procédé de production de modèle 3d photo-réalistes
KR101355570B1 (ko) * 2012-07-13 2014-01-27 (주)자인미디어 룩업 테이블 압축 장치 및 방법
CN104809696B (zh) * 2014-01-27 2018-08-24 中国科学院苏州纳米技术与纳米仿生研究所 图像畸变矫正方法和系统
DE102015209391A1 (de) * 2015-05-22 2016-11-24 Robert Bosch Gmbh Verfahren und Vorrichtung zum Erzeugen einer Maskierungsvorschrift sowie zum Maskieren einer Bildinformation einer Kamera
US10341634B2 (en) 2016-01-29 2019-07-02 Samsung Electronics Co., Ltd. Method and apparatus for acquiring image disparity
WO2019178548A1 (en) 2018-03-15 2019-09-19 Nvidia Corporation Determining drivable free-space for autonomous vehicles
CN108540790A (zh) * 2018-04-24 2018-09-14 深圳超多维科技有限公司 一种用于移动终端的立体图像获取方法、装置及移动终端
WO2020185779A1 (en) 2019-03-11 2020-09-17 Nvidia Corporation Intersection detection and classification in autonomous machine applications
US10991155B2 (en) * 2019-04-16 2021-04-27 Nvidia Corporation Landmark location reconstruction in autonomous machine applications
US11698272B2 (en) 2019-08-31 2023-07-11 Nvidia Corporation Map creation and localization for autonomous driving applications
US11978266B2 (en) 2020-10-21 2024-05-07 Nvidia Corporation Occupant attentiveness and cognitive load monitoring for autonomous and semi-autonomous driving applications

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4558302A (en) 1983-06-20 1985-12-10 Sperry Corporation High speed data compression and decompression apparatus and method
WO2002078346A1 (de) 2001-03-05 2002-10-03 Siemens Aktiengesellschaft Verfahren und vorrichtung zum entzerren eines bildes, insbesondere für insassenschutzsysteme
WO2002095681A1 (de) 2001-05-25 2002-11-28 Siemens Aktiengesellschaft Vorrichtung und verfahren zur verarbeitung von bilddaten
DE10229336A1 (de) 2002-06-29 2004-01-15 Robert Bosch Gmbh Verfahren und Vorrichtung zur Kalibrierung von Bildsensorsystemen
US20080002879A1 (en) 2006-06-29 2008-01-03 Sungkyunkwan University Foundation For Corporate Collaboration Rectification system and method of stereo image in real-time

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3824237B2 (ja) * 2003-09-05 2006-09-20 ソニー株式会社 画像処理装置および方法、記録媒体、並びにプログラム
CN101156434B (zh) * 2004-05-01 2010-06-02 雅各布·伊莱泽 具有非均匀图像分辨率的数码相机
JP2007215114A (ja) * 2006-02-13 2007-08-23 Sony Corp 撮像画像の歪み補正方法、撮像画像の歪み補正装置および撮像装置
CN101072288A (zh) * 2007-06-15 2007-11-14 林进灯 取得鱼眼影像校正关系与鱼眼校正的方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4558302A (en) 1983-06-20 1985-12-10 Sperry Corporation High speed data compression and decompression apparatus and method
US4558302B1 (de) 1983-06-20 1994-01-04 Unisys Corp
WO2002078346A1 (de) 2001-03-05 2002-10-03 Siemens Aktiengesellschaft Verfahren und vorrichtung zum entzerren eines bildes, insbesondere für insassenschutzsysteme
WO2002095681A1 (de) 2001-05-25 2002-11-28 Siemens Aktiengesellschaft Vorrichtung und verfahren zur verarbeitung von bilddaten
DE10229336A1 (de) 2002-06-29 2004-01-15 Robert Bosch Gmbh Verfahren und Vorrichtung zur Kalibrierung von Bildsensorsystemen
US20080002879A1 (en) 2006-06-29 2008-01-03 Sungkyunkwan University Foundation For Corporate Collaboration Rectification system and method of stereo image in real-time

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
D. A. HUFFMAN: A Method for the Construction of Minimum Redundancy Codes, Proceedings of the IRE, 40, 1098-1101 (1952)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2843616A1 (de) * 2013-08-29 2015-03-04 Sick Ag Optoelektronische Vorrichtung und Verfahren zur Aufnahme entzerrter Bilder

Also Published As

Publication number Publication date
US20110044557A1 (en) 2011-02-24
JP2011045059A (ja) 2011-03-03
US8644641B2 (en) 2014-02-04
CN101996388A (zh) 2011-03-30
DE102009028743B4 (de) 2011-06-09

Similar Documents

Publication Publication Date Title
DE102009028743B4 (de) Verfahren und Steuergerät zur Entzerrung eines Kamerabildes
DE19919600B4 (de) Einrichtung und Verfahren zum Komprimieren von Bilddaten, die von einem Bildsensor empfangen werden, der ein Bayer-Muster aufweist
DE102006055641B4 (de) Anordnung und Verfahren zur Aufnahme und Wiedergabe von Bildern einer Szene und/oder eines Objektes
DE102016208056A1 (de) Verfahren und Vorrichtung zur Verarbeitung von Bilddaten und Fahrerassistenzsystem für ein Fahrzeug
DE69603740T2 (de) Stereoskopische bildcodierung
DE102013015821A1 (de) System und Verfahren zur Verbesserung der Videokodierung unter Verwendung von Inhaltsinformation
DE102021117397A1 (de) Bildsensormodul, bildverarbeitungssystem und bildkomprimierverfahren
DE202016008753U1 (de) Bei Gigabit-Ethernet anwendbare vernetzte Videokommunikation
DE102014008686B4 (de) Verfahren und Vorrichtung zur Farbinterpolation
DE69512824T2 (de) Kompressions- und Dekompressionsverfahren für mehrdimensionale mehrwertige Farbbilder
DE3626916A1 (de) Verfahren zur uebertragung eines videosignales
DE60031559T2 (de) Verfahren und gerät zur lernfähigen klassenauswahl nach mehreren klassifikationen
DE102018112215B3 (de) Quantisiererbestimmung, computerlesbares Medium und Vorrichtung, die mindestens zwei Quantisierer implementiert
EP3655920B1 (de) Verfahren und vorrichtung zur bewertung von bildausschnitten für eine korrespondenzbildung
DE102011007644A1 (de) Verfahren und Vorrichtung zur Bestimmung von zur Entzerrung eines Bildes geeigneten Werten und zur Entzerrung eines Bildes
EP2478705A1 (de) Verfahren und vorrichtung zum erzeugen von teilansichten und/oder einer raumbildvorlage aus einer 2d-ansicht für eine stereoskopische wiedergabe
DE69509421T2 (de) Verschiebungsstufe für einen Dekodierer von digitalen Kodes veränderlicher Länge
DE102016120845A1 (de) Kamerasystem und Betriebsverfahren hierfür
DE102018110383A1 (de) Verfahren und Vorrichtung zum Kodieren von Bilddaten
DE112019000210T5 (de) Würfelbasiertes Projektionsverfahren, welches unterschiedliche Abbildungsfunktionen auf unterschiedliche quadratische Projektionsflächen, unterschiedliche Achsen und/oder unterschiedliche Lagen einer Achse anwendet
EP3685352A1 (de) Verfahren und vorrichtung zum bewerten von bildern, betriebsassistenzverfahren und betriebsvorrichtung
WO2005104559A1 (de) Prädiktionsverfahren, sowie zugehöriges verfahren zur decodierung eines prädiktionsverfahrens, zugehörige encodiervorrichtung und decodiervorrichtung
EP2501133A2 (de) Verfahren und Vorrichtung zur Bandbreitenreduktion für Bilddaten
DE102021115489A1 (de) Kameramodul, bildverarbeitungssystem und bildkomprimierungsverfahren
DE60208388T2 (de) Verfahren zur Berechnung von zeitlichen Wavelet-Koeffizienten eines GOP

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
R020 Patent grant now final

Effective date: 20110910

R084 Declaration of willingness to licence