【Unity/Kinect】获取预制的手势信息KinectInterop.HandState

Kinect使用了枚举KinectInterop.HandState来描述手势。 该手势指的是手掌的状态(张开/握拳),而不是说整个手臂的肢体动作(Gesture)。
同样是需要嵌套在Kinect获取数据的代码块中,然后添加自己的逻辑。

http://blog.csdn.net/qq_18995513/article/details/53180695

using UnityEngine;
using System.Collections;
using UnityEngine.UI;

/// <summary>
/// 使用KinectManager的一般流程。
/// </summary>
public class UseKinectManager : MonoBehaviour {

    public Text debugText;  // 显示当前的手势
    KinectManager _manager;

    // Use this for initialization
    void Start () {

    }

    // Update is called once per frame
    void Update () {

        if (_manager == null) {
            _manager = KinectManager.Instance;
        }

        // 是否初始化完成
        if (_manager && _manager.IsInitialized()) { 
            // 是否人物被检测到
            if (_manager.IsUserDetected()) {
                // 获取用户ID
                long userId = _manager.GetPrimaryUserID();
                // 获取目标关节点的索引(以左手为例)
                int jointIndex = (int)KinectInterop.JointType.HandLeft;
                // 判断目标关节点是否被追踪
                if (_manager.IsJointTracked(userId, jointIndex)) {
                    // 检测手势信息
                    KinectInterop.HandState leftHandState = _manager.GetLeftHandState(userId);
                    if (leftHandState == KinectInterop.HandState.Closed)
                    {
                        debugText.text = "左手握拳";
                    }
                    else if (leftHandState == KinectInterop.HandState.Open)
                    {
                        debugText.text = "左手展开";
                    }
                    else if (leftHandState == KinectInterop.HandState.Lasso)
                    {
                        debugText.text = "左手yes手势";
                    }
                }
            }
        }
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值