公式SDKでUnity3dのKinect入力を使用することについて何か知っている人はいますか? 私はこれら 2 つを統合しようとするプロジェクトを割り当てられましたが、上司は私がオープン Kinect を使用することを望んでいません。Unity サイトからの最後のニュースは、Kinect SDK には 4.0 .Net が必要であり、Unity3D には 3.5 しかかからないというものでした。
回避策?それについて何か知っている場合は、リソースを教えてください。
Unity 用の OpenNI バインディングは、おそらく最善の方法です。NITE スケルトンは、Microsoft Kinect SDK よりも安定していますが、それでもキャリブレーションが必要です (PrimeSense は、キャリブレーションのないスケルトンを間もなく作成すると述べています)。
Kinect SDK から OpenNI へのバインディングがあり、Kinect SDK を SensorKinect のように機能させます。このモジュールは、KinectSDK キャリブレーションフリー スケルトンを OpenNI モジュールとして公開します。
https://www.assembla.com/code/kinect-mssdk-openni-bridge/git/nodes/
KinectSDK は足首と手首も提供しており、OpenNI はすでにサポートしているため (NITE はサポートしていませんでしたが)、足首と手首を含む Unity キャラクター リグを含むすべての OpenNI の機能は、キャリブレーションなしですべて機能します。OpenNI 用の KinectSDK バインディングは、NITE のスケルトンとハンド トラッカーの使用もサポートしていますが、1 つの注意点があります。NITE のジェスチャ検出は、Kinect SDK ではまだ機能していないようです。KinectSDK を NITE の handGenerator と共に使用する場合の回避策は、スケルトンフリー トラッキングを使用してハンド ポイントを提供することです。残念ながら、あなたの体がセンサーに見えない場合、手を追跡する機能は失われます.
それでも、NITE のスケルトンは、KinectSDK よりも安定していて反応が良いようです。
生の Kinect データはどのくらい必要ですか? 手足の関節を取得するなどの制約のある問題について、 TcpClientのような不可知論的な通信スキーマの使用について考えたことはありますか。単純な TCP サーバーを .net 4.0 で作成して、Kinect SDK にリンクし、30 ミリ秒ごとに必要な情報を含むパケットを送り出すだけです。次に、Unity で受信クライアントを作成します。別のSDKでも同様の問題がありました。私は Kinect を試したことがないので、私の提案はやり過ぎかもしれません。
リアルタイムの深度/色データが必要な場合は、おそらくパイプを使用して、少し高速なものが必要になる場合がありますか?