【问题标题】:Kinect face trackingKinect 人脸追踪
【发布时间】:2017-04-30 22:19:21
【问题描述】:

深度还是距离?

我正在使用带有 C# 的 Kinect 进行人脸跟踪,现在我需要了解人脸到 Kinect 相机的距离或深度。

你知道我怎样才能找到深度或距离吗?

我应该使用哪个命令?以及在哪个窗口(主窗口或面部跟踪查看器)?

【问题讨论】:

  • 您是否自己做过研究,例如阅读教程或检查 API?
  • 是的,我做到了。但不幸的是,我没有发现任何有用的东西。
  • 问题是我是C#的初学者,所以我的命令有问题。

标签: c# windows kinect msdn kinect-sdk


【解决方案1】:

答案是:

using (var skeletonFrame= e.OpenSkeletonFrame())
using (var depthFrame = e.OpenDepthImageFrame())
{
skeletonFrame.CopySkeletonDataTo(skeletons);
var skeletons = new Skeleton[skeletonFrame.SkeletonArrayLength];

foreach (var skeleton in skeletons)
{
        if (skeleton.TrackingState != SkeletonTrackingState.Tracked)        
continue;

        var head = skeleton.Joints[JointType.Head];
        if (head.TrackingState == JointTrackingState.NotTracked) continue;

        var depthImagePoint = depthFrame.MapFromSkeletonPoint(head.Position);

        int depthInMillimeters = depthImagePoint.Depth; // TADA!
}
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-10-05
    • 2020-04-07
    • 1970-01-01
    • 1970-01-01
    • 2021-05-15
    • 2014-10-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多