Kinect V2 - 加载Kinect Studio中记录的XEF文件,访问颜色和深度帧

时间:2017-09-22 09:26:31

标签: kinect-sdk point-clouds kinect-v2 kinect.toolbox

我需要从使用Kinect Studio录制的XEF文件中获取颜色和深度帧。

使用Kinect时访问颜色和深度帧的代码如下所示:

        _sensor = KinectSensor.GetDefault();

        if (_sensor != null)
        {
            _sensor.Open();

            _reader = _sensor.OpenMultiSourceFrameReader(FrameSourceTypes.Color | FrameSourceTypes.Depth | FrameSourceTypes.Infrared | FrameSourceTypes.Body);
            _reader.MultiSourceFrameArrived += Reader_MultiSourceFrameArrived;

            _coordinateMapper = _sensor.CoordinateMapper;


        }

private void Reader_MultiSourceFrameArrived(object sender, MultiSourceFrameArrivedEventArgs e)我的魔法,这是有效的。

现在我如何使用预先录制的XEF文件进行此操作?

我知道我可以像这样加载一个XEF文件:

        var kStudioClient = KStudio.CreateClient();

        var eventFile = kStudioClient.OpenEventFile(@"D:\Kinect Studio Recordings\20170922_083134_00.xef");

但是如何从中获取MultiSourceFrame?

非常感谢任何帮助!谢谢!

1 个答案:

答案 0 :(得分:0)

您使用KStudioClient API处于正确的轨道上。如果您尚未自己实现,则还应该使用KStudioPlayback类来异步播放XEF剪辑。我不会在这个阶段解释并给出确切的代码如何回放 - API很容易理解。正确使用此类将自动发出MultiSourceFrameArrived个事件,因此您现在需要更改处理它们的方式。

以下是您需要了解的所有内容,以便快速了解KStudioPlayback课程 - KStudioPlayback class API。如果您需要代码示例,发表评论,我会回复您。