Stereovision IP-Core für FPGAs

Stereovision IP-Core

Der Stereovision IP-Core für FPGAs ist das Herzstück unserer SceneScan und SP1 Stereovision-Sensoren. Sie können diesen IP-Core lizenzieren um Stereovision-Fähigkeiten in Ihre eigenen FPGA-basierten Produkte zu integrieren.

Der Stereovision-IP-Core verarbeitet zwei Graustufenbilder mittels Stereomatching. Die Bilder werden zunächst im FPGA rektifiziert, um Objektivfehler und Fehler in der Kameraausrichtung auszugleichen. Stereomatching erfolgt anschließend mittels einer Variation des Semi-Global-Matching (SGM) Algorithmus, welche speziell für eine FPGA-basierte Verarbeitung optimiert wurde. Das Ergebnis ist schließlich eine Disparitätskarte (ein inverses Tiefenbild) mit einer subpixelgenauen Auflösung. Verschiedene Nachverarbeitungen werden angewendet um die Qualität der Tiefendaten zu verbessern. Die Disparitätskarte wird über eine AXI4-Stream-Schnittstelle ausgegeben.

Um die Verwendung des Stereovision-Cores auf Geräten mit einem gemeinsam genutzten Systemspeicher zu erleichtern bieten wir außerdem einen IP-Core für Direct Memory Access (DMA). Dieser DMA-Core liest die vom Stereovision-Core benötigten Eingangsdaten mittels AXI3 aus dem Systemspeicher und konvertiert diese in einen für den Stereovision-Core geeigneten Datenstrom. Ebenso sammelt der DMA-Core die Verarbeitungsergebnisse und schreibt diese zurück in den Systemspeicher. Der DMA-Core eignet sich besonders für Einsatz auf den Xilinx Zynq SoC.

Bitte kontaktieren Sie uns falls Sie Interesse an einer Lizenzierung unserer FPGA IP-Cores haben.

Funktionen

  • Bildverarbeitungs-Architektur
    • Verarbeitung von Graustufenbilder mit einer Farbtiefe von 8 Bit pro Pixel
    • Streambasierte Verarbeitung mittels AXI4-Stream, AXI4 oder AXI3
    • Konfiguration über AXI4-Lite Interface
    • Ausgabe der Disparitätskarte beginnt vor Verarbeitung des letzten Pixels der Eingangsbilder
    • Unterstützung variabler Bildgrößen
    • Multi-Clock-Design mit einem schnelleren Takt für performancekritische Funktionen
  • Bildrektifizierung
    • Rektifizierung mittels vorberechneter Rektifizierungskarte
    • Bilineare Pixelinterpolation für subpixelgenaue Rektifizierung
  • Stereomatching
    • Stereomatching mittels einer Variante des Semi-Global-Matching (SGM) Algorithmus
    • Konfigurierbarer Disparitätsbereich von 32 bis 256 Pixel
    • Konfigurierbarer Disparitäts-Offset
    • Konfigurierbare Gewichte P1 und P2 für kleine und große Disparitätsunterschiede
    • Vorverarbeitung der Eingangsbilder für erhöhte Robustheit gegenüber Belichtungsänderungen und Verdeckungen
  • Nachverarbeitung
    • Subpixeloptimierung
    • Konsistenzprüfung mit konfigurierbarem Schwellwert
    • Einzigartigkeitsprüfung mit konfigurierbarem Schwellwert
    • Füllung kleiner Lücken durch Interpolation
    • Rauschreduktion
    • Speckle-Filterung
    • Filterung untexturierter Bildbereiche

Datenblatt / Dokumentation

Beispiel-Tiefenbilder

Example left camera image Example depth measurements
Close
Beispiel für linkes Kamerabild
Beispiel für linkes Kamerabild.
Close
Beispiel für Tiefenbild
Tiefenbild (Disparitätskarte) errechnet durch das SP1.
Example left camera image Example depth measurements
Close
Beispiel für linkes Kamerabild
Beispiel für linkes Kamerabild.
Close
Beispiel für Tiefenbild
Tiefenbild (Disparitätskarte) errechnet durch das SP1.
Example left camera image Example depth measurements
Close
Beispiel für linkes Kamerabild
Beispiel für linkes Kamerabild. Entnommen aus dem Middlebury 2006 Datensatz.
Close
Beispiel für Tiefenbild
Tiefenbild (Disparitätskarte) errechnet durch das SP1.

Siehe auch