讓Scratch使用Kinect v2感應器來製作互動專題

幾年前看了下面的影片,是利用Kinect感測器來製作Scratch的專案,覺得好有趣。
後來我買了XBox One推出後,也同時推出第二代的Kinect,第一時間就給它入手了。
一開始只讓它充當簡易的3D掃描器。也一直等待著作者可以完成支援第二代Kinect的程式
果然作者有持續開發,終於推出了支援二代的「Kinect 2 Scratch」的中介程式。

Scratch and Kinect from Stephen Howell on Vimeo.

這個「Kinect 2 Scratch」的中介程式,目前是可以支援第一代和第二代的Kinect。
所需的安裝的相關元件有所不同,詳請參照以下的連結
官方網站:http://howell.azurewebsites.net/kinect2scratch/

我手邊有的是Kinect v2,所以就把過程記錄下來了。



硬體部份:

首先你所需具備的硬體是「Kinect v2」 (是配合XBox One那台的)
以及讓Kinect v2可以連接電腦的專屬連接組「Kinect Adapter for Windows



使用Kinect v2時,所連接電腦的配備需要比較好,另外Kinect v2會挑USB3.0的晶片組,這項出問題就無法使用

官網推薦的電腦配備是:
  • Windows 8 or 8.1, or Windows Embedded 8 
  • 64-bit (x64) processor
  • Physical dual-core 3.1 GHz (2 logical cores per physical) or faster processor 
  • USB 3.0 controller dedicated to the Kinect v2 sensor (一般推薦是Intel或Renesas的控制晶片,其它的合不合用需要實測) 
  • 4 GB of RAM
  • Graphics card that supports DirectX 11




軟體部份:

●Kinect for Windows SDK 2.0
這包括Kincet v2的驅動程式、相關的開發環境和附屬程式
下載網站:https://www.microsoft.com/en-ie/download/details.aspx?id=44561


● Scratch 1.4
目前只支援舊版的Scratch,將來可能會支援Scratch2 (是在 ScratchX上開發)
下載網站:https://scratch.mit.edu/scratch_1.4/


●Kinect2Scratch v2
這是主要的中介程式,下載後放到適當位置,是免安裝的執行檔 (我是放在桌面)
下載網站:http://1drv.ms/1EaeX9E



●另外作者所寫的Scratch草稿檔,和一些Scratch的DEMO遊戲檔 (我是放在Scratch專案位置)
草稿檔下載:Skeleton Scratch Project v2
DEMO遊戲檔下載: Example projects







關於電腦主機和Kinect匹配的測試:

●Kinect for Windows SDK 2.0安裝完成後,裝上Kinect v2的到電腦USB孔,會花一些時間,讓整個硬體掃描完成後才以開始。

可以執行一下「SDK Browser (Kinect for Windows) v2.0」
先測試一下Kinect的連線和感應狀況

程式開啟後,點選第一項「Kinect Configuration Verifier」右下角的Run來執行
這個主要是偵測電腦主機和Kinect匹配的狀況。


 ●目前我的電腦是偵測到2項可以不符標準,可以點進去每個項次的右側,進一步看看。


●目前USB雖然還是有些疑慮,但下方的影像和深度資訊後來是正常的,這樣連線還是OK
如果還是有問題,可以進一步連上檢測器所列的說明和連結論壇。

●關於Kinect v2和其SDK的使用,可以參考:
Kinect for Windows SDK v2 基本介紹 (Heresy's Space)
Kinect for Windows v2 C++ 程式開發 (Heresy's Space)





執行Kinect 2 Scratch,開始使用吧!

●已經預先將Kinect感應器以及Scratch安裝好了,我們直接執行「Kinect 2 Scratch



●如果連接成功的話,畫面下方會出現 「Kinect v2: Active」,
這時侯有人進入的話,可以看到它有即時偵測人的骨架動作
不要關閉這個畫面,要讓它在背景裡執行。


●接下來用Scratch直接開啟「Kinect2Scratch Skeleton v2」這個檔案





●按綠旗執行這個Scratch程式,如果偵測動作正常的話,就可以看到畫面上的人偶可以和你的骨架動作同步



●其它也可以試試DEMO的遊戲,體驗體感遊戲的魅力
接下來就可以使用它的草稿檔,去自製體感的專題。
(記得啟動Scratch後,一定要按綠旗執行「Kinect2Scratch Skeleton v2」這個檔案
讓它偵測一次人體的骨架動作)
之後在Scratch程式積木的偵測值,才有「人體骨架」的偵測值可以選擇,

共有25個點可以偵測 (每一個節點位罝,分為x, y, z ,三個在空間位置的值)
(圖片來源:msdn)

AnkleLeft 左腳踝
AnkleRight 右腳踝
ElbowLeft 左手肘
ElbowRight 右手肘
FootLeft 左腳
FootRight 右腳
HandLeft 左手
Hand Right 右手
HandTipLeft 左手尖端
HandTipRight 右手尖端
Head 頭
HipLeft 左髖關節
HipRight 右髖關節
KneeLeft左膝蓋
KneeRight右膝蓋
Neck 頸
ShoulderLeft 左肩
ShoulderRight 右肩
SpineBase 脊椎基底
SpineMid 脊椎中段
SpineSoulder 脊椎肩段
ThumbLeft 左手姆指
ThumbRight 右手姆指
WristLeft 左手腕
WristRight 右手腕


程式作者Stephen Howell所錄製的「Coding for Kinect with Scratch」教學課程

留言

張貼留言

這個網誌中的熱門文章

棉花糖挑戰 (Marshmallow Challenge)

自製簡易結構耐震震動台