Czermak, C. (2011). Echtzeitansätze in der Stereoanalyse [Diploma Thesis, Technische Universität Wien]. reposiTUm. https://resolver.obvsg.at/urn:nbn:at:at-ubtuw:1-60796
E188 - Institut für Softwaretechnik und Interaktive Systeme
-
Datum (veröffentlicht):
2011
-
Umfang:
112
-
Keywords:
Stereoanalyse; dynamische Programmierung; GPU; CUDA
de
stereo vision; dynamic programming; GPU; CUDA
en
Abstract:
Die Diplomarbeit beschäftigt sich mit der Stereoanalyse zur Gewinnung von Tiefeninformation aus Bildern. Es werden Anwendungsgebiete und Grundlagen der Stereoanalyse beschrieben und häufig gemachte Annahmen, welche die Korrespondenzsuche erleichtern, diskutiert. Bei den Verfahren zur Lösung des Korrespondenzproblems werden lokale Methoden sowie globale Methoden erörtert. Neben der theoretischen Erläuterung von Verfahren ist das Ziel der Arbeit die Implementierung eines Stereoalgorithmus auf einer Graphikkarte, um mithilfe der starken Parallelisierungsfähigkeiten der Karte einen Geschwindigkeitsvorteil gegenüber einer CPU-Implementierung zu erreichen.<br />Bei der theoretischen Aufbereitung werden vor allem jene Stereoverfahren berücksichtigt, welche eine Laufzeit besitzen, die für Echtzeitanwendungen geeignet ist und dennoch Resultate vergleichbar mit aufwendigeren Verfahren vorweisen. Zu diesen Methoden zählen bei den lokalen Ansätzen jene mit adaptiver Anpassung der Fenster bzw. der Gewichte an die Gegebenheiten der Bilder. Bei den globalen Verfahren wird der Ansatz der dynamischen Programmierung geschildert, da sich Verfahren mit dynamischer Programmierung effizient auf einer Graphikkarte implementieren lassen und gute Resultate liefern. Eigens erläutert wird jener auf dynamischer Programmierung basierende Stereoalgorithmus, welcher dann auf einer GPU implementiert wird.<br />Im praktischen Teil werden Aufbau und Architektur von programmierbaren Graphikprozessoren beschrieben und das Vorgehen bei der realisierten GPU-Implementierung wird erläutert. Die erzielten Ergebnisse der GPU-Implementierung werden anschließend diskutiert sowie mit den Ergebnissen der CPU-Implementierung verglichen. Das implementierte Stereoverfahren läuft mit 16 Bildern pro Sekunde bei Bildern der Größe 384x288 und 16 Disparitätsstufen, was für viele Echtzeitanwendungen ausreichend ist.<br />
de
This work deals with stereo vision for obtaining depth information from image pairs. It describes applications and basic principles of stereo vision as well as common assumptions that simplify the correspondence search. Among the methods for solving the correspondence problem, local and global methods are discussed. Beside the theoretical explanation of efficient methods, the aim of the work is the implementation of a stereo algorithm on a graphics card to reach a speed advantage compared to a CPU implementation.<br />In the theoretical treatment we consider especially those stereo methods which are suitable for real-time applications while showing results that are comparable to those of more complex algorithms. In the field of local approaches, this includes the adaptive adjustment of the window size or a shape by suitable adjustment of weights. In the field of global approaches, dynamic programming (DP) is described in detail, since it produces good results and can be efficiently implemented on graphics cards. In particular, we explain a tree-based dynamic programming algorithm which is then implemented on a GPU.<br />The design and architecture of programmable graphics processors are examined and the steps of the realized GPU implementation are described.<br />The results of the GPU implementation are analysed and compared against the results of the CPU implementation and ground truth data. The implemented stereo method runs at 16 frames per second, which is sufficient for many real-time applications.
en
Weitere Information:
Abweichender Titel laut Übersetzung der Verfasserin/des Verfassers Zsfassung in engl. Sprache