相关疑难解决方法(0)

如何使用Kinect SDK跟踪眼睛?

要求是在3D空间中围绕每只眼睛定义矩形.应该有一种使用Microsoft Kinect SDK跟踪眼睛的方法.根据这个

Face Tracking SDK使用Kinect坐标系输出其3D跟踪结果.原点位于相机的光学中心(传感器),Z轴指向用户,Y轴指向上方.测量单位是用于平移的米和用于旋转角度的度.

添加

...
Debug3DShape("OuterCornerOfRightEye", faceTrackFrame.Get3DShape()
    [FeaturePoint.OuterCornerOfRightEye]);
Debug3DShape("InnerCornerRightEye", faceTrackFrame.Get3DShape()
    [FeaturePoint.InnerCornerRightEye]);
Debug3DShape("InnerCornerLeftEye", faceTrackFrame.Get3DShape()
    [FeaturePoint.InnerCornerLeftEye]);
Debug3DShape("OuterCornerOfLeftEye", faceTrackFrame.Get3DShape()
    [FeaturePoint.OuterCornerOfLeftEye]);
...
private void Debug3DShape(string s, Vector3DF v)
{
    Debug.WriteLine(s + " X " + v.X + " Y " + v.Y + " Z " + v.Z);
}
Run Code Online (Sandbox Code Playgroud)

到Microsoft.Kinect.Toolkit.FaceTracking中的CreateResult()打印

OuterCornerOfRightEye X -0.05728126 Y 0.04850625 Z -0.1144406
InnerCornerRightEye X -0.01584376 Y 0.04850625 Z -0.1279687
InnerCornerLeftEye X 0.01584374 Y 0.04850625 Z -0.1279687
OuterCornerOfLeftEye X 0.05728124 Y 0.04850625 Z -0.1144406
Run Code Online (Sandbox Code Playgroud)

当SDK开始跟踪面部时.我应该可以使用这些坐标在每只眼睛周围画一个框,但Z坐标应该更接近1.0,而不是-0.1 ..或-0.2 …

c# eye-tracking kinect kinect-sdk

9
推荐指数
1
解决办法
5111
查看次数

标签 统计

c# ×1

eye-tracking ×1

kinect ×1

kinect-sdk ×1