H264基本概念之 宏块、片和片组

来源:互联网 发布:分期付款的算法 编辑:程序博客网 时间:2024/04/29 06:42

这几个概念对比音频信号处理可是全新的,下面简要介绍一下定义和作用: 

1、宏块(Macro Block):一个编码图像首先要划分成多个块(4x4 像素)才能进行处理,显然宏块应该是整数个块组成,通常宏块大小为16x16个像素。宏块分为I、P、B宏块,I宏块只能利用当前片中已解码的像素作为参考进行帧内预测;P宏块可以利用前面已解码的图像作为参考图像进行帧内预测;B宏块则是利用前后向的参考图形进行帧内预测;

以下是宏块的句法单元,来自参考文献2

2、片(Slice):一帧视频图像可编码成一个或者多个片,每片包含整数个宏块,即每片至少一个宏块,最多时包含整个图像的宏块。

     片的目的:为了限制误码的扩散和传输,使编码片相互间保持独立。片共有5种类型:I片(只包含I宏块)、P片(P和I宏块)、B片(B和I宏块)、SP片(用于不同编码流之间的切换)和SI片(特殊类型的编码宏块)。

以下是片的句法结构:片头规定了片的类型、属于哪个图像、有关的参考图像等;片的数据包含了一系列宏块和不编码数据。

 

3、片组是一个编码图像中若干宏块的一个子集,包含一个或若干个片。

一般一个片组中,每片的宏块是按扫描次序进行编码的,除非使用任意片次序(Arbitrary Slice Order, ASO)一个编码帧中的片之后可以跟随任一解码图像的片。

 

 

另外一种片组,灵活宏块次序(Flexible Macroblock Ordering, FMO)用灵活的方法,把编码的宏块宏块映射到相应的片组中,见下图:

 

 

 

 

 

 

参考文献:

1、新一代视频压缩编码标准;

2、H264 and MPEG-4 video compression

原创粉丝点击