ブログ@kaorun55

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

RealSense R200の顔の機能をUnityで使う

RealSenseの中距離タイプであるR200をUnityで使うときに、顔を使おうとすると初期化でエラーになります。SDKのバージョンはR4です。

f:id:kaorun55:20151101211926p:plain

これはR200の顔機能では「顔の向き」および「表情」が利用できないのですが、Unityプラグインが「顔の向き」および「表情」を有効にしているためです。

この2つを無効にすることで、Unity上でR200の顔機能を使えるようになります。

f:id:kaorun55:20151101211714p:plain

顔だけのサンプルが入っていないので、上記のように顔の特徴点を表示するものを作りました。

こちらの「RealSenseR200Unity」以下がプロジェクトになります。

github.com

コードの変更点

プラグインを入れたあとに「RSUnityToolkit\Internals\RealSenseInput」にある「SenseToolkitManager.cs」を変更します。

Unityに限らず、faceConfigurationを使う場合、pose.isEnabledは明示的にfalseにする必要があります。

顔の向きを無効にする

faceConfiguration.pose.isEnabled = true;を

faceConfiguration.pose.isEnabled = false;に

表情を無効にする

ExpressionsConfigurationを使っている部分をコメント化(または削除)する。

// R200では表情は未サポート
//PXCMFaceConfiguration.ExpressionsConfiguration expressionConfig = faceConfiguration.QueryExpressions();
//expressionConfig.Enable();
//expressionConfig.EnableAllExpressions();

周辺のコード

gist.github.com

 

R200の概要情報

R200の全体感はこちらをご覧ください。

www.buildinsider.net