kinect获取距离信息_限制Kinect检测距离

在您的SkeletonFrameReady回调函数中,您可能有一个循环(或类似的循环)遍历活动骨架。你也应该看看它们是否被积极跟踪。

foreach (Skeleton skeleton in _skeletons) {

// some extra setup stuff here...

if (skeleton.TrackingState != SkeletonTrackingState.Tracked)

return;

// the Kinect is actively tracking the skeleton at this point

...

}

你想要在这一点上做的是检查人的位置Z。选一个你想用作参考的关节 - 我建议头部,臀部或脊柱。如果Z的位置是你想要的位置,继续对骨架进行操作。

foreach (Skeleton skeleton in _skeletons) {

....

if (skeleton.TrackingState != SkeletonTrackingState.Tracked)

return;

if (skeleton.Joints[JointType.Spine].Position.Z < _minValue || skeleton.Joints[JointType.Spine].Position.Z > _maxValue)

return;

// if you reach this point, the person is standing a certain distance from the Kinect. Not too close, not too far away.

}

您将要检查Z位置的范围。它可以是一个小范围,但是您希望给用户足够的空间来移动一点,而Kinect忽略它们。

更新:您可能也可以使用Skeleton的Position属性。它对Kinect的FOV中的整个骨架有一个x/y/z参考。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值