Επιτάχυνση εφαρμογών μηχανικής όρασης με χρήση επεξεργαστή γραφικών
Acceleration of computer vision applications using graphics processing unit
This thesis aims to present the conjunction of two technological fields. Those fields are Computer Vision and Hardware Acceleration, more precisely acceleration by means of Heterogeneous Parallel Processing using General Purpose Graphics Processing Unit programming (GPGPU). The problem of Computer Vision, which is a complex subject, will be studied in many of its constituents, with the goal of using acceleration technologies to assist the implementation of its solution. The thesis text is divided in three logical partitions. The firs one presents the respective technological fields and scientific principles that govern Computer Vision, the traditional techniques in a theoretical and applied level along with certain recent, innovative but nonetheless acknowledged approaches. The second part exhibits the technologies that can be used to speed up the solution methods of the Computer Vision demands. The third and last part presents the implementation of an application that combines the two fields. This application implements the SIFT algorithm (Scale Invariant Feature Transform) using NVIDIA’s CUDA programming language, following an analysis of the methods, the challenges, as well as the suggested and implemented techniques. Finally, the experimental measurements and the entailing results of this implementation are presented, to confirm the attainment of the acceleration goal, as well as the benefit of the use of General Purpose GPU programming in Computer Vision applications.