やっとMicrosoftに春が来て、Kinectの公式SDK Betaがリリースされました。
6/17の夜中にリリースイベントがありましたが、寝てしまっていたので、明るくなってから皆さんの情報をもとに遊んでみました:-)
今日一日やってみた情報をつらつら書いてみます。
リンク
- ダウンロード:Kinect for Windows
- ドキュメント:Kinect for Windows
システム要件
ハードウェア要件
Software Requirements
- Visual Studio 2010 Express(その他のVS2010製品)
- .NET Framework 4.0
- C++ スケルトンサンプル
- Speech サンプル(x86のみ)
公式SDKのインストール
OpenNIと比べて、とても簡単です
こちらを参照してください:-)
まとめ?ブログ Kinect 2 -Kinect for Windows SDK 導入-
触ってみて感じたこと
Bad
- 対応OSがWindows 7のみ
- VMでできない
- ProgrammingGuide_KinectSDK.pdfの8ページに記述がある(@shin_jedi さん、ありがとうございます)
- クリーンインストール状態のWindows7ではインストールに失敗する
- Visual C++ 2010 Expressをいれたらインストールできたので、.NET Framework?
- OpenNI相当でNITEの部分はない
- ネイティブはC++ではなくC
- OpenNIにあるCapabilityや通知機能がない
開発環境
Visual Studio 2010 Premiumでの開発環境をこのしておきます。OSはWindows 7 x64、言語はC++です。
- プロジェクトを作成する(今回はC++のコンソールアプリケーション)
- 「プロジェクトのプロパティ|構成プロパティ|VC++ディレクトリ」を開き、下記のパスを追加
- 「プロジェクトのプロパティ|構成プロパティ|リンカー|入力」を開き、「追加の依存ファイル」に「MSRKinectNUI.lib」を追加
- 下記コードを入力する
// アクティブなKinectの数を取得するサンプル #include <iostream> // MSR_NuiApi.hの前にWindows.hをインクルードする #include <Windows.h> #include <MSR_NuiApi.h> void main() { int count = 0; ::MSR_NUIGetDeviceCount( &count ); std::cout << count << " kinects" << std::endl;; }
- 実行すると接続されているKinectの数が表示される
おまけ
ネイティブがCとCOMインタフェースでアレなので、C#と似た構成のC++ラッパをちょっと作ってみました。(飽きなければ)少しずつ実装してみます。
こんな感じで首ふりできるようになりました。
// 首ふり TEST( KinectTest, CameraElevationAngle ) { // SetAngle のあとに少し待たないと、GetAngleでエラーになる const int SLEEP_TIME = 1000; #ifdef ANGLE_TEST kinect::nui::Kinect kinect; kinect.Initialize( NUI_INITIALIZE_FLAG_USES_DEPTH_AND_PLAYER_INDEX ); // SetとGetの値は多少ずれる kinect.SetAngle( NUI_CAMERA_ELEVATION_MAXIMUM ); ::Sleep( SLEEP_TIME ); EXPECT_EQ( NUI_CAMERA_ELEVATION_MAXIMUM, kinect.GetAngle() ); kinect.SetAngle( NUI_CAMERA_ELEVATION_MINIMUM ); ::Sleep( SLEEP_TIME ); EXPECT_EQ( NUI_CAMERA_ELEVATION_MINIMUM, kinect.GetAngle() ); kinect.SetAngle( 0 ); ::Sleep( SLEEP_TIME ); EXPECT_EQ( 0, kinect.GetAngle() ); #endif }
コードはgithubに置いてあります
最後に
毎度のことですが、Kinectをコンピュータから使うときは、単体版を購入してください。
KinectはUSBインタフェースではないので、USB接続するためにはUSB/電源ケーブルが別途必要です。XboxとKinectの同梱版を買うとこの変換ケーブルがついていません。単体版では付いています。
もし同梱版を買ってしまったら、Microsoft Storeのサポートに電話するとUSB/電源ケーブル単体での購入も可能なようです(納期10日くらい)。
- 出版社/メーカー: 日本マイクロソフト
- 発売日: 2010/11/20
- メディア: Video Game
- 購入: 21人 クリック: 872回
- この商品を含むブログ (133件) を見る