我使用kinect工作室使用Kinect for Windows 2收集了一堆视频,文件扩展名为.xef。
现在我想编写一个程序来加载来自它们的数据,只是回放或保存为另一种格式,但我发现这样做的资源很少,有没有可用的资源呢?
答案 0 :(得分:15)
实际上,您可以使用Kinect Studio API来读取和播放自上一个SDK版本(KinectSDK-v2.0_1409)以来的.xef文件。它尚未正确记录,但可以集成到您的代码中。以下是使用它的简短描述(在VS 2013 C#解决方案中尝试过):
答案 1 :(得分:1)
你可以做的是使用Kinect Studio读取xef文件,然后进入Play(或Playback)选项卡并点击播放,你的程序将开始流式传输。我认为这是做到这一点的唯一方法,就像它来自kinect。
答案 2 :(得分:1)
似乎没有办法解析XEF文件以直接提取图像。
如果您不需要存储在XEF文件中的所有帧,即帧丢弃是正常的,则间接方式是使Kinect应用程序通过Kinect服务从XEF文件接收帧。
快速测试是:
然后,您可以修改ColorBasics或DepthBasics中的源代码以相应地保存图像。如果您关心对齐深度和彩色图像,可以修改KinectFusionExplorer-D2D。
这种方法只能捕获存储在XEF中的帧子集,因为通过Kinect服务进行的回放和帧接收是异步的。因此,只有在程序中丢帧不是问题时才会起作用。