230 likes | 611 Views
MICROSOFT KINECT İLE ÖRNEK BİR UYGULAMA: PİYANO. Ahmet Ali SÜZEN - Yrd. Doç. Dr. Kubilay TAŞDELEN. 25.01.2013. İçindekiler. Kinect Literatür Özeti Yapılan Çalışmalar Windows Presentation Foundation Çalışmanın Yapısı Çalışmanın Kazanımları. Microsoft Kinect Nedir ?.
E N D
MICROSOFT KINECT İLE ÖRNEK BİR UYGULAMA: PİYANO Ahmet Ali SÜZEN - Yrd. Doç. Dr. Kubilay TAŞDELEN 25.01.2013
İçindekiler • Kinect • Literatür Özeti • Yapılan Çalışmalar • Windows Presentation Foundation • Çalışmanın Yapısı • Çalışmanın Kazanımları
Microsoft Kinect Nedir ? Herhangi bir kontrol çubuğu veya kumanda kullanmadan, sadece eklem hareketleriyle oyun oynayabilmekti.
Kinect’inFiyatı İlk Olarak 4 Kasım 2010'da, Kuzey Amerika'da - 199 $ Türkiye'ye 1 Mart 2011 - 400 TL
Kinect’in Algılama Noktaları Kinect kameraları aynı anda 2 farklı kişinin 20 farklı bölgesini aktif olarak algılayıp izleyebilmektedir.
Kinect’in Özellikleri • RGB kameranın özellikleri ; • 1.3 megapixel renkli kamera • MicronMT9M001 • IR (Infrared) geçiren filtre ile donatılmış • 32-bit renk ve 30 frame/sn • 640 x 480 pixel resim çözünürlüğüne sahiptir. • Sensör; • Renk ve derinlik algılama lensleri • Ses mikrofon düzeni • Sensör ayarlaması için tilt motoru • Görüş Alanı; • Yatay görüş alanı: 57 derece • Dikey görüş alanı: 43 derece • Fiziksel Tilt alanı: 27 derece • Derinlik sensörü alanı: 1.2m - 3.5m • Data Akışı; • 320x240 16-bit derinlik - 30 frame/sn • 640x480 32-bit renk - 30 frame/sn • 16-bit audio - 16 kHz
Kinect için Nyko’s Zoom Kinect’in insanları algılaması için 1.2m - 3.5m arası bir mesafe olması gerekmektedir. Nyko’sZoom ile ;
Sony Motion Detector Yeni bir denetleyici ile donatılmış son derece duyarlı hareket sensörleri bulunan bir cihazdır.
Literatür Özeti Kinect kullanılarak yapılmış akademik çalışmalar • Derinlik algılama • İşaret dili algılama ve metine dönüştürme • İnsan iskelet yapısı izleme • Eş zamanlı 3D model çıkarma • Fizik tedavi uygulaması • İnsansız helikopter kullanımı ve eğitimi • İnsan vücudunun 3D taranması • Kuka robot kontrolü • Komutları Metine Dönüştürme
01 Los Angeles Auto Show, Toyota Prius and the Kinect WINTER Aralık -2012 , Los Angeles Auto Show: Toyota araba tanıtımında Kinect kullanılarak oynanabilen bir oyun geliştirdi. Otomobil severler Toyota arabalarını bu oyun ile test edebilme imkanı bulmuştur. Template
02 Kinect ile Kağıt,Makas , Taş Oyunu
03 Faceshift, a Kinect based real time facial movement package Faceshift projesi : Kinect teknolojisi kullanılarak gerçek zamanlı yüz hareketi modelleme uygulaması yapılmıştır.
04 Kinect for Windows at Convergence of Style and Technology for New York Fashion Week New York'ta High-Tech firmasının desteği ile sanal giyinme odası modaseverlerle buluştu.
05 CocaCola-Lets Dance For Free Coke Kola satış makinaları içerisine Kinect kamera entegre edilmiştir. Dans yapanlara ücretsiz kola verilmektedir.
Çalışmanın Yapı Taşları WPF Piyano Kinect Kinect SDK
WPF (Windows Presentation Foundation) Nedir ? .NET Framework 3.0 ailesi ile birlikte lanse edilmiş,yeni nesil kullanıcı arayüzü geliştirme ve görüntüleme platformudur. • XAML isimli işaretleme dili çıkmıştır. • Direct-X altyapısı kullanmaktadır. • 3D kütüphanelerini içerisinde bulundurur. • WPF piksel tabanlı değil vektörel tabanlı bir teknolojidir. • Silverlight isimli teknolojisi ile web ve mobil alanlar üzerinde tüm yeteneklerini göstermektedir.
Gerçekleştirilen Çalışma Maliyet gerektirmeden eğlenceli bir şekilde piyano kullanılması sağlanacaktır. Kullanıcı örnek piyano uygulamasını elleri ile kullanabilmektedir.
Gerçekleştirilen Çalışmada Kullanılanlar • Adobe Photoshop CS6 • Visual Studio 2010 üzerinde WPF teknolojisi • Kinect SDK
Gerçekleştirilen Çalışmada Kullanılanlar Microsoft.Research.Kinect.Nui Runtime Kinect ile insan hareketlerinin algılanması için kullanılan kod bloğu ; void runtime_SkeletonFrameReady(object sender, SkeletonFrameReadyEventArgs e) { SkeletonFrame skeletonSet = e.SkeletonFrame; SkeletonData data = (from s in skeletonSet.Skeletons where s.TrackingState == SkeletonTrackingState.Tracked select s).FirstOrDefault(); if (data != null) { KonumAta(leftHand, data.Joints[JointID.HandLeft]); KonumAta(rightHand, data.Joints[JointID.HandRight]); } }
Gerçekleştirilen Çalışmada Kullanılanlar Piyona klavyesinin her tuşu HoverButton ; <Controls:HoverButton x:Name="kinectButtone" ImageSize="100" ImageSource="/Resources/Ekey.png"/> Butona el ile tıklandığında gerçekleşen olay; kinectButtone.Click += new RoutedEventHandler(kinectButtone_Clicked); void kinectButtone_Clicked(object sender, RoutedEventArgs e) { SoundPlayer player2 = new SoundPlayer("pianoekey.wav"); player2.Play(); }
Gerçekleştirilen Çalışmanın Kazanımları Yüksek maliyeti yüzünden bir çoğumuzun tercih etmediği piyanoyu sanal olarak kullanmaya imkan sağlamak. Kinect ile ilgili literatür ün büyük çoğunluğu ingilizce kaynaklardır. Literatüre Türkçe kaynak olarak girerek Kinect alanındaki uygulamalara farklılık kazandırması hedeflenmektedir. WPF uygulamalarına somut bir örnek olacaktır.
MICROSOFT KINECT İLE ÖRNEK BİR UYGULAMA: PİYANO TEŞEKKÜRLER… Ahmet Ali SÜZEN, Yrd.Doç. Dr. Kubilay TAŞDELEN