H.264——H.264中定义符号解析方法与支持的熵编码算法

前言

由于种种原因,哈夫曼编码并没有作为一种实际使用的技术应用到视频编解码算法中。

H.264实际使用到的熵编码算法,其中最简单的一种就叫:指数哥伦布编码。

H.264中的熵编码基本方法

  • 熵编码具有消除数据之间统计冗余的功能,在编码端作为最后一道工具,将语法元素写入输出码流。

  • 熵解码作为解码过程的第一步,将码流解析出语法元素供后续步骤重建图像使用

  • h264中,针对不同语法元素定义了不同的熵编码方法

在h264协议文档中,一共制定了10种语法元素的描述符,这些描述符表达了码流解析为语法元素的方法,其中就包含了h264支持的所有熵编码的方法。
在这里插入图片描述

  • b(8),用于表示还没有经过解析的h264压缩格式的裸流
  • f(n),如图描述,是从最低一个字节的最高位算起的,通常它不表示一个实际的数值,更多用于表示填充位、标志位flag这样的数据
  • u(n),表示使用的是n位的无符号整数来表示;也就是说,这个n位的二进制的比特位转化为一个无符号的整数表示的数值就是这个语法元素的取值
  • i(n),与u(n)相对,直接用的的是二进制像十进制转化的方式
  • ue(v)、se(v)、te(v)、me(v)表示的是四种指数哥伦布编码。最常用的是ue(v),也是其他三种的基础,其他三种都是由无符号的指数哥伦布编码换算得到的
  • ce(v)、ae(v)是整个h264最重要的两种熵编码的方法,这两种算法远比指数哥伦布算法复杂得多,但能提供更好的压缩效率。
  • ce(v),上下文自适应的变长编码算法,通常写为CAVLC
  • ae(v),上下文自适应的二进制算术编码算法,通常写为CABAC
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Spark!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值