Integration und Evaluierung eines Testboards zur Echtzeit-3D ......Integration und Evaluierung eines...

1
Integration und Evaluierung eines Testboards zur Echtzeit-3D-Verarbeitung 3. Ergebnisse Qualität der Disparitätsbilder 2. Methoden und Umsetzung Berechnung des Disparitätsbildes Semi-global Matching (SGM) Algorithmus Implementierung auf einer FPGA-Karte Rektifizierung der Bilder per Look-Up-Tabelle (LUT) Feeder zur Sensordatenübermittlung und –synchronisation Feedernetzwerk läuft unter Windows Auftrennung durch universelle Netzwerkfeeder Entwicklung eines Embedded Linux Systems Programmierung in C++ mit Bibliotheken des DLR 1. Einführung und Ziele [1] Grießbach, D. und Baumbach, D. und Börner, A. und Zuev, S. (2013) Accuracy Evaluation of Stereo Vision Aided Inertial Navigation for Indoor Environments. ISPRS Acquisition and Modelling of Indoor and Enclosed Environments 2013, 11.-13. Dez. 2013, Kapstadt, Südafrika. [2] Die Abbildung enthält Stereo- und Disparitätsbilder aus dem Middlebury-Datensatz „Teddy“ von 2003. [3] Der abgebildete Linux-Pinguin stammt von Wikimedia. Quelle: http://commons.wikimedia.org/wiki/File%3ATux.svg (31.01.2015) [4] Die abgebildete FPGA-Karte ist dem Xilinx® Spartan®-6 LX75T Development Kit User Guide von Avnet entnommen. [5] Das Bild des Rechners stammt vom Hersteller. Quelle: http://www.connecttech.com/sub/products/COM-Express-Type-6-Ultra-Lite-Carrier.asp (31.01.2015) Diese Arbeit wurde durch das Deutsche Zentrum für Luft- und Raumfahrt (DLR) von der Abteilung für Informationsverarbeitung optischer Systeme unterstützt. Referenzen Danksagung Christian Schmiedl Deutsches Zentrum für Luft- und Raumfahrt (DLR) 7.-8. Mai 2015 Urania - Berlin [1] Forschungsprojekt Integral Positioning System (IPS) Visuelle Navigation Schätzung der Eigenbewegung Innen- und Außenbereich Verschiedene Sensoren Mobiles System Binokulare Stereovision: Methode zum Erzeugen von Tiefenbildern Analog zum menschlichen Sehen mit zwei Augen Nutzt zwei Kameras (Stereokamera) Basiert auf dem Prinzip der binokularen Disparität Objekt nah an der Kamera -> große Disparität Objekt weit davon entfernt -> kleine Disparität Maschinelles Sehen befasst sich mit der Gewinnung von Informationen aus Bilddaten. Diese können in der Sicherheitsforschung in unterschiedlichen Bereichen eingesetzt werden. Beispiele: Erkennen und Klassifizieren von Verkehrsschildern Lokalisierung von Brandherden Gesichtserkennung Erzeugen von 3D-Karten bei der Erkundung LUT START (A) send stereo image, SGM parameters and LUT (B) receive stereo image, SGM parameters and LUT (C) rectify, scale and send stereo image to FPGA (D) receive disparity image from FPGA (E) send disparity and rectified left image END (F) receive disparity and rectified left image Parallele Verarbeitungsschritte des Systems TCP Netzwerk Feeder A outport0 outport1 inport0 inport1 FeederData A FeederData B TCP Netzwerk Feeder B outport0 outport1 inport0 inport1 FeederData B FeederData A TCP Feederkommunikation im Netzwerk [3][5] [2] [4] 0 20 40 60 80 100 120 Bild #1 Bild #3 Bild #5 Bild #7 Bild #9 Bild #11 Bild #13 Bild #15 Bild #17 Bild #19 Bild #21 Bild #23 Bild #25 Bild #27 680x512 Pixel 0 50 100 150 200 250 Bild #1 Bild #3 Bild #5 Bild #7 Bild #9 Bild #11 Bild #13 Bild #15 Bild #17 Bild #19 Bild #21 Bild #23 Bild #25 Bild #27 Berechnungsdauer in Millisekunden 1360x1024 Pixel Gesamtdauer der Disparitätsberechnung Dauer des Rektifizierungsschrittes Dauer des Skalierungsschrittes Dauer der SGM-Berechnung im FPGA 0 20 40 60 80 100 120 Bild #1 Bild #3 Bild #5 Bild #7 Bild #9 Bild #11 Bild #13 Bild #15 Bild #17 Bild #19 Bild #21 Bild #23 Bild #25 Bild #27 1360x1024 Pixel ohne Rektifizierung Laufzeit der wesentlichen Verarbeitungsschritte Linkes Kamerabild Rechtes Kamerabild SGM GPU SGM FPGA Disparitätsbild GPU Disparitätsbild FPGA Linkes Kamerabild Rechtes Kamerabild Disparitätsbild (HSV-Farbraum) Disparitätsbild (Skaliert um Faktor 4) Messfahrt im Straßenverkehr Vergleich mit Referenzbild (ground-truth) [2] SGM-FPGA SGM- GPU Erwartungswert [px] Standard- abweichung [px] ground- truth SGM-FPGA SGM-GPU ground-truth 22,99 32,27 20,79 2,37 4,82 1,95 0 0 0 0 0 0 Ziel dieser Arbeit: Tiefenbilder in Echtzeit erzeugen Mobiles eingebettetes System entwickeln In IPS integrieren Linkes Kamerabild Rechtes Kamerabild Objekte u v y z x SGM-FPGA SGM- GPU Erwartungswert [px] Standard- abweichung [px] ground- truth SGM-FPGA SGM-GPU ground-truth 42,04 55,33 55,88 13,23 24,00 25,78 0 0 0 0 0 0 Betrachtung der gültigen Bildpunkte Betrachtung aller Bildpunkte Anteil ungültiger Bildpunkte SGM-FPGA SGM-GPU ground-truth 14,32% 18,09% 2,02% [1]

