Kinect骨骼跟踪不起作用 [英] Kinect Skeletal Tracking Not Working
本文介绍了Kinect骨骼跟踪不起作用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
因此,目前我有一个bool
PersonDetected
,该值始终设置为false
UNLESS ,可以检测到骨骼.但是当前,当SkeletonTrackingState
标记为Tracked
,但PersonDetected
仍设置为false时.在此先感谢
我的代码
So currently I have a bool
PersonDetected
which is always set to false
UNLESS a Skeleton is detected. But currently when a SkeletonTrackingState
is marked as Tracked
, but PersonDetected
is still set to false. Thanks in advance
My Code
Skeleton skeletons = new Skeleton();
if ((skeletons.TrackingState == SkeletonTrackingState.Tracked ||
skeletons.TrackingState == SkeletonTrackingState.PositionOnly) &
skeletons.TrackingState != SkeletonTrackingState.NotTracked)
{
PersonDetected = true;
}
推荐答案
我发现它没有注册的原因是因为skeletons
只是一个变量,而不是被跟踪的Skeleton
,所以我添加了以下内容代码,以确保它可以正常工作:
I discovered the reason that it wasn't registering was because skeletons
was just a variable, not a Skeleton
being tracked, so I added the following code to make sure that it worked:
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;
}
这篇关于Kinect骨骼跟踪不起作用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文