Matlab’da imge üzerinde morfolojik etiketleme - bwlabel
|
Aslında şurada anlattığım konu olan etiketlemeyi ayrı başlıkta daha ayrıntılı anlatırsam iyi olur diye düşündüm. Etiketleme imgelerde ayrı ayrı duran nesneleri ayırt etmek için harika bir metotdur. Diyelim bir imgede bir otomobil ve bir insan var yanyana duran. Bu yöntem ile doğrudan insanı veya otomobili imgeden sökebilirsiniz. Bunu yapmak için imgemizin lojik olması gerekiyor. (Yani tek renk, 1 beyaz, 0 siyah şeklinde) Bunu da önceden belirlediğimiz bir eşik değere göre yapabiliriz. Mesela değeri 150′den büyük pikselleri 1′e, küçükleri 0′a çekersek imgeyi lojikleştirmiş oluruz.(tabi imge siyah beyazsa, değilse rgb2gray ile tek renk yapmalıyız daha öncesinde) Lojik imgede bulduğu 1′lerin etraflarını kontrol ediyor matlab, bağlantılı pikselleri o etikete dahil ediyor. Örnekleyelim; İmgemiz şöyle birşey olsun;
Bu imgede siyahlar 0, beyazlar 1.
bwlabel çıkışında imgedeki beyaz yerler şu değerleri alıyor;
Gördüğünüz gibi 3 farklı “nesne” buldu imgede. Ve hepsinin piksel değerlerini değiştirdi. Artık burada istediğim nesneye erişebilirim. Diyelim 3. nesneyi çekmek istiyorum.
Nasıl çalıştığını anladık. Kod ise şöyle; Genel kullanım:
Misal:
veya
Burada n, piksel bağlantı durumu oluyor. Yani 4 bağlantılı mı arasın (artı şekilde) yoksa daha yapışık durumları mı arasın (8) onu seçebiliyoruz. (4 ve 8den başka olmuyor tabi) |








11 Haziran, 2008 saat 18:24
[...] satırdaki nesne sayısını bulmak için etiketleme yöntemi uygundur. Ancak oldukça yavaş bir yöntem olduğu için satır satır taramak [...]