1

如何在 Leap Motion 设备上检测特定的拇指?

还有什么方法可以让我找到“拳头”手势。我想将代码与我的项目集成。

还是我应该完全开发自己的算法?

4

2 回答 2

2

没有检测到手指的手很可能是拳头。

您可以使用拇指的角度、长度、宽度和基本位置来将其与其他数字区分开来。例如,拇指通常比其他手指短,除了小指——但它通常比小指宽。您可以根据尖端位置、长度和方向计算出的基本位置相对于其他数字的位置大不相同。您可以使用这些事实来开发用于识别拇指的启发式方法。诚然,这不是一件容易的事。

当 Leap Motion API 将提供手指识别以及可能的简单姿势(如抓握和捏合)时,这两项任务应该会容易得多。

[编辑] 这仅适用于旧的 v1 版本的跟踪。新版本总是报告每只手五个手指的位置。拇指(和其他数字)现在用 Type 属性标识。要检测拳头,您可以使用 GrabStrength 或检查所有手指的 IsExtended 属性。

于 2013-10-12T23:29:26.297 回答
1

使用最新的跳跃运动 SDK 这是一项非常简单的任务。您可以使用手指“类型”属性来识别手指。

假设您已经获得了一个手指对象,您可以使用以下方法获取其手指类型属性

finger_type = finger.type

由于您要识别拇指,因此您需要finger_type = 0

有关更多详细信息,请参阅jumpmotion 文档

于 2015-10-23T06:34:17.583 回答