Kinect播放器检测

时间:2016-04-26 23:02:56

标签: c# wpf kinect kinect-sdk

大家好,我有以下代码块

using (SkeletonFrame skeletonFrame = e.OpenSkeletonFrame())
{
    if (skeletonFrame != null)
    {
        Skeleton[] skeletons = new Skeleton[skeletonFrame.SkeletonArrayLength];
        skeletonFrame.CopySkeletonDataTo(skeletons);
        foreach (Skeleton skeleton in skeletons)
        {
            if (skeleton.TrackingState == SkeletonTrackingState.Tracked)
            {
                //DoSomething();
            }
            else if (skeleton.TrackingState == SkeletonTrackingState.NotTracked)
            {
                //DoSomethingElse();
            }
        } 
    }
}

我的计划是调用一种方法,说明在跟踪玩家时检测到玩家。相反,没有人被追踪。本质上使用Kinect运动探测器(我知道只有人类)。但是看起来这个循环对我来说不正常。在调试器的帮助下,我可以看到我确实进入了DoSomething();但是它会被卡住,并且不断重复DoSomething()即使在玩家离开时应该做的同样的消息。 知道为什么会发生这种情况以及如何实现这个目标吗?

0 个答案:

没有答案