görüntüyü okuyalım, gösterelim ve inceleyelim:
>> gr = imread('c:/wrm.jpg');
>> imshow(gr)
>> imshow(gr)
arka plandan kurtulmak için renk kanallarını yukarıda belirtilen araçla inceleyelim. arka plan renginin değeri gri tonlarda 160 - 170 aralığında. solucanların silüetleri ise gri tonlarda 100'den başlayıp 70'e kadar iniyor (aşağıdaki ekran görüntüsünü inceleyiniz). bilindiği üzere imread fonksiyonunun dönüşü matris biçiminde oluyor ve matrisler üzerinde mantıksal işlem yapılabiliyor.
görüntüyü tam anlamıyla gri tonlamalı hale çevirelim ve arka plandan kurtulalım:
>> sb = rgb2gray(gr); % görüntünün renk duzeni RGB'den gri tonlamalı hale çevriliyor
>> harita = sb < 150; % 150 değerinin altındaki pikseller sıfırlanıyor
>> imshow(harita)
>> harita = sb < 150; % 150 değerinin altındaki pikseller sıfırlanıyor
>> imshow(harita)
ekran görüntüsü:
yukarıdaki görüntü incelendiğinde istenmeyen küçük piksel topluluklarının olduğu fark edilecektir. bu istenmeyen piksel topluluklarından "64 adet pikselden daha az sayıda piksele sahip piksel topluluklarının kaldırılması" koşuluyla kurtulunabilir:
>> harita = bwareaopen(harita, 64);
>> imshow(harita)
ekran çıktısı:>> imshow(harita)
artık piksel gruplarını etiketleyip solucan sayısını bulabiliriz:
>> [etiket, sayi] = bwlabel(harita);
>> sayi
sayi =
4
>>
>> sayi
sayi =
4
>>
eğer sadece 3. solucanı görmek isterseniz:
>> imshow(etiket == 3) % etiket matrisinde değeri 3 olan elemanlar
>>
ekran çıktısı:>>
çok basit olan bu örnek umarım sizin için faydalı olmuştur. örnek sizi yanıltmasın, çok daha karmaşık işler yapabilirsiniz...
Emeğinize sağlık. Anlatım ve örneklemeleriniz konuyu tam olarak kavramamı sağladı.
YanıtlaSilNe demek... Eğer bir problemle karşılaşırsanız bildirmeniz yeterli, elimden geleni yaparım.
SilÇalışmanızda başarılar dilerim.
Slm kardeşim benim tez ödevim warda elektronik elemanları tanıtıcam.(direnç kondansatör,transistör) elemanların resimlerini çektim görüntüyü binary yaptım imfill ile küçük noktaları kaldırdım temiz bi siyah beyaz görüntü elde ettim.şimdi asıl soracağım bu temiz resimi nası etiketliyeceğim ? başka bi elemanın resmini çekip onunda resmini binary ve imfill işlemrini yaptıkdan sonra karşılaştıracağım eğer benziyolarsa bu direnç yada kondansatör, transistör diyecek. çok genel bi proje değil pro bi şey olmayacak sadece benim seçtiğim 3 adet eleman tek tip olarak bunları gösterip tanıtsam yeterlidir.örneğin için de tşk ler
YanıtlaSilYukarıda etiketleme örneği var (?)
Silelinize sağlık çok yararlı oldu.
YanıtlaSil