プロジェクトの 1 つで Kinect を使用することを検討していますが、すべてのライブラリの間で完全に迷っています。正確に何が何なのかわからない。最も重要なのは、OpenNI と OpenKinect に関するものを読んでいることです。しかし、それらの関係/違いはわかりません。PS。Ubuntu または Mac を使用しています。
4 に答える
OpenKinectは人々のコミュニティであり、図書館ではありません。OpenKinectコミュニティは、libfreenectKinectドライバーをリリースします。libfreenectとOpenNI+SensorKinectは、2つの競合するオープンソースライブラリ/ドライバーです。libfreenect(Apache 2.0またはGPLv2)は、初期のリバースエンジニアリング/ハッキングされたKinectドライバーから派生していますが、OpenNI + SensorKinectはオープンソース(LGPL)のPrimeSenseコードから派生しています。
どちらのプロジェクトも、Windows、Linux(Ubuntu)、およびMac OS Xで動作します。どちらのプロジェクトでも、カメラからカラーと深度の画像にアクセスできます。プロジェクトには互換性がなく、同時に使用することはできません。
ライブラリ間の違いは、モーター制御(libfreenectにはありますが、OpenNI + SensorKinectにはありません)と、高レベルのNUIサポートのためのNITEミドルウェアとの統合(OpenNI + SensorKinectのみ)です。これらの違いは、プロジェクトをライブラリの1つに向けて推進する傾向があります。
OpenNI 2 は、OpenNI を Windows 以外では使用できなくすることを付け加えておきます。
Kinect を使用した OpenNI 1.x は、avin2 という人物が OpenNI の上に位置し、Kinect のインターフェイスを OpenNI に公開する SensorKinect プロジェクトを作成するまで、他のプラットフォームでは正式にサポートされていませんでした。OpenNI 2.0 は主要なリファクタリングであり、公式には Kinect 用の Windows 以外はサポートしていません。http://social.msdn.microsoft.com/Forums/en-US/kinectsdk/thread/a11ff6d9-7fbe-4636-8ff0-92d6220ac3f8/ . これを書いている時点で、OpenKinect は最新の kinect (モデル 1473) に問題があり、デバイスが使用できなくなります。修正が進行中かどうかはわかりません。
したがって、要約すると: -- デバイス モデル 1473 の問題が解決された場合は、OpenKinect を使用することをお勧めします。そして、率直に言って、特定のプラットフォームをターゲットにする他のものは信用できません。-- この問題が解決されるまでは、OpenNI 1.5 + SensorKinect を使用するしかありません。これは廃止されており、その開発は中止されていますが、実際にはすべての kinect モデルで動作するのはこれだけです。
この質問は何年も前のものですが、私が知っていることを追加したいと思います。
私はかなり素人なので、Kinect を Mac で動作させるのは常に困難でした。github からコードをダウンロードし、複数の指示に従いましたが、正しく動作しませんでした。10 か月ほど前に、Mac で Kinect と OpenNI が動作するようになったのを覚えていますが、非常に不安定でした。glview サンプル プログラムは、Kinect から深度と色のイメージを表示しましたが、ときどき失敗しました。
最近、ある人が Openni (1 と 2) の自作式を NiTE と libfreenect と共に作成したことを知りました。試してみたところ、Mavericks 10.9.2 + 10.9.3 で問題なく動作したので、Kinect が正常に動作していない場合は、 https ://github.com/totakke/homebrew-openni をご覧ください。
現時点では、OpenNi は Kinect for Windows と互換性がありますが、libfreenect は互換性がありません。