Skip to content

Instantly share code, notes, and snippets.

@Mervetafrali
Last active March 8, 2017 15:24
Show Gist options
  • Save Mervetafrali/9dfe87abc576e32c94b6e9baa686d320 to your computer and use it in GitHub Desktop.
Save Mervetafrali/9dfe87abc576e32c94b6e9baa686d320 to your computer and use it in GitHub Desktop.

Görüntüde Gölge Yumuşatma

1) İçindekiler

  1. İçindekiler

  2. Versiyon Geçmişi

  3. Giriş

  4. Sayısal Görüntü ve Görüntü İşlemeNedir?

    1. Görüntü İşleme Nedir?

    2. Görüntü İşleme ile Gölge Tespiti

  5. Bayesian Sınıflandırma ile Gölge Tespiti

    1. Bayesian Sınıflandırma

    2. Sonuçlar

  6. Otsu Eşikleme Metodu ile Gölge Tespiti

    1. Otsu Eşikleme Metodu

    2. Sonuçlar

  7. Histogram Aralığı ile Gölge Tespiti

    1. Histogram Nedir?

    2. Histogram Aralığı Nasıl Tespit Edilir?

    3. Sonuçlar

  8. Referanslar

2) Versiyon Geçmişi

Tarih Değişiklik Kişi

10.01.2017

Görüntüde Gölge Tespiti

Gönül TOKTAY

10.01.2017

Görüntüde Gölge Tespiti

M.Sıla Genç

02.02.2017

Düzenleme

Merve Tafralı

3) Giriş

4)Sayısal Görüntü ve Görüntü İşleme Nedir?

4.1) Görüntü İşleme Nedir?

Gerçek yaşamda, bir görüntü veya resim basit 2 değişkenin bir fonksiyonu olarak tanımlanır. ω a(x,y) gibi bir fonksiyonla ifade edilen bir resimde a bir şiddet birimi( örneğin parlaklık) ve x ve y değişkenleri ise resmin gerçek koordinatlarıdır.[1]
Dijital görüntü sayısal değerlerden oluşur. ω 1 ve 0’lardan oluşan sayısal görüntü yapımız a[m,n], 2 boyutlu dünyadan elde edilen a(x,y) fonksiyonundan örnekleme tekniği kullanılarak oluşturulur.

1

Sayısal bir görüntü M ve N sayılarında satır ve sütünlardan oluşur ve satır ve sütünların kesiştiği her bölgeye pixel denir. ω O piksel’deki değer ise derinlik (z) , renk(λ) ve zamanın(t) bir fonksiyonudur.
Dijital bir resim haline getirilmiş olan gerçek yaşamdaki görüntülerin, bir girdi resim olarak işlenerek, o resmin özelliklerinin ve görüntüsünün değiştirilmesi sonucunda yeni bir resmin oluşturulmasıdır.[1]
Görüntüler genellikle analog ortamlardan dijital ortamlara geçirildiği için bozukluk içerir. Bozukluklar gürültü olarak da ifade edilirler. Gürültüler görüntü üzerinde istenmeyen sinyallerdir. Görüntü işleme bu hataları düzeltmek için kullanılabilir.Görüntü işleme bnun dışında farklı alanlarda da kullanılabilmektedir.

2

4.2)Görüntü İşleme ile Gölge Tespiti

Görüntülerdeki gölgeler,görüntü kalitesinin azalmasına sebep olmaktadır. Bu sebepten ötürü gölgelerin belirlenerek yumuşatılması gerekebilmektedir. Gölgenin belirlenmesi için Bayesian sınıflandırma algoritmasından yararlanılacaktır. Sınıflandırma algoritması görüntü işleme kapsamında Python programlama kullanılarak örneklenmeye çalışılacaktır.

5)Bayesian Sınıflandırması

Sınıflandırmanın genel amacı bir nitelik değerini,diğerlerini kullanarak belirlemektir. Veri dağılımına göre bir model elde edilir. Elde edilen bu model başarımı belirlendikten sonra niteliğin bilinmeyen değerini tahmin etmek için kullanılır.
Bayes sınıflandırmasında; * Niteliklerin hepsi aynı derecede önem sahibi * Nitelikler birbirlerinden bağımsızdır; yani bir nitelik değeri diğer bir nitelik değeri hakkında bilgi içermemektedir. Çalışmada kullanılacak sınıflandırma renkler üzerinden gerçekleştirilecektir. Piksel değerinin gölge olarak nitelendirilmesi için o pikselin ve genel görüntü üzerinde yapılacak olasılık işlemlerinin sonuçlarına göre karar verilecektir.

6)OTSU EŞİKLEME

