1

所以目前我有一个bool PersonDetected总是设置为false 除非检测到骨架。但目前当 aSkeletonTrackingState被标记为Tracked, 但PersonDetected仍设置为 false。提前致谢

我的代码

Skeleton skeletons = new Skeleton();

            if ((skeletons.TrackingState == SkeletonTrackingState.Tracked ||
                skeletons.TrackingState == SkeletonTrackingState.PositionOnly) &
                skeletons.TrackingState != SkeletonTrackingState.NotTracked)
                {
                    PersonDetected = true;
                }
4

2 回答 2

1

我发现它没有注册的原因是因为skeletons它只是一个变量,而不是Skeleton被跟踪,所以我添加了以下代码以确保它有效:

Skeleton skeletons = new Skeleton();

            skeletons = (from s in allSkeletons
                         where s.TrackingState == SkeletonTrackingState.Tracked ||
                         s.TrackingState == SkeletonTrackingState.PositionOnly
                         select s).FirstOrDefault();

            if (skeletons == null)
            {
                return;
            }

            if ((skeletons.TrackingState == SkeletonTrackingState.Tracked ||
                skeletons.TrackingState == SkeletonTrackingState.PositionOnly))
            {
                PersonDetected = true;
            }
于 2012-05-07T02:08:56.353 回答
0

调试“差异”。我敢打赌它会高于9

在您增加差异的调试部分之后。

于 2012-05-04T15:12:37.883 回答