Geri Dön

Implementation of a super-resolution algorithm using model composer

Bir yüksek çözünürlük algoritmasının model composer ile gerçeklenmesi

  1. Tez No: 783899
  2. Yazar: BERKAY UÇKUN
  3. Danışmanlar: PROF. DR. SIDDIKA BERNA ÖRS YALÇIN
  4. Tez Türü: Yüksek Lisans
  5. Konular: Elektrik ve Elektronik Mühendisliği, Electrical and Electronics Engineering
  6. Anahtar Kelimeler: Belirtilmemiş.
  7. Yıl: 2023
  8. Dil: İngilizce
  9. Üniversite: İstanbul Teknik Üniversitesi
  10. Enstitü: Lisansüstü Eğitim Enstitüsü
  11. Ana Bilim Dalı: Elektronik ve Haberleşme Mühendisliği Ana Bilim Dalı
  12. Bilim Dalı: Elektronik Mühendisliği Bilim Dalı
  13. Sayfa Sayısı: 121

Özet

Günümüzde, teknolojideki ilerlemelerin de üstel olarak arttığı düşünüldüğünde, video ve görüntüleme teknolojilerinin de yüksek bir hızla geliştiği görülmektedir. Bu etkileri en aşikar şekilde, televizyonlarda, internet üzerinden video aktarımı yapan Youtube, Netflix gibi platformlarda ve akıllı telefonlarımızda görebilmekteyiz. Bu teknolojilerdeki gelişmeler sonucunda bu aletlerin çözünürlük ve detaylı video gösterme özellikleri oldukça artmıştır. Çok değil, 10 sene kadar önce hayatımızda en sık kullanılan çözünürlük 640x480, kısaca 480p, en yüksek çözünürlük ise 1280x720 yani 720p, ya da 1920x1080 yani 1080p idi. Şu anki gelinen noktada ise, 3840x2160 yani 4K ve 7680x4320 yani 8K son kullanıcıların erişimine verilmiş olan cihazlarda sıkça kullanılan çözünürlükler olmuşlardır. Bu ilerlemeler geçmişte kayda alınmış ve şu anki teknolojiye sahip ekranlarda gösterilecek olan düşük çözünürlüklü görsellerin gösterimi esnasında ekranların yüksek çözünürlük kabiliyetinin kullanılmamasına ve anlamsız kalmasına sebep olmaktadır. Aynı zamanda sağlık görüntüleme cihazlarında ve kameraların sayısal yakınlaştırma algoritmalarında bu tür detay iyileştiren algoritmalara ihtiyaç duyulmaktadır. Sağlık görüntüleme cihazlarında detay arttırımı sayesinde vücut içerisindeki zararlı kistlerin ve organizmaların anlaşılması hızlanarak, hastanın iyileşme olasılığı arttırılabilir. Bu, düşük çözünürlüklü kayıtlarla yüksek çözünürlüklü ekranların arasındaki detay farkı çok arttığı için, Bilineer ve Bikübik interpolasyon gibi teknikler detay arttırma konusunda yetersiz kalmaya başlamıştır. Bu sebeple, daha yüksek detay ve görsel özellik katma işlevi bulunan yeni çözünürlük arttırma algoritmaları üretme gereksinimi doğmuştur. Bu amaçla ortaya çıkarılan geleneksel interpolasyon bazlı çözünürlük yükseltme algoritmalarına iyileştirme sunmayı hedefleyen, bir video araştırma alt dalı ortaya çıkmış, bu alt dal yüksek çözünürlük(Super-resolution) olarak adlandırılmıştır. Teknolojideki yeniliklerin etkilediği tek alan görüntü aktarım, alma ve basma arayüzleri değildir. Aynı zamanda hesaplama alanındaki yenilikler sayesinde derleyici platformları daha karmaşık, yüksek boyutlu algoritmaları gerçekleme kabiliyetine sahip olan, ve yüksek seviye dilleri kullanan algoritma gerçekleştirme ortamları(Integrated Development Environment)(IDE) da gelişmeye devam etmiştir. Bu derleme ortamlarına Xilinx'in Vitis High Level Synthesize(HLS) ve Model Composer IDE'leri örnek gösterilebilir. Vitis HLS barındırdığı C/C++ dillerini Alan Programlanabilir Kapı Dizileri(FPGA) tasarımlarına dönüştürme yeteneği sayesinde mühendislerin herhangi bir sayısal tasarım önbilgisine sahip olmadan bu araçları kullanarak bu ortamlar için donanım geliştirmelerine imkan vermektedir. Sadece sayısal donanım bilgisi olmayan tasarımcılar için değil, aynı zamanda sağladığı hızlı tasarım yapabilme ve doğrulayabilme özellikleriyle alanında uzman sayısal tasarımcılar tarafından da sıkça kullanılmaya başlanmıştır. Son yıllarda, Vitis HLS'i arkaplanda çağırarak kullanan ve MATLAB Simulink eklentisine bir uzantı olarak bağlanabilen, bu şekilde blok diyagram görsel kullanıcı arayüzü sayesinde görsel bir tasarım deneyimine olanak sağlayan Vitis Model Composer eklentisi model tabanlı tasarım ve doğrulama özelliklerine sağladığı katkılarla ön plana çıkmaktadır. Vitis Model Composer eklentisi aynı zamanda MATLAB ve Vivado Design Suite ile bir bağ görevi görüp, model tabanlı tasarım uygulamaları için biçilmiş bir kaftan olmuştur. Bu çalışmada, yüksek çözünürlük algoritmalarında yapılmış olan gelişmeler incelenip, FPGA'ler üzerinde gerçeklenmeye uygun veya hali hazırda gerçeklenmiş olan makaleler arasından, model tabanlı tasarım yapmaya uygun olan“An FPGA-Optimized Architecture of Anti-Aliasing based Super Resolution for Real-Time HDTV to 4K- and 8K-UHD Conversions”makalesi seçilmiştir. Bu algoritma tek görsel bazlı yüksek çözünürlük(single image super resolution) türünde olup, harici bir hafıza elemanına gereksinim duymamaktadır. Temelinde bilineer interpolasyonu barındırıp, öncelikle girişteki matrisi 4 katına yükseltip, bu görsel üzerinde kenar detaylarını kuvvetlendiren ikinci bir aşamaya sahiptir. Detayları arttırılmış olan ara çözünürlükteki matris, tekrar yarı yarıya çözünürlük düşürülerek istenilen sonuç çözünürlüğüne ulaşılmaktadır. Bu algoritmanın gerçeklenmesi esnasında MATLAB, Model Composer ve Vivado ortamlarında sırasıyla algoritmanın performasının test edilmesi, iyileştirme yapılması, gerçeklenmesi ve Model Composer eklentisinin geliştirme esnasında kullanılabilirliği ve bu sürece olan etkilerinin gözlemlenmesi hedeflenmiştir. Bu amaçla, öncelikle, makaledeki algoritma tersine mühendislik yöntemleriyle MATLAB üzerinde çalışan bir koda dönüştürülmüş, bu kodun çalışırlığı test edilmiştir. Algoritma doğru bir şekilde gerçeklendikten sonra, bu kod kullanılarak test görsellerini önce yarı çözünürlüğe düşürüp, sonra da gerçek çözünürlüğüne yükseltme mantığını uygulayan, bu şekilde yüksek çözünürlük algoritmasının performansını PSNR, MSE, UQI ve SSIM metrikleri cinsinden, girişteki orijinal görseli zemin gerçeği(Ground Truth) olarak kullanarak analiz yapılmıştır. Metrik testleri dışında algoritmanın görsel sonuçları da karşılaştırılmıştır. Özellikle kenarların yoğun olduğu yerlerdeki bulanıklıkları giderdiği ve detayları arttırdığı gözlemlenmiştir. Bunun sonucunda, giriş görsellerinin özellikle kenarlar açısından yüksek yoğunluğa sahip bölgeleri alınarak bu görseller metrik testleri ve görsel oluşturma aşamaları tekrarlanmıştır. Bu ikinci testte algoritmanın bilineer interpolasyona olan üstünlüğü vurgulanmıştır. Bu analizlere karşılaştırma maksadıyla bilineer interpolasyon algoritması ile aynı işlemleri gerçekleyen bir takım MATLAB kodları daha yazılmış ve aynı görseller iki çözünürlük arttırma sistemine birden beslenerek, elde edilen metrikler karşılaştırılmıştır. Aynı zamanda manada ortaya çıkan sonuçtaki hatalar bulunmuş, buna sebep olan algoritma hataları giderilmiştir. Bu işlemlerden sonra ortaya çıkan değiştirilmiş algoritma kullanılarak Simulink arayüzüne geçilmiştir. Simulink üzerinde Model Composer'ın hazır olarak sunduğu bloklar öncelikli olarak kullanılacak şekilde algoritmanın MATLAB kodu bir Simulink tasarımına dönüştürülmüştür. Simulink'in sağladığı simülasyon özelliği kullanılarak, MATLAB tarafındaki yüksek çözünürlük algoritmasına ve bu sisteme beslenen ekstrem uçlardaki ve bunlardan sonra da rastgele değişkenlere sahip giriş matrisleri ile, Model Composer tasarımı ile MATLAB kodunun sonuçları karşılaştırılarak tasarımdaki hatalar giderilmiş, öncelikle hiçbir iyileştirme olmayan bir tasarım yapılmış, bu tasarımdaki sonuçları Vivado tarafında aldıktan sonra ise Model Composer'ın sağladığı en iyileştirme manasında gelişmiş tasarım ortaya çıkarılmıştır. Bu tasarım kullanılarak Vivado tarafında davranışsal, implementasyon sonrası fonksiyonel simülasyonlar yapılmış, yüksek çözünürlük bloğu sentezlenmiş ve gerçeklenmiştir. Bu gerçeklemeler esnasında Model Composer uzantısının rapor sonuçlarıyla, Vivado programının yer kullanım raporları karşılaştırılmıştır. Ayrıca Model Composer ile üretilen bloğun reel yer kullanım sonuçları ile örnek alınan makaledeki sonuçlar karşılaştırılmıştır. Vivado tarafında ayrıca bitstream üretimi sağlanmış ve oluşturulan bloğun FPGA üzerinde testi de gerçekleştirilmiştir. Bu tezde model tabanlı tasarımın doğasına uygun bir şekilde aşağıdan yukarıya bir hiyerarşiye paralel bir tasarım ve doğrulama metodu izlenmiş, buna uygun şekilde hatalı bulunan adım ile bir önceki adıma geri dönme ve hata iyileştirme stratejisi uygulanmış, bu 3 program arasında baştan sona tasarım süreci gözlemlenmiştir. Elde edilen sonuçlarda Model Composer uzantısındaki eksiklerden, artılarından ve eksilerinden bahsedilmiştir. Özellikle algoritmanın gerçeklendiği ilk iterasyonda oluşan hatalı sonuç(bug) gösterilmiştir. Ayrıca Model Composer uzantısının gerçekleme stili açısından nasıl kullanılacağının açık olmadığı ve rapor sonuçlarındaki hataların gerçeklenen algoritma büyüdükçe arttığı gözlemlenmiştir. Bir noktada Model Composer'ın çıkarttığı tahmin ile Vivado'nun çıkardığı eleman kullanım verileri arasında 4 katı gibi bir fark gözlemlenmiştir. Bu tezde kullanılan gerçekleme yöntemi ile büyük algoritmaların doğrulama, gerçekleme, geliştirme safalarının tek bir tasarımcı tarafından kolaylıkla yapılabildiği gösterilmiştir. Model Composer'ın hali hazırda bulunan blokları ile tasarım sürecinin kolayca ilerlediği, blokların yetersiz kaldığı noktalarda ile özel(custom) C/C++ kodu ekleme özelliği sayesinde tasarım esnasında eksik görülen blokların da gerçeklenebiliyor olmasıyla tasarım ve doğrulama süreçlerinin oldukça hızlandırıldığı gözlemlenmiştir. Özellikle Model Composer uzantısındaki blokların geliştirilmesi ve uzantının tasarım stili açısından daha kolay yönetilebilir olması özelliklerinin eklenmesiyle model tabanlı büyük boyutlu algoritma gerçeklemelerinde kullanımının önümüzdeki senelerde artma potansiyeline sahip olduğu düşünülmektedir.

