【问题标题】:Getting the total number of frames to write it into BVH file while recording with kinect在使用 kinect 录制时获取将其写入 BVH 文件的总帧数
【发布时间】:2013-05-13 20:17:54
【问题描述】:

我正在尝试将骨架数据写入 BVH 文件,因为我需要获取总帧数并将其写入关节数据之前,因为 bvh 文件的层次结构是。 函数SensorSkeletonFrameReady 允许我获得帧号,但我正在使用此函数提取每帧的关节数据并将其直接写入 bvh 文件。

有人可以帮帮我吗?

【问题讨论】:

  • 您可以添加更多代码吗?

标签: c# kinect frames


【解决方案1】:

BVH 文件具有文件中表示的帧总数。在您完成录制之前不可能知道这个数字。

使用SkeletonFrameReady 事件,您可以:

  1. 将数据保存到List(或其他数组类型结构)
  2. 停止录制并计算帧数(即List 项)
  3. 写入文件,包含总帧数

...或...

  1. 实时输出文件(如您在问题中指出的那样),保持帧数的总和
  2. 尽可能停止录制并关闭文件
  3. 重新打开文件,找到你的“框架”行并输入你存储的适当值

...或...

  1. 实时输出骨骼追踪数据
  2. 继续查找文件中定义帧的位置并不断更新它,然后查找到末尾以写入下一帧。

我并没有太认真地对待最后一个。但这一切都归结于这样一个事实:在完成之前您不知道帧数!您必须先完成录制,然后才能在文件中输出该行。

除非您录制真的长会话,否则将数据存储在List 中,然后在您停止后写入数据文件是最直接的方法。在我看来。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-08-07
    • 1970-01-01
    • 2020-01-03
    • 2018-11-27
    • 2013-02-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多