Transcript of Integration und Evaluierung eines Testboards zur Echtzeit-3D ......Integration und Evaluierung eines...

Page 1: Integration und Evaluierung eines Testboards zur Echtzeit-3D ......Integration und Evaluierung eines Testboards zur Echtzeit-3D-Verarbeitung 3. Ergebnisse Qualität der Disparitätsbilder

Integration und Evaluierung eines Testboards zur Echtzeit-3D-Verarbeitung

3. Ergebnisse Qualität der Disparitätsbilder

2. Methoden und Umsetzung • Berechnung des Disparitätsbildes

• Semi-global Matching (SGM) Algorithmus • Implementierung auf einer FPGA-Karte

• Rektifizierung der Bilder per Look-Up-Tabelle (LUT)

• Feeder zur Sensordatenübermittlung und –synchronisation

• Feedernetzwerk läuft unter Windows • Auftrennung durch universelle Netzwerkfeeder

• Entwicklung eines Embedded Linux Systems

• Programmierung in C++ mit Bibliotheken des DLR

1. Einführung und Ziele

[1] Grießbach, D. und Baumbach, D. und Börner, A. und Zuev, S. (2013) Accuracy Evaluation of Stereo Vision Aided Inertial Navigation for Indoor Environments. ISPRS Acquisition and Modelling of Indoor and Enclosed Environments 2013, 11.-13. Dez. 2013, Kapstadt, Südafrika. [2] Die Abbildung enthält Stereo- und Disparitätsbilder aus dem Middlebury-Datensatz „Teddy“ von 2003. [3] Der abgebildete Linux-Pinguin stammt von Wikimedia. Quelle: http://commons.wikimedia.org/wiki/File%3ATux.svg (31.01.2015) [4] Die abgebildete FPGA-Karte ist dem Xilinx® Spartan®-6 LX75T Development Kit User Guide von Avnet entnommen. [5] Das Bild des Rechners stammt vom Hersteller. Quelle: http://www.connecttech.com/sub/products/COM-Express-Type-6-Ultra-Lite-Carrier.asp (31.01.2015)

Diese Arbeit wurde durch das Deutsche Zentrum für Luft- und Raumfahrt (DLR) von der Abteilung für Informationsverarbeitung optischer Systeme unterstützt.

Referenzen Danksagung

Christian Schmiedl

Deutsches Zentrum für Luft- und Raumfahrt (DLR)

7.-8. Mai 2015 Urania - Berlin

