CABAC
CABAC 全称 Content-based Adaptive Binary coding
基于上下文的自适应二进制算术编码
包含三部分
- 二进制化
- 上下文模型选择
- 算术编码并更新模型
1. 二进制化
是什么?
将一个非二进制语法元素映射成一个二进制序列
例如 10 —》0000 1010
为什么要二进制化?
二进制化进行算术编码有以下优点
- 任何符合都可以二进制化
- 概率模型简单,容易实现自适应编码
- 二元算术编码实现简单,容易实现无乘法运算
2.上下文模型
是什么?
已编码的符号提供的信息称为上下文信息,上下文信息的统计特性称为上下文模型
CABAC中的上下文信息为
- LPS的概率σ
- 最大概率符号MPS的值w
为什么?
不同的语法元素之间并不是完全独立,根据条件熵理论,条件熵总小于独立信源得到的熵,利用以编码的语法元素进行条件编码,能够提高编码