Kinect for Windows SensorとSDK正式版 - その1

2/2に販売が開始されたWindows専用のKinect for Windowsセンサー、そして同時にリリースされたKinect for Windows SDK1.0正式版に関する投稿です。

色々説明したいことがあるので、何回かに分けて説明していきます。一回目は、センサー、SDKの概要、変更点です。

先ず見た目。ロゴが変わっています。XBOX版の時は、XBOXというロゴが付いていましたが、シンプルに”KINECT”です。ケーブルがUSBケーブルになっているので、そのままWindows PCに挿入可能です。XBOXのコネクタは形状が異なるので、XBOXに挿入することは出来ません。Microsoftストアー、その他で販売しています。

https://www.microsoftstore.jp/Form/Product/ProductDetail.aspx?shop=0&cat=&swrd=kinect+%e3%82%bb%e3%83%b3%e3%82%b5%e3%83%bc&pid=GME0000142

2012年2月20日現在では、入荷待ちになってますね。

装備されているセンサー類やマイクは、XBOX版と同じです。一番の違いは、40cm~4mまでセンス可能になっているところです。
Windows PCで、このセンサーを使ったプログラミングを行うには、Kinect for Windows SDKを利用します。このセンサーとSDKの組合せで作ったアプリケーションや様々なソリューションは、商用利用が可能です。

Kinect for Windows SDKは、https://www.kinectforwindows.org からダウンロード可能です。ロゴの直下の右端の”DEVELOP"をクリックするとDOWNLOAD SDKと書かれたページが表示され、そこからダウンロードしてください。

…多分、このブログを読んでいる人の多くは、ベータ版の時からSDKをインストールしている人ばかりでしょうw。既にベータ版をインストールしている方は、一旦古いSDKをアンインストールしてください。それから、かなりの確率でSpeech SDKをインストールしている人も多かろうと…そんなマニアな方は、Speech SDKのアンインストールも忘れずに。

SDKをインストールすると、”Kinect SDK Sample Browser”というアプリケーションがインストールされます。早速起動してみましょう。

こんな画面が表示されます。ベータ版から比べると、APIはかなりブラッシュアップされて変わっているので、「待ちきれない!!」という人は、上から2番目の”Kinect SDK API Reference”をクリックして新しいAPIを堪能してください。Kinectセンサーが手元になくてもご覧になれます。

幸運にも手元にKinect for Windowsセンサーがある!!、という方、早速PCにつないで、Kinect Explorerの”Run Sample”というボタンをクリックしましょう。

このように、実画像+スケルトン、深度画像+スケルトン、その他諸々の情報が表示されるサンプルが起動されます。実画像+スケルトンの左下の数字は、一秒あたり30フレームで表示していることを示しています。深度画像+スケルトンはの左下にある数字は、1秒あたり、29フレームで表示していることを示しています。
その下に帯が二つあって、オレンジ色と赤い色でハイライトグラデーションされている表示がありますね。これは音声が聞こえている方向を表示しています。実画像の右下に青い縞のシャツの肩が映って(筆者です。人として認識されなかったのでスケルトン表示なし、深度情報で色なし)いますが、私が、「はい、ポーズとってね」との話し声をセンスしたことを示しています。

この画面には映っていませんが、左下のKinect Sensorと書かれた文字列の左下にある丸に下向きのアイコンをクリックすると、Kinectセンサーの仰角を操作するUIが表示されます。+10度ぐらい、-10度ぐらいの指示を繰り返すと、まるで、Kinectセンサーが肯いているような制御も可能です。勿論、仰角に合わせて、表示されている領域が上下します。テレビの演出で、カメラマンが出演者に肯いている画像が偶にありますが、あんな感じです。

Kinect SDK Sample Browserの、”Run Sample”ボタンの右横に、”Install”というボタンがありますが、ここをクリックすると、サンプルのコード一式が好みの場所に用意されます。Kinect Explorerは、Kinect SDKの機能をほぼ使っているので、このサンプルコードを熟読してみてください。

他にも、ベータの時から提供されていた、"Shape Game"、”Skeletal Viewer”もこのBrowserアプリから起動やインストールが可能です。他に、”Kinect Audio Demo(C#)”、”Record Audio(C#)、”Speech(C#)”、”Audio Capture Raw(C++)”、”MF Audio Filter(C++)”、”MicArray Echo Cancellation(C++)”といった、マイク機能を使うサンプルも用意されています。

残念ながら英語版だけなのですが、音声認識の機能もKinectは持っています。ベータ版までは、とってつけたように、自分でSpeech SDKをダウンロード&インストールする必要がありましたが、正式版ではSDKインストール時にSpeech SDKも一緒にインストールされるようになっています。

Kinect for Windows SDKで用意されているAPIは、C#やVB等で使えるManaged版APIと、VC++ で使えるNative版のAPIが用意されています。ちょっと試してみたい、とか、WPFを使ったリッチなUIをもったアプリを素早く作りたいといったような時は、Managed版APIを、信号処理などバリバリにやりたい、といったような場合はVC++向けNative版APIを使うと良いでしょう。

Managed版のAPIはかなりベータの時から変更されていますが、Native版のAPIはベータ版のときからほぼ変わっていないようです。

第一回目のポストはここまで。次回は、Managed APIの変更点を解説の予定です。