Özet (Çeviri)

Today, the advancement of technology has multifaceted effects. The effects of these advancements can be given as examples of the increase in resolution and detail in the vision sensor systems at the front end, the developments in hardware and integrated technologies at the middle level, and, in the back end, the innovations in the implementation and testing stages of the compilers that program these hardware and integrations. Especially in the last ten years, developments in internet and image compression algorithms and devices such as televisions, smart phones and computers with image playback capability have increased the features such as the resolution and detail in the image. Although these developments can be followed by current cameras and image detection devices produced today, it is obvious that the resolution of the videos and photos recorded in the past should be increased. Meanwhile, basic and simple mathematical convergence solutions such as bilinear and bicubic interpolation are frequently used. However, these algorithms do not have the ability to increase information such as continuity, detail and sharpness in images with the weighted averaging basis they use. For this reason, special solutions aiming to increase the mentioned features have been produced. These solutions are called super-resolution imaging. Field Programmable Gate Arrays (FPGAs), which allow experimentation during prototyping and algorithm development with their ability to be reconfigured with hardware improvements, have also become useful for the implementation of algorithms with large dimensions and high computational needs. Although the development of the configuration files for these ICs is primarily done through IDEs that convert HDL codes to bitstreams, background compiler developments have also accelerated. Vivado High Level Synthesize compilers based on C/C++ programming languages have been used since 2014. The Model Composer extension, which is based on this compiler and provides FPGA implementation on MATLAB Simulink, has also accelerated the validation and development processes. This study aimed to use these three parts together and aimed to develop the underlying algorithm. Meanwhile, it aims to provide readers with the opportunity to observe how effective and functional the Model Composer is during validation and validation.

