Derin öğrenme ile görüntülerde gürültü giderme
Image denoising with deep learning
Yazar: SERCAN SATICI
Danışman: PROF. DR. ENDER METE EKŞİOĞLU
İstanbul Teknik Üniversitesi / Lisansüstü Eğitim Enstitüsü / Elektronik ve Haberleşme Mühendisliği Ana Bilim Dalı / Telekomünikasyon Mühendisliği Bilim Dalı
Derece: Yüksek Lisans, 2021
Konu: Elektrik ve Elektronik Mühendisliği = Electrical and Electronics Engineering

Özet:
İletim kanalı üzerindeki bozulmalar, çevresel etkiler ve diğer zararlı faktörler nedeniyle, görüntü yakalama, sıkıştırma veya iletim aşamasında, görüntüler kaçınılmaz olarak gürültüyle bozulur. Gürültü, görüntüle rde istenmeyen, görüntünün kalitesini düşüren etkilerdir. Birçok farklı kaynaklar sebepli oluşan gürültü, görüntüden giderilerek görüntü kalitesi arttırılmaktadır. Görüntüde gürültü giderme, görüntü işleme uygulamalarında yıllardır önemli sorunlardan biri olmuştur. Görüntü işleme çalışmalarında geliştirilen tüm uygulamalar için, gürültüden arındırılmış görüntüler ile çalışmak başarımı etkileyen faktörlerdendir. Görüntüden gürültünün giderilmesi ile, bir sonraki işlem basamaklarına sağlanacak gürültüsüz görüntü, uygulamalar için önemli bir işlem basamağının tamamlanmış olması anlamına gelecektir. Gürültü giderme, orijinal görüntüyü olabildiğince iyi oluşturmak için
gürültülü bir görüntüden gürültünün giderilmesidir. Gürültü doğada birçok farklı dağılıma sahip olabilmektedir. Analog sinyalin, ayrıklaştırılarak dijital hale getirilmesi adımlarında imgeye eklenen gürültünün dağılımı bilinirse bu gürültünün temizlenmesi sıfır hata ile mümkün olabilirdi. Ancak pratikte bu durum pek mümkün
değildir. Bununla birlikte, gürültü, kenar ve doku gibi yüksek frekanslı bileşenler olduğundan, onları gürültüden arındırma sürecinde ayırt etmek zordur ve gürültü giderme işlemlerinde görüntüler kaçınılmaz olarak bazı ayrıntıları kaybedebilir. Detay bilgisi olarak ifade edilen ayrıntılar, görüntü için önemli ayırt edici özellikler
olabilir. Bu sebeple, görüntüden gürültüleri arındırma işleminde, bu bilgilerde kayıp yaşanması istenmemektedir. Bu bilgiler korunarak, gürültünün görüntüden arındırılması, görüntünün kalitesinin arttırılmasının yanında bir diğer amaçtır. Genel olarak, yüksek kaliteli görüntüler elde etmek için gürültü giderme sürecinde gürültülü görüntülerden anlamlı bilgileri kurtarmak günümüzde halen önemli bir sorundur. Matematiksel bir perspektiften bakıldığında, görüntüde gürültü giderme tersine bir problem olması sebebiyle çözümü benzersiz değildir. Görüntü üzerinde rastgele olarak piksellere eklenmiş bu etkilerin yok edilmesi, imgeyi oluşturan piksel değerlerinden gürültünün kaldırılması ters işlemiyle mümkün olacaktır. Farklı yöntemler kullanılarak gerçekleştirilebilecek olan görüntüde gürültü giderme, ayrıntıların kaybedilmemesi hedefiyle zorlu bir problemdir. Görüntülerden gürültünün giderilmesi çalışmaları, birçok farklı uygulama alanlarında karşımıza çıkmaktadır. Tıbbi görüntülerde, su altı görüntülerinde, uzaktan algılama, SAR, kızılötesi görüntüleri gibi uygulama alanlarında kendine geniş yer bulmaktadır. Genellikle bu uygulama alanlarında, öncül bir basamak olarak ifade edilen ön işlem basamağında, görüntünün gürültüsünün giderilmesi gerçekleştirilmektedir. Gürültüsü giderilmiş görüntü bir sonraki basamağa giriş olarak aktarılarak, uygulamanın diğer basamaklarında bu görüntü üzerinden işlemler gerçekleştirilmektedir. Klasik bir problem olmasına rağmen, görüntüde gürültü giderme, zor olması ve yeni geliştirilen görüntü modellerini karşılaştırmak için bir alan sağlaması sebebiyle hala üzerinde çalışılmaktadır. Tez çalışmasında, gürültü giderme problemi tüm hatlarıyla ele alınmıştır. Klasik gürültü giderme yöntemlerinden son teknoloji gürültü giderme yöntemlerine kadar çeşitli yaklaşımlar incelenmiştir. Uygulama aşamasında ise, dönüşüm bölgesinde filtreleme tekniklerinden olan, Blok Uyumlamalı 3-Boyutlu Filtreleme yöntemi ve derin yaklaşımlı yöntemlerden İleri Beslemeli Gürültü Gidermesi için Evrişimsel Sinir Ağı modeli gerçeklenmiştir. Blok Uyumlamalı 3-Boyutlu Filtreleme gürültü
giderme tekniğinde, referans olarak belirlenen blok ile imgeyi oluşturan diğer bloklar karşılaştırılarak, uyum kriterini sağlayan benzer bloklar üç boyutlu olarak gruplanmıştır. Ardından üç boyutlu dönüşüm tekniği ile, farklı düzlem bölgesine taşınmıştır. Dönüşüm bölgesinde filtreleme uygulandıktan sonra, üç boyutlu ters dönüşüm ile blok tahminleri meydana getirilmiştir. Filtreleme, sert eşikleme yapılarak yüksek frekanslardaki gürültü bileşenlerinin bastırılmasıyla gerçekleştirilmiştir. İki fazdan meydana gelen yöntemin ikinci fazında Wiener filtresi uygulanmaktadır. Son Wiener tahmini ile oluşturulan gürültüsü giderilmiş görüntü yöntemin ürettiği sonuç olmaktadır. İleri Beslemeli Gürültü Gidermesi için Evrişimsel Sinir Ağı modelinde, klasik evrişimli sinir ağlarında olduğu gibi, özniteliklerin çıkartılmasında çekirdek olarak isimlendirilen filtreler kullanılmaktadır. Bu filtreler, görüntü ile evrişim işlemine sokularak, ayırt edici niteliklerin tespiti yapılmaktadır. Burada yapılan işlemler, yapay sinir ağlarındaki ağırlıklar ile giriş değerlerinin çarpılması olarak düşünülebilir. Ayırt edici niteliklerin tespiti yapılırken, bu filtreler tüm görüntü üzerinde kaydırılmaktadır. Evrişim işleminde filtrenin boyutuna göre, görüntü boyutlarında küçülme yaşanmaması için, görüntünün köşe bölgelerinde piksel
ekleme işlemleri yapılmaktadır. Piksel ekleme işlemi, aynı piksellerin kopyalanması, sıfır değerli pikseller oluşturulması veya ortalama piksel değerlerinin eklenmesi gibi birçok farklı şekilde yapılabilmektedir. Filtrelerin tüm görüntü üzerinde gezdirilmesi işlemi, örtüşen pencereler veya örtüşmeyen kayan pencereler şeklinde
yapılabilmektedir. Boyut azaltımı piksellerin ortaklanması işlemi ile yapılacaktır. Burada belirli blok boyutlarındaki pikseller için bir piksel değeri belirlenecektir. Belirlenen bu piksel değeri bloğu temsil eden piksel olacaktır. Temsili piksel değerinin belirlenmesinde, en büyük değerin alınması veya piksellerin ortalamasıyla oluşturulmuş değerin alınması gibi yöntemler kullanılabildiği gibi farklı tekniklerde kullanmak mümkündür. Katmanlar boyunca yapılan bu işlemlere ek olarak bunlarla birlikte yığın normalizasyonu da yapılacaktır. Gürültülü görüntüler ile temiz görüntüler arasında bir eşleme işlevinin öğrenilmesi sağlanacaktır. Bu eşleme işlevinin öğrenilmesi, kayıp işlevinin optimize edilmesiyle sağlanmaktadır. Evrişim tabanlı gürültü giderme yöntemleri için temel prensip bu şekilde olmaktadır. Derin mimarilere yığın normalizasyonu eklenmesiyle eğitim hızı arttırılmaktadır. Bu sebeple evrişim işlemi ile katmanlar boyunca eklenen normalizasyon işlemi, eğitimin ezberlenmemesi için önemli bir rol oynarken aynı anda eğitim hızını da arttırmaktadır. Modelin eğitim işlemi, sabit varyans altındaki gürültü görüntüler ve karşı gelen gürültüsüz görüntülerin eğitim kümesi olarak kullanılmasıyla sağlanacaktır. Model eğitilirken hiperparametrelerin belirlenmesi çok önemlidir. Bu parametreler başarımı doğrudan etkileyecek parametrelerdir. Belirlenen veri kümesi de bir diğer önemli unsurdur. Derin öğrenme ağları grafiksel işlem üniteleri üzerinde çalışabilmektedir. Bu daha fazla örnekle eğitebilme ve verimliliği arttırmak anlamına gelmektedir. Eğitim ne kadar farklı görüntüler ile gerçekleştirilirse, o kadar farklı türe ait
öğrenimler sağlanmış olacaktır. Sabit varyans altındaki gürültü görüntüler ile eğitimi gerçekleştirilmiş model ile, gürültülü görüntüler test edilerek görüntü kalitesinin iyileşmesi tespit edilmektedir. Buradan elde edilen sonuçlar, görüntülerde gürültü giderme problemi için derin yaklaşımlı gürültü giderme yapılarının başarımını ortaya koymaktadır. Her iki yöntemin karşılaştırmalı test sonuçları analiz edilerek, yeni geliştirilen derin öğrenme tabanlı yöntemlerin klasik gürültü giderme yöntemlerine göre daha yüksek performans sağlayabileceği belirlenmiştir.

