Grafik işlemciler üzerinde çoklu-odaklı görüntülerin paralel programlama ile birleştirilmesi
Multi-focus image fusion on graphics processing unit with parallel programming
Yazar: ZÜLKİF KORKMAZ
Danışman: YRD. DOÇ. DR. RİFAT KURBAN
Erciyes Üniversitesi / Fen Bilimleri Enstitüsü / Bilgisayar Mühendisliği Ana Bilim Dalı
Derece: Yüksek Lisans, 2015
Konu: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol = Computer Engineering and Computer Science and Control

Özet:
Görüntüler, farklı odaklamaya sahip kameralar tarafından elde edilirken belirli uzaklıktaki nesnelere odaklanılır. Odaklanılan kısımlar görüntünün net kısımlarıdır. Odak noktasının ilerisinde ve gerisinde olan bölgeler ise net olarak elde edilemez. Farklı odaklı kameralarla elde edilen birden fazla görüntülerden tek ve anlamlı bir görüntü elde edilebilir. Bu amaçla görüntü birleştirme teknikleri kullanılır.
Görüntü işleme teknikleri giderek karmaşıklaşırken, üzerinde işlem yapılan görüntülerin çözünürlüğü de artmaktadır. Bu aynı zamanda performans sorununu da meydana getirmektedir. Son yıllarda bu alandaki çalışmalar artmaktadır. Bunlardan birisi de grafik işlemciler üzerinde genel amaçlı programlama yapmaktır (GPGPU). GPU'lar, ekrana grafik çizilmesi işleminin doğası gereği, çok çekirdeklidir ve yüksek bir paralelliğe sahiptirler. Grafik yongaları, sabit fonksiyonlu grafik işlemcilerdir. Ancak giderek programlanabilir ve hesaplanabilirlik açısından güçlü hale gelmişlerdir. GPGPU programlamada, CUDA ve OpenCL çok kullanılan kütüphanelerdir.
Bu çalışmada, görüntü birleştirme tekniklerinden, dönüşüm uzayında çalışan, Laplacian Piramidi metodu kullanılarak GPU'lar üzerinde genel amaçlı programlama yapılmıştır. Karşılaştırmalarda kullanılmak üzere, CPU üzerinde seri çalışan bir program da geliştirilmiştir. Bu programlarla, GPU ve CPU üzerinde, Laplacian Piramidinin her adımında geçen süreler karşılaştırılmıştır. GPU'ların paralel işlem performansının yüksekliği açık bir şekilde gözlemlenmiştir. Özellikle büyük çözünürlüklü görüntülerde performans farkı daha fazla belirgin olmuştur.

Abstract:
While images can be attained by cameras featured to focus differently they focus on objects at specific distance. The focused part is the sharpest part of the image. The part around the focus becomes blurry. From multiple images obtained by differently focused cameras, single and meaningful image can be constructed. Fort this particular reason, image-fusion techniques are used.
Image processing techniques are getting more and more complex and resolution of images processed are being higher. Along with this, the problem of performance becomes important. The number of the studies in this issue has increased in the recent years. One of these studies is realizing a general purpose programming on graphics processor unit(GPGPU). GPUs, naturally, are multi-cored due to drawing graphics on the screen and have a high parallelism. GPU's chips have stable functions. However, they are more programmable and more powerful in terms of calculability. In GPGPU programs, CUDA and OpenCL libraries are used extensively.
In this study, by using the Laplacian Pyramid method, one of the image fusion methods, general purpose programming on GPU has been made. For comparisons, a serial program on single CPU has been developed. Through these programs, duration of every step of Laplacian Pyramid method on GPU and CPU is compared. It has been clearly observed that GPUs have a high parallel processing performance. Especially, the performance difference is observed to be a lot more in high resolution images.