Kinect 人脸追踪
Kinect face tracking
深度还是距离?
我正在使用 C# 使用 Kinect 进行面部跟踪,我现在需要了解面部与 Kinect 相机的距离或深度。
你知道我怎样才能找到深度或距离吗?
我应该使用哪个命令?并在其中 window(主要 window 或面部跟踪查看器)?
答案是:
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!
}
}
深度还是距离?
我正在使用 C# 使用 Kinect 进行面部跟踪,我现在需要了解面部与 Kinect 相机的距离或深度。
你知道我怎样才能找到深度或距离吗?
我应该使用哪个命令?并在其中 window(主要 window 或面部跟踪查看器)?
答案是:
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!
}
}