Bir bilgisayar mühendisi için programlama dili, öğrendiklerini sınadığı, deneyler yaptığı bir laboratuardır ve mühendisler deneylerini, kestiremedikleri sonuçları gözlemlemek için değil, öngördükleri sonuçları doğrulamak için yapar...

Otsu Eşik Belirleme Metodu

Gri seviyedeki bir görüntü ikili seviyeye indirgenirken kullanılabilecek en uygun eşik değerinin tespit edilmesini sağlayan bir eşik belirleme yöntemi.

Otsu Eşikleme Metodu, Örnekİlgili sayfa: OtsuEsikleme.dll

'Otsu' sözcüğünü ilk duyduğumda 'ot' sözcüğünden türediğini düşünmüştüm. Ama sözcük, metodu geliştiren Nobuyuki Otsu'nun soyadıymış :). Bunu baştan söyleyeyim...

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. Bu metod kullanılırken görüntünün arka plan ve ön plan olmak üzere iki renk sınıfından oluştuğu varsayımı yapılır. Daha sonra tüm eşik değerleri için bu iki renk sınıfının sınıf içi varyans değeri hesaplanır. Bu değerin en küçük olmasını sağlayan eşik değeri, optimum eşik değeridir.

Sınıf içi varyans değeri minimum değerinde iken sınıflar arası varyans değeri maximum değerinde olur. Sınıflar arası varyans değerinin hesaplanması daha az işlem gerektirdiğinden, yöntem koda dökülürken arka plan ve ön plan pixel sınıfları için sınıflar arası varyans hesaplanması, daha çabuk sonuç alınmasını sağlar.

Yöntem gri seviye görüntüler üzerinde çalışır ve sadece renklerin görüntü üzerinde kaçar defa bulunduğuna bakar. Bu yüzden önce görüntünün renk histogramı hesaplanır ve tüm işlemler histogram dizisi üzerinde yapılır...

Varyans

Varyans belli bir sayı dizisinin, bu dizinin aritmetik ortalaması etrafındaki dağılımının yorumlanabilmesini sağlayan bir ölçüdür. Varyans büyükse değerlerin dağınık ve kendi ortalamalarından uzak oldukları yorumu yapılır. Küçükse, değerlerin kendi ortalamaları etrafında çok dağılmadıkları anlaşılır.

Varyans aşağıdaki şekilde hesaplanır:
Varyans
Burada (Xi üssü) değeri ağırlıklı ortalamadır. Pr(Xi), ise olasılık fonksiyonudur. Bir görüntü üzerinde bir renk değerinin olasılığı basitçe, bu değerin resimdeki sayısının, toplam pixel sayısına bölümüdür. (Bir torbada 3 kırmızı 5 mavi top vardır. Rastgele çekilen bir topun kırmızı olma olasılığı kaçtır?, 3/(3+5) gibi).

Ağırlık, Sınıf İçi Varyans Ve Sınıflar Arası Varyans

Bir dizide bir elemanın ağırlığı, bu elemanın dizideki tüm elemanların toplamına oranıdır. Ağırlık, görüntünün kümülatif histogram dizisinin elemanları üzerinden hesaplanır. Örneğin {3,4,2,7} dizisinde 3. elemanın ağırlığı, (3+4+2)/(3+4+2+7) ifadesiyle hesaplanır.

A1 ve V1 ilk sınıfa, A2 ve V2 ikinci sınıfa ait ağırlık ve varyans değerleri iken sınıf içi varyans değeri şöyle hesaplanır:

A1*V1+A2*V2

A1 ve O1 ilk sınıfa, A2 ve O2 ikinci sınıfa ait ağırlık ve ağırlıklı ortalama değerleri iken sınıflar arası varyans değeri şu şekilde hesaplanır:

A1*A2*(O1-O2)^2

Başta bahsetmiştik; otsu metodunda sınıf içi varyansın minimum, dolayısıyla sınıflar arası varyansın maximum olması istenir. Ancak sınıflar arası varyansı hesaplamak daha az işlem gerektirdiği için daha mantıklı.

Her bir eşik değeri (0-255) için sınıf içi veya sınıflar arası varyans değeri hesaplandıktan sonra en küçük sınıf içi varyans ya da en büyük sınıflar arası varyans değerini veren eşik değeri en uygun değer olarak kabul edilir.

Son olarak yöntemin işe yaramadığı görüntüler olabildiğini de söyleyelim. Çünkü başta yapılan, renklerin iki sınıfa ayrılabileceği varsayımı doğru olmayabilir. Yöntemin, renkleri, az sayılarda tekrar edenler ve nispeten çok sayıda tekrar edenler olarak iki sınıfa ayırdığını söylemiştik. Yani, gözümüzde bir histogram grafiği calandırarak olursak, aslında histogram grafiğinin tek tepeli olduğu farzedilir. Grafik, optimum eşik değeri noktasından, çok sayıda tekrar eden renklerin yoğun olduğu bölge(yani aslında tepenin bulunduğu bölge) ve az sayıda tekrar eden renklerin yoğun olduğu bölge olmak üzere iki bölgeye bölünür. Ancak çok tepeli histograma sahip bir görüntünün arka planı ve ön planı temsil edecek iki pixel sınıfına ayrılması bu yöntem ile mümkün değildir. Bu yüzden bu yöntem böyle görüntülerde iyi sonuç verecek eşik değerleri tespit edemez.

Harici Bağlantılar

Sayfayı
Yayın tarihi: 17 Şubat 2011 Perşembe, 08:32
Anahtar kelimeler: otsu yöntemi, eşik belirleme, adaptif eşikleme

Yorum Gönder

 
Yorumunuzu -1. yoruma yanıt olarak gönderiyorsunuz. Yanıtlamayı iptal etmek için buraya tıklayabilirsiniz.

 

Yorumlar (2)

Ahmet Hayra
Yanıtla
26 Mayıs 2011 Perşembe, 15:55
#1

merhaba hocam sizin otsuesikleme.dll ve bağlantılıbilesenetiketleme.dll kütüphanelerini mantığını içinde nasıl işler yaptığını detaylı açıklybilir misiniz

Hüseyin Atasoy
Yanıtla
03 Haziran 2011 Cuma, 18:15
#2

Sitede bahsettiğiniz iki konu ile alakalı yazılar mevcut. Metotların detaylarını şu sayfalarda bulabilirsiniz: Otsu Eşik Belirleme Metodu, Bağlantılı Bileşen Etiketleme

 
 
Sayfa 39 sorgu ile 0.018 saniyede oluşturuldu.
Atasoy Blog v4 © 2008-2017 Hüseyin Atasoy