我希望使用 Kinect ToF 相机进行编程,但是我不确定这样做的硬件和软件要求。我遇到了一些涵盖这个主题的文章/书籍,但似乎有一些不一致的地方让我有些困惑。
问题
我需要购买什么 Kinect 产品才能确保我拥有在计算机上进行软件开发所需的所有组件? (即所有电缆都包含在“盒内”中)开发系统的硬件要求是什么(cpu、ram等)? Kinect 开发的驱动程序、开发框架和其他软件组件是什么?其中,哪些是需要的,哪些是强烈推荐的,哪些是可选的? 请注意,我不想被锁定在 Windows 环境中进行开发,尽管我希望有这样做的选项。我此时也无意开发商业应用。
Kinect传感器本身就是您所需要的,默认情况下它包括 USB。除非您想玩 Kinect Adventures,否则您不需要购买 Xbox360 :) 我不完全确定硬件要求,因为它有点关于操作系统和您最终使用的库/驱动程序/语言,但这不应该是主要问题。我在一台较旧的笔记本电脑(2008 年的 macbook,配备 2GB 内存、2.1 GHz 处理器和非常糟糕的集成显卡)上使用我的,没有任何问题。 有很多选择,所以我会在下面列出它们驱动程序/库:
正如 p.campbell 所提到的,Official Kinect SDK是一种选择。
有了它,你就有了很多可用的功能,比如骨架跟踪
和语音识别,但您仅限于 Windows 和 .NET。 另一种选择是开源 OpenKinect/libreenect 驱动程序,它在 osx/windows/linux 上运行,并具有多种语言的包装器(如 actionscript、c#、java、matlab、python、ruby 等),
但请记住,这可以访问设备(rgb/depth/ir 数据、加速度计数据、led/电机访问),但不包括复杂的算法,如骨架跟踪/语音识别。 另一个开源选项是 OpenNI (在 linux/windows/osx 上运行)它允许您访问 rgb/depth/ir 数据,但目前没有针对电机/led/加速度计/音频的实现。尽管如此,它仍然包括骨架跟踪、手部跟踪和手势识别。您可以将 OpenNI 与 C/C++/Java/.net/一起使用 Unity3D 如果您习惯于创造性的编码环境,那么大多数环境也有包装器:
OpenKinect Processing和 SimpleOpenNI为 Processing ofxKinect或 ofxMSKinect为 openframeworks Kinect Block为 Cinder jit.freenect用于 MaxMSP/抖动 根据您需要使用的操作系统/语言和 Kinect 功能,您应该能够做出选择。
另请注意,如果您可以将 OpenNI 与其他深度相机一起使用,例如
Asus Xtion .