Benzer Tezler

  1. Termal görüntülere derin öğrenme tabanlı süper çözünürlük yöntemlerinin uygulanması

    Application of deep learning based super resolution in thermal images

    CANER CİVE

    Yüksek Lisans

    Türkçe

    Türkçe

    2023

    Elektrik ve Elektronik Mühendisliğiİstanbul Teknik Üniversitesi

    Elektronik ve Haberleşme Mühendisliği Ana Bilim Dalı

    PROF. DR. ENDER METE EKŞİOĞLU

  2. Seyreklik ve sözlük öğrenme yaklaşımlarının sınıflandırma ve yüz tanımaya uygulanması

    Classification and face recognition application of sparsity and dictionary learning based methods

    BERNA AZİZOĞLU

    Yüksek Lisans

    Türkçe

    Türkçe

    2017

    Elektrik ve Elektronik Mühendisliğiİstanbul Teknik Üniversitesi

    Elektronik ve Haberleşme Mühendisliği Ana Bilim Dalı

    DOÇ. DR. ENDER METE EKŞİOĞLU

  3. Çoklu otonom insansız hava araçları için paralel programlama tabanlı yol planlaması

    Parallel programming based path planning for multi autonomous unmmaned vehicles

    ÖMER ÇETİN

    Doktora

    Türkçe

    Türkçe

    2015

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolHava Harp Okulu Komutanlığı

    Bilgisayar Mühendisliği Ana Bilim Dalı

    DOÇ. DR. GÜRAY YILMAZ

  4. Yapay sinir ağları ile optik karakter tanıma

    Optical character recognition with artificial neural network

    MURATCAN UZTEMUR

    Yüksek Lisans

    Türkçe

    Türkçe

    2019

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrolİstanbul Teknik Üniversitesi

    Kontrol ve Otomasyon Mühendisliği Ana Bilim Dalı

    PROF. DR. AFİFE LEYLA GÖREN SÜMER

  5. Kesiti kademeli değişen plakların titreşimi

    Vibration of plates with stepped thickness

    GÖKAY YAY

    Yüksek Lisans

    Türkçe

    Türkçe

    1994

    Makine Mühendisliğiİstanbul Teknik Üniversitesi

    DOÇ.DR. ALAEDDİN ARPACI