Abstract:
Due to the degradations over the transmission channel, environmental effects and other detrimental factors, images get inevitably deteriorated with noise, whether it be during the initial image capture, the compression or the transmission stage. Noise is an unwanted effect on images that reduces the quality of the image. Noises caused by
many different sources are removed from the image and the image quality is increased. Image denoising has been one of the important problems that have remained in image processing applications for years. In all applications developed in image processing projects, working with denoised images is one of the factors affecting the performance. With the removal of the noise from the image, a denoised image will be provided to the consequent processing steps. Denoising is removal of noise from a noisy image to reproduce the original image as good as possible. Noise can have many different distributions in nature. If the distribution of the noise added to the image in the digitization of the analog signal was known, it would be possible to clear it with high performance. However, this is not possible in practice. Noise includes high frequency components like edges and textures, hence it is difficult to differentiate these details from noise. In the denoising process, images may naturally lose some detail. Details act as important distinguishing features for the image. For this reason, loss of this information is not desired in the process of removing noise from the image. By preserving this information, removing the noise from the image gains another purpose besides increasing the quality of the image. Generally,
maintaining the high frequency content from noisy images after the denoising process to obtain high quality images is still a major problem. Seen from a mathematical perspective, the solution is not unique, as noise removal in the image is an ill-posed inverse problem. It will be possible to eliminate these randomly added effects on the image by removing the noise component from the pixel values as an inverse process. Image denoising, which can be realized using different methods, is a challenging problem with the aim of not losing details. Denoising has many different application areas. It finds wide application in medical images, underwater images, remote-sensing, SAR and infrared images. Generally, in these application areas, the removal of noise is realized in the pre-processing step. Denoised image is fed as the input to the next step, and operations are performed on this image in the other steps of the application. Although a classic problem, denoising is still being studied because it is challenging and provides a venue to compare newly developed image models. In the thesis, the denoising problem has been handled in all its aspects. It has been studied starting from classical denoising methods and reaching to state of the art denoising methods. In the implementation phase, Block Matching and 3-D Filtering (BM3D) method, which is a transform domain filtering technique, and Feed Forward Denoising Convolutional Neural Network (DnCNN) model, which is one of the deep learning based methods, have been implemented. In Block Matching 3-Dimensional Filtering noise reduction technique, by comparing the reference block and other blocks forming the image, similar blocks that meet the fit criteria are grouped in three dimensions. Then they are transformed to a different domain with the threedimensional transform domain technique. After applying the filtering in the transformation domain, block estimates are generated by three-dimensional inverse transform. Filtering has been achieved by suppressing noise components at high frequencies by hard thresholding. Wiener filter is applied in the second part of the method which consists of two phases. The final Wiener estimate is the denoised result produced by the method. In Feed Forward Denoising Convolutional Neural Network model, as in classical convolutional neural networks, filters called as kernels are used to extract the features. These filters are convolved with the image to determine the distinguishing features. The operations performed here can be thought of as multiplying the weights in artificial neural networks with the input values. While detecting the distinctive features, these filters are shifted over the entire image. In the convolution process, depending on the size of the filter, pixel additions are performed in the corner areas of the image in order not to decrease the image size. Pixel addition can be done in many different ways, such as copying the same pixels, creating zero-value pixels or adding average pixel values. The process of moving the filters over the whole image can be done in the form of overlapping windows or non-overlapping floating windows. Dimension reduction will be realized by the sampling of pixels in a process called as pooling. Here, a pixel value will be determined for pixels of certain block sizes. This pixel value will be the pixel representing the block. In determining the representative pixel value, it is possible to use methods such as taking the maximum value or taking the value formed by the average of pixels, as well as using different techniques. In addition to these operations along the layers, batch normalization will be done with them. As a result of this process a mapping function between noisy images and clear images will be learned. Learning of this mapping function is achieved by optimizing of a loss function. This is the basic principle for convolution based noise removal methods. By adding batch normalization to deep architectures, training speed is increased. For this reason, the normalization process added through the layers by the convolution process plays an important role in
keeping the network from memorizing, while simultaneously increasing the speed of learning. The model will be learned by training with a dataset composed of noisy images and corresponding clear images. It is very important to determine the hyperparameters while training the model. These hyperparameters are elements that will directly
affect performance. The utilized dataset is another important factor. Deep learning networks can operate on graphical processing units. This means being able to train with more samples and an increase in productivity. When the learning is carried out with different images, different types of images structures will be learned. The results obtained here reveal the performance of deep learning based image denoising methods for the problem of noise removal in images. By analyzing the comparative test results of both methods, it has been determined that the newl developed deep learning based methods can provide higher performance than classical denoising methods.