Meine Diplomarbeit vom Juni 2007 (Note 1,0). Im Großen und Ganzen geht es darum zu untersuchen, wie gut sich Algorithmen für die Merkmalserkennung auf die mittlerweile immer leistungsfähigeren Grafikkarten auslagern lassen. Der Ergebnis war berauschend: eine Leistungssteigerung um den Faktor 10 ist kein Problem.

Abstract: Die Merkmalsverfolgung (engl. feature tracking) ist eine der grundlegenden Aufgaben des Maschinellen Sehens, die für Anwendungen der Erweiterten Realität (engl. Augmented Reality) oftmals den ersten Schritt darstellt. Für Anwendungen der Erweiterten Realität ist es jedoch erforderlich, diese Aufgaben möglichst in Echtzeit zu bewerkstelligen. Aufgrund der immensen Menge der zu verarbeitenden Bilddaten sind CPU-Systeme damit jedoch meist überfordert. Moderne Grafikkarten erreichen mittlerweile ein Vielfaches der Rechenleistung von CPUs und sind aufgrund dessen und wegen ihrer programmierbaren Komponenten auch für andere Anwendungen interessant geworden. Diese Arbeit zeigt, wie sich Verfahren zur Merkmalsverfolgung effizient auf modernen GPUs (Graphics Processing Units) implementieren lassen und dass sie in Echtzeit ausgeführt werden können. Dazu werden zunächst gängige Methoden zur Merkmalsverfolgung vorgestellt. Die nötigen Grundlagen für die GPU-Implementierungen liefern anschließend die Erklärung der Grafikpipeline und des parallelen Programmiermodells aktueller GPUs. Im Anschluss daran werden die folgenden GPU-Implementierungen zu diesem Thema untersucht: Sinhas GPU-basierter KLT-Trackers und sein SIFT (Scale Invariant Feature Transform)-Merkmalsextraktor [SFPG06], die SIFT Implementierung von Heymann [Hey05], der Feature-Tracker des OpenVIDIA Projektes [FM05] und eine GPU-Implementierung des ursprüunglichen Eckendetektors von Harris und Stephens [HS88]. Eine vergleichende Bewertung der umgesetzten zu den ursprünglichen Verfahren wird durch Benchmarks ermöglicht.

  diplomarbeit_gpu-basiertes_feature-tracking.pdf (3,6 MiB, 3.345 hits)