【问题标题】:Thumb detection using Leap Motion使用 Leap Motion 进行拇指检测
【发布时间】:2013-10-12 12:29:43
【问题描述】:

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

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

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

【问题讨论】:

    标签: detection leap-motion


    【解决方案1】:

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

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

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

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

    【讨论】:

    • 我理解了@Charles 的第一个想法,但我无法理解拇指的概念。一个参考就可以了。 (很抱歉,如果我非正式地寻求更多帮助,请提供帮助,因为我是 Leap 的新手 - C#)
    • 感谢@Charles 的修订。我将对此进行处理并设计一个适当的逻辑,然后将其标记为正确答案。再次感谢您。
    • (或者等待几周到一个月的下一个 Leap Motion SDK。它应该包含自动数字 ID。)
    【解决方案2】:

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

    假设你已经获得了一个手指对象,你可以通过使用

    来获取它的手指类型属性
    finger_type = finger.type
    

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

    更多详情,请参考leapmotion documentation

    【讨论】:

    • 谢谢@Ashray 的回答。很长一段时间,我现在不参与这个项目。还是谢谢你的回答。希望对其他人有所帮助。
    猜你喜欢
    • 2017-12-13
    • 1970-01-01
    • 2013-08-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-15
    • 1970-01-01
    相关资源
    最近更新 更多