Siyah beyaz görüntüler görüntü üzerinde belirli dizilerin ya da şekillerin arandığı uygulamalarda işlem yükünü hafifletmek veya görüntü üzerinde mantıksal işlemleri hızlandırmak için kullanılırlar. Adını metodu geliştiren Nobuyuki Otsu’dan almıştır. Normalde bir gri görüntüyü ikili biçime çevirmek için izlenecek yöntem oldukça basittir. Bir eşik değeri belirlenir ve bu eşik değerin üzerindeki renkler beyaza, altındaki renkler siyaha dönüştürülür. Ancak tüm görüntüler aynı niteliklere sahip değildir. Sabit bir eşik değeri tüm görüntüler üzerinde kabul edilebilir sonuçlar üretemeyebilir. Dolayısıyla eşik değerin, resmin renk dağılımına uygun olarak belirlenmesini sağlayacak bir yönteme ihtiyaç duyulur.

Otsu metodu, gri seviye görüntüler üzerinde uygulanabilen bir eşik tespit yöntemidir. Gri tonlarda olan bir görüntü 0-255 arasında seçilecek olan bir T eşik değerine göre siyah beyaz görüntü oluşturulur. Bu işlem kısaca şu şekilde gösterilir:

3

Önemli olan nokta T değerinin doğru seçilmesidir. T değeri olması gerekenden büyük seçilirse, oluşturulacak olan yeni görüntüde gereğinden fazla beyaz piksel oluşacaktır. Küçük seçilirse de siyah pikseller fazla olmuş olacaktır.Seçilecek olan eşit değeri deneme yoluyla binlerce piksel için mümkün olmamaktadır. Bunun üzerine kullanılacak olan görüntü için eşik değerini hesaplayan algoritma Nobuyuki Otsu tarafından geliştirilmiştir. Geliştirilen otsu metodu eşik değerini görüntü üzerinden hesaplamaktadır.

Gri tonlu görüntüler üzerinde çalışmakta olduğunu belirtmiştik. Sadece renklerin görüntü üzerinde kaçar defa bulunduğuna bakarak hesaplamaları yapar. Bu yüzden önce görüntünün renk histogramı hesaplanır ve tüm işlemler histogram dizisi üzerinde yapılır.

Histogram: Bir resimdeki renk değerlerinin sayılarını gösteren grafiktir.

Otsu metodu kullanılırken görüntünün arka plan ve ön plan olmak üzere 2 renk sınıfı olduğu düşünülür. Bütün eşik değerleri için renk sınıflarının varyans hesaplaması yapılır. Varyans değerinin en küçük olmasını sağlayan değer, optimum eşik değeri olarak kabul edilir. Amaç iki sınıf arasındaki varyans değerinin maximum olmasını sağlayacak değerin bulunmasıdır.

Varyans: Dizi elemanlarının dizi ortalamasına olan uzaklıklarının karelerinin ortalamasıdır. Bu değer; dizi içinde var olan elemanların ortalamaya ne kadar yakın olduklarını gösterir. Varyans hesaplama formülü:

4

Verilen formülde Pr{Xi} ifadesi Xi değerinin gelme olaslığıdır. Düzgün dağılımlı N boyutlu dizi için bu değer 1/N dir. MxN lik görüntü için ise bu değer; histogram dizisi hesaplandıktan sonra i tonunun gelme olasılığı histogram[i]/(MxN )’dir.
Sınıflar arası varyans;

5

Formülü ile hesaplanır.
W değişkenleri→ sınıf yoğunlukları µ değişkenleri→ağırlıklı sınıf ortalamaları
olarak ifade edilmektedir.

6

X(i) nin i. Renk seviyesi yukarıdaki formüllerle hesaplanmaktadır.
Anlaşılır olması açısından aşağıdaki örneği inceleyelim:

7

Yanda gösterilmiş olan şekilde gri tonlamaları olan bir görüntünün 6 kısımdan oluşturulmuş histogramı bulunmaktadır.

Resim 8

Arka plan renk sınıfının değerleri hesaplanacaktır:

9
10

Aynı işlem ön plan renk sınıfı için tekrarlanır:

11

Elde edilen değerler sonucu sınıf varyansı:

12

7)Histogram Dengeleme/Eşitleme ile Gölge Tespiti

7.1) Histogram Nedir?

Matematiksel olarak histogram; gruplandırılmış bir veri dağılımının sütun grafiğiyle gösterimidir. Görüntüde ise her piksel seviyesini gösteren bir ölçüttür. Histogram grafiklerine bakılarak bir görüntüde parlaklık durumu veya görüntünün tonlamaları hakkında bilgi edinilebilmektedir. Aşağıda görüntüler ve histogram grafiklerinin örnekleri yer almaktadır.

