我知道这个问题以前已经被提出过,但大多数情况下,OpenNI和Libfreenect仍在开发中。我的问题是:
1)我想知道它们现在的状态如何。 2)这两者之间的区别(优缺点以及其他任何内容) 3)具体针对骨架跟踪,哪一个更好,并提供更多关于骨架的数据(例如在Microsoft SDK中,他们为20个关节提供数据,这两个库是否相同,更多还是更少?)
我知道这个问题以前已经被提出过,但大多数情况下,OpenNI和Libfreenect仍在开发中。我的问题是:
1)我想知道它们现在的状态如何。 2)这两者之间的区别(优缺点以及其他任何内容) 3)具体针对骨架跟踪,哪一个更好,并提供更多关于骨架的数据(例如在Microsoft SDK中,他们为20个关节提供数据,这两个库是否相同,更多还是更少?)
Libfreenect是主要暴露Kinect设备功能的驱动程序,包括以下功能: - 深度流 - 红外流 - 颜色(RGB)流 - 电机控制 - LED控制 - 加速计
它不提供任何高级处理功能,如场景分割、骨架跟踪等。
另一方面,OpenNI允许通用访问Kinect的功能(主要是图像流),同时还提供丰富的处理功能,例如: - 场景分割 - 骨架跟踪 - 手部检测和跟踪 - 手势识别 - 用户界面元素等。 但没有对电机/LED/加速计等设备功能的低级控制。
与我所知的仅适用于Kinect传感器的libfreenect相反,OpenNI也适用于其他传感器,如Asus Xtion Pro、Carmine等。
您提到了Kinect SDK。需要记住的是,有多个Kinect传感器: - Xbox Kinect - Windows Kinect 例如,Windows Kinect传感器允许近距离模式并具有更长的范围。 我不知道骨架跟踪的区别。 此外,还有一个MS Kinect-OpenNI桥接项目,OpenNI2与Kinect兼容。
NITE
不提供丰富的处理功能吗? - Shashwat