Workshopband als PDF - Mpc.belwue.de
Workshopband als PDF - Mpc.belwue.de
Workshopband als PDF - Mpc.belwue.de
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
MPC-WORKSHOP FEBRUAR 2013<br />
Erkennung von Fußgängern in Echtzeit auf FPGAs<br />
Zusammenfassung—Die Detektion von Fußgängern<br />
unter Echtzeitbedingungen ist eine <strong>de</strong>r Kernproblemstellungen<br />
bei <strong>de</strong>r Entwicklung von kamerabasierten<br />
Fahrerassistenzsystemen. Häufig wird<br />
hierfür <strong>de</strong>r von Dalal und Triggs [1] entwickelte<br />
Histograms of Oriented Gradients (HOG) Deskriptor<br />
in Verbindung mit einer Support Vector Machine<br />
(SVM) für die Klassifikation verwen<strong>de</strong>t, die<br />
auch die Basis dieser Arbeit bil<strong>de</strong>n. Es wird ein<br />
neuer, ressourcen- und geschwindigkeitsoptimierter<br />
Ansatz vorgestellt, bei <strong>de</strong>m sowohl die<br />
Deskriptorenberechnung <strong>als</strong> auch die Klassifikation<br />
sowie die Skalierung auf einem FPGA implementiert<br />
sind. Dies ermöglicht, zusammen mit<br />
einem Zeitmultiplexverfahren für die Multiskalenberechnung,<br />
eine Vollbildklassifikation bei 60 Full-<br />
HD-Bil<strong>de</strong>rn (1920 x 1080 Pixel) pro Sekun<strong>de</strong> mit<br />
einer Latenz von weniger <strong>als</strong> 150 µs. Damit können<br />
in einer Skalenstufe pro Sekun<strong>de</strong> 1,8 Mio. HOG-<br />
Deskriptoren sowie die dazugehörigen Klassifikationsergebnisse<br />
mit <strong>de</strong>r SVM berechnet wer<strong>de</strong>n. Auf<br />
einem Xilinx Virtex-5 FPGA sind so im Multiskalenbetrieb<br />
bis zu 11 Mio. Klassifikationsfenster<br />
pro Sekun<strong>de</strong> auswertbar, was bestehen<strong>de</strong> FPGA-<br />
Implementierungen um <strong>de</strong>n Faktor 10 übersteigt.<br />
Schlüsselwörter—Fußgängererkennung, FPGA,<br />
HOG, SVM.<br />
A. Motivation<br />
I. EINLEITUNG<br />
Die automatisierte Detektion von Personen hat in<br />
vielen Bereichen, wie z. B. in Überwachungssystemen<br />
o<strong>de</strong>r in Fahrerassistenzsystemen, eine große Be<strong>de</strong>utung.<br />
Während bei manchen Anwendungsfällen die<br />
Geschwindigkeit eine untergeordnete Rolle spielt, ist<br />
vor allem auch bei mo<strong>de</strong>rnen Fahrerassistenzsystemen<br />
die Echtzeitfähigkeit und Latenz <strong>de</strong>r Detektion entschei<strong>de</strong>nd.<br />
CPUs – auch mo<strong>de</strong>rne Mehrkern-CPUs –<br />
sind hierfür aufgrund ihrer sequentiellen Arbeitsweise<br />
nur eingeschränkt geeignet. Durch Parallelisierung <strong>de</strong>r<br />
Michael Hahnle, michael.hahnle@h-ab.<strong>de</strong>, und Konrad Doll,<br />
konrad.doll@h-ab.<strong>de</strong>, sind Mitglie<strong>de</strong>r <strong>de</strong>r Hochschule Aschaffenburg,<br />
Fakultät Ingenieurwissenschaften, Labor für Rechnergestützten<br />
Schaltungsentwurf, Würzburger Straße 45, 63743 Aschaffenburg.<br />
Frerk Saxen, frerk.saxen@ovgu.<strong>de</strong>, ist Mitglied <strong>de</strong>r Otto-von-<br />
Guericke-Universität Mag<strong>de</strong>burg, Lehrstuhl für Technische Informatik,<br />
Universitätsplatz 2, 39106 Mag<strong>de</strong>burg.<br />
Michael Hahnle, Frerk Saxen, Konrad Doll<br />
Berechnungen auf mo<strong>de</strong>rnen Graphics Processing<br />
Units (GPUs) sind die gefor<strong>de</strong>rten Echtzeitbedingungen<br />
erreichbar. In zunehmen<strong>de</strong>m Maße wer<strong>de</strong>n seit<br />
einigen Jahren auch Field Programmable Gate Arrays<br />
(FPGAs) für die digitale Bildverarbeitung eingesetzt.<br />
Sie bieten im Vergleich zu GPUs <strong>de</strong>n Vorteil einer –<br />
je nach Algorithmus – <strong>de</strong>utlichen Geschwindigkeitssteigerung<br />
bei gleichzeitig geringerem Strom- und<br />
Platzbedarf, da mo<strong>de</strong>rne FPGAs für die digitale Signalverarbeitung<br />
(Digital Signal Processing – DSP)<br />
spezielle Makrozellen enthalten, die große Vorteile<br />
bezüglich <strong>de</strong>r Geschwindigkeit und <strong>de</strong>s Ressourcenbedarfs<br />
<strong>de</strong>s späteren Designs bieten.<br />
B. Stand <strong>de</strong>r Technik<br />
Der von Dalal und Triggs 2005 vorgestellte HOG-<br />
Deskriptor in Verbindung mit einer SVM zur Klassifikation<br />
[1], [3] ist im Bereich <strong>de</strong>r Personenerkennung<br />
weit verbreitet. Während einige Veröffentlichungen<br />
auf die Optimierung <strong>de</strong>r Erkennungsrate durch Än<strong>de</strong>rung<br />
<strong>de</strong>s Algorithmus (z. T. für bestimmte Situationen)<br />
abzielen (z. B. [8], [13]), steht in an<strong>de</strong>ren die<br />
Optimierung <strong>de</strong>r Geschwindigkeit – vor allem durch<br />
<strong>de</strong>n Einsatz von GPUs und FPGAs – im Fokus (z. B.<br />
[4]-[7], [10]-[12], [14]).<br />
Bislang gibt es im Vergleich zu CPU- und GPU-<br />
Implementierungen nur wenige Veröffentlichungen zu<br />
FPGA-basierten HOG-Fußgänger<strong>de</strong>tektoren. Grundlegend<br />
kann dabei zwischen reinen FPGA-Implementierungen<br />
(z. B. [6], [10]-[13]) und FPGAbeschleunigten<br />
Systemen (z. B. [4], [5]), bei <strong>de</strong>nen nur<br />
ein Teil <strong>de</strong>r Berechnung auf <strong>de</strong>m FPGA stattfin<strong>de</strong>t,<br />
unterschie<strong>de</strong>n wer<strong>de</strong>n.<br />
Die schnellsten GPU- und FPGA-Implementierungen<br />
erreichen maximal 0,4 – 0,9 Mio. Klassifikationsfenster<br />
pro Sekun<strong>de</strong> [7], [11] mit Bildraten von 17<br />
Bil<strong>de</strong>rn pro Sekun<strong>de</strong> (fps) bei einer Auflösung von<br />
640 x 480 Pixel [13] bis 30 fps bei 1920 x 1080 Pixel<br />
[11].<br />
C. Zielsetzung<br />
Die im Folgen<strong>de</strong>n beschriebene FPGA-Implementierung<br />
ist auf die Verarbeitung einer Auflösung von<br />
1920 x 1080 Pixel (Full-HD) bei min<strong>de</strong>stens 60 Bil<strong>de</strong>rn<br />
pro Sekun<strong>de</strong> ausgelegt. Dies stellt eine hohe<br />
Anfor<strong>de</strong>rung an das Design <strong>de</strong>r Schaltung, um eingehen<strong>de</strong><br />
Pixeldaten schritthaltend verarbeiten zu können.<br />
Damit bei dieser Auflösung eine so hohe Geschwindigkeit<br />
erreicht wer<strong>de</strong>n kann, kommt ein konsequentes<br />
Pipelining <strong>de</strong>r Berechnungen und ein zellenbasierter<br />
57