[1]

Forschungsprojekt Integral Positioning System (IPS) • Visuelle Navigation • Schätzung der Eigenbewegung • Innen- und Außenbereich • Verschiedene Sensoren • Mobiles System

Binokulare Stereovision: • Methode zum Erzeugen von Tiefenbildern • Analog zum menschlichen Sehen mit zwei Augen • Nutzt zwei Kameras (Stereokamera) • Basiert auf dem Prinzip der binokularen Disparität Objekt nah an der Kamera -> große Disparität Objekt weit davon entfernt -> kleine Disparität

Maschinelles Sehen befasst sich mit der Gewinnung von Informationen aus Bilddaten. Diese können in der Sicherheitsforschung in unterschiedlichen Bereichen eingesetzt werden. Beispiele: • Erkennen und Klassifizieren von Verkehrsschildern • Lokalisierung von Brandherden • Gesichtserkennung • Erzeugen von 3D-Karten bei der Erkundung

LUT

START (A) send stereo image,

SGM parameters and LUT

(B) receive stereo image, SGM parameters and LUT

(C) rectify, scale and send stereo image to FPGA

(D) receive disparity image from FPGA

(E) send disparity and rectified left image

END (F) receive disparity and

rectified left image

Parallele Verarbeitungsschritte des Systems

TCP Netzwerk

Feeder A

outport0

outport1

inport0

inport1

FeederData A

FeederData B

TCP Netzwerk

Feeder B

outport0

outport1

inport0

inport1

FeederData B

FeederData A

TCP

Feederkommunikation im Netzwerk

[3][5] [2]

[4]

020406080

100120

Bild

#1

Bild

#3

Bild

#5

Bild

#7

Bild

#9

Bild

#11

Bild

#13

Bild

#15

Bild

#17

Bild

#19

Bild

#21

Bild

#23

Bild

#25

Bild

#27

680x512 Pixel

0

50

100

150

200

250

Bild

#1

Bild

#3

Bild

#5

Bild

#7

Bild

#9

Bild

#11

Bild

#13

Bild

#15

Bild

#17

Bild

#19

Bild

#21

Bild

#23

Bild

#25

Bild

#27

Bere

chnu

ngsd

auer

in M

illis

ekun

den

1360x1024 Pixel

Gesamtdauer der DisparitätsberechnungDauer des RektifizierungsschrittesDauer des SkalierungsschrittesDauer der SGM-Berechnung im FPGA

020406080

100120

Bild

#1

Bild

#3

Bild

#5

Bild

#7

Bild

#9

Bild

#11

Bild

#13

Bild

#15

Bild

#17

Bild

#19

Bild

#21

Bild

#23

Bild

#25

Bild

#27

1360x1024 Pixel ohne Rektifizierung

Laufzeit der wesentlichen Verarbeitungsschritte

Linkes Kamerabild Rechtes Kamerabild

SGM GPU

SGM FPGA

Disparitätsbild GPU

Disparitätsbild FPGA

Linkes Kamerabild Rechtes Kamerabild

Disparitätsbild

(HSV-Farbraum)

Disparitätsbild

(Skaliert um Faktor 4)

Messfahrt im Straßenverkehr

Vergleich mit

Referenzbild

(ground-truth) [2]

SGM-FPGA SGM-

GPU

Erwartungswert

[px] Standard-abweichung [px]

ground-

truth

SGM-FPGA

SGM-GPU

ground-truth

22,99

32,27 20,79

2,37 4,82

1,95

0 0

0 0

0 0

Ziel dieser Arbeit: • Tiefenbilder in Echtzeit erzeugen • Mobiles eingebettetes System

entwickeln • In IPS integrieren

Linkes Kamerabild Rechtes Kamerabild

Objekte

u

v

y z

x

SGM-FPGA SGM-

GPU

Erwartungswert

[px] Standard-abweichung [px]

ground-

truth

SGM-FPGA

SGM-GPU

ground-truth

42,04

55,33 55,88

13,23 24,00

25,78

0 0

0 0

0 0

Betrachtung der gültigen Bildpunkte

Betrachtung aller Bildpunkte

Anteil ungültiger Bildpunkte

SGM-FPGA SGM-GPU ground-truth

14,32% 18,09% 2,02%

[1]