Отслеживание лица Kinect

Глубина или расстояние?

Я работаю над отслеживанием лица с помощью Kinect с помощью C#, и теперь мне нужно узнать о расстоянии или глубине лица до камеры Kinect.

Вы знаете, как я могу найти глубину или расстояние?

Какую команду мне использовать? И в каком окне (главное окно или средство отслеживания лиц)?

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!
}
}
Другие вопросы по тегам