re
14

Tabloların yatay ekseni gri değer aralıklarını düşey eksenler ise bu aralıklardaki piksel sayısını göstermektedir.

7.2)Histogram Dengeleme

Bir görüntüdeki renk değerlerinin belli bir yerde kümelenmiş olmasından kaynaklanan, renk dağılımı bozukluğunu gidermek için kullanılan bir yöntemdir. Histogram matematiksel olarak aşağıdaki şekilde gösterilebilir. →h(rk )=nk

rk : k’nıncı parlaklık değeri nk : k nıncı parlaklık değerinin görüntüdeki sayısı

r15

8-bit parlaklıklı görüntüde 256 gri seviye vardır. Örnek olarak tüm değerler ilk 100 değerde toplanırsa renkleri fark etmek zorlaşmaktadır.
Dönüştürülmüş ve orjinal olan histogramlar grafiklerde görüldüğü üzere olasılık yoğnluğu olarakta gösterilebilmektedir.

r16

Görüntü histogramı incelendiğinde ani artışlar ton grup aralıkları olarak ifade edilebilmektedir. Görüntüde var olabilen bu kısımlar gölge olarak belirlenerek gerekli işlemler yapılabilmektedir.

Sayısal görüntü işlemede en basit ve en çok kullanılan araçlardan birisi gri seviyesi histogramıdır. Bu fonksiyon görüntünün gri seviyesi içeriği hakkında bilgiler elde edilmesini sağlar. Histogramdan elde edilebilecek bazı bilgiler:

  • Koyu bir görüntünün histogram grafiğinin düşük gri seviye bölgesine yığılacağı açıktır.

  • Parlak (Açık renk) düzgün bir görüntünün histogram grafiğinin büyük gri seviye bölgesine yığılacağı açıktır.

  • Eğer histogram bir bölgeye yığılmış ise ( yani gri sviye ekseninin belirli bir bölgesine) bu görüntünün kontrastı kötüdür denir.

  • İyi kontraslı bir resmin histogram grafiği tüm gri seviye değerlerine eşit yayılmış olduğunu açıklar.

Görüntüdeki gölgenin yumuşatılması için gerçekleştirilecek işlemler bu işlemlerle benzerlik göstermektedir. Yani gölge olarak belirlenen bölgenin yani piksellerin renk değerlerinin görüntünün geneline uyarlanmasıdır.

7.3) Histogram Eşitleme

İdeal olarak Histogram eşitleme; Giriş histogramını, her gri seviyesinde eşit piksel sayısına sahip bir histograma dönüştürme işlemi gibi düşünülebilir. Bu pratikte mümkün değildir. Bu yöntem histogramı dar olan resimler ya da resim içindeki bölgeler için daha iyi sonuç verir. Yani Histogram eşitleme renk değerleri düzgün dağılımlı olmayan resimler için uygun bir görüntü iyileştirme metodudur. Resmin tümüne uygulanabileceği gibi sadece belli bir bölgesine de uygulanabilir. Tüm resme uygulanırsa global histogram eşitleme, resmin belli bir bölgesine uygulandığında ise lokal histogram eşitleme adını alır.

Histogram eşitlemenin özeti olarak;

r3

Bu formülü uygulama adımlarına dökecek olursak;
. Resmin histogramı bulunur (her gri seviye için piksel sayısı grafiği).

  1. Histogramdan yararlanılarak kümülatif histogram bulunur. Kümülatif histogram, histogramın her değerinin kendisinden öncekiler ve kendisinin toplamı ile elde edilen değerleri içeren büyüklüktür.

  2. Kümülatif histogram değerleri normalize edilip (toplam piksel sayısına bölünerek), yeni resimde olmasını istediğimiz max. renk değerleri ile çarpılır, çıkan değer tam sayıya yuvarlatılır. Böylelikle yeni gri seviye değerleri elde edilmiş olur.

  3. Eski (Orijinal) gri seviye değerleri ile; 3.adımda elde edilen gri seviye değerleri biribirine karşılık düşürülür ve yeni histogram grafiği çizilir.

n: giriş görüntüsündeki toplam piksel sayısı (n0+n1+…….+nL-1 = n)
nj (nk ): j. gri seviyedeki piksel sayısı
L: mümkün olan (veya istenilen) toplam gri seviye sayısı( 8 bit renk derinliğinde 255 v.b)
sk : Daha iyi kontraslı bir görüntü elde etmek için gri seviye dönüşüm değeri.
Amaç; imgedeki düşük görünürlüğü iyileştirmektir.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment