【问题标题】:Convert Movie to OpenNI *.oni video将电影转换为 OpenNI *.oni 视频
【发布时间】:2012-10-25 22:12:01
【问题描述】:

Kinect OpenNI library 使用自定义视频文件格式来存储包含 rgb+d 信息的视频。这些视频的扩展名为 *.oni。我找不到任何关于 ONI 视频格式的信息或文档。

我正在寻找一种将传统 rgb 视频转换为 *.oni 视频的方法。深度通道可以留空(即归零)。例如,我有一个 MPEG-4 编码的 .mov 文件,其中包含音频和视频通道。

对于必须如何进行这种转换没有任何限制,我只需要以某种方式进行转换!即imagemagick、ffmpeg、mencoder都可以,C/C++等自定义转换代码也可以。

到目前为止,我只能找到one C++ conversion utility in the OpenNI sources。从它的外观来看,我将它从一个 *.oni 文件转换为另一个文件。我还设法找到了a C++ script by a phd student that converts images from a academic database into a *.oni file。不幸的是,代码是西班牙语,不是我的母语之一。

非常感谢任何帮助或指点!

编辑:由于我的用例有点奇怪,可能需要一些解释。 OpenNI 驱动程序(在我的例子中,我使用出色的Kinect for Matlab library)允许您在创建 Kinect 上下文时指定 *.oni 文件。这允许您模拟连接了接收视频数据的真实 Kinect - 在您测试/开发代码时很有用(您不需要连接 Kinect 来执行此操作)。在我的特殊情况下,我们将在生产环境中使用 Kinect(工厂环境中的过程控制),但在开发过程中我只有一个视频文件 :) 因此想要转换为 *.oni 文件。我们目前没有使用深度通道,因此不关心它。

【问题讨论】:

    标签: c++ c kinect video-processing openni


    【解决方案1】:

    我没有给你完整的答案,但请看一下 OpenNI/Samples 中的 NiRecordRaw 和 NiRecordSynthetic 示例。他们演示了如何使用任意或修改的数据创建 ONI。了解如何在 NiRecordSynthetic 中使用 MockDepthGenerator - 在您的情况下,您将需要 MockImageGenerator。 有关更多详细信息,您可能想在 openni-dev 谷歌组中询问。

    【讨论】:

      【解决方案2】:

      您是否查看过此命令及其相关文档

      NiConvertXToONI -- NiConvertXToONI 打开任何记录,获取其中的每个节点,并将其记录到新的 ONI 记录中。它从命令行接收输入文件和输出文件。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-03-17
        • 1970-01-01
        • 2022-06-27
        • 2016-01-31
        • 2018-08-20
        相关资源
        最近更新 更多