This study deals with the Microsoft kinect camera data streaming over internet. Accessing a kinect camera over internet is so popular nowadays. Many developer and research company are working on this hot topic and find several solutions. Most of this applications have some avantages and disadvantages. The main disadvantage of this applications is consuming network bandwidth heavily when transferring kinect data over internet. Because transferring whole of kinect data binds heavily mass of data to the network, so the developers of kinect applications should consider about this topic and should mine and comb out the unnecessary kinect data. This applications also directly access the kinect device from javascript and this approach only works for local applications and not support multiple kinecting display on one browser. There is no best case solutions for this kind of problems. In this study solutions have been found for this problems and disadvantages. Briefly ; for network bandwidth problems kinect data has been mined and unnnecesarry kinect data combed out and the necessary data converted in json format before streaming over network, and for multiple kinect support; application divided into two parts which are server side application and client side application and with the help of this approach some performance problems cleared and network bandwith problem also cleared before network streaming and also with this approach more than one kinect cameras data could streamed over network and displayed on a single web page. On the other hand; with the approach which is used at this study can be implemented for other depth streaming devices with just making modifications on server side application.
Bu çalışma Microsoft firmasının ürettiği kinect kameralarının ürettiği verilerin internet üzerinden işlenmesiyle ilgilenmektedir. Kinect kameralara internet üzerinden direk olarak erişmek bügünün teknoloji dünyası için popüler konuların başında gelmektedir. Çok sayıda yazılım mühendisi ve araştırma firmaları bu sıcak konu üzerinde çalışmaktadırlar ve kullanıcılara bununla ilgili çözümler sunmaktadırlar. Ancak bu çözümlerin avantajları ve dezavantajları bulunmaktadır. Bu dezavantajların başında kinect verisi internet üzerinden işlenirken kullanılan yoğun ağ bant genişliği problemidir, çünkü kinect kameraların ürettiği veriler direk olarak internet ortamı üzerinde işlenirken ağ üzerinde ciddi miktarda bir yük oluşturmaktadır. Bu nedenle kinect kameralar için yazılım geliştiren mühendislerin bunları dikkate alması gerekmektedir ve üretilen veriler internet ortamında işlenmeden önce gereksiz veriler ayıklanıp temizlenmelidir. Bu uygulamalar ayrıca kinect kamera verilerine istemci tarafında çalışan javascript kodları üzerinden eriştikleri için bu uygulamalar sadece lokal bilgisayarlarda çalışabilecek bir yaklaşım sergilemektedir ve birden çok kinect kamera verisinin aynı internet tarayıcısında görüntülenmesi konusu imkansız hale gelmektedir. Bu çalışmada uygulama geliştirmede karşılaşılan bu problemlere çözüm bulunmuştur. Özetle; ağ sistemlerindeki bant genişliğinin yoğun kullanılmasından kaynaklanan problemleri çözmek için kinect verileri internet ortamı üzerinde işlenmeden önce gereksiz veriler ayıklanmıştır ve uygulamalar için gerekli veriler ayıklandıktan sonra JSON formatına dönüştürülerek ağ bant genişliğinin mümkün olduğunca az miktarda kullanılması sağlanmıştır. Birden çok kinect kameradan alınan verilerin aynı anda senkron bir şekilde gösterebilmek için ise uygulama sunucu tarafı ve istemci tarafı olmak üzere iki alt program olarak yazılmıştır. Bu uygulama geliştirme yaklaşımı sayesinde birden çok kinect kamera verisi aynı internet tarayıcısında datalar ağ üzerinden ayrı ayrı işlenerek görüntülenebilecektir. Ayrıca bu geliştirme yaklaşımı sayesinde farklı firmaların ürettiği iskelet takip eden cihazlar için de sunucu uygulama tarafında küçük değişiklikler yaparak farklı cihazlar için de uygulama geliştirme altyapısı sağlanmış olur.