2017-04-30 64 views
0

深度或距離?Kinect面部追蹤

我正在使用C#與Kinect進行臉部跟蹤,現在我需要了解臉部與Kinect相機的距離或深度。

你知道我怎麼找到深度或距離?

我應該使用哪個命令?並在哪個窗口(主窗口或面部跟蹤查看器)?

+1

你有沒有做過任何研究自己如閱讀教程或檢查API? –

+0

是的,我做過。但不幸的是,我沒有發現任何有用的東西。 – ADanjer

+0

問題是我是C#的初學者,所以我遇到了命令問題。 – ADanjer

回答

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