就像标题中一样,我想在机器人上实现手势识别,我正在寻找Kinect和Xtion之间的优缺点-以及是否还有其他明智的选择。

我正在考虑以下内容,但可以接受其他建议:


精度
价格
驱动器质量
功率消耗


评论

比较问题几乎总是落在“非建设性”领域。如果没有超具体标准,则需要比较的变量太多。

@jonsca通常我会同意,但是在这里我尝试使其保持特定状态-主要是在两个设备之间,并具有一组特定的类别。我明白你的意思了。

很难,因为我认为这是一个有趣的问题,但是就树立该网站的先例而言,我不太确定这是要走的路。

由于我没有使用Xtion的经验,因此在这里有更多评论。但是有一点是我工作的障碍,我不知道这与您的计划有什么关系。通过手势您正在看什么样的细节?我想使用Kinect进行人形机器人的实时控制,但无法获得各个关节的旋转。您可以获取每个关节的3D位置,但是,如何恢复相对角度并非易事。如果您打算识别简单的手势(例如指向不同方向或粗略姿势),则应该完全没有问题。

@gpierris我还没有亲自实现,但是在这个stackoverflow问题中已经讨论了几种使用Kinect计算关节角度的方法。当然,正如您恰当地指出的那样,这并非微不足道。

#1 楼

我知道Xtion较小且由USB供电,因为Kinect需要使用壁式电源插座进行操作。在深度感知方面,它们在准确性方面非常相似。取决于您的机器人是否需要便携式(即不随市电供电)和小巧可能是决定因素。

评论


$ \ begingroup $
您已经提到了我眼中最重要的区别-尺寸和功耗。我想补充一点,两个设备都使用相同的传感器(来自Primesense),因此其行为几乎相同。到目前为止,至少这是我的印象-我们在这里使用这两种设备。
$ \ endgroup $
–比特海盗
2012年10月23日在22:55

$ \ begingroup $
Kinect不需要墙壁电源,但除了USB电源外,它还需要12v 1.5a电源。我还做了一些实验,并验证了在节电发生之前,我可以使用不受限制的12v电池电源,其上限为17v,下限为〜8v。
$ \ endgroup $
–杰伊·海狸
2012年11月8日12:34

#2 楼

您可能还考虑了Leap Motion:



它具有惊人的分辨率,并且能够以惊人的更新率挑选单个手指。



甚至还可以用铅笔在空中写:



你不能买一个,但很快就会面市。

评论


$ \ begingroup $
Leap indead看起来很有趣。请注意大约8立方英尺(0.226535立方米)的小交互空间。另一方面,它是非常精确的(0.01毫米)光源。我对第一个应用程序示例感到好奇。
$ \ endgroup $
–比特海盗
2012年11月10日7:00

#3 楼

更多驱动程序详细信息:

OpenNI或freenect可以与Xtion和XBox Kinect一起使用。

“ Kinect for Windows”需要Microsoft SDK和驱动程序。但是,从MSSDK驱动程序到OpenNI还有一个桥梁:http://code.google.com/p/kinect-mssdk-openni-bridge/

,也是最新版本的Kinect for Windows(> = 1.5)具有近距离模式,可以在靠近设备的地方进行更好的操作,这可能取决于应用程序。我不认为Xtion具有这种模式。 br />

#4 楼

取决于您连接到设备的方式,软件可能会有所不同。

在Linux上,freenect在Kinect上似乎比Xtion更好地工作,而openni试图同时支持两者,但最近似乎有些漏洞。

#5 楼

我在NCSU领导的机器人团队实现了使用Leap运动控制器驱动完整机器人的能力。这是一个演示视频。

我们的代码库使用Python,因此我们使用了Python Leap库,该库非常简单且友好。我们与Leap相关的代码仅约150行。我们的客户基本上从Leap控制器获取俯仰,偏航和侧倾数据,并将其转换为运动,然后使用ZMQ调用该机器人的API。如果您对其他详细信息感兴趣,可以与您共享代码(当前在我们的竞赛中一个私人的GitHub存储库中,但它是在BSD两条款许可下开源的)。