Unity Kinect应用

Kinect Manager

KinectManager:脚本说明

 

属性:

[Tooltip("离地面有多高的传感器(单位:米)。")]

    public float sensorHeight = 1.0f;

 

    [Tooltip("Kinect仰角(度)。可能是积极的还是消极的。")]

    public float sensorAngle = 0f;

 

    public enum AutoHeightAngle : int { DontUse, ShowInfoOnly, AutoUpdate, AutoUpdateAndShowInfo }

    [Tooltip("是否自动设置传感器高度和角度。用户必须在前面的传感器,为了自动检测工作。")]

    public AutoHeightAngle autoHeightAngle = AutoHeightAngle.DontUse;

 

    public enum UserMapType : int { None, RawUserDepth, BodyTexture, UserTexture, CutOutTexture }

    [Tooltip("是否以及如何利用用户和深度地图。")]

    public UserMapType computeUserMap = UserMapType.RawUserDepth;

 

    [Tooltip("是否利用彩色摄像机图像。")]

    public bool computeColorMap = false;

 

    [Tooltip("是否利用红外摄像机的图像。")]

    public bool computeInfraredMap = false;

 

    [Tooltip("是否显示屏幕上的用户映射。")]

    public bool displayUserMap = false;

 

    [Tooltip("是否显示彩色摄像机图像在屏幕上。")]

    public bool displayColorMap = false;

 

    [Tooltip("是否显示用户地图上骨架线。")]

    public bool displaySkeletonLines = false;

 

    // 如果百分比是零,这是计算内部以匹配所选的深度图像的宽度和高度

    [Tooltip("深度和宽度彩色图像在屏幕上,相机宽度的百分比。图像高度取决于计算宽度。")]

    public float DisplayMapsWidthPercent = 20f;

 

    [Tooltip("是否要使用多源阅读器,如果有可用的(K2-only特性)。")]

    public bool useMultiSourceReader = false;

 

    // Public Bool to determine whether to use sensor's audio source, if available

    //public bool useAudioSource = false;

 

    [Tooltip("最小距离用户,为了考虑骨骼数据处理。")]

    public float minUserDistance = 0.5f;

 

    [Tooltip("最大距离用户,为了考虑骨骼数据处理。值为0时表示没有最大距离限制。")]

    public float maxUserDistance = 0f;

 

    [Tooltip("最大用户向左或向右的距离,为了考虑骨骼数据处理。值为0时表示没有左/右的距离限制。")]

    public float maxLeftRightDistance = 0f;

 

    [Tooltip("最大数量的用户,这可能是同时跟踪。")]

    public int maxTrackedUsers = 6;

 

    [Tooltip("是否显示跟踪用户只允许的范围内,或所有用户(fps)。")]

    public bool showTrackedUsersOnly = true;

 

    [Tooltip("是否先检测只有最接近用户。")]

    public bool detectClosestUser = true;

 

    [Tooltip("是否只利用跟踪关节(而忽略推断的)。")]

    public bool ignoreInferredJoints = false;

 

    [Tooltip("是否忽略关节的z坐标(即在2 d场景)中使用它们。")]

    public bool ignoreZCoordinates = false;

 

    [Tooltip("是否更新AvatarControllers LateUpdate(),而不是更新()。所需Mocap-Mecanim混合。")]

    public bool lateUpdateAvatars = false;

 

    public enum Smoothing : int { None, Default, Medium, Aggressive }

    [Tooltip("联合平滑参数集。")]

    public Smoothing smoothing = Smoothing.Default;

 

    [Tooltip("是否应用骨方向约束。")]

    public bool useBoneOrientationConstraints = false;

    //public bool useBoneOrientationsFilter = false;

 

    [Tooltip("是否允许检测身体的运作周期。")]

    public bool allowTurnArounds = false;

 

    public enum AllowedRotations : int { None = 0, Default = 1, All = 2 }

    [Tooltip("允许他们的手和手腕旋转。没有——没有手旋转,允许违约——手旋转除了扭曲,所有——所有转动是允许的。")]

    public AllowedRotations allowedHandRotations = AllowedRotations.Default;

 

    [Tooltip("场景中的控制化身的列表。如果列表为空时,可用的《阿凡达》控制器将在启动检测。")]

    public List<AvatarController> avatarControllers = new List<AvatarController>();

 

    [Tooltip("玩家姿势校准")]

    public KinectGestures.Gestures playerCalibrationPose;

 

    [Tooltip("手势为每个球员被探测到的列表。")]

    public List<KinectGestures.Gestures> playerCommonGestures = new List<KinectGestures.Gestures>();

 

    [Tooltip("最低手势检测间隔时间(以秒为单位)。")]

    public float minTimeBetweenGestures = 0.7f;

 

    [Tooltip("手势经理,用于检测编程Kinect动作。")]

    public KinectGestures gestureManager;

 

    [Tooltip("列出可用的姿态听众。他们必须实现KinectGestures.GestureListenerInterface。如果列表是空的,可用手势听众会发现启动。")]

    public List<MonoBehaviour> gestureListeners = new List<MonoBehaviour>();

 

    [Tooltip("gui文本来显示用户检测消息。")]

    public GUIText calibrationText;

 

    [Tooltip("gui文本显示为当前手势跟踪调试消息。")]

    public GUIText gesturesDebugText;

 

===============================================================================

部分方法解析:

//体感设备是否初始化完成

public bool IsInitialized()

//程序捕获的人物个数

public int GetBodyCount()

//程序捕获

  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值