2016年4月28日 星期四

Kinect初體驗

使用Kinect toolkit玩遊戲
FAAST


WEEK10-kinect




1.下載KINECT http://120.125.70.53

2.IMPORT


3.確認安裝


4.程式碼
import SimpleOpenNI.*; SimpleOpenNI openni; void setup(){ size(640,480); openni=new SimpleOpenNI(this); openni.enableRGB(); openni.enableDepth(); } void draw(){ openni.update(); image(openni.rgbImage(),0,0,320,240); image(openni.depthImage(),0,240,320,240);
}

5.成果


6.程式碼
import SimpleOpenNI.*;
SimpleOpenNI openni;
void setup(){
  size(640,480);
  openni=new SimpleOpenNI(this);
  openni.enableRGB();
  openni.enableDepth();
  openni.enableleUser();
}
void draw(){
openni.update();
image(openni.rgbImage(),0,0);
image(openni.depthImage(),0,240+120,320/2,240/2);
}



7.成果


8.範例 tool





















02160740_莊鎧旭_Week10

『OpenKinect』眾高手的努力,所以驅動程式不是太大的問題,很久以前就已經能分別在 Linux、Windows 和 Mac 上驅動 Kinect。不過雖說如此,最困難的還是在於辨識演算法的相關設計,對於開發人員來說,你不過就是能得到攝影機的影像,就如同從 Webcam 上得到一樣,其他的圖學運算以及應用還是要自己動手。


當然,如果 Kinect 只是和一般 Webcam 一樣,那新聞媒體和許多人對他的誇讚,就太言過其實。其最大的不同在於,Kinect 有深度感測,這意味著我們可以得到實際的空間資訊,以工程的方式,大大減少辨識演算法的難度,並提升了辨識系統的精準度。

這次的嘗試,焦點放在辨識演算法之上,便開始思索各種方案。過程中,試了數種別人已經開發好的函式庫,都不甚滿意。倒不是效果不好,而是系統需求太大,開發語言大多採用  Java ,所以需要安裝一卡車的模組程式以及 JVM。有些更是對 Linux 的開發者不夠友善,或開發支援不夠完整。無論哪一種現有方案,都不足以讓筆者可以安心建構在上面然後開發下去,因為產品化和易移植性,對筆者來說是相當重要的考量,不是只要學術驗證而已。所以最後決定,自己手動設計演算法,採用 C/C++。

經過這幾天睡前的努力,可以看到開發過程中的截圖,演算法初步已經能辨識手掌,並抓取指尖位置,精準度已達可用的程度。接著,只要多做些簡單的開發,撰寫 X11 輸入裝置驅動程式,就能實際以多點操控的型式,操作螢幕上的所有應用程式。

此外,這裡有一些心得,Kinect 深度感測的數值範圍是 0 ~ 2047,至於得到的深度數值如何換算成實體距離,這邊有個公式可以換算成公尺(Meter)的型式:
Real Distance = 1.0 / (raw_depth * -0.0030711016 + 3.3309495161)

期中考後 第一次上課
先玩了一下頭盔
很酷
沒玩過

再來就是期末要用的
kinect v1.8
下載有點久
processing  要 import  SimpleOpenNI


WEEK10_02160136_陳威志

第一節課(Install kinect)

1.體驗vive,hololens
2.安裝kinect

要先安裝 openni


然後要安裝 kinect 的sdk





                                    第二節課(基礎kinect)

3.讓kinect能夠使用並顯示出資訊


import SimpleOpenNI.*;

SimpleOpenNI show;

void setup()
{
   size(640,480);

   show=new SimpleOpenNI(this);

   show.enableRGB();

   show.enableDepth(); 
}

void draw()

{

   show.update();

    image(show.rgbImage(),0,0,320,240);

    image(show.depthImage(),0,240,320,240);

}


4.將使用者變顏色

增加   show.enableUser();

修正  image(show.userImage(),0,240+120,320/2,240/2);

import SimpleOpenNI.*;

SimpleOpenNI show;

void setup()
{
   size(640,480);

   show=new SimpleOpenNI(this);

   show.enableRGB();

   show.enableDepth(); 

   show.enableUser();

}

void draw()

{
 show.update();

image(show.rgbImage(),0,0);

image(show.userImage(),0,240+120,320/2,240/2);


}


                          第三節課(用別人軟體玩玩看找想法)

1.先下載 Kinect for Windows Developer Toolkit v1.8

2.試著玩玩看Kinect Fusion Basics D2D 

02160040_周子伍, Week10

 今天主要是載kinect sdk1.8結合processing


然後下面是kinect的範例和實作的測驗



當中老師還辛苦的架了HTC VIVE給我們體驗
還有OCULUS頭盔給我們使用
真的覺得系上有這些資源很棒讓人會想珍惜 !


以下為程式碼:
import SimpleOpenNI.*;

SimpleOpenNI  context;

void setup()
{
  size(640, 480);
  context = new SimpleOpenNI(this);  
  context.enableRGB();
  context.enableDepth();
  context.enableUser();
  
}  

void draw()
{
  context.update();
  image(context.rgbImage(),0,0);
  image(context.depthImage(), 0,240, 320,240);
  image(context.userImage(),0,240+120,320/2,240/2);
}
下面這個是faast 不用程式碼就可以直接用kinect找到骨架 
畫面是黑的是因為我先把kinect收起來了 。








Week10__02160430 陳繁鑫

安裝Kinect SDK

下載網址 :
https://www.microsoft.com/en-us/download/confirmation.aspx?id=40278


Processing 安裝kinect函式庫




Microsoft HoloLens 體驗

HTC Vive 體驗




下載 Kinect Toolkit 有很多實用範例!!
https://www.microsoft.com/en-us/download/details.aspx?id=40276
老師推薦:KinectFusion(必玩)



下載 FAAST
http://projects.ict.usc.edu/mxr/faast/