从通用视频编码中提取运动矢量

Posted

技术标签:

【中文标题】从通用视频编码中提取运动矢量【英文标题】:Extract motion vectors from versatile video coding 【发布时间】:2021-11-02 12:23:57 【问题描述】:

如何从 VVC VTM 参考软件中将运动矢量提取到 .txt 或 .xml 文件中。我设法将运动矢量提取到一个文本文件中,但我没有一个正确的索引来指示哪个运动矢量属于哪里。如果有人可以指导我获得正确的索引以及运动矢量,那将非常有帮助。

【问题讨论】:

【参考方案1】:

你是在编码器端做的吗? 如果是这样,我建议你移动到解码器端并这样做:

    对要从中提取 MV 的序列进行编码。 修改解码器,使其打印每个编码单元的 MV(如果有)(例如,非帧内)。为此,您可以转到 CABAC Reader.cpp 文件,在 coding_unit() 函数中的某个位置,找到解析 MV 的位置。在那里,除了已解析的 MV,您还可以访问正在进行的 CU 的坐标。 使用修改后的 VTM 解码器解码您的编码比特流并打印您想要打印的内容。

【讨论】:

感谢您的回复@mosen。我设法在编码函数中获取了正在进行的 CU 的坐标,但在 coding_unit() 中没有解析 MV。它们稍后在 .cpp 文件中的 mvd_coding() 中被解析,并且在那里我无法访问正在进行的 CU。感谢您对此的意见。我正在尝试提取任何有意义的特征,例如 MV、DC 系数或非零系数。

以上是关于从通用视频编码中提取运动矢量的主要内容,如果未能解决你的问题,请参考以下文章

从 H.264 比特流中提取运动矢量 [关闭]

从编码图像和视频中提取 DCT 系数

视频帧类型及区别

转 常见视频编码方式以及封装格式

技术分享| 探索视频感知编码

Android 提取解码编码多路复用音频