ADanjer
ADanjer

Reputation: 11

Kinect face tracking

Depth or Distance?

I am working on face tracking with Kinect with C# and I need to now about face's distance or depth to the Kinect camera.

Do you know how can I find the depth or distance?

Which command should I use? And in which window (main window or face tracking viewer)?

Upvotes: 0

Views: 321

Answers (1)

ADanjer
ADanjer

Reputation: 11

the answer is:

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!
}
}

Upvotes: 1

Related Questions