FPGA üzerinde görüntü iyileştirme uygulaması
Application of image enhancement on FPGA
Yazar: TAYFUN ÇAYIR
Danışman: PROF. DR. VEDAT TAVŞANOĞLU
Yıldız Teknik Üniversitesi / Fen Bilimleri Enstitüsü / Elektronik ve Haberleşme Mühendisliği Ana Bilim Dalı / Elektronik Mühendisliği Bilim Dalı
Derece: Yüksek Lisans, 2010
Konu: Elektrik ve Elektronik Mühendisliği = Electrical and Electronics Engineering

Özet:
Görüntü işaretleri, çeşitli kaynaklardan etkilenerek gürültü işaretlerine maruz kalabilir. Bunlar: depolama birimlerinden kaynaklanan gürültüler, görüntü oluşumunu sağlayan donanımlardan (kamera, webcam, dijitizer, vb?) kaynaklanan gürültüler, alıcı-verici ve kayıt donanımlarından kaynaklanan gürültüler, iletim kanalları (televizyon veya radyo yayınları, uydu hatları, kablolu ağlar, statik çarpıcılar, vb?) gibi altyapı ortamlarından kaynaklanan gürültüler olarak tanımlanabilir. Gürültülü görüntü işaretlerinin kullanıcıya sunulması, farklı amaçlar doğrultusunda değerlendirilebilmesi için içerisinde bulunan gürültü işaretlerinin ortadan kaldırılması gerekmektedir. Örnek olarak tıbbi uygulamalarda doktorun hastasıyla ilgili bir MR görüntüsünde değerlendirme yapabilmesi, otomasyon sistemiyle üretim yapan fabrikada banttan çıkan ürünün örnek ürünle karşılaştırmasını görüntü işleme ile gerçekleştiren sistemin elde ettiği kamera görüntüsünün değerlendirilebilmesi için, görüntünün varsa gürültülü işaretlerinin elemine edilmesi oldukça önemlidir.İncelenecek ve üzerinde çalışma yapılacak olan gürültü çeşidi, genellikle hava ortamındaki iletim kanallarından, güvenli olmayan sayısal hatlarındaki veri iletimi sırasında paket kayıplarından ya da piksel kayıplarından meydana gelir. Bu gürültü çeşidi literatürde darbe gürültüsü, tuz-biber gürültüsü olarak adlandırılır. Bu tarz gürültü işaretlerini temizlemede kullanılan en etkili filtrelerden bir tanesi standart medyan filtredir.Medyan filtre, görüntü işlemede, darbe gürültülü işaretlerde kullanılan güçlü bir araçtır. Standart medyan filtre herhangi bir modifikasyona gerek kalmadan filtrelemede oldukça iyi sonuçlar verir. Genellikle tuz-biber gürültülerini bastırmada kullanılır. Filtrelemeyi gerçekleştirirken görüntüde bulunan kenar geçişlerini korur. Gaussian filtreleri gibi keskin kenar geçişlerini düzleştirme gibi görüntü işareti üzerinde herhangi bir etki bırakmaz. Fakat görüntü üzerinde bulunan küçük detayları ortadan kaldırabilir. Bu detayların oranı, kullanılan medyan filtre şablonu büyüklüğüyle de doğru orantılıdır. Medyan filtre şablonu büyürse detaylar da o oranda kaybolur. Bunun önüne geçmek için farklı yapılardaki medyan filtreleme teknikleri kullanılır. Üzerinde duracağımız ve çalışmalarımızı gerçekleştireceğimiz filtre çeşidi ise standart medyan filtrelerdir.İki boyutlu medyan filtrelerde NxN kare medyan filtre şablonunu kullanmak, görüntüde bulunan her bir piksel değeri için şablondaki NxN tane piksel değerini sıralamak ve bunlardan ortanca değerini bulup görüntüdeki ilgili piksel değeriyle yer değiştirmek oldukça önemli hesaplama gücü gerektirir. Gerçek zamanlı görüntülerde medyan filtreyi uygulamanın tek yolu, algoritmayı donanımsal olarak gerçekleştirmektir. Programlanabilir lojik, kullanıcının ihtiyaç duyduğu tüm uygulamaları gerçekleştirmeye imkân sağladığından, paralel işlem yapabilme yeteneğiyle, gerçek zamanlı görüntü üzerinde medyan filtre uygulamasını FPGA'ler ile mümkün kılar (Dhanasekaran ve Boopathy, 2009).Çalışmada medyan filtre uygulaması üzerinde durularak, filtrenin yapısı, uygulanış şekli, görüntü üzerindeki etkileri, avantaj ve dezavantajları gibi birçok noktaya değinilmiş, yapının FPGA üzerinde temel bir donanım algoritması kullanılarak yüksek çözünürlüklü gerçek zamanlı görüntüler üzerinde uygulaması yapılmıştır.

Abstract:
Image signals may be affected from various noise sources. These noises may be caused by the storage unit, the capture hardware that forms the image (camera, webcam, digitizer, etc.), receiver/transmitter or recording equipment, or the transmission channels (television or radio broadcasts, satellite lines, cable networks, static multipliers, etc.). Consequently, the noise on the image should be eliminated at the user side before processing. For example, in a medical application such as an MR image of a patient, it is important to eliminate the noise as much as possible before the evaluation process.Scope of this thesis is the elimination of the salt & paper noise that is mostly emerged by packet or pixel losses on unreliable transmission channels. These types of noise are also referred as pulse noise in the literature. Median filters are one of the most effective, efficient and non-destructive filters used to retrieve the original image.Median filters are powerful instruments used in image processing. The traditional median filtering algorithm, without any modifications gives good results. Median filters are used mainly to remove salt-and pepper noise. They preserve edges in the image, preserve their location and do not affect their steepness, unlike Gaussian filters, but unfortunately may destroy small features in the image. A workaround is to apply center-weighted median filtering instead of a plain median, in exchange of the filter?s ability to suppress impulse noise. The required high computational power is also a drawback of various kinds of the median filters (Dhanasekaran ve Boopathy, 2009).Computing a two-dimensional median for a NxN window, requires sorting of NxN elements around each image pixel. After the sorting, each queue element is assigned a value called a rank, specifying its position in the queue as a result of sorting. Therefore, using median filtering in any real-time vision system requires a significant computational power. One way to speed up the computations is to implement the algorithm in hardware, e.g. FPGAs. Moreover, programmable logic creates the possibility to tailor the implementation to the user?s needs. The result is the significant speedup over the software implementations by using sequential processors.In this thesis, a median filter structure is realized on an FPGA. Different structures, advantages, disadvantages and applications of the median filters are also discussed. The primary goal was to realize a high-resolution real-time median filter block on FPGA