ブログ@kaorun55

HoloLensやKinectなどのDepthセンサーを中心に書いています。

「Kinect for Windows SDK Beta2」がリリースされています


日が変わった当たりで急に「Kinect for Windows SDK Beta2」がリリースされました。


システム要件はBeta1をほぼ変わっていないようですが、サポートするOSに Windows 8 Developer Preview が加わっています。詳しい要件は下記を参照してください(ちなみに、OpenNI+Xtion LIVEでもすでにWindows 8で動作することは確認しています)。

インストール

Beta1や、OpenNIなど他のドライバがインストールされている場合には、それらをアンインストールしてください。

変更点

細かい修正が結構入ってますが、基本的にはそれほど変わっていないみたいです。READMEの変更点をざっくり訳しました。間違いがあればご指摘ください。

Beta1 Refreshからの変更点
  • 骨格の追跡が大幅に向上
    • より正確なトラッキングの結果、精度が全体的に改善された
    • 骨格フレームの配信は低レイテンシになり、その結果高速になった
    • 骨格の追跡がマルチスレッド化され、複数のCPUコアを活用することができる
    • 2つのKinectsを使用する場合に、開発者がどちらのKinectに骨格を追跡させるかを指定できる
  • デバイスの状態が変わったことを管理、検出するAPIが追加された。 Kinectが抜かれたり、接続されたりしたときの状態や、電源が抜かれたときの状態を検出することができる。アプリケーションは、Kinectが接続されたときや、サスペンドから復帰したときに再接続を行うことができる。これらの処理はShape Game サンプルのコードを見ることが一番よい例である。
  • 開発者がWPF内でオーディオを使用する場合に、別のスレッドからDMOにアクセスする必要がなくなった。UIスレッドでKinectAudioSourceを作成することでコードを簡略化できる。
  • ドライバ、ランタイム、およびSDKは、Windows 8 Developer Preview用のデスクトップアプリケーションとして、正常に動作します。
  • SDKは、64ビットアプリケーションをビルドするために使用することができる。以前は、32ビットアプリケーションのみビルドできた。
  • NuiImageBufferは、MSR_NuiImageCamera.hで定義されているINuiFrameTextureに置き換えられた。そのためプロジェクト内でNuiImageBuffer.hを含める必要がなくなった
  • SDKのインストールの配置と、デフォルトの場所が変更されています。インストール先の環境変数は、%KINECTSDK_DIR%になり、デフォルトのインストール先は C:\Program Files\Microsoft SDKs\Kinect\v1.0 Beta2 になっている
  • サンプルコードの変更
    • 新しいC#のサンプルにKinectAudioDemoが追加された
    • 既存のサンプルが更新されている。一般的なC#のサンプルとして、KinectWpfViewersを見ることをオススメする
    • サンプルフォルダはSDKのインストールディレクトリにある。デフォルトでは C:\Program Files\Microsoft SDKs\Kinect\v1.0 Beta2\Samples。ZIPファイルになっているので、Program Filesフォルダ以外に解凍する
  • ドライバとランタイムの安定性と、パフォーマンスの向上。特にマネージAPI
既知の問題
  • zipファイルのサンプルソースファイルは、デフォルトでは読み取り専用。 Visual Studioでそれらを修正する場合は、確認を求められることになる。他のテキストエディタでは、そのファイルのプロパティを変更する必要がある。
  • Kinect for Windows DriverはIntel Core 5シリーズおよび、3400シリーズのチップセット付属のUSBホストコントローラなど、特定のUSBホストコントローラとの互換性の問題に遭遇した。Kinectを抜き差しするときに「デバイスの準備ができていません」と表示されるような問題が発生する可能性がある。この現象が起こった場合には、あなたのアプリケーションまたは、コンピュータを再起動する必要がある。

サンプル

サンプルはところどころ更新され、新たにKinectAudioDemoが追加されています。KinectAudioDemoはBeta1のSpeechサンプルに、音声方向が追加されたサンプルになっています。
また、複数KINECTKINECTの接続切断に対応したWPF版SkeletonViewerも入っています。

  • KinectAudioDemo
  • SkeletonViewer(WPF版)

感想など

ジェスチャーや仮想マシン対応はとくに追加されておらず、KINECTのデバイスアクセス機能の安定化と高速化がメインですね。
この感じだと、商用版もいまの延長上になりそうですね。