Bu depo, bir görüntü işleme dersi için laboratuvar ödevi kapsamında geliştirilen MATLAB kodunu içermektedir. Çalışma, Erasmus+ burs programı kapsamında Polonya, Kraków'daki AGH Bilim ve Teknoloji Üniversitesi'nde öğrenciyken tamamlandı.
Betikler, görüntü histogramlarının çeşitli temel kavramlarını ve görüntü iyileştirmedeki uygulamalarını incelemektedir.
MATLAB kodu, her biri belirli bir histogramla ilgili tekniğe odaklanan birkaç bölümden oluşmaktadır.
Bu bölüm, birkaç yapay görüntü oluşturur ve bunlara karşılık gelen histogramları görselleştirir. Bir görüntünün piksel değeri dağılımı ile görsel görünümü arasındaki ilişkiyi anlamaya yardımcı olur.
black: Tamamen siyah bir görüntü.white: Tamamen beyaz bir görüntü.black_white: Siyah ve beyaz arasında dikey olarak bölünmüş bir görüntü.random: Rastgele dağılmış piksel değerlerine sahip bir görüntü.transition: Siyahtan beyaza yumuşak bir geçişe sahip gri tonlamalı bir görüntü.
Kodun bu bölümü, Lena'nın dört farklı gri tonlamalı görüntüsünün histogramlarını analiz eder. Bu, histogramların gerçek dünya görüntüleri için nasıl değişebileceğini ve görüntünün ton aralığını ve kontrastını nasıl yansıttığını gösterir.
Bu bölüm, hist1.bmp adlı bir görüntü üzerinde histogram genişletme (kontrast genişletme olarak da bilinir) işlemini gerçekleştirir. Bu teknik, kontrastını artırmak için bir görüntüdeki yoğunluk değerlerinin aralığını genişletir. Komut dosyası, işlemin etkisini görsel olarak göstermek için hem orijinal hem de uzatılmış görüntüleri ilgili histogramlarıyla birlikte görüntüler.
Bu bölüm, aynı hist1.bmp görüntüsüne histogram eşitleme uygular. Histogram eşitleme, yoğunluk değerlerini yeniden dağıtarak daha düzgün bir dağılım elde eden ve böylece görüntünün genel kontrastını artıran daha gelişmiş bir yöntemdir. Kod, orijinal görüntüyü ve kümülatif histogramını, ayrıca eşitlenmiş görüntüyü ve karşılık gelen histogramını gösterir.
Bu son bölüm histogram eşleştirme (aynı zamanda histogram belirtimi olarak da adlandırılır) konusunu ele alır. phobos.bmp görüntüsünün histogramını, bir dosyadan yüklenen önceden tanımlanmış bir desiredHistogram ile eşleştirir. Bu, bir görüntünün yoğunluk profilinin bir başkasınınkine benzer görünmesini sağlamak için kullanışlıdır.
Kod ayrıca çeşitli diğer görüntü geliştirme tekniklerinin karşılaştırmasını da içerir:
- Gerilmiş: Histogram germe için
imadjustkullanılır. - Eşitlenmiş: Standart histogram eşitleme için
histeqkullanılır. - Uyarlanabilir Eşitlenmiş: Yerel kontrastı artıran uyarlanabilir eşitleme için
adapthisteqkullanılır. - Eşleştirilmiş: Histogramı istenen profille eşleştirmek için
imhistmatchkullanılır.