by Michael Rauter
Abstract:
In dieser Masterarbeit wird ein Object Tracking System realisiert, das bei Video-Material mit Aufl�ungen von bis zu 768 x 576 Bildpunkten bei 3 Farbkan�en Echtzeitf�igkeit erreichen soll (Def.: das Verarbeiten von 25 Bildern pro Sekunde - in 40 Millisekunden mssen alle Algorithmen fertig berechnet werden). Dabei werden state-of-the-art Algorithmen verwendet, die auf CPUs mit nur einem Rechenkern nur bei geringeren Video-Aufl�ungen Echtzeitf�igkeit erreichen. Ziel ist die Performance-Steigerung eines Object Tracking Systems. Die Motivation fr eine Performance-Steigerung rhrt daher, dass sich, je weniger Zeit fr das Berechnen von Verarbeitungsschritten eines Object Tracking Systems ben�igt wird, desto h�ere Video-Aufl�ungen und -Frameraten handhaben lassen (resultiert in besseren Tracking-Ergebnissen), und es bleibt mehr Zeit fr weitere Verarbeitungsschritte (z.B. h�erentwickelte Data Association, Behaviour Detection). Die Berechnungsschritte, die im entwickelten System durchgefhrt werden und als Gesamtpaket in Echtzeit laufen sollen, sind Datenerfassung, Bewegungserkennung samt Schatten- und Reflexionserkennung inklusive deren Entfernung, Connected Components Analysis, Verwalten der zu trackenden Objekte (Initialisierung, Tracking, Data Association, L�chen) und die grafische Ausgabe. Die Echtzeitf�igkeit wird dadurch erreicht, dass einerseits Algorithmen bzw. Algorithmusschritte, die parallelisierbar sind, auf die Grafikkarte ausgelagert werden und andererseits durch Multi-Threading Mehrkernprozessoren ausgereizt werden, indem verschiedene Phasen der Verarbeitungskette des Systems auf alle vorhandenen CPU-Kerne aufgeteilt und so Berechnungen simultan auf verschiedenen Rechenkernen ausgefhrt werden (Datenerfassung, Bewegungserkennung, Object Tracking, Visualisierung). Mit diesen Konzepten erreicht das implementierte Object Tracking System eine Performancesteigerung um mehr als den Faktor 9 im Vergleich zu einer optimierten Single-Core CPU-Variante.
Reference:
Effizientes Object Tracking durch Programmierung von Mehrkernprozessoren und Grafikkarten (Michael Rauter), Technical report, PRIP, TU Wien, 2007.
Bibtex Entry:
@TechReport{TR116,
author = "Michael Rauter",
title = "Effizientes Object Tracking durch Programmierung von Mehrkernprozessoren und Grafikkarten",
institution = "PRIP, TU Wien",
number = "PRIP-TR-116",
year = "2007",
url = "https://www.prip.tuwien.ac.at/pripfiles/trs/tr116.pdf",
abstract = "In dieser Masterarbeit wird ein Object Tracking System realisiert, das bei Video-Material
mit Aufl�ungen von bis zu 768 x 576 Bildpunkten bei 3 Farbkan�en Echtzeitf�igkeit
erreichen soll (Def.: das Verarbeiten von 25 Bildern pro Sekunde - in 40 Millisekunden mssen
alle Algorithmen fertig berechnet werden). Dabei werden state-of-the-art Algorithmen
verwendet, die auf CPUs mit nur einem Rechenkern nur bei geringeren Video-Aufl�ungen
Echtzeitf�igkeit erreichen. Ziel ist die Performance-Steigerung eines Object Tracking Systems.
Die Motivation fr eine Performance-Steigerung rhrt daher, dass sich, je weniger
Zeit fr das Berechnen von Verarbeitungsschritten eines Object Tracking Systems ben�igt
wird, desto h�ere Video-Aufl�ungen und -Frameraten handhaben lassen (resultiert
in besseren Tracking-Ergebnissen), und es bleibt mehr Zeit fr weitere Verarbeitungsschritte
(z.B. h�erentwickelte Data Association, Behaviour Detection). Die Berechnungsschritte,
die im entwickelten System durchgefhrt werden und als Gesamtpaket in Echtzeit laufen
sollen, sind Datenerfassung, Bewegungserkennung samt Schatten- und Reflexionserkennung
inklusive deren Entfernung, Connected Components Analysis, Verwalten der zu trackenden
Objekte (Initialisierung, Tracking, Data Association, L�chen) und die grafische Ausgabe.
Die Echtzeitf�igkeit wird dadurch erreicht, dass einerseits Algorithmen bzw. Algorithmusschritte,
die parallelisierbar sind, auf die Grafikkarte ausgelagert werden und andererseits
durch Multi-Threading Mehrkernprozessoren ausgereizt werden, indem verschiedene Phasen
der Verarbeitungskette des Systems auf alle vorhandenen CPU-Kerne aufgeteilt und so Berechnungen
simultan auf verschiedenen Rechenkernen ausgefhrt werden (Datenerfassung,
Bewegungserkennung, Object Tracking, Visualisierung). Mit diesen Konzepten erreicht das
implementierte Object Tracking System eine Performancesteigerung um mehr als den Faktor
9 im Vergleich zu einer optimierten Single-Core CPU-Variante.",
}