我有兴趣为Microsoft Kinect控制台编写一些自制代码。我有一些应用程序可以很好地转化为平台。我一直在玩弄它的想法,该想法是使用 Openinect驱动程序和图书馆. 。显然,这将是很多工作,但是我想知道多少。有人有OpenKinect的经验吗?您是否仅从设备获得原始视频/音频数据,还是有人编写了更高级别的摘要来使常见任务更容易?

有帮助吗?

解决方案

Openinect 库基本上是一个驱动程序 - 至少目前 - 所以 不要指望它的高功能. 。您或多或少会得到 原始数据 从这两个 深度视频 相机。
每次帧到达时,这基本上是一个回调功能中收到的数组。

您可以通过按照在 Openinect网站, ,它确实很快安装和尝试,您可以使用 glview 提供的应用程序可以感觉到可能的感觉。我已经设置了一些演示 opencv, ,即使我没有太多的计算机视觉背景,我也只能鼓励您自己尝试!

 
或者,如果您正在寻找更高级的功能, OpenNI框架 本周刚刚发布,提供了一些令人印象深刻的高级算法,例如 骨架跟踪 还有一些 手势识别. 。该框架的一部分是来自Primesense的专有算法(例如功能强大的骨架跟踪模块...)。我还没有尝试过,也不知道它与Kinect和不同的操作系统都集成在一起,但是由于一群来自不同团体的人(Openkinect,Willow Garage ...)正在努力工作,不应该这样做'在一周内成为一个问题。

其他提示

我与Openni合作进一步阐述了Jules Olleon的写作(http://www.openni.org)和上面的算法(nite),我强烈建议使用这些框架。这两个框架都有据可查,并提供了许多样本,您可以从中开始。

基本上, Openni 摘要使用传感器及其驱动程序为您的较低级别的细节,并为您提供一种从“发电机”获得所需的方便方法(例如XN :: Depthgenerator,用于获取原始深度数据)。 Openni是开源的,可以在任何应用程序中免费使用。 Openni还为您处理平台 - 易于处理。截至今天,OpenNI得到了支持,适用于Windows 32/64和Linux,并且正在移植到OSX。绑定可用于多种编程语言(C,C ++,.NET,Python和我相信的其他一些)。

午夜 在OpenNI上方建造了其他界面,可为您提供更高级别的结果(例如跟踪手指点,骨架,场景分析等)。您需要查看Nite许可证的微妙之处,以了解何时/可以使用它,但现在可能是最简单,最快的分析方法(例如骨架)。 Nite是封闭的,因此Primesense需要提供二进制版本供您使用。当前可以使用Windows和Linux版本。

我没有与Openinect合作,但是我已经与Openni合作了几个月,已经进行了几个月的研究。如果您打算使用Kinect的原始数据,它们可以很好地为您提供深度和视频(它们不支持电动机控制)。我已经在Windows 64bit和Ubuntu 32bit中与C ++和OpenGL一起使用了它,几乎没有对代码进行修改。如果您知道基本的C ++,很容易学习。安装它可能有点头痛。

对于更高级的功能,例如骨架检测,手势识别等,我强烈建议使用诸如nite with Openni或此处提供的中间件: 中华人在Openni周围发展 而不是重新发明轮子。一旦您有Openni工作,Nite也很容易使用。例如,联合识别是大约10-20条额外的代码。

我会推荐给年轻的自我的东西是学习和使用基本的游戏引擎(例如Unity),而不是直接与OpenGL合作。它将为您提供更好,更有趣的图形,减轻麻烦,还可以使您轻松地将程序与其他工具(例如 Physx. 。我什么都没尝试过,但是我知道有一些插件用于Unity使用Kinect驱动程序。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top