matlab 提取运动矢量,如何在Python中使用h.264参考软件提取运动矢量

在Python中解析H.264是可以完成的,但它通常不是最好的工具。如果你真的想使用它,你应该从H.264标准开始,而不是参考软件,尽管两者兼得很有用。在

正如我所说的,Python不适合解码视频,所以没有太多的东西可以帮助你。我过去曾用它来获取或更改奇数参数,并编写了一个模块(bitstring)来提供帮助。有一个解析documentation中H.264结构的示例:

这个例子创建了一个类来解析作为H.264视频标准一部分的结构。在class seq_parameter_set_data(object):

def __init__(self, s):

"""Interpret next bits in BitString s as an SPS."""

# Read and interpret bits in a single expression:

self.profile_idc = s.read('uint:8')

# Multiple reads in one go returns a list:

self.constraint_flags = s.readlist('4*uint:1')

self.reserved_zero_4bits = s.read('bin:4')

self.level_idc = s.read('uint:8')

self.seq_parameter_set_id = s.read('ue')

if self.profile_idc in [100, 110, 122, 244, 44, 83, 86]:

self.chroma_format_idc = s.read('ue')

if self.chroma_format_idc == 3:

self.separate_colour_plane_flag = s.read('uint:1')

self.bit_depth_luma_minus8 = s.read('ue')

self.bit_depth_chroma_minus8 = s.read('ue')

# etc.

>>> s = BitStream('0x6410281bc0')

>>> sps = seq_parameter_set_data(s)

>>> print(sps.profile_idc)

100

>>> print(sps.level_idc)

40

>>> print(sps.reserved_zero_4bits)

0b0000

>>> print(sps.constraint_flags)

[0, 0, 0, 1]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值