Bir Bilgisayar Mühendisi İçin Programlama Dili, Öğrendiklerini Sınadığı, Deneyler Yaptığı Bir Labaratuardır. Ve Mühendisler Deneylerini, Kestiremedikleri Sonuçları Gözlemlemek İçin Değil, Öngördükleri Sonuçları Doğrulamak İçin Yaparlar...
  Genişletme ve Aşındırma
   Genişletme(dilation) ile başlayalım. Genişletme, resimdeki nesneler arasındaki boşlukları küçültür, nesneleri genişletir. Böylece nesneler birbirine yaklaşır. Nesneler içerisindeki boşluklar dolar. Genelde 3x3 matrisin resim üzerinde gezdirilmesi ve matris ile zemin arasında bazı mantıksal işlemlerin uygulanması ile yapılır. Ancak daha kolay ve hızlı olması açısından kendi yöntemimi yazacağım. Tüm pixelleri dolaşacağız. Üzerine geldiğimiz her pixel için; eğer bu pixel 1 ise pixelin bir solundaki, bir üstündeki ve sol-üst çaprazındaki pixele de 1 diyoruz. Burada 1 değerinin siyahı, 0 değerinin beyazı temsil ettiğini hatırlayalım. Şimdi elimizde soldan ve üstten birer pixel genişlemiş bir resim var. Ama genişletme tamamlanmadı. Çünkü aynı şekilde sağdan ve alttan da genişletme yapmamız lazım. Bu yüzden tersten giderek aynı işlemi tekrarlayacağız. Normalde resim üzerindeki koordinat ekseni, gerçek koordinat ekseninin y=0 eksenine göre simetriği durumunda. Biz bunu tersine (yani aslında düzüne) çevirip aynı işlemi tekrar uygulayacağız. Tersine çevirmekten kastım x yerine artık resimgenisligi-x, y yerine de resimyuksekligi-y değerini işlemek. Ve böylece genişletme işlemimiz tamamlanmış olacak.

   Aşındırma(erosion) ise binary resim üzerinde bulunan görüntünün aşındırılmasını ve küçültülmesini sağlar. Bu işlemin sonucunda, nesneler birbirinden uzaklaşır, ufalır ve incelir. Yine genelde 3x3 matrisin resim üzerinde gezdirilmesi ve matris ile zemin arasında bazı mantıksal işlemlerin uygulanması ile yapılabilir ama yine buna uymayacağız. Yukardaki işlemin tam tersini yapacağız. Herşey aynı, sadece pixelin 1 olma durumunu değil, 0 olma durumunu arayacağız ve pixelin 0 olması halinde, bu pixelin bir solundaki, bir üstündeki ve sol-üst çaprazındaki pixelin de 0 olmasını sağlayacağız.

   Açma-kapama da bu işlemlerin arka arkaya yapılması ile gerçekleştirilir. Açma(opening), resme önce aşındırma sonra da genişletme uygulanmasıdır. Kapama(closing), resme önce genişletme sonra da aşındırma uygulanmasıdır.

Açma(opening) İşlemi

   Bu yöntemleri binary seviyede resimler üzerinde uygulamamız lazım, başka bir başlıkta nasıl binary seviye dönüşümü yapılacağını yazmıştım.

   Bu arada yöntemlerin en sık kullanıldığı konulardan örnek vermeye çalışıyorum. Bu yüzden sürekli resim işleme tekniklerinin sık kullanıldığı plaka tanıma amaçlı programlardan örnekler veriyorum ve sürekli aynı araba resmi :D ...
 
Okunma Sayısı: 707
Yayınlanma Tarihi: Blogun eski sürümü ile yazılmış, tarih kaydı bulunmuyor...
Anahtar Kelimeler: görüntü, resim, işleme, genişletme, dilation, aşındırma, erosion, açma, opening, kapama, closing

Onaylı yorum bulunmuyor.
Yorum/Görüş Bildir
Yorumları html kodu veya özel karakter kullanmadan, yazım kurallarına
dikkat ederek ve düzgün bir Türkçe kullanarak yazalım...
 
    Atasoy Blog v3.0 © 2009-2010 Hüseyin Atasoy | Tema Tasarımı: Hüseyin Atasoy
AtasoyWeb 1 yaşında, bu tema benden ona doğum günü hediyesi :)    
Programlama Günlüğü > Dijital Sinyal İşleme > Görüntü İşleme > Genişletme ve Aşındırma
Menü