Programlama

Flash Motion Tracking

02.10.2009

Selam gençlik bugün size görüntü yakalama teknolojisinin Flash'da nasıl uygulanacağını anlatacağım... :)

Şimdi hacı bu flash'da biliosun webcam desteği var. Bu webcam desteğini ve bitmapdata olayını kullanarak hareket algılayan bir sistem yazabiliyorsunuz. Bunun için yazılmış hazır kütüphaneler var ve ben de şu adresteki olayı kullanarak mutlu sona ulaştım :)

http://blog.soulwire.co.uk/flash/actionscript-3/webcam-motion-detection-tracking/

Efenim olayın mantığını anlatayım sizlere. Şimdi bu olayda webcam'den alınan görüntüyü bir MovieClip içine koyuyoruz. Bilen bilir Flash'da MC'lerin BitmapData'larını alabiliyoruz. İşte bu olayda da old ve new şeklinde iki adet bitmapdata alıp bunlar arasındaki farka bakıyoruz (blendMode'u "difference" ile birbirlerinin üzerine draw ederek). Yalnız bunu yazmak da kallavi bir olay olacağından (öyle pixel pixel kontrol yapan bir kod çok yavaş çalışır) bir trick uyguluyoruz. Bunu kim bulmuşsa çok takdir ettim zaten kendisini :) Bu bitmapdatalara hacı Çeşitli efektler uyguluyoruz ki bunlardan en barizi "treshold" denen efekt. Bu efekt sayesinde Flash'ın BitmapData fonksiyonu olan "getColorBoundsRect" ile bir resimdeki belli renge sahip olan kısmın Rectangle değerini alıyoruz ve bu da hangi dikdörtgen bölgede hareket var bize onu veriyor.

Hadi kolay gelsin gençler :)

Bunları da Oku, Sorucam

Yorum Yok

Yorum Yaz